技术博客

Level-1 与 Level-2 的差异:逐笔数据能算出什么

第 77 / 141 篇 · 2025-10-24 · secfin · 行情系统Level-2订单流

同一个证券,Level-1 和 Level-2 行情描述的是同一个市场,但信息量的差距不是"五档 vs 十档"这么简单——这是采样和全记录的区别。对系统建设者来说,两者是两套授权、两条链路、两种下游建模方式。

L1:快照采样

A 股的 Level-1(即时行情)语义是定时快照:大约每 3 秒取一次当前盘口和最新成交,推给订阅者。一个样本点包含:最新成交价、总量额、买一卖一(有的渠道给五档)、当日开高低收。两次快照之间发生的一切——多少笔成交、什么价位、撤了多少单、大单怎么拆的——全部不可见。

3 秒采样在频域上的意义很直白:奈奎斯特极限决定了它只能忠实还原低于 1/6 Hz 的市场变化,日内任何秒级以下的结构都被混叠掉。看日线图、做 T+1 决策,L1 完全够用,这也是为什么它对个人投资者免费——信息粒度恰好停在"对隔日交易有用、对日内交易不够"的边界上。

L2:全记录

Level-2 是另一套东西:十档盘口快照加增量、逐笔委托(每一笔新订单进入订单簿的记录:时间、价位、量、买还是卖)、逐笔成交(每一笔撮合的明细:成交价、量、主动方向)。它不是采样,是市场活动的全量日志。

数据量的差距可以粗算。L1 一个证券 3 秒一条快照,一天约 2000 条;L2 活跃证券一天几十万笔逐笔。全市场原始流从百 MB 级跳到几十 GB 级,差两个数量级以上。带宽、存储、解析算力都要按这个规模重估——前面讲的协议解析、盘口合并、K 线聚合,压力参数全是按 L2 定的。

订单流指标:只有 L2 能算的账

L2 的付费价值集中在订单流分析上,这些指标在 L1 里数学上就不存在:

主动买卖盘力量。逐笔成交带 BSFlag(主动买/主动卖),盘中累计主动买量减主动卖量得到资金流向指标。注意这不是"外盘内盘"那种快照近似,是逐笔精确值。实现上要小心字段口径——沪深两所对主动方向的判定细节有差异,混用两所数据前要对齐口径,不然同一个策略换所就漂移。

委托-撤单动力学。逐笔委托能看到挂单进来,对比逐笔成交通知撤单:高频撤单率、冰山单的检测(大单反复挂撤)、买一卖一的队列消耗速度。做市和对倒行为的识别规则(《异常交易监控》里那套)输入几乎全是 L2 逐笔。

订单簿重建。逐笔委托+逐笔成交+增量,可以在本地重建完整订单簿(不止十档),估算大单在队列里的实际排队位置——对执行算法的滑点预测是直接输入。重建算法就是《盘口(十档)数据结构》合并算法扩展到全深度,难度不在算法在数据清洗:两所对撤单消息的字段处理历史上有过版本差异,老数据重建要先做协议版本归一化。

系统建设的差异

对建系统的人,L1/L2 的差别落在三个层面。

链路成本。L2 专线带宽贵一个量级,接收机、解析器、存储全部按洪峰重估;很多券商把 L2 只接给机构客户服务和量化团队,不喂给大众行情,就是成本驱动的分层。

授权合规。行情数据是交易所的授权产品,L2 是收费授权,且授权条款约束下游使用方式(展示给终端用户 vs 用于策略计算,条款不同)。系统上要做授权边界:L2 数据进入策略计算集群的路径要和对外展示通道隔离,审计上说得清"付费数据没有泄漏到未授权出口"。《行情数据的商业化与授权》会展开这块。

回测偏差。用 L1 快照回测日内策略,成交假设会系统性乐观——你以为 3 秒前的买一价还能成交,实际上队列早被吃掉了。严肃的回测必须用 L2 重建订单簿做撮合模拟。这也是量化团队宁可自己接交易所直连行情也不用公司大众行情数据的原因:不是速度,是信息完整性。

L1 采样 vs L2 全记录:同一分钟的两种描述3s 快照3s 快照3s 快照L2 逐笔成交轨迹(1 分钟内)L1:每 3 秒一个样本点,两次之间不可见L2:每笔委托/成交全记录,订单簿可完整重建只有 L2 能算:主动买卖资金流、撤单率、队列位置、冰山单检测用 L1 回测日内策略会系统性乐观(成交假设失真)