4. 逐笔成交数据结构

逐笔成交数据是 Level-2 行情中最精细的交易记录,它还原了每一笔实际撮合订单的完整信息。与快照数据不同,快照是某一时刻的“截面”,而逐笔成交是连续发生的“流水”。理解逐笔成交的结构,是进行高频策略推演、订单流分析、以及盘口还原的基础。

4.1 逐笔成交数据核心字段

每一笔逐笔成交记录通常包含以下关键字段,它们共同描述了一笔交易的全貌:

字段名称 数据类型 说明
成交时间 datetime 交易所撮合该笔订单的精确时间,精度通常为毫秒或微秒。
成交价 float 该笔订单的实际成交价格。
成交量 int 该笔订单的成交股数(或手数)。
成交方向 string 标识该笔成交是由主动买盘还是主动卖盘触发。常见标记为 B(Buy,主动买)或 S(Sell,主动卖)。
成交编号 long 交易所为该笔成交分配的唯一全局编号,用于索引和去重。
关键概念:“成交方向”是区分买方主动与卖方主动的核心指标。主动买盘(B)意味着买方以卖一价或更高价格买入,通常被视为资金流入;主动卖盘(S)则相反。

4.2 逐笔成交数据与快照数据的关联

逐笔成交与快照数据并非孤立存在,它们之间存在紧密的“增量-存量”关系。快照数据是某一时刻的“状态快照”,而逐笔成交是导致状态变化的“事件”。

两者之间的核心关联逻辑如下:

  • 时间对齐:快照数据通常以固定间隔(如 3 秒)生成,而逐笔成交是连续流。通过时间戳,可以将两个时间序列对齐。
  • 价格与数量验证:快照中的最新成交价(Last Price)和累计成交量(Volume)应与该时刻之前所有逐笔成交的累计结果一致。
  • 盘口变化归因:每一笔逐笔成交都会导致买卖盘口(Bid/Ask)的挂单量发生变化。通过逐笔成交的方向和数量,可以推演盘口挂单的消耗或新增过程。
  • 策略推演基础:在策略回测中,通常使用快照数据作为状态输入,而使用逐笔成交数据模拟订单簿的微观变化,从而更真实地评估策略的冲击成本和滑点。
推演示例:假设在 09:30:00.000 的快照中,卖一价为 10.00 元,卖一量为 1000 股。随后出现一笔逐笔成交:成交价 10.00 元,成交量 500 股,方向为 B(主动买)。那么,在下一个快照时刻,卖一量应减少 500 股(变为 500 股),或者如果卖一被全部吃掉,卖一价会变为更高的价格。

4.3 逐笔成交数据流与快照的时序关系

下面的 SVG 图展示了逐笔成交数据流与快照数据在时间轴上的对应关系,以及它们如何共同构成完整的市场微观结构视图。

逐笔成交与快照数据时序关联图 快照 S1 快照 S2 快照 S3 成交 T1 成交 T2 成交 T3 成交 T4 说明: 快照 S1 与 S2 之间的所有逐笔成交(T1、T2)共同导致了盘口状态从 S1 变为 S2。

4.4 逐笔成交数据在策略推演中的典型应用

在量化策略中,逐笔成交数据主要用于以下场景:

  1. 订单流分析:通过统计连续主动买盘(B)与主动卖盘(S)的成交量差,判断短期资金流向。
  2. 大单识别:设定成交量阈值,标记超过该阈值的逐笔成交为“大单”,用于跟踪主力资金动向。
  3. 盘口还原与回测:利用逐笔成交数据模拟真实的订单簿变化,评估策略在微观时间尺度上的表现。
  4. 价格冲击模型:分析不同成交量对价格的瞬时影响,建立更精确的冲击成本模型。
注意事项:逐笔成交数据量极大(单只股票每日可达数万笔),在策略推演中需要高效的数据存储和计算方案。同时,由于交易所撮合规则复杂,部分逐笔成交可能涉及“冰山订单”或“隐藏订单”,导致方向判断出现偏差,需要结合盘口数据进行交叉验证。

4.5 逐笔成交与快照数据字段对比

为了更清晰地理解两者的差异与互补关系,下表对比了逐笔成交与快照数据的关键字段:

对比维度 逐笔成交数据 快照数据
数据粒度 单笔交易 某一时刻的盘口状态
时间精度 毫秒/微秒级 秒级(通常 3 秒)
包含信息 成交价、量、方向、编号 买卖十档、最新价、成交量、持仓量等
数据量 极大(连续流) 较小(离散快照)
主要用途 微观订单流分析、大单追踪 宏观状态判断、策略信号生成

通过将逐笔成交数据与快照数据结合使用,交易者可以构建出从宏观到微观、从状态到事件的完整市场分析框架,为高频策略的研发与推演提供坚实的数据基础。