第二章 市场微观结构:交易所撮合机制、订单簿深度、滑点与冲击成本对套利的影响

做套利的人,最容易犯的一个错误是什么?

我告诉你——就是只看价差,不看微观结构。

价差再大,你进不去、出不来,全是白搭。我见过太多人,策略回测跑得漂亮,一上实盘就亏钱。为什么?因为回测里没有滑点,没有冲击成本,没有订单簿的深度变化。说白了,你看到的那个价差,根本就不是你能吃到的价差。

这一章,我们就来拆解这些「看不见的手」。

2.1 交易所的撮合机制:你的对手盘是谁?

先问个问题:你下的单子,到底是怎么成交的?

国内期货交易所,比如上期所、大商所、郑商所,用的都是连续竞价撮合。现货交易所,比如沪深交易所,也是连续竞价。但细节上,有差别。

2.1.1 价格优先、时间优先

这是最基础的规则。买单出价高的先成交,卖单出价低的先成交。价格一样,谁先挂单谁先成交。

听起来简单?嗯,但这里有个坑。

我曾经在实盘里吃过亏。当时做螺纹钢的期现套利,现货那边我挂了个买单,期货这边我挂了个卖单。结果现货成交了,期货没成交。为什么?因为期货那边有个比我早挂1毫秒的单子,价格一样,人家先走了。我这边价差瞬间就没了,现货砸手里了。

所以,时间优先这四个字,在套利里就是命根子。你比别人慢一毫秒,可能就吃不到这口肉。

2.1.2 集合竞价与开盘价的形成

每天开盘前,交易所会有一个集合竞价阶段。这个阶段,所有单子都先攒着,不成交。等到某一时刻,系统找出一个能让成交量最大的价格,然后统一成交。

做套利的人,要特别注意这个阶段。为什么?

  • 现货和期货的开盘时间可能不同步。比如股指期货9:30开盘,现货ETF也是9:30开盘。但集合竞价的时间窗口不一样。你如果在集合竞价阶段下单,可能一边成交了,另一边没成交。
  • 开盘价容易跳空。集合竞价出来的价格,可能跟昨天的收盘价差一大截。你如果没算好这个跳空,套利头寸可能直接穿仓。
注意: 我个人习惯,在集合竞价阶段尽量不下单。除非你用的是算法交易,能精确控制。否则,等开盘后价格稳定了再进场,虽然可能少赚一点,但安全。

2.2 订单簿深度:你能吃下多少量?

订单簿,就是交易所里所有挂单的集合。买一到买五,卖一到卖五,每个价位上挂着多少手。

做套利,你不仅要看价差,还要看订单簿的厚度

2.2.1 深度决定了你的容量

举个例子。你发现螺纹钢期货和现货的价差有10个点。你想吃这10个点。但你看订单簿,期货那边卖一只有10手,卖二有15手,卖三有20手。你想吃100手?对不起,你得把卖一到卖五全吃掉。这样一来,你的成交均价就不是卖一的价格了,而是被拉高了好几个点。

价差10个点,你实际吃到嘴里的可能只有5个点。这就是深度不够带来的问题。

价位 卖单量(手) 累计量(手)
卖一 10 10
卖二 15 25
卖三 20 45
卖四 30 75
卖五 40 115

你看,你想吃100手,得吃到卖四。你的成交均价是多少?算一下:

成交均价 = (10*卖一价 + 15*卖二价 + 20*卖三价 + 30*卖四价) / 75

注意,这里只成交了75手,因为卖四只有30手,你吃不完。剩下的25手,你得继续吃卖五。价格又高了。

2.2.2 深度变化是信号

订单簿不是静止的。它每时每刻都在变。我个人经验是,订单簿的深度变化,往往比价格变化更有信息量

比如,你发现期货的卖一突然被撤单了,然后卖二、卖三也陆续撤单。这说明什么?说明有大资金在往上拉。他不想在低位卖。这时候,你如果还傻傻地挂卖单,可能就被轧空了。

反过来,如果买单深度突然增加,说明有人在下面托底。这时候做空要小心。

小技巧: 我建议你每天开盘前,先看一眼两个市场的订单簿深度。如果某个市场的深度特别薄,比如只有几手,那这个市场就不适合做大额套利。你想想看,你一手进去,价格就变了,还怎么玩?

2.3 滑点:你看到的价差不是你能吃到的价差

滑点,就是你的预期成交价和实际成交价之间的差。

做套利,滑点是最大的敌人。没有之一。

2.3.1 滑点的来源

  • 流动性不足:订单簿太薄,你吃不到理想价位。
  • 市场波动:在你下单到成交的这段时间里,价格变了。
  • 网络延迟:你的信号传到交易所,需要时间。这期间,别人可能已经抢先了。

我记得有一次做黄金期现套利。当时价差有2块钱,我觉得稳了。结果我下单的时候,黄金现货那边突然跳水,等我成交,价差已经变成负的了。那一单,我亏了5万。从那以后,我再也不敢只看价差,不看滑点了。

2.3.2 如何估算滑点?

一个简单的办法:看买卖价差(spread)。

如果期货的买卖价差是1个点,现货的买卖价差是0.5个点,那你一进一出,光滑点就要吃掉1.5个点。如果你的套利空间只有2个点,那你就只剩0.5个点了。再扣掉手续费,基本白干。

总滑点 ≈ 期货买卖价差 + 现货买卖价差 + 冲击成本

这个公式,我建议你刻在脑子里。

2.4 冲击成本:大资金的天敌

冲击成本,就是你下单时,因为你的单子太大,把价格推高了(或压低了)造成的额外成本。

小资金做套利,基本不考虑冲击成本。但如果你资金量大了,比如一次做几百手,冲击成本就是大头。

2.4.1 冲击成本怎么算?

简单说,就是你的成交均价,跟下单前的市场价之间的差。

举个例子。你想买100手螺纹钢期货。下单前,卖一价是4000,有10手。你100手进去,把卖一到卖五全吃了。成交均价可能是4010。那冲击成本就是10个点。

2.4.2 如何降低冲击成本?

  • 拆单:把大单拆成小单,慢慢吃。比如100手拆成10次,每次10手。
  • 用算法交易:比如TWAP(时间加权平均价格)或VWAP(成交量加权平均价格)算法。
  • 选流动性好的合约:主力合约流动性好,冲击成本低。非主力合约,别看价差大,你一进去就砸出个大坑。
核心观点: 套利不是看谁发现的价差大,而是看谁能在扣除滑点和冲击成本后,还能赚钱。我见过太多人,回测里年化50%,实盘一跑,连手续费都赚不回来。为什么?就是没算滑点和冲击成本。

2.5 知识体系总览

下面这张图,是我自己总结的。它把这一章的核心逻辑串起来了。你仔细看一遍,应该能有个整体印象。

市场微观结构对套利的影响 套利执行 撮合机制 订单簿深度 滑点 冲击成本 价格优先 时间优先 容量限制 信号识别 流动性 波动率 拆单 算法交易 选主力合约 核心:扣除滑点和冲击成本后,才是真实收益

2.6 实战中的避坑指南

最后,分享几个我踩过的坑。你记住了,能少走很多弯路。

  • 不要在高频数据上省钱:做套利,至少要用Tick级数据。用分钟级数据回测,出来的结果全是假的。我曾经用分钟数据回测,年化30%,实盘一跑,亏成狗。后来换成Tick数据,才发现滑点比我预想的大得多。
  • 注意交易所的熔断机制:有些交易所,价格波动太大时会触发熔断。熔断期间,你不能下单。如果你一边成交了,另一边熔断了,你就暴露了单边风险。
  • 小心节假日效应:节假日前后,流动性会骤降。订单簿深度可能只有平时的十分之一。这时候做套利,滑点会大得吓人。我一般节前三天就清仓了,不赚最后一口铜板。
  • 永远假设你的对手盘比你聪明:你看到的价差,别人也看到了。你能成交,是因为有人愿意在这个价位跟你成交。想想看,他为什么愿意?是不是他知道什么你不知道的信息?
我的习惯: 每次实盘前,我会先用小单子测试一下市场的深度和滑点。比如先下1手,看看成交价跟预期差多少。然后再下5手,10手。逐步加量。这样能摸清市场的脾气,避免一上来就吃大亏。

好了,这一章就到这里。微观结构这东西,说复杂也复杂,说简单也简单。你只要记住一句话:你看到的价差,不是你能吃到的价差。剩下的,就是在实战中慢慢体会了。

专注资料整理