Level2行情数据:逐笔成交、逐笔委托、十档行情、快照与增量数据
做量化交易的朋友都知道,行情数据就是我们的眼睛。Level1行情,说白了就是「大概知道发生了什么」。而Level2行情,则是「亲眼看到正在发生什么」。这两者的差距,我打个比方——你看足球比赛,Level1是看赛后集锦,Level2是看实时直播,还能看到球员跑位和战术板。
今天我们就来拆解Level2行情数据的几个核心组成部分。这些东西,我在搭建自己的订单簿系统时,每一个都踩过坑。
逐笔成交:最真实的交易记录
逐笔成交,就是每一笔实际成交的订单记录。它不像K线那样被聚合过,每一笔都是原汁原味的。
举个例子,某股票在10:00:01.500秒成交了一笔1000股,价格是15.20元。逐笔成交就会记录:时间精确到毫秒、价格、数量、成交方向(主动买还是主动卖)。
核心字段:
- 成交时间(精确到毫秒甚至微秒)
- 成交价格
- 成交数量
- 成交金额
- 主动买卖方向(买方主动还是卖方主动)
- 成交编号(唯一标识)
我个人习惯,用逐笔成交数据来识别「大单」。比如某只股票平时每笔成交就几百股,突然连续出现几笔上万股的成交,那大概率是有机构在动手。我曾经在监控一只小盘股时,发现连续10笔逐笔成交都是主动买入,每笔都在5000股以上,价格还越买越高——这就是典型的「抢筹」行为。
逐笔委托:看透挂单的「底牌」
逐笔委托,比逐笔成交更「底层」。它记录的是每一笔委托单的挂单、撤单、成交全过程。
你想想看,逐笔成交只能告诉你「成交了」,但逐笔委托能告诉你「谁在挂单、谁在撤单、挂了多少、挂了多久」。这对识别虚假挂单、主力试盘等行为,非常关键。
我的经验:逐笔委托数据量非常大。一只活跃股票,一天可能产生几十万笔委托记录。处理这些数据,建议用列式存储(比如Parquet),别用CSV硬扛。
我曾经遇到过一个案例:某股票买一价位一直挂着5000手大单,但就是不成交。通过逐笔委托数据发现,这5000手每隔几秒就撤单重挂,明显是「托单」行为。如果你只看逐笔成交,根本发现不了这个猫腻。
十档行情:比五档多五档
Level1行情只提供买一至买五、卖一至卖五,共10个价位。Level2行情扩展到买一至买十、卖一至卖十,共20个价位。
别小看多出来的这五档。在关键价位附近,十档数据能让你看到更完整的「防线」和「阻力」。
| 对比项 | Level1(五档) | Level2(十档) |
|---|---|---|
| 买卖档位 | 各5档 | 各10档 |
| 逐笔成交 | 无 | 有 |
| 逐笔委托 | 无 | 有 |
| 数据延迟 | 3-5秒 | 毫秒级 |
| 适用场景 | 普通看盘 | 量化交易、高频策略 |
嗯,这里要注意:十档行情虽然信息更多,但真正有用的往往是最靠近成交价的几档。离成交价太远的挂单,很多时候只是「摆设」。
快照与增量数据:两种不同的「看盘方式」
快照数据,就是某一时刻订单簿的「全貌」。比如每3秒给你一张完整的订单簿照片,上面有所有价位的挂单量。
增量数据,则是「变化记录」。比如「买一价位增加了100股」、「卖三价位撤单了500股」。它只记录变化的部分。
为什么要有这两种?说白了,快照数据方便做历史回放,增量数据适合实时处理。我建议的策略是:
- 做回测研究:用快照数据,简单直接
- 做实时交易:用增量数据,延迟更低
- 做数据校验:两者结合,互相验证
避坑指南:我曾经在实时系统中只用了增量数据,结果网络断了一下,增量数据丢失了,订单簿状态就全乱了。后来我加了一个定时快照同步机制——每5分钟用快照数据校准一次增量状态。这个习惯,建议你从一开始就养成。
数据之间的关系:一张图说清楚
下面这张图,是我自己总结的Level2数据流转关系。你看完应该就明白这些数据是怎么配合的了。
从这张图你能看到:交易所撮合引擎产生原始数据,然后分三条路走——逐笔成交、逐笔委托、十档行情。其中十档行情和逐笔委托数据,又可以组合成快照和增量两种形式。最终,这些数据汇聚到策略应用层,供我们做形态识别和交易决策。
实际应用:怎么用这些数据?
光知道概念没用,得会用。我分享几个实战场景:
- 识别主力吸筹:用逐笔成交数据,统计大单主动买入的频率和数量。如果连续出现「大单主动买、小单被动卖」的模式,大概率是主力在吸筹。
- 检测虚假挂单:用逐笔委托数据,监控买一或卖一价位的挂单是否频繁撤单重挂。如果某价位挂单量突然暴增又迅速撤单,十有八九是「托单」或「压单」。
- 订单簿形态识别:用快照数据,分析订单簿的「厚度」分布。比如买盘厚实、卖盘稀疏,说明买方力量强,价格容易上涨。
- 实时风控:用增量数据,监控订单簿的突变。比如某股票买一价位突然被吃掉,价格瞬间跳空,你的策略需要立刻响应。
一个小技巧:处理增量数据时,建议用「事件驱动」的方式。每来一条增量,就更新一次订单簿状态。别用轮询,延迟太高。我早期用Python的asyncio做过一个原型,效果还不错。
好了,Level2行情数据的核心内容就这些。记住一句话:逐笔成交看结果,逐笔委托看过程,十档行情看全貌,快照增量配合用。把这些数据吃透了,你的订单簿形态识别能力,至少提升一个档次。