TickData解读
参考:上海证券交易所LDDS系统Level-1 FAST行情接口说明书、上海证券交易所LDDS系统竞价Level-2行情接口说明书(来自https://www.sseinfo.com/services/assortment)
行情快照与逐笔数据
上交所的LDDS(Low Latency Data Distribution System)系统发布两个层面的行情:Level1行情和Level2行情。
Level1行情在交易日的8:30~15:30之间推送
- 集合竞价期间提供证券代码、证券简称、前收盘价格、虚拟开盘价、虚拟匹配量、虚拟未匹配量和虚拟未匹配量的剩余方向。
- 连续竞价期间提供证券代码、证券简称、前收盘价格、最新成交价格、当日最高成交价格、当日最低成交价格、当日累计成交量、当日累计成交金额、实时最高五个买入申报价格和数量、实时最低五个卖出申报价格和数量。
Level1行情3s更新一次,拿到的实际上是市场在当前这个时刻的快照(snapshot)。
Level2行情包含了快照类数据和逐笔成交类数据
- 快照类数据:仍然是3s更新一次,但是相比于Level1行情
- 提供买卖方十个价位的价格、股数和委托笔数信息
- 同时提供第一档位的前50笔订单的委托量,揭示买卖双方行为细节
- 逐笔成交类数据:在连续竞价阶段,推送竞价逐笔合并数据,最小时间间隔为0.01秒
- 发送新增委托订单和删除委托订单(撤单)、产品状态订单及成交数据
- 每个0.01秒内有可能有多笔委托,Level2行情数据对0.01秒内的委托时点进行模糊处理,不进行区分
实际上,Level2行情才能被称作是逐笔行情。
在VNPY目前的使用场景下,TickData一般指的是Level1的快照数据。真正使用Level2的逐笔行情,有较高门槛,且对算力、储存要求都很高。
行情快照Snapshot解读
用Tushare获得一小批快照数据,如下:
NAME | TS_CODE | DATE | TIME | OPEN | PRE_CLOSE | PRICE | HIGH | LOW | BID | ASK | VOLUME | AMOUNT | B1_V | B1_P | B2_V | B2_P | B3_V | B3_P | B4_V | B4_P | B5_V | B5_P | A1_V | A1_P | A2_V | A2_P | A3_V | A3_P | A4_V | A4_P | A5_V | A5_P |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
浦发银行 | 600000.SH | 20241203 | 14:39:52 | 9.46 | 9.49 | 9.63 | 9.64 | 9.41 | 9.63 | 9.64 | 3.76916e+07 | 3.59744e+08 | 2762 | 9.63 | 4208 | 9.62 | 635 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2231 | 9.64 | 6824 | 9.65 | 3750 | 9.66 | 2504 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:39:55 | 9.46 | 9.49 | 9.64 | 9.64 | 9.41 | 9.63 | 9.64 | 3.76923e+07 | 3.5975e+08 | 2777 | 9.63 | 4212 | 9.62 | 635 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2225 | 9.64 | 6824 | 9.65 | 3781 | 9.66 | 2504 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:01 | 9.46 | 9.49 | 9.63 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77018e+07 | 3.59842e+08 | 2717 | 9.63 | 4212 | 9.62 | 635 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2145 | 9.64 | 6824 | 9.65 | 3781 | 9.66 | 2504 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:04 | 9.46 | 9.49 | 9.64 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77033e+07 | 3.59856e+08 | 2018 | 9.63 | 4212 | 9.62 | 635 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2154 | 9.64 | 6824 | 9.65 | 3781 | 9.66 | 2504 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:07 | 9.46 | 9.49 | 9.63 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77049e+07 | 3.59872e+08 | 2009 | 9.63 | 4212 | 9.62 | 635 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2724 | 9.64 | 6824 | 9.65 | 3781 | 9.66 | 2504 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:10 | 9.46 | 9.49 | 9.64 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77061e+07 | 3.59883e+08 | 2009 | 9.63 | 4212 | 9.62 | 635 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2780 | 9.64 | 6824 | 9.65 | 3781 | 9.66 | 2504 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:13 | 9.46 | 9.49 | 9.64 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77082e+07 | 3.59903e+08 | 2023 | 9.63 | 4210 | 9.62 | 639 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2771 | 9.64 | 6822 | 9.65 | 3781 | 9.66 | 2496 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:16 | 9.46 | 9.49 | 9.64 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77128e+07 | 3.59948e+08 | 1912 | 9.63 | 4210 | 9.62 | 639 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2765 | 9.64 | 6842 | 9.65 | 3781 | 9.66 | 2496 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:19 | 9.46 | 9.49 | 9.63 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77182e+07 | 3.6e+08 | 1908 | 9.63 | 4209 | 9.62 | 639 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2740 | 9.64 | 6842 | 9.65 | 3791 | 9.66 | 2496 | 9.67 | 3514 | 9.68 |
浦发银行 | 600000.SH | 20241203 | 14:40:22 | 9.46 | 9.49 | 9.63 | 9.64 | 9.41 | 9.63 | 9.64 | 3.77254e+07 | 3.60069e+08 | 1840 | 9.63 | 4209 | 9.62 | 639 | 9.61 | 914 | 9.6 | 630 | 9.59 | 2756 | 9.64 | 6842 | 9.65 | 3791 | 9.66 | 2496 | 9.67 | 3454 | 9.68 |
TIME
:快照数据的获取时间点,精确到秒。- 理论上,每笔快照数据之间 应该间隔3s,但是由于延迟或者丢包,会产生误差。
- 如上面
14:39:55
之后没有14:39:58
的数据,而是直接拿到了14:40:01
的数据。 - 此外,还会有数据重复出现的可能,在实施交易时要细致处理
OPEN
:开盘价PRE_CLOSE
:昨日收盘价PRICE
:现价(最新成交价)HIGH
:今日(目前为止)最高价LOW
:今日(目前为止)最低价BID
:竞买价(买一价)ASK
:竞卖价(卖一价)VOLUME
:累计成交量(src=sina时是股,src=dc时是手,默认sina)AMOUNT
:累计成交金额B1_V,B2_V,B3_V,B4_V,B5_V
:最优五档买单量B1_P,B2_P,B3_P,B4_P,B5_P
:最优五档买单价A1_V,A2_V,A3_V,A4_V,A5_V
:最优五档买单量A1_P,A2_P,A3_P,A4_P,A5_P
:最优五档买单价
TickData数据结构解读
以下是VNPY默认TickData的形式,以及GmMdApi
获取实时快照数据并与VNPY的TickData对齐的对比:
需要注意的是,最优五档买/卖量是手数,query_realtime_quotes
写入TickData时,将其*100
转换为股数。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具