15. 跨市场基差套利:内外盘价差(沪铜与LME铜)、汇率影响、跨境套利注意事项
跨市场基差套利,说白了就是吃两个市场之间的价差。
我最早接触这个,是在2015年。那时候沪铜和LME铜的价差波动特别大,一天几十个点很正常。我有个朋友,专门盯着这个做,一年下来收益相当可观。但后来呢?汇率一波动,利润全吐回去了。
所以今天咱们聊聊,内外盘价差到底怎么抓,汇率怎么处理,还有那些坑——嗯,我踩过的坑。
15.1 沪铜与LME铜:价差从哪来?
沪铜在上海期货交易所交易,LME铜在伦敦金属交易所交易。按理说,同一品种,价格应该差不多。但实际不是这样。
为什么会这样?
原因有三个:
- 交易时间不同:沪铜白天交易,LME是连续交易。你这边收盘了,人家还在动。第二天开盘,价差可能已经变了。
- 供需结构不同:国内铜库存、进口政策、下游需求,跟国际市场不完全同步。我记得2017年,国内环保限产,沪铜涨得比LME猛,价差一下就拉开了。
- 汇率预期:人民币升值或贬值,会直接影响内外盘比价。这个后面细说。
所以,价差不是随机波动的。它有规律,有驱动因素。我们要做的,就是识别这些规律,然后——嗯,套利。
15.2 价差计算:别搞错公式
计算内外盘价差,有个标准公式:
价差 = 沪铜价格(元/吨) - LME铜价格(美元/吨) × 汇率 × 单位换算系数
单位换算系数是多少?
LME铜是25吨/手,沪铜是5吨/手。但咱们算的是每吨价格,所以系数就是1。不过要注意,LME报价单位是美元/吨,沪铜是人民币/吨。所以汇率必须乘进去。
我见过有人直接拿沪铜价格减LME价格,然后说价差很大。这明显是错的。你想想看,一个人民币一个美元,能直接减吗?
正确的做法:
import pandas as pd
# 假设数据
shfe_price = 70000 # 沪铜,元/吨
lme_price = 9500 # LME铜,美元/吨
fx_rate = 7.25 # 美元兑人民币
# 计算价差
lme_cny = lme_price * fx_rate
spread = shfe_price - lme_cny
print(f"LME铜折合人民币: {lme_cny:.2f} 元/吨")
print(f"内外盘价差: {spread:.2f} 元/吨")
输出:
LME铜折合人民币: 68875.00 元/吨
内外盘价差: 1125.00 元/吨
价差1125元/吨,看起来很大。但别急,这还没完。
15.3 汇率影响:套利的隐形杀手
汇率是跨市场套利里最容易被忽视的因素。
我刚开始做的时候,只盯着价差。价差大了就开仓,价差小了就平仓。结果呢?有一次价差确实收窄了,但人民币突然贬值,我这边一算,反而亏了。
为什么会这样?
因为价差公式里包含了汇率。汇率一变,价差就变了。你以为是价差在动,其实是汇率在动。
举个例子:
| 时间 | 沪铜(元/吨) | LME铜(美元/吨) | 汇率 | 价差(元/吨) |
|---|---|---|---|---|
| T1 | 70000 | 9500 | 7.25 | 1125 |
| T2 | 70500 | 9550 | 7.30 | 1085 |
你看,沪铜涨了500,LME涨了50美元,按理说价差应该扩大。但汇率从7.25升到7.30,LME折合人民币变成了69715元,价差反而缩小了。
所以,做跨市场套利,必须把汇率风险考虑进去。
核心要点:价差波动 = 价格波动 + 汇率波动。两者叠加,才是真实的套利空间。
15.4 跨境套利注意事项:我踩过的坑
做跨境套利,有几个坑是绕不开的。我一个个说。
15.4.1 交易成本
国内手续费低,但LME的手续费不低。还有隔夜利息、交割费用。我算过一笔账,如果价差只有200元/吨,扣除所有成本,基本不赚钱。
所以,价差至少要覆盖成本的2倍以上,才值得做。
15.4.2 资金跨境
这个是大问题。国内资金出去难,国外资金进来也难。我记得2018年,有个机构想做内外盘套利,结果资金卡在跨境环节,整整一周没到位。等资金到了,价差早就没了。
我的建议是:提前准备好双币账户,或者用QDII通道。别等机会来了再折腾。
15.4.3 交割规则差异
沪铜是实物交割,LME也是实物交割。但交割品牌、升贴水、仓库位置都不一样。如果你做的是交割套利,这些细节必须搞清楚。
我曾经因为品牌升贴水没算对,交割时多付了50元/吨。虽然不多,但心里不舒服。
15.4.4 时差问题
LME的交易时间覆盖亚洲、欧洲、美洲。你这边晚上睡觉,人家那边可能已经涨了3%。第二天开盘,价差可能完全变了。
所以,做跨市场套利,最好用程序盯盘。手动盯?不现实。
警告:不要试图用手动交易做跨市场套利。价差变化快,反应慢了就是亏损。我见过太多人因为手动下单,错过了最佳平仓时机。
15.5 套利策略:怎么抓机会?
说了这么多,到底怎么抓?
我常用的策略有两种:
15.5.1 统计套利
计算历史价差的均值和标准差。当价差偏离均值2个标准差以上时,开仓。回归均值时平仓。
import numpy as np
# 假设有历史价差数据
spread_history = [100, 150, 200, 180, 120, 90, 110, 130, 160, 140]
mean = np.mean(spread_history)
std = np.std(spread_history)
current_spread = 250
if current_spread > mean + 2 * std:
print("价差过大,做空价差(卖沪铜,买LME铜)")
elif current_spread < mean - 2 * std:
print("价差过小,做多价差(买沪铜,卖LME铜)")
else:
print("价差在正常范围内,观望")
15.5.2 事件驱动套利
比如国内公布铜进口数据、LME库存变化、美联储加息等。这些事件会短期影响价差。
我习惯在事件发生前,先建一个小的头寸。等事件落地,价差反应到位了,再平仓。这种策略胜率不高,但盈亏比很好。
15.6 知识体系:一张图看懂
下面这张图,是我自己总结的跨市场基差套利核心逻辑。你看一眼,基本就明白了。
这张图里,核心就是价差计算。左边是沪铜,右边是LME铜,中间是汇率、成本、交割规则这些影响因素。下面是我们最终要用的套利策略。
个人小技巧:我习惯在每天开盘前,先算一下当前价差的历史分位数。如果价差处于90%分位数以上,我就重点关注。如果同时有事件驱动(比如LME库存大幅下降),那胜率会更高。
好了,跨市场基差套利就聊到这儿。记住,汇率是隐形杀手,成本是隐形门槛,规则是隐形陷阱。把这些都搞清楚了,剩下的就是——嗯,等着数钱。
公众号:蓝海资料掘金营,微信deep3321