订单簿基础:限价订单簿的结构、价格-时间优先规则、市场深度与流动性

好,咱们进入正题。订单簿这东西,说白了就是交易所用来记录所有买卖意愿的「大账本」。你想想看,如果没有订单簿,市场就像个菜市场,大家只能扯着嗓子喊价,那得多乱?

我个人习惯把订单簿想象成一个「双向队列」。左边是买单,右边是卖单。每一笔挂单,都记录着三个核心信息:价格、数量、时间戳。嗯,就这么简单。

限价订单簿的结构

限价订单簿,英文叫 Limit Order Book,简称 LOB。它由两部分组成:

  • 买单队列(Bid Side):按价格从高到低排列。谁出价高,谁排前面。
  • 卖单队列(Ask Side):按价格从低到高排列。谁要价低,谁排前面。

我刚开始做量化交易时,总觉得这结构太简单了,不就是个排序嘛。后来在实盘项目中才发现,订单簿的深度和更新速度,直接决定了策略能不能赚钱。

来看一个典型的订单簿快照:

价格 卖单数量 买单数量 价格
10.05 200
10.04 150
10.03 100
80 10.02
120 10.01
300 10.00

你看,卖单从 10.03 开始往上排,买单从 10.02 开始往下排。中间那个 10.02 到 10.03 的缝隙,就是买卖价差(Spread)。

核心概念:最佳买价(Best Bid)和最佳卖价(Best Ask)之间的差值,就是市场当前的交易成本。价差越小,流动性越好。

价格-时间优先规则

这个规则,是订单簿的「宪法」。它决定了谁的订单能先成交。

规则只有两条:

  1. 价格优先:买单出价高的优先,卖单要价低的优先。
  2. 时间优先:价格相同时,先挂单的优先。

我曾经在开发一个高频交易系统时,遇到过一个问题:两个订单价格完全一样,但我的订单总是排在后头。后来一查,原来是系统时钟同步出了问题。你想想看,在纳秒级的竞争中,时间戳差一点点,结果就是天壤之别。

举个例子:

// 假设当前卖一价是 10.03,有 100 手
// 你挂了一个 10.03 的买单,数量 50 手
// 这时候,如果有人市价卖出 80 手
// 成交顺序是:
// 1. 先成交你之前挂单的 50 手(时间优先)
// 2. 再成交你后面挂单的 30 手(如果还有剩余)
// 3. 你的 50 手全部成交,剩下的 30 手继续往下吃单

嗯,这里要注意:市价单会直接吃掉对手方队列里最前面的订单。所以,如果你挂的是限价单,一定要考虑被「插队」的风险。

实战技巧:我个人习惯在挂单时,把价格设置成比当前最优价多一个最小变动单位(Tick Size)。这样虽然少赚一点点,但能确保排在队列最前面,成交概率大幅提升。

市场深度与流动性

市场深度,说白了就是订单簿里「藏」了多少订单。深度越厚,说明市场越有「韧性」。

我经常用两个指标来衡量深度:

  • 深度层级:从最优价开始,往下数几层还有订单。比如「五档深度」就是看前五档的挂单量。
  • 深度总量:某一价格区间内所有订单的总和。比如「10.00 到 10.05 之间的总买单量」。

流动性呢,是深度的「动态版本」。它衡量的是:你下个单,市场能不能快速消化,而且价格不会剧烈波动。

我曾经在分析某只小盘股时,发现它的订单簿深度很厚,但流动性很差。为什么会这样?因为那些挂单都是「钓鱼单」——挂在那里但不成交,一有大单进来就撤单。这种虚假深度,是很多新手容易踩的坑。

避坑指南:我曾经在回测策略时,直接用了订单簿的「总深度」作为流动性指标,结果实盘时一跑就亏。后来才发现,很多挂单是「幽灵单」,根本不会成交。建议用「最近 1 分钟内的实际成交量」来辅助判断流动性。

为了让你更直观地理解订单簿的运作逻辑,我画了一张流程图:

限价订单簿核心逻辑 买单队列(Bid) 卖单队列(Ask) 价格从高到低排列 价格从低到高排列 价格相同时,先挂单的优先成交 成交匹配:买单价格 ≥ 卖单价格 市场深度 = 各价格层级挂单总量 → 决定流动性

这张图把订单簿的核心流程串起来了。你从买单和卖单队列开始,经过排序、时间优先、成交匹配,最后落到市场深度。每一步都环环相扣。

最后说一句:订单簿不是静态的,它每时每刻都在变化。你看到的深度,可能下一秒就变了。所以,做策略时一定要考虑「滑点」——也就是你的订单实际成交价和预期价之间的差距。这个差距,就是流动性的真实成本。

总结一下:限价订单簿是市场的「骨架」,价格-时间优先规则是「法律」,市场深度和流动性是「血液」。理解这三者,你才算真正入了订单簿分析的门。

专注资料整理