第四节:价差计算——价差、比率、相关系数与协整关系
各位同学,今天我们来聊聊跨市场套利中最核心的数学工具。说白了,就是怎么量化两个市场之间的“关系”。
我个人习惯把价差分析分成四个层次:价差、比率、相关系数和协整关系。它们就像四把尺子,一把比一把精密。
1. 价差:最直观的套利信号
价差就是两个价格直接相减。比如沪铜和伦铜,一个在上海期货交易所,一个在伦敦金属交易所。如果沪铜价格是50000元/吨,伦铜价格是6000美元/吨(假设汇率7.2),那价差就是:
价差 = 沪铜价格 - 伦铜价格 × 汇率
= 50000 - 6000 × 7.2
= 50000 - 43200
= 6800 元/吨
嗯,这里要注意:价差必须统一计价单位。我在项目中遇到过有人直接用人民币价格减美元价格,结果算出来一个天文数字——那其实是单位没对齐。
核心要点:价差 = P1 - P2,其中P1和P2必须是同一货币、同一单位下的价格。
2. 比率:消除量纲影响
价差有个问题:它受价格绝对值影响。比如铜价从50000涨到60000,价差可能从6800变成7800,但这不代表套利机会变大了——可能只是整体价格水平上移了。
这时候就要用比率:
比率 = P1 / P2
还是刚才的例子:
比率 = 50000 / (6000 × 7.2) = 50000 / 43200 ≈ 1.157
这个1.157意味着沪铜比伦铜贵了15.7%。比率的好处是它不受价格水平影响,只看相对关系。我习惯用比率来做长期均值回归的判断——如果历史均值是1.10,现在到了1.15,那可能就偏高了。
我的经验:比率适合价格波动较大的品种,比如股指期货。价差适合价格波动较小的品种,比如国债期货。选哪个,取决于你的数据特征。
3. 相关系数:衡量线性关系
相关系数衡量两个价格序列的线性相关程度。取值范围在-1到1之间:
- 1:完全正相关,一个涨另一个也涨
- -1:完全负相关,一个涨另一个跌
- 0:没有线性关系
计算公式:
ρ = Cov(P1, P2) / (σ1 × σ2)
其中Cov是协方差,σ是标准差。说白了,就是看两个价格一起波动的程度。
我见过有人只看相关系数就做套利,结果亏得很惨。为什么?因为相关系数只告诉你“它们一起动”,但没告诉你“它们会不会分开”。
避坑指南:相关系数高不代表套利机会好。两个完全正相关的品种,价差可能一直扩大,永远不会回归。相关系数只是第一步,不是终点。
4. 协整关系:套利的真正基石
这才是我们今天的主角。协整关系说的是:两个价格序列虽然各自随机游走,但它们之间存在一个长期均衡关系。一旦偏离这个均衡,就会自动回归。
用数学语言说:如果两个时间序列P1和P2都是I(1)(一阶单整),且存在一个线性组合P1 - β×P2是平稳的(I(0)),那么它们就是协整的。
检验协整的常用方法是Engle-Granger两步法:
- 第一步:用OLS回归 P1 = α + β×P2 + ε
- 第二步:检验残差ε是否平稳(用ADF检验)
代码示例(Python):
import numpy as np
import pandas as pd
from statsmodels.tsa.stattools import adfuller
import statsmodels.api as sm
# 假设p1和p2是两个价格序列
def check_cointegration(p1, p2, significance=0.05):
# 第一步:OLS回归
X = sm.add_constant(p2)
model = sm.OLS(p1, X).fit()
beta = model.params[1]
residuals = model.resid
# 第二步:ADF检验残差
adf_stat, p_value, _, _, critical_values, _ = adfuller(residuals)
# 判断是否协整
is_cointegrated = p_value < significance
return {
'beta': beta,
'adf_statistic': adf_stat,
'p_value': p_value,
'is_cointegrated': is_cointegrated,
'residuals': residuals
}
# 使用示例
result = check_cointegration(p1, p2)
print(f"协整系数β: {result['beta']:.4f}")
print(f"ADF检验p值: {result['p_value']:.4f}")
print(f"是否协整: {result['is_cointegrated']}")
我曾经用这个方法做沪深300和中证500的配对交易。两个指数看起来相关性很高,但协整检验发现它们并不协整——也就是说,价差不会自动回归。如果当时只看相关系数就进场,后果不堪设想。
关键区别:相关系数衡量的是“一起动的程度”,协整衡量的是“会不会分开”。套利交易需要的是协整,不是高相关。
知识体系总览
下面这张图总结了四个层次的关系:
实际应用中的选择
那么在实际项目中,到底用哪个?我给大家一个参考:
| 指标 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 价差 | 同品种、同市场 | 直观、计算简单 | 受价格水平影响 |
| 比率 | 跨品种、跨市场 | 消除量纲、适合均值回归 | 对极端值敏感 |
| 相关系数 | 初步筛选、风险对冲 | 快速判断线性关系 | 不保证价差回归 |
| 协整关系 | 配对交易、统计套利 | 保证长期均衡、可交易 | 计算复杂、需检验 |
我的建议:做套利策略,至少要用到协整检验。相关系数可以作为快速筛选工具,但最终决策一定要看协整。我见过太多人用相关系数做交易,结果价差一去不返——那叫趋势,不叫套利。
好了,这一节的内容就到这里。记住:价差是表象,协整是本质。下次当你看到两个价格在波动时,先问问自己——它们真的会回来吗?