一、订单簿基础:从数据结构到实战应用

做量化交易这些年,我见过太多人一上来就搞策略、跑回测,结果连订单簿都没搞明白。说实话,订单簿就是市场的「实时心电图」——你看懂了它,才算真正摸到了交易的脉搏。

1.1 订单簿到底是什么?

订单簿,说白了就是一个「买卖挂单的实时列表」。交易所把所有交易者的限价单按价格排好队,买单从高到低,卖单从低到高,这就是订单簿。

我习惯把它想象成一个「拍卖会现场」:

  • 买单(Bid):买家举着牌子喊「我要买,出价XX」
  • 卖单(Ask):卖家举着牌子喊「我要卖,要价XX」
  • 价差(Spread):最高买价和最低卖价之间的差距

核心概念速记:

  • Bid Price:买方愿意出的最高价
  • Ask Price:卖方愿意接受的最低价
  • Bid Size:当前最高买价上的挂单量
  • Ask Size:当前最低卖价上的挂单量
  • Spread = Ask Price - Bid Price

1.2 买卖盘口:多空博弈的第一线

盘口数据,就是订单簿最顶层的几档报价。我个人习惯把盘口比作「战场前线」——买盘和卖盘在这里短兵相接。

举个例子,某股票当前盘口:

档位 买价 买量 卖价 卖量
1 10.00 1,000 10.01 800
2 9.99 2,000 10.02 1,500
3 9.98 3,000 10.03 2,000

你看,买一10.00有1000股等着买,卖一10.01有800股等着卖。价差只有1分钱,说明流动性不错。我在项目中遇到过一种情况:某小市值股票价差突然从0.01元扩大到0.10元,这就是流动性枯竭的信号,我当时立刻暂停了策略。

实战小技巧:盘口深度比价格更重要。如果买一只有几十股,就算价格再高也别急着追——那可能是「虚单」。

1.3 Level1 / Level2 / Level3:数据颗粒度的三个层次

很多新手分不清这三个级别,我刚开始做量化时也踩过坑。其实它们就是数据「精细程度」的差异:

级别 数据内容 典型用途 我的评价
Level1 最优买卖价、成交量、成交价 普通行情展示、简单策略 「够用但不够看」
Level2 前5-10档买卖盘口、逐笔成交 盘口分析、订单流策略 「量化入门标配」
Level3 全量订单簿、每笔订单详情 高频交易、做市策略 「数据量大到吓人」

嗯,这里要注意:Level3数据不是谁都能拿到的。我记得有一次为了获取某交易所的Level3数据,光合规流程就走了两个月。而且数据量巨大——每秒可能产生几万条订单事件,处理不好直接撑爆内存。

避坑指南:我曾经用Level2数据回测一个高频策略,结果实盘时发现Level3的微观结构完全不一样。后来我养成了习惯:策略的时间尺度必须匹配数据级别。做秒级策略,至少用Level2;做毫秒级策略,必须上Level3。

1.4 订单簿在交易中的作用

订单簿到底有什么用?我总结了三个核心价值:

  1. 价格发现:买卖双方的博弈结果,实时反映在订单簿上。你想想看,如果买单突然变厚,价格大概率要涨。
  2. 流动性评估:通过盘口深度判断市场能不能「吃下」你的订单。我一般看「市场深度」——在某个价格区间内所有挂单的总量。
  3. 订单流分析:通过逐笔成交和挂单变化,推测「聪明钱」的动向。说白了,就是看谁在买、谁在卖。

举个例子,我做过一个简单的「订单簿失衡指标」:

# 订单簿失衡度计算
def order_imbalance(bid_volumes, ask_volumes):
    total_bid = sum(bid_volumes[:5])  # 前5档买单总量
    total_ask = sum(ask_volumes[:5])  # 前5档卖单总量
    imbalance = (total_bid - total_ask) / (total_bid + total_ask)
    return imbalance

# 当 imbalance > 0.3 时,说明买方力量强
# 当 imbalance < -0.3 时,说明卖方力量强

这个指标虽然简单,但在震荡市中准确率还不错。当然,遇到大单砸盘时也会失效——嗯,没有完美的指标。

1.5 知识体系总览

下面这张图是我自己整理的订单簿知识框架,你可以把它当作本章的「地图」:

订单簿知识体系 订单簿 (Order Book) 数据结构 • 价格-数量映射 • 买卖双向队列 • 时间优先原则 买卖盘口 • Bid / Ask • Spread 价差 • 盘口深度 数据级别 • Level1: 最优报价 • Level2: 多档盘口 • Level3: 全量订单 交易中的作用 • 价格发现 • 流动性评估 • 订单流分析 实战应用 • 盘口失衡指标 • 大单监测 • 做市策略 图:订单簿知识体系总览

这张图把订单簿拆成了五个模块:数据结构是基础,盘口概念是核心,数据级别决定你能看到什么,交易作用是目的,实战应用是落地。我个人建议你按这个顺序学习,别跳步。

我的学习建议:先拿Level2数据练手,写个简单的盘口分析脚本。别一上来就搞Level3,数据量太大容易劝退。我当初就是被Level3的数据量吓到,后来才明白——先跑通,再优化

好了,订单簿的基础就聊到这儿。记住一句话:订单簿是市场的「X光片」,能让你看到表面价格背后的真实博弈。下一章我们聊聊数据清洗——嗯,这才是真正磨人的地方。


蓝海数据掘金营,专注资料整理