halo 的技术博客

返回

当「买低卖高」有了数学基础#

「低买高卖」是所有交易者的梦想,但如果没有严格的定义,「低」和「高」只是事后看图说话。

配对交易(Pairs Trading) 给「低买高卖」提供了一个可操作的数学框架:找到两只价格长期「黏在一起」的股票,当它们的价差暂时扩大时做空相对贵的那只、做多相对便宜的那只,等待价差回归均值后平仓获利。

这套方法的核心不是一个简单的相关性——而是 协整关系(Cointegration)

协整 vs 相关性:为什么协整更重要?#

相关性的陷阱#

两只股票的价格相关系数很高(比如 0.9),只说明它们同期变动方向相似。但高相关并不意味着价差会回归均值——实际上,两个独立随机游走(random walk)之间也可能计算出很高的「伪相关」。

协整 vs 非协整序列的 ADF 检验对比 图1:左图为非平稳随机游走序列(ADF p-value > 0.05,协整不成立);右图为平稳价差序列(ADF p-value < 0.01,协整成立)

这段代码揭示了一个残酷的事实:你用滚动相关性筛选出来的「配对」,可能只是统计假象

协整的数学定义#

协整关系要求更严格。对于两个非平稳序列 XtX_tYtY_t(各自是随机游走),如果存在系数 β\beta 使得线性组合:

Zt=YtβXtZ_t = Y_t - \beta X_t

是一个平稳序列(Stationary),则称 XtX_tYtY_t 协整。

平稳性的直观含义:ZtZ_t 的均值和方差不随时间变化,且 ZtZ_t均值回归的特性——偏离均值后,有一种「拉力」把它拉回来。这正是配对交易盈利的数学基础。

Engle-Granger 两步法:协整检验的 Python 实现#

第一步:协整回归#

用 OLS 估计 Yt=α+βXt+εtY_t = \alpha + \beta X_t + \varepsilon_t,得到残差 ε^t\hat{\varepsilon}_t

第二步:ADF 检验残差的平稳性#

协整回归的残差 ε^t\hat{\varepsilon}_t 必须是平稳的。用 Augmented Dickey-Fuller (ADF) 检验 验证:

  • 原假设 H0H_0:残差有单位根(非平稳,协整不成立)
  • 备择假设 H1H_1:残差平稳(协整成立)

关键解读:若 p-value < 0.05,我们可以在 95% 置信水平上认为残差是平稳的,即 XXYY 存在协整关系,配对交易的理论基础成立。

更严谨的方法:Johansen 检验#

Engle-Granger 方法只能检验两个变量之间的协整,且第一步回归的变量选择(用 Y 回归 X 还是 X 回归 Y)会影响结果。对于多资产配对(一对多),应使用 Johansen 检验

从协整到交易信号:Z-score 策略#

构建交易信号#

协整关系给了你一个平稳的价差序列 ZtZ_t。交易信号的核心是把 ZtZ_t 标准化

zt=ZtμZσZz_t = \frac{Z_t - \mu_Z}{\sigma_Z}

其中 μZ\mu_ZσZ\sigma_Z 用滚动窗口估计(如过去 20-60 个交易日)。

交易规则(经典 Z-score 策略):

Z-score操作逻辑
zt<2z_t < -2买入组合(买 Y,卖 X)价差过低,预期回归
2<zt<2-2 < z_t < 2平仓或观望价差在正常区间
zt>2z_t > 2卖出组合(卖 Y,买 X)价差过高,预期回归

配对交易 Z-score 信号图 图2:配对股票价差 Z-score 与交易信号示意图。当 Z-score 突破 ±2σ 时触发交易信号,回归 ±0.5σ 时平仓

A 股配对交易实证案例#

案例:中国平安(601318.SH)vs 中国人寿(601628.SH)#

这两只保险行业龙头,业务高度相似,是 A 股经典的配对交易候选。下面用 westock-data 获取真实数据并检验协整关系:

配对交易策略累计净值 图3:配对交易策略模拟累计净值(2年),展现均值回归策略的收益特征

配对交易的风险管理#

1. 协整关系断裂风险#

协整不是永恒不变的。行业格局变化、公司并购、监管政策转向,都可能导致历史上的协整关系在未来失效。

应对方法

  • 滚动窗口定期重新检验协整关系(如每季度)
  • 当 ADF p-value 持续 > 0.10 时,停止交易该配对
  • 设置最大持仓时间(如 20 个交易日),强制平仓

2. 价差发散风险(Loss of Mean Reversion)#

即使协整关系成立,价差也可能在短期内进一步发散(Z-score 从 2 走到 3 甚至 4)。这是配对交易最大的实盘风险——「均值回归」不代表「马上回归」

应对方法

  • 设置止损线:当 Z-score 超过 ±3.5 时强制止损
  • 仓位管理而非全仓:首次信号用 50% 仓位,Z-score 继续极端时加仓(Martingale 需谨慎)
  • 关注基本面变化:如果两只股票的基本面同时恶化(如行业性利空),价差可能永久性地台阶式偏移

3. 交易成本侵蚀#

配对交易通常换手率较高(尤其是 Z-score 阈值设得较小时)。A 股双边交易成本约 0.12%-0.20%(佣金 + 印花税 + 滑点)。

经验法则:配对策略的日均收益必须 > 2 × 单边交易成本 / 平均持仓天数。对于 A 股,这意味着策略 Sharpe 必须 > 1.2 才有实盘价值。

配对交易的局限性与扩展#

局限性#

  1. 可扩展性差:找到 10 个有效配对已经很难,管理 1000 万以上资金时,配对机会稀缺
  2. 模型风险:协整检验的势(power)在样本量较小时很低,容易把噪声当信号
  3. 尾部风险:价差在极端市场条件下(如熔断、停牌)可能无法及时平仓

扩展方向#

多资产配对(Multivariate Cointegration):不止两只股票,而是一个「组合 vs 组合」的协整关系。用 Johansen 检验找到多个协整向量,构建市场中性的多空组合。

机器学习增强:用随机森林或 LSTM 预测 Z-score 的回归速度(半衰期),动态调整持仓时间,而非固定用 Z-score 穿越 0.5 作为平仓信号。

高频配对:将协整分析应用到分钟级或秒级数据,捕捉盘中价格的短暂偏离。需要极低的交易成本和稳定的数据接入。

总结#

配对交易是量化投资中最优雅的策略之一——它不依赖「市场上涨」,不依赖「因子溢价」,只依赖一个简单而强大的数学事实:协整价差的均值回归性

但要真正做好配对交易,你需要:

  1. 严谨的协整检验:ADF / Johansen 是门槛,不是可选项
  2. 动态的参数更新:协整关系会死,你要比它死得早知道
  3. 务实的成本管理:换手率决定生死,不要忽略交易成本
  4. 足够大的配对池:单一配对不足以支撑一个基金,你需要系统化的配对挖掘流程

配对交易不会让你一夜暴富,但它可以在市场大跌时依然赚钱——如果你做对了的话。


延伸阅读

  • Gatev, E., Goetzmann, W. N., & Rouwenhorst, K. G. (2006). Pairs Trading: Performance of a Relative-Value Arbitrage Rule. Review of Financial Studies. (配对交易经典实证论文)
  • Vidyamurthy, G. (2004). Pairs Trading: Quantitative Methods and Analysis. Wiley. (协整在配对交易中的系统应用)
  • Elliott, R. J., Van Der Hoek, J., & Malcolm, W. P. (2005). Pairs Trading. Quantitative Finance. (状态空间模型下的配对交易框架)
配对交易与协整分析:均值回归策略的理论与实践
https://blog.halo26812.eu.org/blog/pair-trading-cointegration
Author halo
Published at 2026年6月21日
版权声明 CC BY-NC-SA 4.0
Comment seems to stuck. Try to refresh?✨