3. 多市场套利基础:跨市场价差、价差均值回归特性、协整关系检验
做量化交易这些年,我越来越觉得,多市场套利这事儿,说白了就是「找不同」。同一个东西,在不同的地方卖,价格不一样,这就是机会。但机会背后,得有逻辑支撑。今天咱们就聊聊这个逻辑的根基——价差、均值回归、还有协整检验。
3.1 跨市场价差:套利的起点
先问个问题:什么是价差?很简单,就是同一资产在两个市场的价格差。
比如,某股票在A交易所报价100.5元,在B交易所报价100.2元。价差就是0.3元。你买低卖高,就能赚这0.3元。但现实没这么简单。
我遇到过一种情况:价差看着很大,但一算手续费和滑点,利润就没了。所以,真正的套利价差,得扣除所有交易成本。
核心公式:
套利价差 = |P市场A - P市场B| - 交易成本
只有当套利价差 > 0 时,才值得动手。
价差不是一成不变的。它会波动,会扩张,也会收缩。咱们要做的,就是抓住它收缩的那一段。
3.2 价差的均值回归特性
你想想看,如果两个市场交易的是同一个东西,它们的价格长期来看应该差不多。价差会在一个均值附近来回摆动。这就是均值回归。
为什么会这样?因为套利者会出手。价差大了,就有人买低卖高,把价差压回去。价差小了,就没人套利,价差又会慢慢拉开。
我个人习惯用布林带来观察价差的均值回归。当价差触及上轨,我就做空价差(卖高买低)。触及下轨,就做多价差(买低卖高)。
一个小技巧:
别只看价差的绝对值。要看它的Z-score。Z-score = (当前价差 - 均值) / 标准差。当Z-score超过2或低于-2时,回归的概率就很高了。
我曾经在股指期货跨期套利上吃过亏。当时价差Z-score到了2.5,我果断入场。结果价差继续扩大,直接打穿了我的止损。后来复盘发现,那段时间市场情绪极端,均值回归的节奏被打乱了。所以,均值回归不是100%的,一定要设止损。
3.3 协整关系检验:别被伪回归骗了
这里有个坑,我必须提醒你。两个价格序列看着走势很像,但可能根本没有关系。这就是伪回归。
举个例子,我买咖啡的价格和纽约股市的走势,可能在过去三年里都涨了。但你能说它们有关系吗?不能。这就是伪回归。
协整检验,就是用来判断两个序列之间是否存在长期稳定关系的。如果两个序列是协整的,它们的价差就会围绕一个均值波动,也就是有均值回归特性。
常用的检验方法是Engle-Granger两步法和Johansen检验。我个人更常用Engle-Granger,因为它直观。
步骤是这样的:
- 先对两个价格序列做回归:PA = α + β * PB + ε
- 然后对残差ε做单位根检验(ADF检验)
- 如果残差是平稳的,就说明两个序列协整
注意:
协整关系不是一成不变的。市场结构变了,协整关系可能就断了。我建议每3个月重新检验一次。别偷懒,我见过有人用半年前的协整关系做交易,结果亏得很惨。
3.4 实战中的协整检验代码
嗯,这里我贴一段我常用的Python代码。你可以直接拿去用。
import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.tsa.stattools import adfuller
def cointegration_test(price_a, price_b):
"""
检验两个价格序列是否协整
"""
# 第一步:回归
X = sm.add_constant(price_b)
model = sm.OLS(price_a, X).fit()
residuals = model.resid
# 第二步:对残差做ADF检验
adf_result = adfuller(residuals, maxlag=1)
p_value = adf_result[1]
# 如果p值小于0.05,拒绝非平稳假设,说明残差平稳
if p_value < 0.05:
print(f"协整关系成立,p值 = {p_value:.4f}")
return True
else:
print(f"协整关系不成立,p值 = {p_value:.4f}")
return False
# 使用示例
# cointegration_test(price_a_series, price_b_series)
这段代码我用了很多年。简单,但够用。你跑一遍,如果p值小于0.05,恭喜你,找到了一对可以套利的品种。
3.5 知识体系总览
说了这么多,我画了一张图,帮你把这一章的核心逻辑串起来。
这张图把咱们这一章的核心逻辑串起来了。从价差出发,到均值回归,再到协整检验。每一步都是下一环的基础。
总结一下:
- 价差是套利的基础,但别忘了扣成本
- 均值回归是套利的逻辑支撑,但不是100%可靠
- 协整检验帮你避开伪回归的坑
- 代码要跑,但更要理解背后的逻辑
好了,这一章就到这儿。记住,多市场套利不是无脑搬砖,得有数据支撑,有逻辑验证。下一章咱们聊聊具体的执行策略。