2. Tick数据字段详解:时间戳、成交价、成交量、成交额、买卖方向、成交编号、逐笔标识

Level2 Tick数据是逐笔成交的微观快照,每个字段都承载着特定的市场信息。理解这些字段的物理含义、精度限制和业务逻辑,是构建高频策略的基础。本章将逐一拆解七个核心字段,并揭示它们在实际策略中的使用陷阱。

2.1 字段全景一览

下表汇总了Tick数据中每个字段的名称、数据类型、精度及核心用途,便于快速查阅:

字段名称 数据类型 精度/格式 核心用途
时间戳 INT64 / DateTime 毫秒级(3位小数) 事件排序、延迟计算、切片对齐
成交价 FLOAT / INT64 最小变动价位(如0.01元) 价格序列构建、价差计算、信号触发
成交量 INT32 股(A股)或手(期货) 流动性评估、大单识别、成交量加权
成交额 FLOAT / INT64 保留两位小数(元) 资金流向、大额资金监控
买卖方向 CHAR / INT8 'B'/'S' 或 1/2 主动性买卖判定、资金流方向
成交编号 INT64 交易所唯一流水号 去重、订单关联、回放校验
逐笔标识 INT32 / STRING 逐笔序号或分组ID 大单拆分识别、订单簿重建

2.2 时间戳:毫秒级精度与排序陷阱

时间戳是Tick数据中最敏感的字段。Level2行情提供的是交易所撮合主机生成成交记录时的毫秒级时间戳(部分交易所已升级至微秒级)。

  • 精度差异:上交所Tick时间戳精确到毫秒(3位小数),深交所早期为秒级,现已升级至毫秒。期货市场(中金所、大商所等)通常提供微秒级时间戳。
  • 排序问题:同一毫秒内可能发生多笔成交,仅依赖时间戳无法确定内部顺序。必须结合成交编号进行二次排序。
  • 策略应用:计算订单到成交的延迟(latency)、对齐不同股票的时间窗口、检测市场微观结构中的异常停顿。
⚠️ 常见陷阱: 部分数据商提供的时间戳是接收时间而非交易所生成时间。使用前务必确认时间戳来源,否则延迟计算可能完全失真。

2.3 成交价与成交量:价格发现的核心

成交价是买卖双方达成一致的价格,成交量则是该价格下成交的股份数量。两者共同构成Tick数据的价格-数量二元组。

  • 成交价:必须落在交易所规定的最小变动价位网格上。A股为0.01元,部分ETF为0.001元,期货则因品种而异。
  • 成交量:A股以“股”为单位,期货以“手”为单位。注意区分“成交量”与“持仓量”的变化。
  • 成交额:由成交价 × 成交量计算得出,但交易所直接提供该字段可避免浮点舍入误差。
💡 策略提示: 使用成交量加权平均价格(VWAP)时,Tick级别的成交额字段比手动计算更精确,尤其适合大单拆分执行的基准跟踪。

2.4 买卖方向:判定主动性买卖

买卖方向字段标识了该笔成交是由买方主动吃单还是卖方主动砸盘。这是判断资金流向和市场情绪的关键指标。

方向标识 含义 市场含义
B(Buy) 主动性买入 买方以卖一价或更高价成交,看多意愿强
S(Sell) 主动性卖出 卖方以买一价或更低价成交,看空意愿强
— 未知/跨档成交 部分交易所不标记方向,需通过价格对比推断

在策略中,通常将连续多笔主动性买入的成交量累加,构建主动买盘量指标,用于识别主力资金的介入或离场。

2.5 成交编号与逐笔标识:唯一性与关联性

这两个字段共同解决了Tick数据的唯一标识和订单关联问题。

  • 成交编号:交易所为每笔成交分配的全局唯一流水号。用于去重(防止数据重复接收)、排序(同一毫秒内按编号升序排列)、以及回放时的精确校验。
  • 逐笔标识:用于将一笔大单拆分成多笔Tick成交时,将这些Tick关联到同一个母单。例如,一个100万股的买单可能被拆成10笔10万股的Tick,它们共享同一个逐笔标识。
🔍 高级用法: 利用逐笔标识可以还原“冰山订单”的真实规模。将同一逐笔标识下的所有Tick成交量累加,即可得到该笔大单的总成交量,从而识别隐藏流动性。

2.6 Tick数据字段关系图

下图展示了七个核心字段之间的逻辑关系与数据流向:

Tick数据字段关系图 Tick数据七个核心字段关系图 Tick 成交记录 时间戳 (Timestamp) 成交价 (Price) 成交量 (Volume) 买卖方向 (Side) 成交编号 (TradeID) 逐笔标识 (GroupID) 成交额 = 成交价 × 成交量 左侧:价格-数量核心字段 右侧:标识-方向辅助字段

2.7 字段使用避坑指南

在实际策略开发中,以下问题最容易导致回测与实盘不一致:

  • 时间戳对齐:不同股票、不同交易所的时间戳可能存在系统偏差,跨品种策略必须做时间同步校准。
  • 成交额精度:成交额 = 成交价 × 成交量,但浮点运算可能产生0.01元级别的误差。建议直接使用交易所提供的成交额字段。
  • 方向判定歧义:部分交易所(如早期的深交所)不直接提供买卖方向,需要通过成交价与买卖盘口的对比来推断,这会引入额外的计算延迟和误判风险。
  • 逐笔标识的缺失:并非所有市场都提供逐笔标识。在缺失该字段时,大单拆分识别只能依赖成交量阈值和相邻Tick的时间间隔来近似判断。
✅ 最佳实践: 在数据预处理阶段,始终保留原始字段不做任何修改。策略逻辑中需要派生字段(如累计成交量、方向累计)时,通过独立的计算模块生成,避免污染原始Tick数据。