第二章:市场微观结构——订单簿基础、限价单与市价单、买卖价差、市场深度

做量化交易,尤其是做冲击成本建模,你绕不开一个东西——市场微观结构

说白了,就是市场到底是怎么运作的。不是K线图上那几根线,而是每一笔订单进来,怎么匹配,谁先成交,价格怎么跳。我刚开始做高频策略的时候,以为策略好就能赚钱,结果实盘一跑,滑点直接吃掉一半利润。嗯,从那以后,我老老实实把微观结构啃了一遍。

这一章,我们就从最基础的订单簿讲起。你搞懂了这些,冲击成本的计算才有根。

1. 订单簿:市场的“实时账本”

订单簿(Order Book),你可以把它想象成一个实时更新的账本。上面记录着所有交易者挂出来的、还没成交的订单。

它分两边:

  • 买单(Bid):大家想买,但还没买到。价格从高到低排列。
  • 卖单(Ask):大家想卖,但还没卖掉。价格从低到高排列。

我习惯把订单簿看作市场的“供需地图”。买盘是需求,卖盘是供给。价格怎么动,就看这两边谁更强。

举个例子,一个简单的订单簿长这样:

价格 买盘数量 卖盘数量 价格
10.00 100 200 10.01
9.99 300 150 10.02
9.98 500 100 10.03

最高买价是10.00,最低卖价是10.01。这中间的0.01,就是买卖价差。

我的小技巧: 看订单簿别只看第一档。我见过太多人只盯着最优买卖价,结果一个大单砸过来,直接穿了好几档。深度,才是关键。

2. 限价单 vs 市价单:两种“性格”的订单

订单分两种,性格完全不同。

  • 限价单(Limit Order):指定一个价格,不达到这个价就不成交。它提供流动性,像个“守株待兔”的猎人。
  • 市价单(Market Order):不指定价格,按当前最优价立刻成交。它消耗流动性,像个“横冲直撞”的蛮牛。

为什么会这样?你想想看,限价单挂在那,等着别人来吃,它给市场提供了深度。市价单一来,直接吃掉最优的挂单,深度就减少了。

我在做算法交易的时候,最头疼的就是市价单的冲击。一个大市价单砸下去,价格瞬间被推高好几个tick。所以,我后来做策略,都会刻意控制市价单的使用频率,或者拆成小单慢慢打。

避坑指南: 我曾经吃过一次亏。在流动性差的股票上用了市价单,结果成交价滑出去老远。后来我学乖了,流动性差的时候,坚决用限价单,哪怕慢一点。

3. 买卖价差:市场的“摩擦力”

买卖价差(Bid-Ask Spread),就是最优卖价减去最优买价。它就是你交易时,一买一卖之间要付出的成本。

价差越小,说明市场越活跃,流动性越好。价差越大,说明市场冷清,或者波动剧烈。

我一般用价差来快速判断一个品种的交易成本。比如,做股指期货,价差通常只有1个tick,成本很低。但做某些小盘股,价差可能有好几个tick,那冲击成本就大了。

价差的计算公式很简单:

Spread = Ask_Price - Bid_Price

但实际中,我还会看相对价差,也就是价差除以中间价。这样能更公平地比较不同价格的品种。

核心观点: 价差是你交易的第一道成本。做冲击成本建模,价差是必须考虑的基础变量。

4. 市场深度:你能“吃”多少而不被察觉

市场深度(Market Depth),指的是在某个价格水平上,有多少订单等着成交。

深度越大,说明你能在不明显影响价格的情况下,交易更大的数量。深度越小,一个大单就能把价格打穿。

我习惯用深度图来直观感受。下面这张SVG图,展示了一个典型的订单簿深度结构:

订单簿深度结构图 买1: 100 买2: 200 买3: 350 买4: 500 卖1: 150 卖2: 250 卖3: 400 卖4: 600 价差 (Spread) ← 买盘深度 | 卖盘深度 →

你看,买盘这边,越往下深度越大。卖盘那边也是。如果你要买100股,直接吃卖1就够了。但如果你要买1000股,那就要把卖1、卖2、卖3全吃掉,价格自然就被推高了。

这就是冲击成本的来源——你交易的数量,超过了最优价位的深度。

我的经验: 做冲击成本建模时,我通常会取订单簿的前5档甚至10档数据。只看第一档,太片面了。深度曲线能告诉你,价格每变动一个tick,有多少流动性在等着你。

5. 知识体系总览

最后,我用一张SVG图,把这一章的核心逻辑串起来。你看完应该能有个整体框架:

市场微观结构 订单簿 (Order Book) 限价单 vs 市价单 买卖价差 (Spread) 市场深度 (Depth) 冲击成本建模 核心输入

从订单簿出发,你理解了订单类型,知道了价差和深度。这些,最终都指向一个目标——冲击成本建模。

嗯,这一章的内容就到这里。你把这些基础打牢了,后面讲具体的冲击成本模型,你才能跟得上。


专注资料整理