第二节:价差与基差——套利交易的核心语言
做期货套利,你首先得听懂市场在说什么。
市场不会直接告诉你「这个品种被高估了」或者「那个合约该跌了」。它只会通过价格关系,悄悄传递信号。而价差和基差,就是解读这些信号的密码本。
我个人习惯把价差比作「双胞胎的身高差」——两个本来应该差不多的东西,突然一个长高了,另一个没跟上,这里面就有机会。
一、价差的概念
价差,说白了就是两个相关期货合约之间的价格差。
比如螺纹钢主力合约和次主力合约,比如豆粕和菜粕,比如上海铜和伦敦铜。它们之间天然存在某种经济联系,价格应该保持合理距离。一旦这个距离走偏了,套利空间就出现了。
价差的本质:价差 = 合约A价格 - 合约B价格
注意,这个差值可以是正数,也可以是负数。正负本身不重要,重要的是它是否偏离了历史常态。
我刚开始做套利那会儿,犯过一个低级错误——只看价差的绝对值大小,觉得价差大了就该回归。结果呢?被市场狠狠教育了一顿。后来才明白,价差的大小要放在历史分布里看,要结合基本面判断,不能拍脑袋。
二、基差的概念
基差和价差有点像,但更具体。基差特指:现货价格与期货价格之间的差。
公式很简单:
基差 = 现货价格 - 期货价格
基差为正,叫「现货升水」或「Back结构」;基差为负,叫「期货升水」或「Contango结构」。
你想想看,基差反映了什么?它反映的是市场对未来的预期。如果大家都觉得未来供应紧张,期货价格就会高于现货,基差为负。反过来,如果现货紧缺而远期预期宽松,基差就会走强。
我的经验:基差是判断套利时机的重要参考。我曾经在铜的期现套利中,就因为忽略了基差结构的变化,差点把利润全吐回去。后来我养成了一个习惯——每次开仓前,先看基差曲线,确认当前处于什么结构。
三、价差的计算公式
价差计算本身不复杂,但不同场景下公式略有差异。我整理了一张表,方便你对照:
| 套利类型 | 价差公式 | 说明 |
|---|---|---|
| 跨期套利 | 价差 = 近月合约 - 远月合约 | 同品种不同月份 |
| 跨品种套利 | 价差 = 品种A - 品种B × 系数 | 需考虑合约乘数差异 |
| 跨市场套利 | 价差 = 内盘 - 外盘 × 汇率 | 需换算为同一计价单位 |
| 期现套利 | 价差 = 期货 - 现货 | 即基差的相反数 |
嗯,这里要注意一点:跨品种套利时,不能直接拿价格相减。比如螺纹钢和热卷,合约乘数都是10吨/手,但价格水平不同,直接减没有意义。我一般会先做标准化处理,或者用比值来代替价差。
四、基差的强弱与变化
基差不是静止的,它每天都在波动。理解基差的强弱变化,是套利交易的核心能力之一。
基差的变化可以分为三种情况:
- 基差走强:现货涨得比期货多,或者现货跌得比期货少。基差数值变大。
- 基差走弱:现货涨得比期货少,或者现货跌得比期货多。基差数值变小。
- 基差回归:基差从偏离状态回到正常水平。这是套利利润的来源。
避坑指南:我曾经在豆粕的期现套利中,看到基差已经扩大到历史极值,就果断入场了。结果基差继续扩大,差点爆仓。后来我学会了——基差的极值可以突破,不要轻易「抄底」基差。要等它出现拐点信号再动手。
基差的强弱,本质上由供需决定。比如临近交割月,现货紧张,基差就会走强。再比如宏观利空来袭,期货反应比现货快,基差就会瞬间走弱。这些规律,你得多复盘才能摸透。
五、价差图的绘制
做套利交易,价差图就是你的作战地图。没有它,你就是在黑夜里开车。
绘制价差图其实很简单,就是把两个合约的价格相减,然后画成折线图。但这里有几个细节,我踩过坑,得跟你说说:
- 数据对齐:两个合约的交易时间可能不同,比如夜盘品种。一定要确保时间戳对齐,否则价差会出现「假信号」。
- 异常值处理:偶尔会出现瞬间的极端报价,比如一笔大单把价格打飞了。我一般会用中位数滤波或者剔除3倍标准差以外的数据。
- 滚动处理:主力合约会切换,价差图需要做滚动拼接。否则换月那天价差会跳变,看起来像出现了大机会,其实是假象。
下面是我用Python画价差图的示例代码,你可以参考:
import pandas as pd
import matplotlib.pyplot as plt
# 假设df包含两列:contract1, contract2
df['spread'] = df['contract1'] - df['contract2']
plt.figure(figsize=(12, 6))
plt.plot(df.index, df['spread'], label='价差', color='#2E86AB')
plt.axhline(y=df['spread'].mean(), color='red', linestyle='--', label='均值')
plt.axhline(y=df['spread'].mean() + 2*df['spread'].std(), color='orange', linestyle=':', label='+2σ')
plt.axhline(y=df['spread'].mean() - 2*df['spread'].std(), color='orange', linestyle=':', label='-2σ')
plt.title('价差走势图')
plt.legend()
plt.show()
你看,加上均值线和标准差线之后,价差图就变成了一个「交易信号系统」。当价差突破上下轨时,往往意味着套利机会出现了。
为了让你更直观地理解价差与基差的逻辑关系,我画了一张结构图:
这张图把价差和基差的分类、变化形态都串起来了。你保存下来,做交易前扫一眼,思路会清晰很多。
一个小技巧:我习惯在价差图上叠加成交量信息。如果价差突破关键位置时成交量放大,说明这个突破是「真突破」,可以跟进。如果缩量突破,多半是假信号,别急着入场。
好了,价差和基差的核心内容就这些。记住一句话:价差是套利交易的语言,基差是期现联动的桥梁。把这两个概念吃透了,后面的策略学习会轻松很多。