3. 协整理论:协整关系的数学定义、Engle-Granger两步法
各位做套利的朋友,咱们今天聊点硬核的——协整理论。
说实话,我刚入行那会儿,看到“协整”两个字就头大。什么平稳性、单整阶数,听着像天书。但后来我发现,这东西说白了就是:两个不靠谱的玩意儿,凑在一起反而靠谱了。
你想想看,螺纹钢和热卷,单独看价格走势,都是上蹿下跳的猴子。但它们的价差呢?往往会在一个区间里来回晃悠。这就是协整的魅力。
3.1 协整关系的数学定义
先上定义,别怕,我尽量用人话讲。
假设有两个时间序列 X_t 和 Y_t,它们各自都是非平稳的。但存在一个线性组合:
Z_t = Y_t - β * X_t
如果 Z_t 是平稳的,那我们就说 X_t 和 Y_t 之间存在协整关系。
这里有几个关键点:
- 单整阶数要相同:两个序列必须都是 I(1) 或者都是 I(2)。一个 I(1) 和一个 I(2) 没法玩。
- 线性组合要平稳:这是核心。平稳意味着均值回归,价差会往中间跑。
- β 是协整系数:它决定了两个品种的配比关系。比如螺纹钢和热卷,β 可能是 1.05 或者 0.95。
重要提醒:协整 ≠ 相关性。两个高度相关的序列,可能根本不协整。我见过有人把相关系数 0.9 的品种拿来做套利,结果亏得底朝天。为什么?因为相关性只描述同步性,协整才描述长期均衡。
3.2 协整的直观理解
打个比方。你牵着一条狗散步。狗会跑来跑去,但绳子会把它拉回来。狗的位置(Y_t)和你的位置(X_t)都是非平稳的——你们都在移动。但狗和你的距离(Z_t)是平稳的——它总在绳子长度附近晃悠。
这就是协整的直观图像:两个非平稳序列,被一根看不见的“绳子”拴在一起。
我在做豆粕和菜粕的套利时,就深刻体会到了这一点。这两个品种单独看,价格受天气、库存、政策影响,完全随机游走。但它们的价差呢?长期来看,就是围绕一个均值在波动。为什么?因为饲料厂可以互相替代,价差大了就会有人切换配方。
3.3 Engle-Granger两步法
好了,理论讲完了,咱们来点实操。Engle-Granger两步法,简称 EG 两步法,是检验协整最经典的方法。我建议你把它刻在脑子里。
第一步:估计协整回归
说白了,就是跑一个 OLS 回归:
Y_t = α + β * X_t + ε_t
这里 ε_t 就是残差,也就是我们说的价差。β 就是协整系数。
具体步骤:
- 选两个品种,比如螺纹钢(RB)和热卷(HC)。
- 取它们的价格序列,做 OLS 回归。
- 得到残差序列
ε_t = Y_t - α - β * X_t。
我的经验:做回归时,我习惯把成交量大的品种放在左边(Y_t),成交量小的放在右边(X_t)。这样回归系数更稳定。当然,这不是硬性规定,但我在项目中试过,效果确实好一些。
第二步:检验残差的平稳性
这一步才是关键。我们要检验残差 ε_t 是不是平稳的。最常用的方法是 ADF 检验(Augmented Dickey-Fuller test)。
代码示例(Python):
import statsmodels.api as sm
from statsmodels.tsa.stattools import adfuller
# 假设 price1 和 price2 是价格序列
# 第一步:OLS回归
X = sm.add_constant(price1)
model = sm.OLS(price2, X).fit()
residuals = model.resid
# 第二步:ADF检验
adf_result = adfuller(residuals, maxlag=1)
print(f'ADF统计量: {adf_result[0]:.4f}')
print(f'p值: {adf_result[1]:.4f}')
if adf_result[1] < 0.05:
print('残差平稳,存在协整关系')
else:
print('残差不平稳,不存在协整关系')
这里要注意几个坑:
- 滞后阶数:ADF 检验需要选滞后阶数。我一般用 AIC 准则自动选,或者直接设 maxlag=1。为什么?因为价差序列通常自相关不强,滞后太多反而降低检验功效。
- 临界值:EG 两步法的临界值跟普通 ADF 不一样。因为残差是估计出来的,不是真实值。不过大多数软件(包括 statsmodels)会自动调整,你直接用 p 值判断就行。
我曾经踩过的坑:有一次我检验螺纹钢和热卷的协整关系,ADF 的 p 值是 0.06,差一点就显著了。我当时想,算了,不协整就不做吧。结果后来发现,是因为我用了日线数据,样本量不够。换成 5 分钟数据后,p 值直接降到 0.01。所以,样本量很重要。一般建议至少 200 个数据点。
3.4 协整检验的完整流程
我把整个流程画成了一张图,方便你理解:
3.5 实际应用中的注意事项
讲完了理论和方法,我再说几个实际中容易踩的坑:
| 常见问题 | 我的建议 |
|---|---|
| 数据频率怎么选? | 日线数据适合长周期套利,分钟线适合短线。我个人偏好用 1 小时线,平衡了噪音和信号。 |
| 协整关系会变吗? | 会!市场结构在变,协整关系也会漂移。我建议每 3 个月重新检验一次。 |
| 多个品种怎么选? | 先做相关性分析,筛选出相关性高的品种对,再逐一做协整检验。 |
| β 系数怎么用? | β 就是你的对冲比率。比如 β=1.05,意味着做多 1 手 Y 的同时,要做空 1.05 手 X。 |
一个小技巧:做 EG 两步法时,我习惯把回归结果里的 R² 也看一眼。R² 越高,说明两个品种的长期关系越紧密。一般来说,R² 在 0.8 以上的品种对,套利效果会比较好。
3.6 总结
协整理论是跨品种套利的基石。没有它,你就是在瞎蒙。有了它,你至少知道哪些品种对值得做,哪些该放弃。
EG 两步法虽然简单,但非常实用。我到现在还在用这个方法筛选品种对。记住:先检验,再交易。别看着价格走势像就往上冲,那是赌博,不是量化。
好了,这一章就到这里。下一章咱们聊聊如何用协整关系构建实际的交易策略,包括开仓信号、止损设置、仓位管理这些实战内容。
公众号:蓝海资料掘金营,微信deep3321