4、资金流向计算:主力净流入/流出计算公式、主动买入与被动买入的区别

好,咱们今天聊点实在的。

资金流向计算,说白了就是回答一个问题:钱到底往哪儿跑了? 我刚开始做量化的时候,以为看个成交量就够了。后来发现,成交量只是告诉你「有多少人交易」,但资金流向告诉你「是谁在主导交易」。这两者差别很大。

4.1 核心概念:主动买入 vs 被动买入

先搞清楚一个基础问题。你想想看,一笔交易是怎么成交的?

市场上永远有两个人:一个想买,一个想卖。但谁更着急?

  • 主动买入:买方直接以卖一价、卖二价……吃掉了卖单。买方「主动」成交,说明买方更急迫。这通常意味着看多情绪强。
  • 被动买入:买方挂了一个买单在买一价等着,结果被卖单砸中了。买方是被动成交的,说明卖方更急迫。这通常意味着抛压大。

一句话总结:主动买入是「追着买」,被动买入是「等着被卖」。

我在项目中遇到过不少新手,看到大单买入就兴奋。但你要看它是主动还是被动。如果是被动买入,那其实是卖方在砸盘,你跟着冲进去就是接盘侠。

4.2 主力净流入/流出计算公式

好,有了上面的基础,我们来看公式。

主力净流入 = 主力主动买入金额 - 主力主动卖出金额

注意,这里只统计「主动」成交的部分。被动成交不算在主力净流入里。为什么?因为被动成交反映的是对手盘的意愿,不是主力的真实意图。

具体到计算,通常按成交单的大小来划分「主力」和「散户」:

成交单类型 金额范围(A股常见标准) 说明
超大单 ≥ 500万元 机构、游资主力
大单 100万 ~ 500万元 中大户、部分机构
中单 4万 ~ 100万元 普通散户、小户
小单 < 4万元 散户、零散交易

嗯,这里要注意:不同数据商对「主力」的定义不一样。有的把大单+超大单算作主力,有的只算超大单。我个人习惯用「大单+超大单」作为主力口径,因为能覆盖更多有效信号。

4.3 代码实现:计算主力净流入

光说理论没意思,咱们直接上代码。以下是一个简化版的资金流向计算函数:

def calculate_money_flow(trade_data):
    """
    计算主力净流入
    :param trade_data: DataFrame,包含字段:price, volume, buy_or_sell, order_type
    :return: 主力净流入金额
    """
    # 筛选主力交易(大单+超大单)
    main_force = trade_data[
        (trade_data['order_type'] == '大单') | 
        (trade_data['order_type'] == '超大单')
    ]
    
    # 主动买入:买方主动吃单
    active_buy = main_force[main_force['buy_or_sell'] == '主动买入']
    active_buy_amount = (active_buy['price'] * active_buy['volume']).sum()
    
    # 主动卖出:卖方主动砸单
    active_sell = main_force[main_force['buy_or_sell'] == '主动卖出']
    active_sell_amount = (active_sell['price'] * active_sell['volume']).sum()
    
    # 净流入
    net_inflow = active_buy_amount - active_sell_amount
    
    return net_inflow

避坑指南:我曾经在实盘回测中吃过亏——直接用「大单买入金额 - 大单卖出金额」作为净流入,结果发现信号滞后严重。后来才意识到,必须区分主动和被动。被动成交的大单,其实是散户在接盘,不是主力在买。

4.4 资金流向的实战意义

搞清楚了计算逻辑,咱们聊聊怎么用。

资金流向不是万能的,但它有几个很实用的场景:

  • 确认趋势:股价上涨,同时主力净流入为正 → 趋势健康,可以持有。
  • 发现背离:股价创新高,但主力净流入持续为负 → 小心,可能是诱多。
  • 识别洗盘:股价下跌,但主力净流入为正 → 可能是主力在吸筹。

警告:别只看单日数据。单日的主力净流入可能受偶然因素影响。我一般至少看3-5日的累计净流入,信号更稳定。

4.5 知识体系结构图

为了让你更直观地理解本章的知识脉络,我画了一张图:

资金流向计算知识体系 资金流向计算 核心区分:主动买入 vs 被动买入 主力净流入 = 主力主动买入 - 主力主动卖出 单类型划分:超大单(≥500万) | 大单(100-500万) | 中单 | 小单 实战应用:确认趋势 | 发现背离 | 识别洗盘

这张图把本章的核心逻辑串起来了。从最底层的「主动 vs 被动」区分,到计算公式,再到单类型划分,最后落到实战应用。你照着这个思路去理解,就不会乱。

4.6 一个真实案例

我记得有一次做回测,某只股票连续三天大涨,但主力净流入却是负的。我当时觉得奇怪,就深入查了一下逐笔成交数据。

结果发现:每天尾盘都有大单在拉股价,但那些大单都是「被动买入」——也就是说,主力挂买单等着,然后自己用其他账户砸盘,制造出「大单买入」的假象。实际上,主力在偷偷出货。

这就是典型的「对倒出货」。如果你只看净流入金额,不看主动/被动属性,很容易被误导。

核心要点:资金流向计算的关键不在于「流入多少」,而在于「怎么流入的」。主动买入才是真金白银的看多信号,被动买入要打折扣。

好了,这一章的内容就到这儿。记住:数据是死的,但解读数据的逻辑是活的。把主动/被动这个底层逻辑吃透了,资金流向分析才算真正入门。


专注资料整理