3、价差计算与标准化:价差公式、Z-Score标准化、滚动窗口计算
好,咱们进入第三章。这一章可以说是配对交易的「数学内核」了。
前面两章我们聊了什么是配对交易,也讲了怎么选一对股票。但选好了之后呢?你得盯着它们的价差看。价差怎么算?怎么判断价差是「大了」还是「小了」?什么时候该进场,什么时候该跑?
嗯,这些问题的答案,都藏在这一章里。
3.1 价差公式:不只是简单的减法
很多人一上来就说:「价差?不就是A股价格减去B股价格吗?」
我刚开始做配对交易时也这么想。结果呢?亏了一笔。为什么?因为两只股票的价格量级可能差很多。比如茅台一股两千多,另一只银行股才几块钱。直接相减,价差波动全被茅台带走了,银行股那点变化根本看不出来。
所以,真正的价差公式要考虑对冲比率(Hedge Ratio)。
核心公式:
价差 = 股票A价格 - β × 股票B价格
其中β就是对冲比率,通常通过线性回归(OLS)来估计。
说白了,β告诉你:股票A涨1块钱,股票B平均涨多少?把这个比例关系去掉,剩下的才是真正的「价差」。
举个例子:
| 股票 | 价格 | β系数 |
|---|---|---|
| 贵州茅台 | 1800 | 1.0(基准) |
| 五粮液 | 150 | 0.083 |
价差 = 1800 - 0.083 × 150 = 1800 - 12.45 = 1787.55
你看,这样算出来的价差,才真正反映了两个资产之间的「偏离度」。
我的小技巧:
我个人习惯用滚动窗口来估计β,而不是用全样本。因为市场结构会变,去年的关系不一定适用于今天。滚动窗口一般用60个交易日,我觉得比较稳。
3.2 Z-Score标准化:把价差变成「标准尺子」
价差算出来了,但问题来了——价差是1787.55,这个数是大还是小?
你没法直接说。因为不同的股票对,价差的绝对数值天差地别。有的对价差在0.5附近波动,有的在1000附近波动。
这时候就需要Z-Score了。
Z-Score公式:
Z = (当前价差 - 价差均值) / 价差标准差
Z-Score说白了就是:当前价差偏离均值多少个标准差。
Z=2,意味着价差比均值高了两个标准差。这在统计学上属于「小概率事件」,大概率会回归。
我一般这样用:
- Z > 2:做空价差(卖A买B)
- Z < -2:做多价差(买A卖B)
- |Z| < 0.5:平仓离场
避坑指南:
我曾经吃过一次大亏——用了全样本的均值和标准差。结果呢?价差一直在缓慢漂移,均值早就变了,但我的Z-Score还在用老数据算。信号全错了。
所以,均值和标准差一定要用滚动窗口来算!
3.3 滚动窗口计算:让指标「活」起来
滚动窗口,说白了就是只取最近N天的数据来计算。比如用过去60天的数据算均值和标准差,然后每天更新。
为什么必须用滚动窗口?
- 市场风格会变,去年的关系今年可能不成立
- 价差可能有趋势性漂移(比如一只股票长期跑赢另一只)
- 极端行情后,全样本的均值和标准差会被拉偏
代码实现其实不复杂:
import pandas as pd
import numpy as np
def calculate_zscore(spread, window=60):
# 滚动均值
rolling_mean = spread.rolling(window=window).mean()
# 滚动标准差
rolling_std = spread.rolling(window=window).std()
# Z-Score
zscore = (spread - rolling_mean) / rolling_std
return zscore
# 示例用法
spread = pd.Series([...]) # 你的价差数据
z = calculate_zscore(spread, window=60)
print(z.tail())
嗯,这里要注意:窗口大小怎么选?
| 窗口大小 | 特点 | 适用场景 |
|---|---|---|
| 20天 | 反应快,但噪音多 | 高频配对交易 |
| 60天 | 平衡,我常用 | 日频配对交易 |
| 120天 | 稳定,但滞后 | 长周期配对 |
我个人习惯用60天。为什么?因为一个季度大概有60个交易日,刚好能反映近期的市场结构变化,又不会太敏感。
3.4 知识体系总览
来,我画了一张图,把这一章的核心逻辑串起来:
你看,整个流程其实就三步:算价差 → 滚动统计 → 标准化。但每一步都有坑,踩一个就可能亏钱。
我的经验总结:
1. β系数一定要用滚动窗口估计,别偷懒用全样本。
2. Z-Score的阈值(2和-2)不是死的。波动率大的时候,我有时会放宽到2.5。
3. 滚动窗口大小要跟你的交易频率匹配。做日频交易,60天是个不错的起点。
好了,这一章的内容就这些。价差计算和标准化是配对交易的「眼睛」,看不清楚,后面的止损止盈设计就无从谈起。下一章我们聊止损——嗯,到时候再细说。
公众号:蓝海资料掘金营,微信deep3321