第十九章 基差交易中的跨期套利:同一品种不同合约间的基差交易,日历价差策略
跨期套利,说白了就是吃同一品种不同月份合约之间的价差。我刚开始做期货那会儿,总觉得这玩意儿比单边交易稳当,后来发现——稳当是稳当,但坑也不少。
今天咱们就聊聊日历价差策略。这是基差交易里最基础、也最实用的玩法之一。
一、什么是日历价差?
日历价差,也叫跨期价差。就是同时买入一个合约、卖出另一个合约,两个合约的标的物相同,只是到期月份不同。
举个例子:
- 买入螺纹钢2501合约
- 卖出螺纹钢2505合约
这就是一组日历价差。你赚的不是价格涨跌,而是两个合约之间的价差变化。
核心逻辑:近月合约和远月合约的价差,最终会收敛到合理范围。我们就在价差偏离时进场,等它回归时平仓。
二、日历价差的两种形态
我习惯把日历价差分成两类:
1. 正向市场价差(Contango)
远月价格高于近月。这时候做空价差——卖远买近。为什么?因为远月溢价会随着时间推移而缩小。
2. 反向市场价差(Backwardation)
近月价格高于远月。这时候做多价差——买近卖远。近月强势会逐渐传导到远月,价差会收窄。
| 市场形态 | 价差方向 | 操作 | 盈利条件 |
|---|---|---|---|
| 正向市场(Contango) | 远月升水 | 卖远买近 | 价差缩小 |
| 反向市场(Backwardation) | 近月升水 | 买近卖远 | 价差缩小 |
三、实战中的日历价差策略
我个人习惯用两种策略:
策略一:统计套利型
基于历史价差分布。比如螺纹钢1-5价差,过去三年均值在80-120元之间。当价差突破150元时,我就考虑进场。
# 伪代码示例:统计套利信号生成
def calendar_spread_signal(price_near, price_far, lookback=60):
spread = price_far - price_near
mean = spread.rolling(lookback).mean()
std = spread.rolling(lookback).std()
if spread > mean + 2 * std:
return '做空价差' # 卖远买近
elif spread < mean - 2 * std:
return '做多价差' # 买近卖远
else:
return '观望'
我的经验:统计套利不能只看历史均值。要结合当前基本面——比如库存、开工率、季节性。有一次我光看统计指标进场,结果价差一直不回,后来才发现是交割规则变了。
策略二:基本面驱动型
比如:
- 近月临近交割,持仓量巨大,逼仓风险高 → 做多近月、空远月
- 远月有新产能投产预期 → 做空远月、多近月
- 季节性需求旺季 → 近月强于远月
四、日历价差的核心风控
嗯,这里要重点说。我见过太多人死在价差策略上,不是因为方向错了,而是因为风控没做好。
警告:日历价差不是无风险套利!价差可能持续偏离,甚至越走越远。
我的风控原则:
- 单笔最大亏损:不超过总资金的2%
- 价差止损:设定固定价差止损位,比如价差扩大30%就砍
- 时间止损:临近交割前两周必须平仓,不赌交割
- 仓位管理:单品种日历价差不超过总仓位的15%
五、避坑指南
我曾经踩过几个坑,分享给你:
- 流动性陷阱:远月合约流动性差,滑点大。我建议只做主力合约和次主力合约之间的价差。
- 交割规则差异:不同交易所、不同品种的交割规则不同。比如大商所的豆粕和郑商所的PTA,价差逻辑完全不一样。
- 保证金占用:跨期套利虽然风险低,但保证金占用不低。我习惯用交易所优惠后的保证金计算。
- 价差回归时间:有时候价差偏离后,需要几周甚至几个月才回归。别指望一夜暴富。
六、知识体系图
下面这张图,是我自己总结的日历价差策略框架:
七、总结
日历价差策略,说白了就是赚价差回归的钱。它比单边交易稳,但也不是无风险。
我个人觉得,做日历价差最重要的是三点:
- 懂统计:知道历史价差的分布和规律
- 懂基本面:知道价差为什么偏离,会不会回归
- 懂风控:知道什么时候该认输离场
记住一句话:价差策略不是印钞机,而是概率游戏。你只要把胜率做到60%以上,加上严格的风控,长期下来就能稳定盈利。
最后说一句:别迷信历史数据。市场会变,规则会变,你的策略也要跟着变。我每年都会重新校准一次价差参数,因为市场结构在变。