3. 资金流向核心指标:主力净流入、散户净流入、大单与小单的划分标准
做资金流向分析,说白了就是看谁在买、谁在卖。
市场上每天几万亿的成交额,背后是形形色色的参与者。有机构、有游资、有量化基金,也有咱们普通散户。每个人的资金体量不同,交易习惯也不同。把这些行为拆解成「主力净流入」和「散户净流入」,就成了我们判断市场情绪的核心工具。
3.1 大单与小单:划分的底层逻辑
先问一个问题:一笔100万的买单,算大单还是小单?
答案是不一定。在茅台里,100万可能只是个小散户;但在一个市值20亿的小盘股里,100万可能就是主力资金了。所以,划分标准不能一刀切。
我个人习惯用「相对阈值法」。具体来说,就是根据个股的日均成交额和流通市值,动态计算大单和小单的门槛。
核心划分标准(我常用的经验值):
- 超大单:单笔成交金额 ≥ 500万元,或单笔成交量 ≥ 流通股本的0.1%
- 大单:单笔成交金额 100万 ~ 500万元,或单笔成交量 ≥ 流通股本的0.02%
- 中单:单笔成交金额 20万 ~ 100万元
- 小单:单笔成交金额 < 20万元
嗯,这里要注意。不同数据商的标准略有差异。比如东方财富和同花顺的划分就不完全一样。我在项目中遇到过,同一个股票,两个平台的主力净流入数据差了30%。后来一查,原来是他们的大单阈值不同。
我的建议是:选定一个数据源后,就固定用它。不要今天看A平台,明天看B平台,否则分析逻辑会乱掉。
3.2 主力净流入 vs 散户净流入
有了大单小单的划分,接下来的计算就简单了。
主力净流入 = 超大单净流入 + 大单净流入
散户净流入 = 小单净流入(通常中单被视为中性资金,有时也归入散户)
净流入的计算公式:
净流入 = 主动买入金额 - 主动卖出金额
注意,这里用的是「主动买入」和「主动卖出」。什么意思呢?
你挂一个买单在盘口等着成交,这叫被动买入。你直接以卖一价甚至更高的价格吃进去,这叫主动买入。主动买入代表更急切的买入意愿,所以资金流向统计的是这部分。
一个小技巧:我习惯把「主力净流入 / 成交额」这个比值作为核心观察指标。如果比值超过5%,说明主力参与度很高,行情往往有持续性。
3.3 实战中的避坑指南
我曾经踩过一个坑,分享给你。
有一次分析一只股票,主力净流入连续三天都是正的,但股价却在下跌。我当时很困惑,难道数据错了?后来仔细复盘才发现,原来是主力在「对倒」——左手倒右手,制造净流入的假象,吸引散户接盘。
怎么识别这种陷阱?
- 看「主力净流入」的同时,一定要看「主力成交额」。如果净流入很大,但成交额很小,说明可能是虚假交易。
- 结合「大单成交占比」来判断。正常的主力拉升,大单成交占比应该在30%以上。低于20%就要警惕。
- 散户净流入如果突然放大,而主力净流入在减少,往往是短期见顶的信号。我称之为「接盘侠指标」。
3.4 一张图看懂资金流向分析框架
下面这张图,是我自己梳理的资金流向分析核心逻辑。你看完应该能一目了然。
3.5 代码实现:计算主力净流入
光说不练假把式。我写了一段Python代码,模拟了从原始成交数据到主力净流入的计算过程。你可以直接拿去用。
import pandas as pd
import numpy as np
# 模拟逐笔成交数据
def generate_trade_data(n=1000):
np.random.seed(42)
prices = np.random.uniform(10, 50, n)
volumes = np.random.randint(100, 10000, n)
amounts = prices * volumes
directions = np.random.choice(['buy', 'sell'], n)
df = pd.DataFrame({
'price': prices,
'volume': volumes,
'amount': amounts,
'direction': directions
})
return df
# 划分大单小单
def classify_order(amount):
if amount >= 5000000: # 500万以上
return '超大单'
elif amount >= 1000000:
return '大单'
elif amount >= 200000:
return '中单'
else:
return '小单'
# 计算净流入
def calc_net_inflow(df):
df['order_type'] = df['amount'].apply(classify_order)
# 主动买入为正,主动卖出为负
df['flow'] = np.where(df['direction'] == 'buy', df['amount'], -df['amount'])
# 按订单类型汇总
result = df.groupby('order_type')['flow'].sum()
# 主力净流入 = 超大单 + 大单
main_force = result.get('超大单', 0) + result.get('大单', 0)
retail = result.get('小单', 0)
return main_force, retail, result
# 执行
df = generate_trade_data()
main_force, retail, detail = calc_net_inflow(df)
print(f"主力净流入: {main_force/10000:.2f} 万元")
print(f"散户净流入: {retail/10000:.2f} 万元")
print("\n各类型净流入明细:")
print(detail / 10000)
重要提醒:这段代码是教学演示用的。实盘数据需要从数据商API获取,而且要注意处理复权、除权等特殊情况。我曾经因为没处理复权,导致主力净流入数据偏差了十几个点,教训深刻。
3.6 核心指标的使用心法
最后,分享几个我多年总结下来的使用心法:
- 主力净流入 + 股价上涨:健康的上涨,可以持有或加仓。
- 主力净流入 + 股价下跌:可能是洗盘,也可能是对倒出货。需要结合成交量判断。
- 主力净流出 + 股价上涨:散户行情,持续性差。我一般会减仓。
- 主力净流出 + 股价下跌:典型的出货行情,果断离场。
说白了,资金流向分析不是万能的。它更像是一个「辅助仪表盘」,帮你感知市场的温度。真正做决策时,还是要结合K线形态、成交量、板块轮动等多维度信息。
嗯,这一章的内容就到这里。记住,数据是死的,人是活的。多复盘、多总结,你慢慢就能找到感觉。