一、协整概念入门:什么是协整?为什么做配对交易需要协整?

大家好,欢迎来到《协整残差分析与交易阈值设计》的第一章。

今天咱们聊一个核心问题:协整到底是什么?

说实话,我刚开始接触量化交易那会儿,听到「协整」这个词,第一反应是——这又是哪个统计学大佬发明的玄学名词?后来真刀真枪做了一段时间配对交易,才发现这东西其实没那么神秘。

1.1 从经济学直觉说起

先讲个故事。

假设你观察两个股票:贵州茅台五粮液。它们都是白酒龙头,基本面相似,受同样的宏观经济影响。按理说,它们的价格走势应该「步调一致」才对。

但现实是,短期内它们可能各走各的。茅台涨了3%,五粮液跌了1%。这时候你会怎么想?

嗯,直觉告诉你:这种背离不会一直持续下去。迟早有一天,它们会重新回到某种「均衡关系」上。

这个「均衡关系」,就是协整的核心思想。

协整的通俗定义:两个或多个非平稳时间序列,它们的某种线性组合是平稳的。

说白了,就是几个「疯疯癫癫」的变量,组合在一起反而「老实」了。

1.2 为什么做配对交易需要协整?

配对交易的逻辑很简单:

  • 找到两个高度相关的资产
  • 当它们的价差偏离正常范围时,做多一个、做空另一个
  • 等它们回归均衡,平仓获利

但这里有个坑——相关性不等于协整

我踩过这个坑。有一次,我发现两只银行股的相关性高达0.95,兴冲冲地做了配对策略。结果呢?价差越走越远,亏得我怀疑人生。

后来复盘才发现:这两只股票虽然走势相似,但并没有长期均衡关系。它们的价差是「随机游走」的,根本不会回归。

避坑指南:我曾经以为相关性高就能做配对交易,结果被市场狠狠教育了一顿。记住:协整是配对交易的灵魂,相关性只是表象。

1.3 数学定义:从直觉到严谨

好了,直觉讲完了,咱们来点硬核的。

数学定义:

设两个时间序列 \(X_t\) 和 \(Y_t\),如果满足以下条件:

  1. \(X_t\) 和 \(Y_t\) 都是 \(I(1)\) 过程(即一阶单整,非平稳但一阶差分后平稳)
  2. 存在一个非零常数 \(\beta\),使得 \(Z_t = Y_t - \beta X_t\) 是 \(I(0)\) 过程(平稳)

那么,我们就说 \(X_t\) 和 \(Y_t\) 是协整的,\(\beta\) 称为协整系数,\(Z_t\) 称为协整残差。

你想想看,这个定义其实很优雅:

  • 单个序列是「疯的」(非平稳)
  • 但它们的组合是「稳的」(平稳)
  • 这意味着它们之间存在长期均衡关系

个人习惯:我一般把协整关系想象成「拴在一根绳子上的两只狗」。每只狗都乱跑(非平稳),但绳子长度固定(协整关系),所以它们不会跑太远。

1.4 协整 vs 相关性:一张表说清楚

特性 相关性 协整
衡量什么 线性关系的强度 长期均衡关系
要求序列平稳 是(残差平稳)
是否意味着回归
配对交易适用性 低(容易假相关) 高(有均值回归特性)
数学基础 皮尔逊系数 单位根检验、EG两步法

你看,相关性高的两只股票,价差可能越走越远。但协整的股票对,价差一定会回归。这就是为什么做配对交易,必须先过协整检验这一关

1.5 核心知识体系:一张图看懂

下面我用一张SVG图,把本章的核心逻辑串起来:

协整概念知识体系 协整 经济学直觉 长期均衡关系 数学定义 I(1) + 残差平稳 配对交易应用 价差回归策略 非平稳序列 但组合平稳 均值回归 价差会收敛 单位根检验 ADF/PP检验 EG两步法 估计+检验 开仓信号 残差偏离阈值 平仓信号 残差回归零轴 核心结论 协整是配对交易的数学基础,确保价差具有均值回归特性

1.6 一个简单的Python示例

光说不练假把式。咱们用Python模拟一下协整关系:

import numpy as np
import matplotlib.pyplot as plt
from statsmodels.tsa.stattools import adfuller

# 设置随机种子
np.random.seed(42)

# 生成一个随机游走(非平稳)
n = 500
X = np.cumsum(np.random.randn(n))

# 生成Y,与X协整:Y = 2*X + 平稳噪声
beta = 2.0
epsilon = np.random.randn(n) * 0.5  # 平稳残差
Y = beta * X + epsilon

# 检验残差的平稳性
residual = Y - beta * X
adf_stat, p_value, _, _, critical_values, _ = adfuller(residual)

print(f"ADF统计量: {adf_stat:.4f}")
print(f"p值: {p_value:.4f}")
print(f"临界值: {critical_values}")

if p_value < 0.05:
    print("✅ 残差平稳,X和Y存在协整关系")
else:
    print("❌ 残差非平稳,X和Y不存在协整关系")

运行这段代码,你会发现p值远小于0.05。这说明什么?说明我们构造的X和Y确实是协整的。

我建议:初学者可以先跑通这个例子,感受一下「非平稳序列组合后变平稳」到底是怎么回事。代码不复杂,但背后的思想很重要。

1.7 本章小结

好了,咱们来捋一捋今天的内容:

  • 协整是什么?——几个非平稳序列的线性组合是平稳的,它们之间存在长期均衡关系。
  • 为什么做配对交易需要协整?——因为只有协整才能保证价差会回归,这是策略盈利的基础。
  • 数学上怎么定义?——I(1)序列 + 残差平稳 = 协整。
  • 和相关性有什么区别?——相关性看走势相似度,协整看长期均衡。相关性高不一定协整,但协整一定意味着某种相关性。

我个人觉得,协整是量化交易里最被低估的概念之一。很多人一上来就搞机器学习、神经网络,结果连最基本的「两个序列有没有长期关系」都没搞清楚。嗯,打好基础比什么都重要。


蓝海数据掘金营,专注资料整理