第2章 价差分析:价差的计算、价差图绘制、价差的统计特征

跨期套利的核心,说白了就是盯着「价差」吃饭。你想想看,同一个品种,近月和远月合约之间,价格不可能永远同步。有时候近月涨得快,有时候远月跌得狠。这中间的差值,就是我们套利的空间。

我个人习惯把价差比作一根橡皮筋。正常情况下它有个合理的长度,但市场情绪一上来,这根皮筋就会被拉得很长。我的任务就是等它弹回去。嗯,听起来简单,但实际操作中,很多新手连价差怎么算都搞不清楚,更别提画图分析了。

一、价差的计算方式

价差的计算,其实就两种主流方法。我在项目中遇到过不少团队,因为选错了计算方法,导致信号完全失真。这里我重点讲清楚。

1. 减法价差(最常用)

这是最直观的方式。用近月合约价格减去远月合约价格:

价差 = P_near - P_far

举个例子:

  • 螺纹钢RB2305(近月)价格:4200元/吨
  • 螺纹钢RB2310(远月)价格:4150元/吨
  • 价差 = 4200 - 4150 = 50元/吨

价差为正,说明近月比远月贵,这叫「正向市场」或「backwardation」。价差为负,就是远月更贵,叫「反向市场」或「contango」。我刚开始做套利时,总记反这两个词,后来干脆只记「近减远」,正的就是近月强,负的就是远月强。

重要提醒: 价差的正负号,决定了你的套利方向。价差为正且偏大时,你做空价差(卖近买远);价差为负且偏大时,你做多价差(买近卖远)。

2. 比值价差(适用于跨品种)

有些时候,直接用减法不合适。比如豆粕和菜粕,价格基数差很多。这时候用比值更合理:

价差比 = P_near / P_far

比值大于1,近月强;小于1,远月强。我个人习惯在比值价差上做对数处理,这样数据更接近正态分布,方便后续做统计建模。

我的经验: 同品种跨期套利,用减法就够了。跨品种套利,建议用比值或对数比值。我曾经在豆油和棕榈油的套利上吃过亏,直接用减法,结果价差序列完全不平稳,后来换成比值才解决问题。

二、价差图的绘制

光有数字不行,你得把价差画出来。一张好的价差图,能让你一眼看出当前处于什么位置。我见过太多人盯着Excel表格发呆,其实画个图就什么都明白了。

1. 基础价差折线图

横轴是时间,纵轴是价差。这是最基础的图。你需要注意几点:

  • 时间跨度:至少包含一个完整的交割周期(比如3个月)
  • 标注关键点位:比如均值线、±1倍标准差线、±2倍标准差线
  • 颜色区分:价差为正用红色,为负用绿色,一目了然

2. 价差分布直方图

这个图能告诉你价差的历史分布情况。我经常用它来判断当前价差是否「极端」。比如价差历史均值是50,标准差是20,当前价差到了90,那就是偏离均值2个标准差,属于小概率事件。

避坑指南: 我曾经犯过一个错误——直接用收盘价计算价差。后来发现,盘中价差和收盘价差有时候差异很大。尤其是临近交割月,盘中价差波动剧烈,收盘价可能失真。建议至少用1小时级别的K线数据来计算价差。

3. 价差与价格的叠加图

把近月价格、远月价格、价差放在同一张图上。这样你能直观看到:价差的变动,到底是近月带的,还是远月带的。我习惯用双Y轴,左轴放价格,右轴放价差。

价差分析知识体系 价差分析 价差计算 价差图绘制 统计特征 减法价差 比值价差 折线图 直方图 叠加图 均值/标准差 平稳性检验 自相关性 核心目标:识别价差的极端偏离与回归机会

三、价差的统计特征

画完图,你得算算统计量。不然你光看图,觉得「好像高了」,但高了多少算高?没有量化标准,一切都是感觉。

1. 均值与标准差

这是最基础的。计算历史价差的平均值和标准差。然后你就可以画「均值±1σ」「均值±2σ」的通道线。我一般用过去60个交易日的数据来计算,太短了噪声大,太长了市场结构可能已经变了。

统计量 含义 应用场景
均值 价差的中心位置 判断当前价差是否偏离正常水平
标准差 价差的波动幅度 设定开仓/平仓阈值
偏度 价差分布的不对称性 判断价差是否容易单边极端
峰度 价差分布的尾部厚度 判断极端行情出现的概率

2. 平稳性检验(ADF检验)

这个很重要。如果价差序列不平稳,那你的套利策略就是空中楼阁。我习惯用ADF检验,p值小于0.05才算平稳。如果不平稳,说明价差没有均值回归特性,不适合做套利。

# Python代码示例
from statsmodels.tsa.stattools import adfuller

# 假设spread是价差序列
result = adfuller(spread)
print(f'ADF统计量: {result[0]}')
print(f'p值: {result[1]}')

if result[1] < 0.05:
    print('价差序列平稳,适合套利')
else:
    print('价差不平稳,需要差分或换品种')
我的经验: 有时候ADF检验通不过,不代表完全不能做。你可以试试用价差的「变化量」来做,或者用滚动窗口的标准化价差。我曾经在焦煤焦炭的跨品种套利上,原始价差不平稳,但做了对数比值后就平稳了。

3. 自相关性分析

价差有没有「记忆性」?今天的价差和昨天的价差有没有关系?我一般看ACF(自相关函数)图。如果自相关系数衰减很慢,说明价差有趋势性,不适合做均值回归套利。如果衰减很快,那就是白噪声,适合做回归策略。

4. 分位数分析

这个我特别喜欢用。计算价差的历史分位数,比如5%、25%、50%、75%、95%。当前价差如果处于95%分位数以上,那就是极度偏高,做空价差的胜率很高。反过来,低于5%分位数,做多价差的胜率很高。

实战要点: 分位数比标准差更稳健。因为标准差假设数据是正态分布,但价差数据往往有厚尾。分位数不受极端值影响,更适合做阈值设定。我现在的策略,开仓阈值统一用分位数,不用标准差。

好了,价差分析这块,核心就是三件事:算对价差、画好图形、算清统计量。这三步走扎实了,后面的套利策略才有根基。我见过太多人一上来就搞机器学习、神经网络,结果连价差的基本统计特征都没搞清楚,那纯粹是瞎折腾。


专注资料整理