2. 价差概念深度解析:什么是价差?价差的构成与统计特征
各位同学,今天我们来聊聊价差。很多人一听到「价差」两个字,第一反应就是「A价格减B价格」。嗯,没错,但远不止这么简单。
我在做跨市场套利的前两年,犯过一个低级错误——只看价格差,没考虑交易成本。结果呢?看着价差很大,一算手续费和滑点,利润全没了。所以,咱们得把价差这个概念拆开揉碎了讲清楚。
2.1 价差的定义:不只是减法
价差,说白了就是两个相关资产价格之间的差值。但这里有个关键点:相关。不相关的两个东西,价差没有分析意义。
举个例子:
- 相关资产:沪深300股指期货(IF)和沪深300ETF。它们跟踪同一个指数,价差应该围绕某个均值波动。
- 不相关资产:螺纹钢期货和比特币。你算它们的价差?纯属浪费时间。
我个人习惯把价差分为两类:
- 绝对价差:P₁ - P₂,简单粗暴。
- 相对价差:(P₁ - P₂) / P₂,或者 log(P₁) - log(P₂)。处理不同量级的资产时,相对价差更靠谱。
注意:对冲比率不是1,得算!我见过有人直接用1:1做铜铝套利,结果亏得底裤都不剩。
2.2 价差的构成:拆开来看
一个价差信号,其实由三部分组成。我当年在实盘里吃过亏,才真正理解这一点。
| 组成部分 | 含义 | 我的经验 |
|---|---|---|
| 趋势成分 | 价差的长期走势 | 别跟趋势对着干,除非你有对冲 |
| 周期成分 | 价差的季节性、日历效应 | 农产品价差在收获季特别明显 |
| 随机成分 | 市场噪音、短期波动 | 这部分最难处理,我一般用滤波 |
为什么会这样?因为价差不是凭空产生的。它背后是供需、情绪、流动性、交易成本等因素的叠加。你想想看,如果两个资产完全同质,价差应该为零。但现实中有摩擦成本、有信息不对称,价差就出来了。
2.3 价差的统计特征:你得懂这些
做套利交易,不懂统计特征等于盲人摸象。我总结了四个关键指标:
2.3.1 均值与中位数
价差围绕什么波动?均值回归策略的核心假设就是价差会回到均值。但注意:均值不是一成不变的。我曾经用固定均值做螺纹钢热卷套利,结果市场结构变了,亏了三个月才反应过来。
2.3.2 标准差与波动率
标准差告诉你价差波动的幅度。我一般用这个来设定入场和出场阈值:
- 价差 > 均值 + 2σ → 做空价差
- 价差 < 均值 - 2σ → 做多价差
但别死板!我记得2020年3月,市场波动率飙升,2σ的阈值根本不够用。后来我改用动态标准差,根据近期波动调整。
2.3.3 自相关与偏自相关
价差序列有没有记忆性?自相关函数(ACF)和偏自相关函数(PACF)能告诉你。如果价差在滞后1期有显著自相关,说明它不会瞬间回归均值,需要时间。
2.3.4 平稳性检验
这是重中之重。价差不平稳,套利策略就是空中楼阁。我常用的方法是ADF检验:
from statsmodels.tsa.stattools import adfuller
# 假设spread是价差序列
result = adfuller(spread)
print(f'ADF统计量: {result[0]:.4f}')
print(f'p值: {result[1]:.4f}')
if result[1] < 0.05:
print('价差平稳,可以做套利')
else:
print('价差不平稳,需要差分或协整处理')
嗯,这里要注意:p值小于0.05只是门槛。我一般要求p值小于0.01才放心。为什么?因为金融数据太容易伪回归了。
2.4 知识体系总览
下面这张图,是我做价差分析时的思维框架。你照着这个来,至少不会跑偏。
2.5 实战中的价差陷阱
最后,分享几个我踩过的坑:
- 忽略交易成本:价差看起来有2个点,一算手续费和滑点,只剩0.5个点。白忙活。
- 过度依赖历史均值:市场结构会变。我建议用滚动窗口计算均值,窗口大小根据波动率调整。
- 忽视流动性差异:一个资产流动性好,另一个差,价差容易被操纵。我吃过这个亏,现在做之前先看买卖价差和深度。
- 不做协整检验:价差平稳不代表两个资产有长期均衡关系。协整检验是必须的,别偷懒。
好了,这一章的内容就到这里。价差这个概念,看似简单,实则门道很多。你把它吃透了,后面的模型和策略才能站得住脚。