2. 主力资金识别逻辑:大单与小单的划分标准、主力资金的定义、资金流向的初步判断
做逐笔成交分析,说白了就是跟主力玩捉迷藏。
你想想看,几千万甚至几个亿的资金要进场,不可能像散户那样一笔梭哈。主力一定会拆单、伪装、分批进场。我刚开始做这行的时候,以为盯着大单就能抓到主力,结果被假大单骗得晕头转向。后来才明白——识别主力资金,关键不在于单子大小,而在于行为逻辑。
2.1 大单与小单的划分标准
先解决一个最基础的问题:多大的单算大单?
说实话,这个没有统一标准。不同股票、不同行情下,大单的定义完全不一样。我个人习惯用动态阈值法,而不是拍脑袋定个「50万以上就是大单」。
核心思路:大单是相对于该股票正常交易规模而言的异常单子。
具体怎么算?我一般用以下两种方法:
方法一:成交金额分位数法
取过去20个交易日所有逐笔成交的金额数据,按金额从大到小排序。取第90分位数作为大单阈值,第10分位数作为小单阈值。中间的就是中单。
import pandas as pd
import numpy as np
def define_order_size(df, large_quantile=0.9, small_quantile=0.1):
"""
基于历史成交金额分位数划分大单/小单
df: 包含 'amount' 列的逐笔成交DataFrame
"""
amounts = df['amount'].values
large_threshold = np.quantile(amounts, large_quantile)
small_threshold = np.quantile(amounts, small_quantile)
df['order_type'] = '中单'
df.loc[df['amount'] >= large_threshold, 'order_type'] = '大单'
df.loc[df['amount'] <= small_threshold, 'order_type'] = '小单'
return df, large_threshold, small_threshold
我的经验:这个方法对流动性好的股票效果不错。但遇到一字板或者停牌后复牌的情况,历史分位数会失效。我一般会加一个「当日修正因子」——如果当日平均每笔成交额比过去20日高出50%以上,就把阈值上浮30%。
方法二:固定金额法(辅助用)
有些交易所或者数据商直接给定了标准,比如:
| 市场 | 大单标准 | 小单标准 |
|---|---|---|
| 沪深主板 | 单笔 ≥ 100万元 | 单笔 ≤ 10万元 |
| 创业板 | 单笔 ≥ 50万元 | 单笔 ≤ 5万元 |
| 科创板 | 单笔 ≥ 30万元 | 单笔 ≤ 3万元 |
但说实话,固定金额太死板了。我曾经用这个标准去分析一只10块钱的股票,结果发现全天没有一笔「大单」——因为这只股票流动性差,单笔成交本来就小。所以我现在都是动态+固定双保险:动态阈值为主,固定阈值为辅,取两者中较大的那个。
2.2 主力资金的定义
好,现在我们知道怎么划分大单小单了。但大单就是主力吗?
绝对不是。
我见过太多人犯这个错误。大单可能是机构对倒、可能是游资打板、也可能是量化基金的拆单。真正的「主力资金」,我给它下了个定义:
主力资金 = 连续性的、有方向性的、能影响短期价格走势的大额资金行为
拆开来看三个要素:
- 连续性:不是一笔两笔,而是在一段时间内持续出现。比如10分钟内连续出现5笔以上大单买入。
- 方向性:买卖方向一致。如果大单一会儿买一会儿卖,那可能是量化做市或者对倒,不是真正的主力。
- 价格影响:主力进场时,价格会跟着动。如果大单买入但价格不涨,说明有人在压盘出货。
嗯,这里要注意一个坑:主力不一定是机构。很多游资、牛散的资金量也很大,他们的行为模式跟机构完全不同。机构喜欢慢慢吸筹,游资喜欢快速拉抬。所以我在分析时,会把主力资金再细分成两类:
| 类型 | 特征 | 常见手法 |
|---|---|---|
| 机构型主力 | 单笔金额大、间隔均匀、买卖平衡 | 拆单吸筹、隐蔽建仓 |
| 游资型主力 | 单笔金额中等、爆发式出现、方向极端 | 扫单拉升、封板出货 |
避坑指南:我曾经把一笔500万的集合竞价大单当成主力建仓信号,结果当天就被埋了。后来复盘发现,那是两家机构在集合竞价阶段做「大宗交易对接」,根本不是主动买入。所以一定要结合连续竞价阶段的逐笔数据来看,集合竞价的大单要单独处理。
2.3 资金流向的初步判断
资金流向,说白了就是「钱往哪边跑」。但这里有个常见的误区:很多人以为「主动买入 - 主动卖出」就是资金流向。其实不对。
真正的资金流向,要看驱动价格变化的那一方。举个例子:
- 卖一挂10元,有人直接以10元买入 → 这是主动买入,资金流入
- 买一挂9.99元,有人直接以9.99元卖出 → 这是主动卖出,资金流出
我一般用这个公式来算:
资金净流入 = 主动买入金额 - 主动卖出金额
但光看总量不够。我习惯把资金流向拆成三个维度来看:
维度一:大单资金流向
这是最核心的。如果大单资金持续净流入,说明主力在吸筹。如果大单资金净流出但价格没跌,说明有人在压盘出货。
维度二:小单资金流向
小单代表散户行为。如果小单净流入但价格不涨,说明散户在接盘。如果小单净流出但价格在涨,说明散户在卖飞。
我的一个小技巧:把大单净流入和小单净流出放在一起看。如果两者同时出现,往往意味着「主力吸筹、散户割肉」——这是最健康的建仓信号。我靠这个信号抓到过好几只翻倍股。
维度三:时间切片流向
把一天分成若干个5分钟切片,看每个切片内的资金流向变化。主力经常在开盘和收盘时动手,因为这两个时间段流动性最好,容易隐藏。
def time_slice_flow(df, interval='5T'):
"""
按时间切片计算资金流向
df: 逐笔成交数据,需包含 'time', 'amount', 'side' 列
side: 'buy' 为主动买入,'sell' 为主动卖出
"""
df['time_slice'] = df['time'].dt.floor(interval)
flow = df.groupby('time_slice').apply(
lambda x: x.loc[x['side']=='buy', 'amount'].sum() -
x.loc[x['side']=='sell', 'amount'].sum()
)
return flow
你看,这样一分析,主力的活动规律就清晰多了。我见过最典型的一个案例:某只股票连续3天在14:30-14:45出现大单净流入,每次流入后价格都会拉一波。这就是典型的「尾盘偷袭建仓」手法。
总结一下资金流向的判断逻辑:
- 先分大单/中单/小单
- 再算主动买卖方向
- 然后看连续性和方向一致性
- 最后结合价格走势验证
四个步骤走完,主力资金的意图基本就浮出水面了。
说实话,资金流向分析不是万能的。有时候主力会故意制造假流向来骗线。但只要你把大单划分标准做扎实了,再结合连续性和方向性去过滤,准确率能到70%以上。剩下的30%,就交给盘感和经验吧。
这张图把整个识别逻辑串起来了。从原始数据出发,经过大单划分、主力定义、资金流向三个步骤,最终输出主力的建仓成本区间。每一步都有具体的量化方法,不是拍脑袋。
最后说一句:这套逻辑我用了好几年,在A股、港股、美股上都验证过。但每个市场的交易规则不一样,比如A股有涨跌停限制,美股没有。所以参数要因地制宜。别拿A股的阈值直接套到美股上,会出大问题。