附录 A:实盘交易记录标准指南
在量化交易的实战演练中,原始的交易日志是连接“模拟”与“实盘”的唯一纽带。本附录详细列出了一个专业量化系统必须记录的最小日志清单,旨在帮助你采集能够直接反哺策略训练(尤其是强化学习 RL)的高质量数据。
A1.1 核心数据结构
一个完整的交易记录应至少涵盖以下三个维度的信息,以确保每一笔交易都具备可追溯性。
A1.1.1 订单级信息(Order Level)
记录每一笔发往交易所的指令详情:
- 标识符:
order_id(全局唯一 ID)、symbol(交易代码)。 - 指令参数:
side(买/卖)、order_type(市价/限价)、order_price(报单价)、order_qty(报单数量)。 - 生命周期:
submit_ts(下单时间戳)、cancel_ts(撤单时间戳,若有)。
A1.1.2 成交级信息(Fill Level)
由于一笔订单可能对应多笔成交,必须记录每一笔具体的成交细节:
- 关联标识:
fill_id、order_id。 - 成交明细:
fill_price(成交单价)、fill_qty(成交数量)、fill_ts(精确到毫秒的成交时间戳)。
A1.1.3 派生关键指标(Derived Metrics)
这是反哺策略最关键的部分,需要由上述基础数据计算得出:
- 预期价格 (
expected_price):信号触发时的理论价。 - 滑点成本 (
slippage):实际成交均价与理论价之间的偏差。 - 执行延迟 (
latency_ms):从发出订单到第一笔成交的时间差。 - 成交率 (
fill_ratio):实际成交量与计划成交量的比例。
A1.2 成本核算与市场快照
A1.2.1 财务损益与摩擦成本
- 显性成本:
commission(手续费)、tax(印花税/规费)。 - 最终收益:
realized_pnl(已实现盈亏)。
A1.2.2 决策时的市场状态
记录下单瞬间的市场背景,用于分析环境对执行的影响:
- Bar 数据:
bar_ts、bar_open/high/low/close、bar_vwap。 - 波动率指标:
atr_5min。 - (可选)流动性深度:建议至少记录一档买卖价(
bid1/ask1)。
A1.3 Agent 决策元数据(RL 专用)
若要让 RL 模型学到真实的因果关系,必须记录决策时的上下文:
- 版本标识:
agent_id/version。 - 动作详情:
action(买入/卖出/持有)、target_position(目标仓位)。 - 置信度度量:
confidence或模型输出的预测分数。
A1.4 总结:为什么这些字段必不可少?
一个标准化的日志清单不仅仅是为了财务对账,其核心价值在于:
- 还原滑点真相:精确区分“信号错误”与“执行偏差”。
- 训练执行逻辑:为执行型 RL 提供真实的 Reward 信号(如成交延迟和成交率)。
- 摆脱数据依赖:无需昂贵的 Level-2 数据,仅靠实盘日志即可构建属于你自己的执行模拟器。
核心原则:如果不完整记录“下单 → 成交 → 延迟 → 失败”的全过程,你的实盘数据对策略进化而言就毫无价值。