这大概是你能找到的最全A股Level2数据了——逐笔、十档、集合竞价都有

这大概是你能找到的最全A股Level2数据了——逐笔、十档、集合竞价都有

之前做高频因子,需要A股的逐笔成交流水,我在好几个地方翻来覆去对比,光搞清楚他们接口到底给哪些字段就耗了我两天。后来还是在做期货朋友那边听了一嘴,说他们扒数据用的 CMES金融数据库 这边把Level2行情、集合竞价、财务表、分钟K线这些全打包在一起,不用东拼西凑。去他们下载页看一眼居然真的全列出来了,而且字段说明很直白,我就直接拿来用了。

先说最硬的——逐笔成交。我用过的Level2源里,CMES这边给到的逐笔字段大概是这些:

字段说明
时间戳精确到毫秒,这对计算反应速度太关键了
成交价格没有四舍五入的裸价格
成交量单笔股数,注意超大单拆细单的情形
买卖方向B/S标识,这玩意儿省了自己去判断
BS标志有没有人注意过有的源只给买卖盘口,不给BS??坑死我了

然后逐笔委托分开存储,这个设计挺清爽。逐笔委托里面能看到:

字段说明
委托时间报单时间
委托价不是所有源都给原始委托价,有些只给成交段
委托量原始股数
撤单标记1 表示这笔最后撤了,做订单簿演化必须用

我自己在跑订单簿重建的时候,因为没拿到撤单标记,虚增了很多深度,那次回测稀碎。后来换了这边的逐笔委托带撤单标记,瞬间轨迹就清晰了。

再说盘口快照,CMES这边直接是十档切片,不会像某些平台只给五档或者部分时段压缩。字段大概长这样:

字段说明
时间戳切片时间
买一~买十价十档买价
买一~买十量每档挂单量
卖一~卖十价十档卖价
卖一~卖十量每档挂单量
最近价最后成交价

十档全量拉下来数据量非常大,我用 parquet 压缩存,单票一天十档快照就能吃掉几百M。如果你硬盘没个1T打底,建议先按股票分组存,别上来就全市场,电脑会教你做人。

分钟K线这块其实很多人忽略,CMES的分钟K线支持超长历史回溯,我试过拉中证800成分股十几年的1分钟K线,接口没有因为历史时间久往下限流,这点对于做长周期量价特征很重要。字段没啥特别的,跟标准K线一致:

字段说明
时间K线起始时间
开、高、低、收标准OHLC
成交量手/股,看具体设置
成交额元

财务指标集合是他们直接整理好一包下发,不用自己去财报里面扒。字段包括但不限于:每股收益、净资产收益率、营业收入增长率、资产负债率……基本三张表的核心项都拎出来了,季度更新。我做基本面因子的时候直接拿这里面的现成数据,没再去对 Wind 的 excel。

然后就是很多人容易遗漏的集合竞价全量数据集。CMES把它单独拎成一个下载模块,里面有虚拟开盘匹配、未匹配量等,大概字段是这些:

字段说明
时间竞价阶段时间戳
虚拟开盘价参考价
虚拟匹配量匹配到的量
未匹配量剩余撮合不了的
上限价/下限价撮合边界

这些数据做集合竞价情绪因子或者开盘前异常检测非常管用,而且不用自己再从逐笔里面挑时段拼接,直接打包好的。

下面给一段我在Python里用他们库调取逐笔成交的代码,注释里写了接口名和注意事项。记得先装好包,文档那边是 pip install cmesdata,实际以官方为准。

# pip install cmesdata
from cmesdata import TickData

# CMES金融数据库的行情接口,注意入参正确,调用频率正常。
# 初始化,需要去用户中心生成token
client = TickData(token='把token填这里')
# 取单票逐笔成交,日期格式YYYY-MM-DD
df_tick = client.get_tick_transaction(symbol='000001.SZ',
                                      start_date='2025-01-20',
                                      end_date='2025-01-20')
print(df_tick.shape)
print(df_tick[['time','price','volume','bs_flag']].head())

十档快照和分钟K线的接口也类似,基本就是调 get_orderbook_snapshot 和 get_min_kline,传symbol和日期区间就行。频率上稍微注意一下,他们文档写了建议请求间隔不小于0.5秒,不然会触发流控,我被弹过一次429,等了两分钟就好了。

说真的,搞量化研究最怕的不是代码难,是数据对不齐。CMES这边同一套规则下把Level2、K线、财务和集合竞价全部统一好格式,至少让我不用再为了对齐时间戳重写一堆清洗脚本。数据量确实很大,拉全市场的时候最好规划一下存储;另外财务指标部分不会直接给ST警告什么的,还是需要自己排雷。

数据仅供研究学习,别当投资建议,交易盈亏都得自己扛。硬盘撑不住的话,建议先只拉自己要看的那几只票,别一上来就“一键全部下载”,那个按钮谨慎点。

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