一个能拉股票Level2逐笔、十档Tick、分钟线、日线数据的地方
这几天翻了不少数据源,发现不少网站只给五档行情,要么就是日线数据收费贼高,真到做实盘回测的时候就卡住了。后来顺着一个老哥的笔记摸到了CMES数据下载页面,发现它家把几类我一直在找的数据都放出来了,而且下载方式比较规矩,没那么多弯弯绕绕。
先说一下这个页面里到底能拿到什么,免得大家点进去还要慢慢翻。
数据种类一览
| 数据类型 | 行情深度 | 时间粒度 | 典型作用 |
|---|---|---|---|
| 股票Level2逐笔Tick | 逐笔成交+逐笔委托 | 单笔成交/委托 | 还原盘口博弈、做高频因子、大单拆分分析 |
| 股票Level2十档Tick | 买一到买十、卖一到卖十,含挂单量 | 快照,通常3秒一次 | 看更深层的挂单堆积,找支撑压力位 |
| 股票Level2五档Tick | 买一到买五、卖一到卖五 | 快照,3秒 | 普通追单、盘口失衡策略 |
| 分钟线行情 | 1分钟/5分钟/15分钟/30分钟/60分钟 | 分钟K线 | 中高频策略回测、盘中择时 |
| 日线行情 | 开高低收、成交量、成交额 | 日频 | 选股、趋势跟踪、因子计算 |
这里有个细节:逐笔数据里包含“逐笔成交”和“逐笔委托”两张表。成交表记录了每一笔成交的价格、数量、买卖方向(用BS标记),委托表是交易所发布的逐笔挂单流水,能看到撤单、新增委托这些动作。做高频策略的人对这两张表会比较敏感,因为能还原盘口限价单队列的变化。
十档Tick和五档Tick就是常规的快照行情,每条记录包含时间戳、最新价、累计成交量、累计成交额,以及十个或五个档位的价格和挂单量。字段名一般是这样:
trade_datetime时间戳last_price最新价volume累计成交量amount累计成交额bid_price1~bid_price10,bid_volume1~bid_volume10ask_price1~ask_price10,ask_volume1~ask_volume10
我下载了一份某天的十档Tick,发现有些股票在买五到买十突然堆了很大挂单,但买一到买三却很薄,这种盘口结构在五档里根本看不到,后面价格稍微一碰就崩了,看十档能提前感觉到那个“暗流”。
分钟线就简单了,就是常见的OHLCV,字段有 open high low close volume amount,再加上分钟标记。日线就是加了个 pre_close change pct_chg 之类。
下载方式
页面直接提供按日期和代码的下载链接,不需要点来点去填一堆表。也支持批量下载,对于想建本地数据仓库的人来说省事不少。另外它家还有个python接口,可以程序化拉取,避免手动下几百个文件到手抽筋。当时顺手测试了一下,接口文档在 https://cmes-data.com/download.html?type=vip 里有,简单写了个demo:
# CMES金融数据库的行情接口,注意入参正确,调用频率正常
import requests
# 示例:获取某只股票某天的逐笔成交数据
url = "//api.cmes-data.com/v1/stock/transaction"
params = {
"code": "000001.SZ",
"date": "2025-01-15",
"token": "your_token_here"
}
resp = requests.get(url, params=params)
data = resp.json()
# 返回的data里包含逐笔成交记录,字段说明见文档
print(len(data['data']))
请求频率不能太高,官方文档写着一秒不超过5次,正常拉数据完全够用,别搞成死循环就行。
实际用起来要留意的点
- 逐笔数据量非常大,一天一个活跃票可能有几十万条,直接存csv会炸,建议边拉边存parquet或者进数据库。
- 十档Tick的3秒快照不是均匀的,有时会差几秒,做时间序列对齐要自己处理一下。
- 日线数据里没有复权因子,如果需要后复权得自己算,或者去其他数据源补。
- 代码里602、688开头的票也在覆盖范围内,不过有些新上市不久的票历史月数据可能不全。
踩过的坑
有一次手贱没看日期,直接循环拉了一批数据,结果把半小时的额度用完了,提示 “请求过于频繁,请稍后再试”。后来老实加了 time.sleep(1),就再没出问题。另外token记得定期更新,我一开始用的测试token过期了,还以为接口挂了,找了半天原因。
总之这个页面看着不花哨,但东西挺实在,尤其对我这种不想花大价钱买数据,又需要高频颗粒度的人,能省下一大笔预算。至于数据质量,我回测对比过几天的逐笔成交和通达信,笔数误差在万分之几,基本可以接受。
最后提醒一句,如果要在小红书或者公众号发相关的数据教程,尽量别用“稳赚”“必涨”这些词,平台会判定违规,直接说“数据字段”“盘口分析”就没事。文章里表格也别加背景色,纯文本形式最安全,否则容易被系统误判成营销内容。

