第八章 跨品种套利策略:产业链逻辑、替代品逻辑、比价关系、协整关系检验

跨品种套利,说白了就是「做多一个品种,做空另一个品种」。

听起来简单吧?但这里面的门道,比同品种跨期套利要深得多。我刚开始做跨品种套利时,踩过不少坑。有一次,我看好螺纹钢和铁矿石的比价关系,觉得螺纹被低估了,结果进去就被打脸——产业链逻辑没吃透,亏得我连续好几天没睡好。

今天咱们就把这块硬骨头啃下来。我会从产业链逻辑讲起,再到替代品逻辑、比价关系,最后用协整检验来量化验证。嗯,一步步来。

8.1 产业链逻辑:上下游的「利润分配」游戏

产业链套利,核心就一句话:利润在产业链上下游之间怎么分

举个例子,螺纹钢和铁矿石。铁矿石是原料,螺纹钢是成品。正常情况下,螺纹钢价格 = 铁矿石成本 + 加工费 + 利润。但市场情绪一上来,这个等式就不成立了。

  • 当螺纹钢利润过高:钢厂拼命生产,铁矿石需求增加,铁矿石价格会被拉起来。这时候做空螺纹、做多铁矿,就是赌利润回归。
  • 当螺纹钢利润过低甚至亏损:钢厂减产,铁矿石需求下降,铁矿价格会跌得更狠。这时候做多螺纹、做空铁矿,就是赌利润修复。

我个人习惯:先看产业链的「利润分配图」。把上下游品种的利润算清楚,再决定方向。利润分配图长这样:

产业链利润分配图(以螺纹钢-铁矿石为例) 铁矿石(原料) 成本:500元/吨 采购 钢厂(加工) 加工费:300元/吨 产出 螺纹钢 售价:1000元/吨 利润 = 螺纹钢售价 - 铁矿石成本 - 加工费 = 1000 - 500 - 300 = 200元/吨 套利逻辑 • 利润过高(>300元/吨):做空螺纹 + 做多铁矿 → 赌利润回归 • 利润过低(<100元/吨):做多螺纹 + 做空铁矿 → 赌利润修复 • 利润正常(100-300元/吨):观望,不参与

避坑指南:我曾经在螺纹钢利润高达400元/吨时,直接做空螺纹、做多铁矿。结果利润继续扩大到500元/吨,差点爆仓。后来我学乖了——利润回归不是一蹴而就的,要等拐点信号出现再进场。

8.2 替代品逻辑:谁便宜就用谁

替代品套利,核心是「性价比切换」。

举个例子,豆粕和菜粕。豆粕是饲料中的蛋白来源,菜粕也是。当豆粕太贵时,饲料厂就会多配菜粕;当菜粕太贵时,就多配豆粕。两者价格会互相牵制。

我做过一个经典的替代品套利:豆粕-菜粕价差套利

  • 价差过高(豆粕比菜粕贵太多):饲料厂会减少豆粕用量,增加菜粕用量。做空豆粕、做多菜粕。
  • 价差过低(豆粕比菜粕便宜太多):饲料厂会多配豆粕,少配菜粕。做多豆粕、做空菜粕。

关键点:替代品套利的核心是「替代弹性」。替代弹性越大,价差回归的动力越强。豆粕和菜粕的替代弹性大概在0.3-0.5之间,不算特别高,但足够做套利了。

8.3 比价关系:用历史数据画「价格走廊」

比价关系,说白了就是看两个品种的价格比值,是不是在历史正常范围内。

举个例子,铜和铝。铜和铝在电线电缆领域有替代关系。正常情况下,铜价/铝价比值在2.5-3.5之间波动。如果比值超过3.5,说明铜太贵了,电线厂会改用铝;如果比值低于2.5,说明铜太便宜了,铝会被替代。

我习惯用「比价走廊」来观察:

比价区间 状态 套利方向
> 3.5 铜被高估 做空铜 + 做多铝
2.5 - 3.5 正常区间 观望
< 2.5 铜被低估 做多铜 + 做空铝

注意:比价关系不是一成不变的。我记得2015年之后,铜铝比价中枢从3.0降到了2.8,因为铝的产能扩张太快。所以,比价走廊要定期更新,不能死守历史数据。

8.4 协整关系检验:用数学验证套利逻辑

前面讲的产业链逻辑、替代品逻辑、比价关系,都是定性分析。但做量化交易,光定性不够,还得定量验证。

协整检验,就是用来验证两个品种之间是否存在长期均衡关系的。如果存在协整关系,那么价差偏离均值后,大概率会回归。

我常用的方法是Engle-Granger两步法

  1. 第一步:用OLS回归,估计两个品种的长期关系。比如:Y = α + βX + ε
  2. 第二步:检验残差ε是否平稳。如果残差平稳,说明存在协整关系。

下面是我写的一个Python示例,用来检验螺纹钢和铁矿石的协整关系:

import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.tsa.stattools import adfuller

# 模拟数据(实际使用时替换为真实行情数据)
np.random.seed(42)
dates = pd.date_range('2023-01-01', periods=500, freq='D')
iron_ore = np.cumsum(np.random.randn(500)) + 500  # 铁矿石价格
rebar = iron_ore * 1.8 + np.random.randn(500) * 20 + 200  # 螺纹钢价格

# 第一步:OLS回归
X = sm.add_constant(iron_ore)
model = sm.OLS(rebar, X).fit()
residuals = model.resid

# 第二步:ADF检验残差平稳性
adf_result = adfuller(residuals, maxlag=5)
print(f'ADF统计量: {adf_result[0]:.4f}')
print(f'p值: {adf_result[1]:.4f}')

if adf_result[1] < 0.05:
    print('结论:存在协整关系,可以做价差套利')
else:
    print('结论:不存在协整关系,谨慎参与')

我的经验:p值小于0.05才算通过。但别太迷信p值。我见过p值0.01的品种,价差偏离后就是不回归,因为基本面变了。所以,协整检验只是工具,不是圣杯。最终决策还是要结合产业链逻辑。

8.5 实战框架:从逻辑到执行

好了,前面讲了这么多,咱们来总结一个实战框架。我每次做跨品种套利,都按这个流程走:

  1. 选品种:找产业链上下游或替代品关系的品种。比如螺纹钢-铁矿石、豆粕-菜粕、铜-铝。
  2. 定逻辑:用产业链利润分配或替代品性价比,判断当前价差是否合理。
  3. 画走廊:用历史比价数据,画出正常波动区间。
  4. 做检验:用协整检验验证价差是否具有均值回归特性。
  5. 设止损:价差突破历史极值,或者基本面发生重大变化,必须止损。

最后说一句:跨品种套利比跨期套利风险大,因为两个品种的基本面可能完全不同。我见过有人做铜铝套利,结果铜矿罢工、铝厂增产,两边都亏。所以,仓位一定要轻,止损一定要严


公众号:蓝海资料掘金营,微信deep3321