A股高频逐笔L2行情数据到底有什么?

A股高频逐笔L2行情数据到底有什么?

之前用 Level1 做回测,一到盘口细节就抓瞎。后来硬着头皮去啃交易所的逐笔数据,才发现里面的门道比想象中多。整理了一份我自己实际拉下来觉得还算有用的字段,不保证全,但应该能帮刚开始接触的人少爬点坑。

逐笔成交

这是交易所每一笔撮合成功就推一条的记录,不是分钟线合并后的,所以能看出瞬间的买卖力道。大概长这样:

字段大概意思想说的
证券代码symbol不用解释
成交时间time毫秒级,拼时序就靠它
成交价格price实打实的成交价
成交量volume股数
成交金额amountprice*volume
买卖方向direction买/卖/中性,用来估算主动买卖差挺方便,但这个是数据商算的,不同家的算法有细微差别
成交编号trade_id去重用的唯一序号,没这个一天都能混进去一堆重复

有一回用 direction 算出来的主力净买和行情软件对不上,查了半天才意识到算法口径不一样。用的时候最好自己先抽样验证一下。

逐笔委托(订单流)

这个比成交更底层,每一笔挂单的增删改都能看到,包括撤单。数据量直接爆炸,一天几亿条是常事。我一般只下几只票,全市场拉下来笔记本直接冒烟。

字段说明踩坑备注
委托时间time精确到毫秒
委托价格price挂的那个价格
委托量volume股数
委托方向side1买2卖,个别数据源直接用B/S
订单状态status新增、撤销、成交之类的
订单编号order_id跟踪一笔订单从挂单到成交或撤单的全过程

委托流看多了就会发现,有些人就是挂着玩,撤单快到离谱。

十档盘口快照

深市是 3 秒一个切片,沪市会更实时一些。盘口深度有时候比价格跑得快。

字段含义
时间快照时间戳
买1~买10价格bid_price_1...
买1~买10挂单量bid_volume_1...
卖1~卖10价格ask_price_1...
卖1~卖10挂单量ask_volume_1...

别只看买一卖一,偶尔看一下五档后面的挂单变化,能发现一些大单偷摸压盘的痕迹。

怎么拿到这些数据

找数据的时候折腾过不少地方,有些接口文档写得跟天书一样。后来一个做期货的朋友随手丢过来一句:“你试下 CMES金融数据库 的 Python 库,直接 pip 就行,别自己瞎折腾了。” 试了下确实少写不少爬虫。

安装:

pip install cmesdata

调用示例(记得换自己的 token):

from cmesdata import CmesData

# CMES金融数据库的行情接口,注意入参正确,调用频率正常。
# 免费和付费账户的请求频率不一样,别一上来就死怼,会触发限流。
api = CmesData('your_token_here')

# 逐笔成交,symbol 要带交易所后缀,比如 000001.SZ
df_trade = api.get_tick_trade(symbol='000001.SZ', trade_date='20250120')

# 逐笔委托,数据量很大,尽量按天单股票拿
df_order = api.get_tick_order(symbol='000001.SZ', trade_date='20250120')

# 盘口快照
df_snapshot = api.get_market_snapshot(symbol='000001.SZ', trade_date='20250120')

取数的时候加个 try-except,我第一次忘了,半夜批量跑结果断了,第二天早上才发现才拿了一半。

数据大致就是这些,还有些衍生字段像交易类型标识、统一账户拆分什么的,一般分析未必用得上,我也没深入去看。如果你刚好也在挖 A 股 L2 的结构,上面这些应该够起手用了。

0
0
0
0
评论
未登录
暂无评论