一、订单簿基础:从数据结构到实战应用
做量化交易这些年,我见过太多人一上来就搞策略、跑回测,结果连订单簿都没搞明白。说实话,订单簿就是市场的「实时心电图」——你看懂了它,才算真正摸到了交易的脉搏。
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 订单簿在交易中的作用
订单簿到底有什么用?我总结了三个核心价值:
- 价格发现:买卖双方的博弈结果,实时反映在订单簿上。你想想看,如果买单突然变厚,价格大概率要涨。
- 流动性评估:通过盘口深度判断市场能不能「吃下」你的订单。我一般看「市场深度」——在某个价格区间内所有挂单的总量。
- 订单流分析:通过逐笔成交和挂单变化,推测「聪明钱」的动向。说白了,就是看谁在买、谁在卖。
举个例子,我做过一个简单的「订单簿失衡指标」:
# 订单簿失衡度计算
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 知识体系总览
下面这张图是我自己整理的订单簿知识框架,你可以把它当作本章的「地图」:
这张图把订单簿拆成了五个模块:数据结构是基础,盘口概念是核心,数据级别决定你能看到什么,交易作用是目的,实战应用是落地。我个人建议你按这个顺序学习,别跳步。
我的学习建议:先拿Level2数据练手,写个简单的盘口分析脚本。别一上来就搞Level3,数据量太大容易劝退。我当初就是被Level3的数据量吓到,后来才明白——先跑通,再优化。
好了,订单簿的基础就聊到这儿。记住一句话:订单簿是市场的「X光片」,能让你看到表面价格背后的真实博弈。下一章我们聊聊数据清洗——嗯,这才是真正磨人的地方。