2. Level-2 行情数据:逐笔成交、委托队列、资金流向指标

好,咱们接着聊。上一章我们讲了传统行情数据的局限,说白了就是「马后炮」。今天我要带你看看真正的「战场实况」——Level-2 行情数据。

我刚开始接触 Level-2 的时候,第一反应是「这玩意儿也太香了」。以前看盘就像看黑白电视,Level-2 直接给你升级到 4K 高清。它能让你看到每一笔交易的细节,而不是被「撮合」后的结果。

2.1 逐笔成交:还原每一笔交易的真相

普通行情只给你看「成交价」和「成交量」。但 Level-2 的逐笔成交,会告诉你每一笔交易是怎么发生的。

举个例子

普通行情显示:「14:30,成交 100 手,价格 10.00 元」。

Level-2 告诉你:「14:30:01.234,主动卖出 50 手,价格 10.00 元;14:30:01.567,主动买入 30 手,价格 10.01 元;14:30:01.890,主动卖出 20 手,价格 10.00 元」。

你看,同样是 100 手成交,背后的资金意图完全不同。我曾在项目中遇到过一只股票,普通行情看是「放量上涨」,但逐笔成交显示全是「小单主动卖出,大单被动买入」——典型的对倒出货。嗯,这里要注意,逐笔成交的核心价值在于「方向」和「大小」

关键指标:
  • 成交方向:主动买入(红色) vs 主动卖出(绿色)
  • 成交金额:单笔金额 > 20 万算大单,< 5 万算小单
  • 成交时间戳:精确到毫秒,能看出「抢筹」还是「砸盘」

2.2 委托队列:看穿主力的「挂单陷阱」

这个功能我特别喜欢。普通行情只显示「买一、卖一」的挂单量,但 Level-2 能看到前 50 档的委托明细。

为什么会这样?因为主力经常用「托单」和「压单」来骗人。比如:

  • 托单:买一挂 10000 手大单,让你觉得「跌不下去」,其实主力在偷偷卖出
  • 压单:卖一挂 8000 手大单,让你觉得「涨不上去」,其实主力在悄悄吸筹

我建议你重点关注「委托队列的撤单速度」。如果一个大单挂了 3 秒就撤了,那基本是「假单」。真正想成交的单子,会一直挂着直到被吃掉。

实战技巧:

我曾经用这个指标抓过一只妖股。当时卖一挂了 5000 手压单,但逐笔成交显示「每笔 100 手主动买入,连续吃掉压单」。这说明什么?说明主力在「扫货」。我跟着买了进去,当天涨停。

2.3 资金流向指标:大单净流入的「含金量」

很多软件都有「资金流向」这个功能。但我要告诉你,算法不同,结果天差地别

常见的算法有两种:

算法类型 原理 缺点
传统算法 按成交金额大小划分(>20万算大单) 容易把「拆单」的主力漏掉
逐笔算法 按逐笔成交的方向和大小计算 数据量大,计算复杂

我个人习惯用「逐笔算法」。因为传统算法有个大坑——主力可以把 100 万拆成 10 笔 10 万的小单,这样传统算法就识别不出来了。但逐笔算法能通过「时间间隔」和「价格连续性」判断出这是「伪小单」。

避坑指南:

我曾经被「资金净流入」骗过一次。某股票显示「大单净流入 5000 万」,但逐笔成交显示「大单全是主动卖出,小单在接盘」。后来我才明白,那是主力用「对倒」制造的资金流入假象。所以,一定要结合逐笔成交看资金流向

2.4 知识体系:Level-2 数据的三层结构

下面这张图,是我自己总结的 Level-2 数据使用框架。你想想看,这三层数据是层层递进的:

Level-2 行情数据三层结构 第一层:逐笔成交 每一笔交易的「时间、价格、方向、大小」 核心作用:识别主力是否在「拆单」或「对倒」 第二层:委托队列 前50档「买盘/卖盘」的挂单明细 核心作用:识别「托单」「压单」「假单」 第三层:资金流向 基于逐笔成交计算的「大单净流入/流出」 核心作用:判断主力资金的「真实意图」

说白了,这三层数据就是「看穿主力」的三把钥匙。逐笔成交告诉你「发生了什么」,委托队列告诉你「正在发生什么」,资金流向告诉你「接下来可能发生什么」。

2.5 实战代码:用 Python 解析 Level-2 数据

光说不练假把式。下面是我常用的一个解析函数,专门用来提取「大单成交」和「散户跟风」的信号:

import pandas as pd

def parse_level2_data(df):
    """
    解析 Level-2 逐笔成交数据
    返回:大单买入/卖出统计,散户跟风指数
    """
    # 定义大单阈值(单笔金额 > 20万)
    large_threshold = 200000
    
    # 标记大单
    df['is_large'] = df['amount'] > large_threshold
    
    # 按方向分组统计
    large_buy = df[(df['is_large']) & (df['direction'] == 'buy')]['amount'].sum()
    large_sell = df[(df['is_large']) & (df['direction'] == 'sell')]['amount'].sum()
    
    # 散户跟风指数 = 小单买入占比 / 小单卖出占比
    small_buy = df[(~df['is_large']) & (df['direction'] == 'buy')]['amount'].sum()
    small_sell = df[(~df['is_large']) & (df['direction'] == 'sell')]['amount'].sum()
    
    retail_index = small_buy / (small_sell + 1e-6)  # 防止除零
    
    return {
        'large_net': large_buy - large_sell,
        'retail_index': retail_index
    }
使用建议:

large_net > 0retail_index < 1 时,说明「主力在买,散户在卖」——这是比较好的跟庄时机。反过来,如果 large_net < 0retail_index > 1,那就要小心了,主力可能在出货。

嗯,今天就先聊到这里。Level-2 的数据量很大,但核心就这三样。你先把逐笔成交和委托队列搞明白,资金流向自然就通了。


公众号:蓝海资料掘金营,微信 deep3321