深交所历史高频行情数据结构文档 (四版/五版 v2–v3.0)
来源
深圳证券信息有限公司编写 (密级「内部公开」,管控状态「受控」)。Tab 分隔或按表存储, 格式说明见各文档首节。本次收录收到 6 份原件:
| 文件 | 体系 | 版本 / 生效 | 格式 |
|---|---|---|---|
| sz_001 | 四版前置 | 2012-11 (20160509 前生效) | Tab 分隔, SZL2_*.txt 单文件含全天 |
| sz_004 | 四版 | 数据中心四版行情数据结构 v2 | 单文件, 20160506 前 |
| sz_002 | 五版 | 深交所信息公司高频增强行情 (行情内部版), 无版本号/日期 | 单文件 |
| sz_003 | 五版 | v2.3, 20160509 后生效 | 表文件, 上午/下午 am_/pm_ 前缀 |
| sz_005 | 五版 | v3.0, 20220516 后生效 (新债券行情上线) | 同上 |
| sz_006 | 五版 | v3.0, 20240104 更新 | 同上 |
sz_002 是交易所内部行情格式版,xls 标注「忽略」——它与后续 CSV 表结构文档字段一致但缺版本与 日期标注,只能靠字段特征反推适用区间 (见下)。
关键结论一:文件命名与切分方式变过两次
| 时期 | 命名 | 切分 |
|---|---|---|
| 20160509 前 (四版) | SZL2_ORDER_YYYYMMDD.txt |
单文件含全天 |
| 20160509 后 (五版) | am_hq_order_spot.txt / pm_hq_order_spot.txt |
上午/下午拆分, 用 MDStreamID 标识类别 |
四版 7 张表: STOCKINFO / STOCKSTATUS / SNAPSHOT / SNAPSHOTDW / INDEX / ORDER / TRADE,
全部大写、无 hq_ 前缀。五版改为 hq_<类型>_<品种> 小写命名,品种后缀 _spot / _option /
_pledge / _bond / _agreement / _refinance / _xianquan / _jingmai,靠 MDStreamID 区分。
MDStreamID 是深市表的行情类别判别位,现货 010(快照)/011(逐笔)、质押式回购 020/021、
债券分销 030、期权 040/041、协议交易 051(意向)/052(定价)、转融通 071、指数 900。
新旧版 MDStreamID 值集相同,不是判别特征。
关键结论二:五版现货四表的字段布局从 2016 至今没动过
| 表 | 字段数 (四版 → 五版 v2.3) | 内容 |
|---|---|---|
逐笔委托 hq_order |
10 → 20 | +5 个时间戳 + ChannelNo/MDStreamID/ApplSeqNum + Side/OrderType 等 |
逐笔成交 hq_trade |
12 → 16 | +BidApplSeqNum/OfferApplSeqNum/ExecType |
快照 hq_snap |
20 → 32 → 35 | 尾部新增 Vwap/xj/xk 三个回购利率字段 |
快照档位 snap_level |
50 → 55 | 10 档 × (价+量) + 6 个委托队列字段 |
关键点:深市 snap_level 只给买一/卖一的委托队列 (NUMORDERS_B1/NOORDERS_B1/
ORDERQTY_B1,卖一对称),买二到买十只有价和量,没有逐笔队列——与沪市 BidOrders[50] 口径一致。
关键结论三:逐笔成交用两个委托索引引用委托流,这是深市方向判定的唯一依据
hq_trade 的 BidApplSeqNum / OfferApplSeqNum 直接引用 hq_order.ApplSeqNum,从 1 开始
计数,0 表示无对应委托。沪市对应字段是 BuyNo / SellNo,深市字段名完全不同但语义一致。
委托流 hq_order 里有 OrderType(1=市价、2=限价、U=本方最优) 和
Side(1=买、2=卖,G=借入、F=借出)——委托流本身没有主动/被动标志,主动方向只能
靠成交的双向委托索引比较得出。四版 SZL2_ORDER 里也是同样结构:FUNCTIONCODE 取
B/S/C 分别对应买、卖、撤单,ORDERKIND 是委托类别 (0 限价、1 全额成交或撤销、
2 即时成交剩余撤销、X 本方最优、Y 对手方最优、W 全额成交或撤销市价、V 最优五档立即成交剩余)。
关键结论四:20220516 上线新债券行情,20240104 快照加四个字段
v3.0 (sz_005 / sz_006) 相对 v2.3 (sz_003) 的变化只有两类:
新增债券类表:
hq_order_xianquan(债券现券委托)、hq_trade_xianquan、hq_order_jingmai(债券竞买)、hq_trade_jingmai、snap_bond(新债券快照)。hq_order_xianquan的MDStreamID取413点击委托 /415意向申报 /417大额委托,hq_order_jingmai取416竞买委托,snap_bond取020质押式回购 /030债券分销 /410债券现券。 竞买表额外有SecondaryOrderID(竞买编号)、BidTransType、BidExecInstType、LowLimitPrice/HighLimitPrice、MinQty、MarginPrice(达成成交的边际价格)。快照加四个字段 + 价格精度:
hq_snap_spot35 → 39 字段,尾部加xwsize/xwnum(ETF 申购数量/笔数)、xxsize/xxnum(ETF 赎回数量/笔数),均 20240104 起; 全表价格字段 N(9,3) → N(9,6) (6 位小数)。 逐笔委托 / 逐笔成交 / 快照档位字段数不变 (20/16/55)。
判断数据对应哪份文档以生效日期为准:2022-05-16 前看 v2.3 (快照 35 字段、价格 3 位), 之后看 v3.0 (快照 39 字段、价格 6 位)。
关键结论五:回购利率字段 Vwap/xj/xk 有明确起点
v2.3 快照尾部的 Vwap (成交量加权平均利率)、xj (加权平均利率涨跌)、xk (昨收盘成交量
加权平均利率) 三个字段,注释明确标 2017-05-12 之后才有。实测印证:2017-01-03 样本快照 32 列
(早于该日),2018 之后 35 列。所以深市快照字段数是 32 / 35 / 39 三档,不是两档。
字段数演进完整链: 四版 20/12/20/50 → 五版初期 32 快照 → 2017-05-12 起 35 → 2024-01-04 起 39。
关键结论六:两套交易阶段编码,位数和语义都不同
深市 TradingPhaseCode 是 C2 定长两位:
- 第 0 位:
S启动 /O开盘集合竞价 /T连续竞价 /B休市 /C收盘集合竞价 /E已闭市 /H临时停牌 /A盘后交易 /V波动性中断 - 第 1 位:
0正常状态 /1全天停牌
沪市 Level-1 是 8 位字符串 (4 位有效),两所不能通用。深市四版快照里对应字段是
ENDOFDAYMAKER (C1),语义未在文档中定义——这是四版数据的一个坑,见
深市高频表结构演化 (SZSE Feed Schema Evolution)。
关键 takeaway
- 深市逐笔委托/成交的引用键是
ApplSeqNum/BidApplSeqNum/OfferApplSeqNum,与沪市OrderNo/BuyNo/SellNo命名不同但语义一致——跨所代码要抽象一层。 - 深市委托流没有主动/被动标志,方向只能靠成交的双向委托索引比较,不能靠委托流本身。
- 快照字段数是 32 / 35 / 39 三档 (2017-05-12 与 2024-01-04 两个分界),价格精度同步从 3 位变 6 位。
- 深市
snap_level买二至买十没有逐笔委托队列,只有价和量。 - 五版比四版多出
MDStreamID+ApplSeqNum组合的主键体系,做跨期拼接时要重映射到统一键。
在 wiki 中的位置
- 概念: 深市高频表结构演化 (SZSE Feed Schema Evolution) · 沪市逐笔文件演化 (SSE Tick File Evolution) · 逐笔成交的双向委托引用 (Bid-Offer Order Reference) · Level-2 档位与委托队列 (L2 Depth and Order Queue)
- 实体: Shenzhen Stock Exchange (深交所)
- 对照源: 上交所历史数据接口说明书
- 实测: 供应商样例包实测 (沪市委托-成交配对缺失率
来源文件
raw/refs/sz-hfq-structure-spec/ — 6 份原件 (3 PDF / 3 DOCX) + 6 份 .extracted.md
(PyMuPDF / docx XML 抽取,表格拉平成 字段 | 类型 | 主键 | 注释 文本)。