第四章:足迹图高级应用——逐笔成交足迹图的精细解读
足迹图这东西,说白了就是把每一笔成交都钉在K线上。很多交易者看K线只看价格,我却喜欢盯着足迹图里的数字发呆。为什么?因为每一笔成交背后,都是真金白银的博弈。
我个人习惯把足迹图当作市场的「X光片」。它能照出大资金的真实意图。今天我们就聊聊,怎么从这些密密麻麻的数字里,揪出那些藏头露尾的大单和冰山订单。
一、足迹图的核心结构
先看一张我手绘的足迹图结构示意。别嫌丑,逻辑都在里面。
每一行代表一个价位。左边的数字是价格,右边的数字是成交量。红色表示主动买入,绿色表示主动卖出。嗯,就这么简单。
二、怎么识别大单?
大单不是看单笔成交额,而是看单笔成交量相对于该合约的「正常水平」。我一般这么定义:
- 正常单:成交量在均值的0.5~1.5倍之间
- 大单:成交量超过均值的3倍
- 巨量单:成交量超过均值的10倍
举个例子。假设某合约过去20笔的平均成交量是50手。突然出现一笔成交500手,这就是巨量单。我在项目中遇到过这种情况——当时价格还在横盘,突然一笔500手的主动买入把价格推高了2个tick。我立刻警觉起来,因为这种量不可能是散户干的。
关键判断逻辑:
大单出现的位置比大单本身更重要。如果大单出现在支撑位附近,且是主动买入,那大概率是主力在吸筹。反之,如果出现在阻力位附近且是主动卖出,那就是出货。
三、冰山订单的识别技巧
冰山订单,就是大资金把一个大单拆成很多小单,分批进场。目的是不引起市场注意。你想想看,如果一笔5000手的卖单直接砸出来,盘口瞬间就崩了。但拆成50笔100手的单子,看起来就像普通交易。
怎么识别?我总结了三招:
- 同价位连续同向成交:比如在99.50这个价位,连续出现5笔主动买入,每笔80~120手。这就不正常。正常散户不会盯着一个价位反复买。
- 成交量分布异常集中:整个K线里,80%的成交量集中在1~2个价位上。这说明有资金在刻意维护某个价格。
- Delta值出现「锯齿」:Delta是主动买入减主动卖出。如果Delta在某个价位附近反复正负交替,但累计Delta却在缓慢增加,这就是冰山订单的典型特征。
我的个人经验:
我曾经跟踪过一只股票,连续3天在10.20元这个价位出现「每5分钟一笔200手主动买入」的规律。后来果然出了利好公告,股价一周涨了15%。这就是典型的冰山订单建仓。
四、实战代码:自动标记大单与冰山
光说不练假把式。下面是我写的一个Python函数,可以自动从足迹数据中标记出大单和冰山订单。
import pandas as pd
import numpy as np
def detect_large_and_iceberg(footprint_df, volume_col='volume', price_col='price',
direction_col='direction', large_threshold=3.0):
"""
从足迹数据中检测大单和冰山订单
参数:
footprint_df: DataFrame,包含每笔成交的价格、成交量、方向
large_threshold: 大单倍数阈值,默认3倍均值
返回:
DataFrame,新增两列:is_large, is_iceberg
"""
df = footprint_df.copy()
# 计算滚动均值(过去20笔)
df['avg_volume'] = df[volume_col].rolling(window=20, min_periods=5).mean()
# 标记大单
df['is_large'] = (df[volume_col] > df['avg_volume'] * large_threshold) & \
(df['avg_volume'].notna())
# 标记冰山订单:同一价格连续3笔以上同向,且单笔量在0.5~1.5倍均值之间
df['same_price'] = df[price_col] == df[price_col].shift(1)
df['same_direction'] = df[direction_col] == df[direction_col].shift(1)
# 连续同价同向计数
df['consecutive'] = 0
for i in range(1, len(df)):
if df.loc[i, 'same_price'] and df.loc[i, 'same_direction']:
df.loc[i, 'consecutive'] = df.loc[i-1, 'consecutive'] + 1
else:
df.loc[i, 'consecutive'] = 0
# 冰山条件:连续>=3笔,且单笔量在合理范围
df['is_iceberg'] = (df['consecutive'] >= 3) & \
(df[volume_col] > df['avg_volume'] * 0.5) & \
(df[volume_col] < df['avg_volume'] * 1.5) & \
(df['avg_volume'].notna())
return df[['price', 'volume', 'direction', 'is_large', 'is_iceberg']]
# 使用示例
# result = detect_large_and_iceberg(my_footprint_data)
# print(result[result['is_large'] | result['is_iceberg']])
这段代码的核心逻辑其实就两点:大单看「异常大」,冰山看「连续且均匀」。我建议你拿到自己的数据后,先调参试试。不同品种的阈值差异很大——股指期货的大单阈值可能是3倍,但小品种可能5倍才合适。
五、避坑指南
我曾经踩过的坑:
- 别把市价单拆单当成冰山:有些算法交易会把大单拆成市价单,这种在足迹图上会显示为多个价位上的分散成交,而不是同一价位的连续成交。这不是冰山,是「雪花」。
- 注意交易所的数据精度:有些交易所只提供1秒级别的聚合数据,这种数据里你看到的「连续成交」可能只是巧合。一定要用逐笔数据。
- 别忽略时间因素:同样是连续5笔100手买入,如果发生在开盘前3分钟和收盘前3分钟,意义完全不同。开盘可能是试盘,收盘可能是抢筹。
六、总结一下
足迹图的高级应用,说白了就是「读心术」。大单告诉你「有人来了」,冰山告诉你「有人在偷偷干大事」。两者结合,你就能比市场快半步。
我个人习惯每天收盘后,把当天出现大单和冰山订单的品种过一遍。坚持一个月,你对市场的「语感」会明显提升。嗯,这招我教过不少学员,反馈都不错。
记住一句话:足迹图上的每一个数字,都是资金的指纹。
公众号:蓝海资料掘金营,微信deep3321