4、价差计算与标准化:价差公式、Z-Score计算、阈值设定
各位同学,欢迎来到第四讲。前面我们聊了价差交易的基本逻辑,说白了就是「买强卖弱」赚回归的钱。但问题来了——你怎么量化「强」和「弱」?怎么判断价差是「该回归了」还是「趋势变了」?
这一章,我们就来解决这个核心问题。我会把价差计算、标准化处理、以及阈值设定这三个环节拆开揉碎了讲。嗯,这里面的坑不少,我当年刚入行时就吃过亏。
4.1 价差公式:从原始数据到价差序列
先看最基础的东西。价差公式其实很简单,但不同品种、不同策略,用的公式略有差异。
最常见的价差公式:
Spread = P1 - k * P2
其中 P1 和 P2 是两种资产的价格,k 是配比系数。这个 k 怎么定?我习惯用两种方法:
- 固定比例法:比如 1:1 或 1:10,适用于同品种不同到期日的合约(比如近月 vs 远月)。
- 回归系数法:用历史数据做 OLS 回归,P1 = α + β * P2 + ε,那么 k = β。这个方法更科学,但要注意——回归系数会随时间漂移。
还有一种情况——对数价差。有些品种价格跨度大,比如比特币和以太坊,直接用价格差会受绝对价格影响。这时候我会用:
Log_Spread = ln(P1) - ln(P2)
说白了,对数价差就是看两个资产的相对强弱,而不是绝对差值。我个人更偏爱这种方式,尤其在加密货币市场。
4.2 Z-Score 计算:把价差变成标准分
有了价差序列,下一步就是标准化。为什么要标准化?因为价差的绝对值没有意义——100 块的价差在股票市场可能很大,在期货市场可能很小。我们需要一个统一的标尺。
Z-Score 公式:
Z = (当前价差 - 价差均值) / 价差标准差
嗯,这里有个关键点:均值和标准差用多少周期的数据?我建议:
- 短期策略(持仓 1-3 天):用 20-30 个交易日的滚动窗口。
- 中期策略(持仓 1-2 周):用 60-90 个交易日。
- 长期策略(持仓 1 个月以上):用 120-250 个交易日。
你可能会问:窗口太短会不会不稳定?窗口太长会不会反应迟钝?
答案是——都会。所以我在实际项目中,会同时跑多个窗口的 Z-Score,然后取加权平均。比如 20 日均线权重 0.3,60 日均线权重 0.7。这样既灵敏又稳定。
来看一个 Python 代码示例:
import pandas as pd
import numpy as np
def calculate_zscore(spread, window=60):
mean = spread.rolling(window=window).mean()
std = spread.rolling(window=window).std()
zscore = (spread - mean) / std
return zscore
这段代码很简单,但实际使用中要注意:当 std 接近 0 时(比如市场极度平静),Z-Score 会变得非常大,容易触发假信号。我一般会加一个最小标准差阈值,比如 0.01。
4.3 阈值设定:开仓、平仓、止损
有了 Z-Score,我们就可以设定交易阈值了。这是整个策略的灵魂——阈值设得太宽,交易机会少;设得太窄,频繁交易被手续费吃掉。
我常用的阈值体系:
| 信号类型 | Z-Score 阈值 | 说明 |
|---|---|---|
| 开仓(做空价差) | Z > 2.0 | 价差过高,预期回归 |
| 开仓(做多价差) | Z < -2.0 | 价差过低,预期回归 |
| 平仓 | |Z| < 0.5 | 价差回归到均值附近 |
| 止损 | |Z| > 3.0 | 价差极端偏离,可能趋势变了 |
这个表格是经典设置,但别死板套用。我见过有人用 1.5 倍标准差开仓,也有人用 2.5 倍。关键要看品种的波动特性。
关于止损,我想多说两句。
止损不是用来「扛亏损」的,而是用来「认错」的。当 Z-Score 突破 3.0 时,说明价差已经进入了极端区域。这时候有两种可能:
- 价差确实会回归——但你可能已经被打止损了。
- 价差发生了结构性变化——比如两个品种的基本面关系变了。
我个人更倾向于第二种。因为如果价差真的能回归,它通常不会突破 3.0 还继续跑。一旦突破,说明市场在告诉你:「兄弟,你的模型错了。」
我曾经在螺纹钢和铁矿石的价差上吃过这个亏。当时 Z-Score 到了 2.8,我没止损,想着「再扛一扛」。结果呢?政策限产,价差直接飙到 4.5,亏了 15%。从那以后,我的止损线就设得死死的。
4.4 知识体系总览
为了让你更直观地理解这一章的内容,我画了一张流程图:
这张图把整个流程串起来了。从原始价格到价差计算,再到 Z-Score 标准化,最后通过阈值判断触发交易。每一步都有坑,每一步都需要你根据实际品种去调参。
4.5 本章小结
好,我们来捋一下这一章的核心要点:
- 价差公式:固定比例 vs 回归系数,选哪个要看品种特性。
- Z-Score 计算:滚动窗口是关键,别用全量历史数据。
- 阈值设定:开仓 2.0,平仓 0.5,止损 3.0——这是起点,不是终点。
记住一句话:标准化是价差交易的基石,阈值是策略的灵魂。没有标准化的价差,就像没有刻度的尺子——你根本不知道什么时候该动手。