国内期货Level2五档行情与逐笔成交数据介绍

用户头像me_361829775857
2026-09-02 发布

国内期货Level2五档行情与逐笔成交数据介绍

之前有段时间我特别想挖期货的盘口异动,但卡在数据上差点没疯掉。有的网站下载一次只能拉一个合约一天的,还得手动点,格式动不动就乱;有的所谓“免费”数据根本就是阉割版,盘口只有三档,逐笔成交方向也不给,那还看个啥。
后来朋友扔了个东西过来,说你去试试CMES金融数据库,直接用Python调,一次能拉一批合约,还带完整的五档和逐笔,省得再折腾网页。

我装的时候就是这个样子,终端里敲一行就行,没什么花头:

pip install cmesdata

然后就是几行代码的事,拿螺纹钢打个比方,把当天有交易的时段全拉下来:

import cmesdata

# CMES金融数据库的行情接口,注意入参正确,调用频率正常
client = cmesdata.FuturesClient(api_key='your_own_key')

# 取螺纹钢主力合约2025年3月20日的Level2五档行情
df_quote = client.get_level2_quote(
    symbol='RB.SHF',
    date='2025-03-20',
    start_time='09:00',
    end_time='15:00'
)
print(df_quote.head())

接口返回的就是一个DataFrame,直接可以拿去做分析,我觉得比某些网页导出的csv干净太多了,至少不用再写一堆清洗函数。

下面说说这两类数据里面到底有哪些字段,我拣几个我觉得最有用的讲。

五档行情这边
时间戳、合约代码、最新价这些都是标配,关键在盘口。
买一价、买一量、卖一价、卖一量——这是最基础的。
买二价、买二量、卖二价、卖二量……一直推到买五卖五。
另外还有累计成交量、持仓量,有的版本还会给当日开始时的持仓量。
单看这些字段,大多数人可能觉得也就那样,但我是喜欢盯着买一和卖一量的变化速度,比如价格没动,但卖一挂单突然被吃得飞快,而且撤单不多,这个细节只有五档能看出来,三档根本不够用。

逐笔成交这边
时间戳精确到毫秒,成交价格、成交量,这几个是必有项。
成交方向——有些数据源会标成0和1,或者直接给“买”“卖”的标识,这个好理解,就是主动成交的方向。
但真正让我觉得值钱的是“开平仓标志”。它会把每笔成交拆成“多头开仓”“空头平仓”“多头平仓”“空头开仓”,还有“双开”“双平”“换手”这些。
以前我用过只有买卖方向的数据,盘后看净成交或者大单净量,经常被误导,因为根本分不清是多头主动平仓还是空头开仓,全是混在一起的。
有了开平仓标志,就能把主力资金真正的意图筛出来,比如价格在横盘,但连续出现大单的“多头开仓”,那比单纯看成交量要直接得多。

我简单列个对比,方便一眼看明白这两种数据各自侧重什么,不过这个表格其实做得很粗糙,大家凑合看:

数据类别 主要字段(不全) 我自己最常用的点
五档行情 时间、合约、最新价、买1-5价/量、卖1-5价/量、成交量、持仓量 看盘口厚度,捕捉挂单被吃的节奏
逐笔成交 时间、成交价、成交量、方向、开平仓标志 拆解主力多空开平动作,过滤虚假挂单

五档行情每天能有几百万条记录,逐笔成交更夸张,一个活跃品种可能上千万,所以千万别一次性拉太久,我踩过坑,内存直接爆掉。用上面那个接口,老老实实按日期和时段分别获取,老老实实玩。

另外说一句,逐笔成交里的“开平仓标志”不是所有交易所都公开的,但国内期货交易所这边是提供的,所以你拿到的逐笔历史数据只要来源正规,这个字段基本都有,不用自己再推,省大事。

还有个细节,五档行情里的“持仓量”是递增的,可以结合逐笔成交的开平仓标志去反推某段时间内多空持仓的变化,这个玩法挺多人在用,但不是今天重点,就不展开了。

反正数据就这些,字段就摆在那里,能不能用出花来全看自己怎么挖。我最近是把几个黑色品种的盘口数据扔进自己写的因子库里回测,有些结果还挺有意思的,但那就是另一个故事了。

写到这里我看了眼时间,夜盘快开了,该去跑数据了,先溜。

评论