数据源解析:Level-2行情数据与普通行情数据的区别
做量化交易这些年,我踩过最大的坑,就是拿普通行情数据去分析主力资金。说白了,普通行情就像用手机拍月亮——能看个大概,但细节全丢了。今天咱们就好好聊聊,Level-2数据和普通数据到底差在哪。
普通行情数据:只能看个热闹
普通行情数据,也就是我们平时在炒股软件上看到的那些。它每3秒或5秒刷新一次,给你一个快照。我刚开始做交易时就用这个,结果发现很多信号都是假的。
普通数据的主要特征:
- 刷新频率低:3-5秒一次,中间发生了什么你完全不知道
- 只有成交汇总:告诉你这3秒内成交了多少手,均价多少
- 没有委托明细:你不知道是主动买还是主动卖
- 大单小单混在一起:一笔1000手的单子和10笔100手的单子,在普通数据里看起来一样
Level-2行情数据:看清每一笔交易
Level-2数据,说白了就是交易所给付费用户开的「后门」。它能让你看到逐笔成交、十档委托、买卖队列这些核心信息。我个人习惯,只要做资金分析,必须用Level-2数据。
Level-2的核心优势:
- 逐笔成交:每一笔交易都能看到,包括成交时间、价格、数量、方向
- 十档委托:能看到买一到买十、卖一到卖十的挂单情况
- 买卖队列:能看到每个价位上挂了多少单,谁在挂
- 成交标识:明确标注是主动买还是主动卖
逐笔成交与分时成交的差异
这个点特别容易混淆。我见过不少交易员,把分时成交当成逐笔成交来分析,结果方向都搞反了。嗯,这里要注意区分。
分时成交:被「打包」过的数据
分时成交,就是普通行情里那种每3秒或5秒汇总一次的数据。它把这段时间内的所有成交合并成一条记录。
举个例子:
// 分时成交示例
时间:09:30:05
价格:10.00元
成交量:500手
成交额:50万元
// 你只知道这5秒内成交了500手,但不知道是几笔单子
分时成交的问题在于:
- 一笔大单和十笔小单,在分时成交里看起来一样
- 无法区分主动买和主动卖
- 时间精度低,无法做高频分析
逐笔成交:每一笔都清清楚楚
逐笔成交,就是Level-2数据里的核心内容。每一笔交易都单独记录,包括:
// 逐笔成交示例
第1笔:09:30:01.123,价格10.00元,成交量300手,主动买入
第2笔:09:30:02.456,价格10.01元,成交量150手,主动卖出
第3笔:09:30:03.789,价格10.00元,成交量50手,主动买入
// 你能看到每一笔的细节
我在项目中遇到过这样的情况:分时成交显示某只股票5分钟内净流入500万,但逐笔成交一看,其实是两笔大单对倒,真正的净流入只有50万。这就是为什么我说,不看逐笔成交,你永远不知道资金在玩什么把戏。
大单划分标准
大单划分,说白了就是给资金大小定个标准。但这个标准不是固定的,得看股票的价格和流通盘。你想想看,贵州茅台的一笔100手大单,和一只5块钱股票的一笔100手大单,能一样吗?
常见的划分方法
| 股票类型 | 小单 | 中单 | 大单 | 超大单 |
|---|---|---|---|---|
| 低价股(<10元) | <100手 | 100-500手 | 500-2000手 | >2000手 |
| 中价股(10-50元) | <50手 | 50-200手 | 200-1000手 | >1000手 |
| 高价股(>50元) | <20手 | 20-100手 | 100-500手 | >500手 |
这个表是我自己总结的,不一定适合所有场景。但核心逻辑是:大单的金额门槛应该在50万-100万之间。低于这个数,很难说是主力行为。
动态划分法:更精准的方式
我个人更推荐用动态划分法。就是根据股票的历史成交分布,自动计算大单阈值。
// 动态大单划分示例(Python伪代码)
def calculate_large_order_threshold(trade_data):
# 计算所有成交量的分布
volumes = trade_data['volume'].values
# 取90%分位数作为大单阈值
threshold = np.percentile(volumes, 90)
return threshold
# 使用示例
threshold = calculate_large_order_threshold(df)
large_orders = df[df['volume'] >= threshold]
这样做的好处是:不同股票、不同时间段,大单标准会自动调整。我曾经用这个方法分析过一只科创板股票,发现它的「大单」标准只有50手,因为它的流通盘太小了。
知识体系总览
下面这张图,是我自己整理的数据源解析框架。你看完应该能明白,这三个知识点是怎么串起来的。
这张图的核心逻辑很简单:数据精度决定分析深度。普通数据只能做粗浅的资金流向判断,Level-2数据才能做精细的主力行为分析。而大单划分标准,则是连接数据和策略的桥梁。
好了,这一章的内容就到这里。数据源是分析的基础,基础打牢了,后面的策略才能站得住脚。下一章咱们聊聊如何用Python获取和处理Level-2数据,到时候我会分享一些我自己的代码模板。