第一章:市场微观结构基础
做量化交易这些年,我越来越觉得一个道理:不懂市场微观结构,交易成本就是一笔糊涂账。今天咱们就从最底层开始,把订单簿、价差、订单类型这些东西彻底聊透。
1.1 订单簿结构与限价订单簿
订单簿,说白了就是交易所的「挂单台账」。我刚开始做高频策略时,总觉得这东西就是个价格列表,后来吃过亏才明白——订单簿是市场博弈的实时地图。
限价订单簿(LOB)记录着所有未成交的限价单。它分两部分:
- 买盘(Bid side):按价格从高到低排列,最高买价叫 Bid Price
- 卖盘(Ask side):按价格从低到高排列,最低卖价叫 Ask Price
举个例子,某股票当前订单簿长这样:
| 买价 | 买量 | 卖价 | 卖量 |
|---|---|---|---|
| 10.01 | 200 | 10.02 | 150 |
| 10.00 | 500 | 10.03 | 300 |
| 9.99 | 800 | 10.04 | 600 |
这里买卖价差就是 10.02 - 10.01 = 0.01 元。市场深度呢?看买盘 10.00 价位有 500 股,卖盘 10.03 有 300 股——这些数字直接决定了你下单时的冲击成本。
1.2 买卖价差与市场深度
买卖价差(Bid-Ask Spread)是交易成本最直接的体现。你想想看,如果你同时买入和卖出同一只股票,中间这个差价就是你的「过路费」。
价差有两种计算方式:
- 绝对价差 = Ask Price - Bid Price
- 相对价差 = (Ask - Bid) / Mid Price × 100%
市场深度则更微妙。我见过不少新手只看价差,觉得 0.01 元很窄就放心下单。结果呢?一单 10 万股砸下去,直接吃掉好几档价格,实际成交均价差得远。
为什么会这样?因为市场深度决定了你的订单能「穿透」几层价格。深度越厚,大单的冲击成本越小。
1.3 订单类型
订单类型这块,我踩过的坑最多。咱们一个一个说:
市价单(Market Order)
市价单追求的是「成交优先」,价格其次。你下单时指定数量,系统按当前最优价成交。优点是成交快,缺点是滑点不可控。
我曾经在流动性差的时段用市价单平仓,结果滑了 3 个 tick,直接亏掉一周的利润。嗯,从那以后我给自己定了个规矩:流动性不足时,绝不用市价单。
限价单(Limit Order)
限价单指定价格,只有达到或更优时才会成交。它提供流动性,但可能无法成交。
我个人习惯把限价单分成两类:
- 被动限价单:挂在当前买一或卖一之外,等待被吃
- 主动限价单:挂在买一或卖一位置,甚至直接吃单
冰山订单(Iceberg Order)
冰山订单是机构玩家的「隐身衣」。你只显示一小部分数量,实际总量藏在后面。交易所会不断刷新显示量,直到全部成交。
1.4 交易机制
交易机制决定了订单如何匹配。主流的有两种:
连续竞价(Continuous Auction)
这是最常见的模式。订单实时进入系统,按价格优先、时间优先的原则匹配。你下单后,系统立刻检查能否成交,不能就挂单等待。
连续竞价下,订单簿是动态变化的。我习惯用「事件驱动」的思路来分析——每一笔成交、每一次挂单撤单,都是市场微观结构的事件流。
集合竞价(Call Auction)
集合竞价在特定时间点集中处理订单。比如开盘、收盘、盘中临时停牌后。系统收集一段时间内的所有订单,然后计算出一个「最大成交量」的价格,所有订单按这个价格成交。
集合竞价的好处是价格发现效率高,尤其适合流动性差的时候。我记得在某个小市值股票上,开盘集合竞价的价格比连续竞价的前几笔成交价稳定得多。
知识体系总览
下面这张图是我自己整理的,把本章的核心逻辑串起来了:
这张图把本章内容串起来了。订单簿结构、订单类型、交易机制,三者共同决定了交易成本的核心构成。做策略时,这三块缺一不可。
好了,第一章就到这里。记住一句话:交易成本不是事后算出来的,而是事前设计出来的。下一章咱们聊如何把这些微观结构知识转化成可计算的成本模型。