一、订单簿基础:什么是订单簿、买卖盘口、Level1/Level2数据、订单簿的生命周期

做高频交易的朋友,咱们今天聊聊最基础的东西——订单簿。你可能觉得这玩意儿太简单了,但说实话,我见过不少写了三年策略的人,对订单簿的理解还停留在表面。嗯,咱们今天把它彻底讲透。

1.1 什么是订单簿?

订单簿,说白了就是一个交易所用来记录所有未成交订单的电子账本。它实时展示着市场上所有买方和卖方的挂单情况。

我个人习惯把订单簿想象成一个「排队系统」:

  • 买方在左边排队,出价高的排前面
  • 卖方在右边排队,要价低的排前面
  • 价格优先,时间优先——这是铁律

你想想看,如果没有订单簿,交易就像在黑市里喊价,谁也不知道真实的市场深度。我在项目中遇到过好几次,新手把订单簿当成静态数据来用,结果策略一上线就亏钱——因为他们没理解订单簿是「活的」。

核心要点:订单簿反映的是市场的「供需博弈」,每一笔挂单都是交易者的真实意图。

1.2 买卖盘口:Bid 和 Ask

买卖盘口,英文叫 Bid 和 Ask。这是订单簿里最核心的两个概念:

  • Bid(买方盘口):所有想买的人出的价格和数量
  • Ask(卖方盘口):所有想卖的人要的价格和数量

举个例子,假设现在某股票:

买方(Bid) 价格 卖方(Ask)
1000股 10.01
2000股 10.00
10.02 1500股
10.03 2500股

这里有个关键概念叫「买卖价差」(Spread),就是最优买价和最优卖价的差值。上面这个例子,价差就是 10.02 - 10.01 = 0.01。

实战经验:我曾经在回测时忽略了价差,结果实盘发现每笔交易都多亏了0.5个tick。后来我养成了习惯——任何策略上线前,先算清楚价差成本。

1.3 Level1 和 Level2 数据

这两个概念经常被混淆,我给大家理清楚:

Level1 数据(第一层级)

只展示最优的买卖盘口。说白了就是:

  • 当前最高买价(Best Bid)
  • 当前最低卖价(Best Ask)
  • 最新成交价
  • 成交量

Level1 就像你看一眼橱窗,只能看到最外面那层商品。对于普通散户来说够用了,但做高频交易?远远不够。

Level2 数据(第二层级)

展示订单簿的完整深度。你能看到:

  • 所有价位的挂单数量
  • 每个价位的挂单明细
  • 订单的到达顺序(有些交易所提供)

我个人习惯用 Level2 数据来做「订单流分析」。你想想看,如果有人在 10.00 价位挂了 10 万股的买单,这信息多值钱?Level1 根本看不到这些。

注意:Level2 数据虽然信息量大,但处理起来也复杂。我见过有人把 Level2 数据直接塞进策略,结果延迟太高,反而亏钱。记住——数据再多,处理速度跟不上也是白搭。

1.4 订单簿的生命周期

订单簿不是静态的,它每时每刻都在变化。我把它总结为四个阶段:

  1. 订单到达:新订单进入系统,被放入订单簿
  2. 订单匹配:新订单与已有订单撮合成交
  3. 订单撤销:交易者取消未成交的订单
  4. 订单修改:交易者修改订单价格或数量(有些交易所视为撤销+新订单)

这里有个重要的概念叫「订单簿快照」和「订单簿增量」:

  • 快照:某一时刻订单簿的完整状态
  • 增量:两次快照之间的变化

做高频交易时,我们通常用增量来更新本地订单簿,而不是每次都重新拉取快照。为什么?因为快照数据量大,传输慢。我曾经在早期项目里用快照方式,结果每秒只能处理 100 次更新,后来改成增量方式,直接干到了 10000 次/秒。

关键点:订单簿的生命周期就是「到达→匹配→撤销→修改」的循环。理解这个循环,你才能设计出高效的订单簿重建算法。

1.5 知识体系总览

下面这张图是我自己画的,把本章的核心知识点串起来了:

订单簿 买卖盘口 (Bid/Ask) Level1 / Level2 数据 订单生命周期 最优买卖价 买卖价差 快照 vs 增量 深度分析 到达与匹配 撤销与修改 核心:订单簿是「活的」,不是静态数据

这张图把订单簿拆成了三个维度:买卖盘口、数据层级、生命周期。你把这三点吃透了,后面讲订单簿重建、订单流分析就轻松多了。

我的建议:刚开始学的时候,别急着看复杂策略。先把订单簿的每个字段搞清楚,最好能自己写个简单的订单簿模拟器。我当年就是这么干的,虽然代码写得丑,但理解深了。

好了,订单簿的基础就讲到这里。记住一句话:订单簿是市场的「心电图」,读懂它,你就能读懂市场的脉搏。

专注资料整理