市场结构:全球主要交易所概览
做跨市场套利,第一件事是什么?
不是写代码,不是找策略。是搞清楚你交易的对手方在哪,他们什么时候开门,规则是什么。
我见过太多新手,策略回测跑得漂亮,一上线就亏钱。为什么?因为忽略了交易所之间的时间差和规则差异。说白了,你连市场什么时候开盘都不知道,怎么套利?
全球四大交易所集群
我个人习惯把全球交易所分成四个集群。每个集群都有自己的脾气。
| 集群 | 代表交易所 | 核心品种 | 交易时间(北京时间) |
|---|---|---|---|
| 北美 | CME(芝加哥商品交易所) | 股指期货、黄金、原油、农产品 | 白天 06:00 - 次日 05:00(夏令时) |
| 欧洲 | LME(伦敦金属交易所) | 铜、铝、锌、铅、镍、锡 | 上午 08:00 - 次日 02:00 |
| 亚洲 | SHFE(上期所)、DCE(大商所) | 螺纹钢、铁矿石、豆粕、棕榈油 | 白天 09:00 - 15:00,夜盘 21:00 - 23:00/次日 02:30 |
| 新兴市场 | INE(上海国际能源交易中心) | 原油、20号胶、低硫燃料油 | 白天 09:00 - 15:00,夜盘 21:00 - 次日 02:30 |
核心要点:CME 是近乎24小时交易的。LME 有固定的场内圈交易时间。国内交易所分日盘和夜盘,夜盘只覆盖部分品种。
CME:全球流动性之王
CME 是我最常打交道的交易所。它的 Globex 电子盘几乎覆盖全天。
举个例子,黄金期货在 CME 交易。北京时间早上6点开盘,一直持续到次日凌晨5点。中间只有1小时休市。
这意味着什么?
意味着当国内夜盘收盘后,CME 还在交易。很多跨市场套利机会,就出现在这个时间窗口。
我的习惯:我会在夜盘收盘前,把 CME 的订单簿挂好。等国内收盘后,CME 的波动往往更大。我曾经靠这个时间差,抓到过几次不错的价差回归机会。
LME:古老的圈内交易
LME 比较特殊。它有三种交易方式:
- 场内圈交易(Ring): 上午和下午各一场,交易员围成一圈喊价。这是 LME 的特色,也是价格发现的核心。
- 电子盘(LMEselect): 和 CME 类似,但流动性不如场内。
- 场外交易(Inter-office): 通过经纪商私下撮合。
为什么要注意这个?
因为 LME 的官方结算价,是在场内圈交易结束时确定的。如果你做铜的跨市场套利,比如 LME 铜 vs SHFE 铜,那么 LME 的官方价就是你的锚点。
避坑指南:我曾经在 LME 的电子盘上挂单,以为流动性足够。结果发现,在非场内交易时段,LME 的买卖价差可以大到让你怀疑人生。所以,做 LME 品种,最好盯着场内圈的时间。
SHFE 与 DCE:国内双雄
国内交易所的规则,和国外有很大不同。
首先,交易时间分日盘和夜盘。日盘是上午9点到下午3点,中间有休市。夜盘从晚上9点开始,不同品种收盘时间不同。
其次,涨跌停板制度。国内有±4%到±8%的涨跌停限制。CME 没有这个限制。
第三,保证金制度。国内交易所的保证金比例经常调整,尤其是在临近交割月的时候。
| 交易所 | 涨跌停板 | 保证金(主力合约) | 交割规则 |
|---|---|---|---|
| SHFE | ±5% ~ ±8% | 10% ~ 15% | 实物交割,最后交易日为交割月第15日 |
| DCE | ±4% ~ ±6% | 8% ~ 12% | 实物交割,最后交易日为交割月第10日 |
| CME | 无 | 3% ~ 8% | 实物/现金交割,最后交易日为交割月第3个周五 |
| LME | 无 | 5% ~ 10% | 实物交割,每日滚动交割 |
关键差异:国内交易所的保证金比例远高于 CME。这意味着同样的资金,在国内能撬动的杠杆更小。但反过来,风险也更可控。
交易时间差异:套利的时间窗口
做跨市场套利,时间就是生命。我画了一张图,帮你直观理解各交易所的时间重叠关系。
从图上你能看到什么?
- 重叠区1: 北京时间 09:00 - 15:00。国内日盘 + LME 电子盘 + CME 电子盘。这是流动性最好的时段。
- 重叠区2: 北京时间 21:00 - 23:00。国内夜盘 + CME 电子盘。这是跨市场套利的黄金时段。
- 孤岛时段: 国内夜盘收盘后(23:00 - 次日 02:30),只有 CME 和 LME 在交易。这时候国内价格不动,但外盘在动。第二天开盘,国内会跳空补涨或补跌。
我的经验:我习惯在夜盘收盘前,检查一下 CME 的持仓变化。如果 CME 的持仓量突然增加,而价格没怎么动,那第二天国内开盘大概率会有大波动。这个信号,比任何技术指标都管用。
规则差异:细节决定成败
除了时间,规则差异也是套利的关键。我挑几个最重要的说。
1. 报价单位
CME 的黄金是美元/盎司,SHFE 的黄金是人民币/克。做价差时,必须换算成同一单位。
举个例子:CME 黄金 2000 美元/盎司,汇率 7.2,1盎司=31.1035克。换算后:2000 * 7.2 / 31.1035 ≈ 463 人民币/克。如果 SHFE 黄金报价 470,那价差就是 7 元/克。
2. 合约规格
CME 的铜是 25000 磅/手,SHFE 的铜是 5 吨/手。1吨=2204.62磅。所以 1手 SHFE 铜 = 5 * 2204.62 = 11023.1 磅,约等于 0.44 手 CME 铜。
做套利时,必须按比例配仓。否则你一边多一边空,头寸不对等,风险很大。
3. 交割规则
LME 是每日滚动交割。你可以选择在任何一天交割。SHFE 是固定最后交易日。这意味着临近交割月,国内合约的流动性会急剧下降,而 LME 的流动性相对平稳。
避坑指南:我曾经在 SHFE 铜临近交割月时,做了一笔跨市场套利。结果国内合约流动性枯竭,我平仓时滑了 3 个点。那笔套利本来能赚 5 个点,最后只赚了 2 个点。所以,尽量选主力合约,远离临近交割的合约。
实战:如何利用规则差异
说了这么多,怎么用?我给你一个简单的框架。
# 伪代码:跨市场套利检查清单
def check_arbitrage_opportunity():
# 1. 检查时间重叠
current_time = get_current_btc_time()
if not is_overlap(current_time, ['CME', 'SHFE']):
print("当前无重叠,跳过")
return
# 2. 获取价格并换算
cme_price = get_cme_price('GC') # 黄金
shfe_price = get_shfe_price('au')
converted_cme = cme_price * get_exchange_rate() / 31.1035
# 3. 计算价差
spread = shfe_price - converted_cme
if abs(spread) > threshold:
print(f"发现套利机会,价差: {spread:.2f}")
# 4. 检查合约规格,计算配仓比例
cme_lot = 100 # 盎司
shfe_lot = 1000 # 克
ratio = (cme_lot * 31.1035) / shfe_lot
print(f"配仓比例: 1手CME : {ratio:.2f}手SHFE")
这个框架很简单,但很实用。你只需要把数据源接好,把换算逻辑写对,剩下的就是监控和下单。
核心总结:跨市场套利,本质是赚规则差异的钱。时间差、报价单位、合约规格、交割规则,每一个细节都可能成为你的利润来源。但也可能成为你的亏损陷阱。
嗯,今天就先聊到这。记住,做套利之前,先把市场结构摸清楚。别急着赚钱,先学会不亏钱。