
一句话结论:MFI(14) 超卖回升(穿越20线)在牛市超额−0.46%、熊市超额+3.42%,完全相反。MFI<30 持有是本系列(第41–47课)成交量指标里唯一一个扣成本后超额为正(+0.10%)的信号,但样本期仅一年,不能过度解读。
MFI 是带成交量权重的 RSI——计算框架和 RSI 相同(第25课),区别是把价格动量乘以成交量,让"大成交量的涨跌"比"小成交量的涨跌"权重更高。

一、原理与公式
第一步:计算典型价格
$$Typ_t = \frac{H_t + L_t + C_t}{3}$$
第二步:计算资金流量
$$MF_t = Typ_t \times V_t$$
若 \(Typ_t > Typ_{t-1}\),则为正资金流(Positive Money Flow);否则为负资金流。
第三步:14日正负资金流之比
$$MFR = \frac{\sum_{14}PMF}{\sum_{14}NMF}$$
第四步:转化为0-100的振荡器(和RSI公式完全相同)
$$MFI = 100 – \frac{100}{1 + MFR}$$
MFI 范围 0–100;超卖阈值:20(严格)或 30(宽松);超买阈值:80(严格)或 70(宽松)。原作者建议极端值 10/90 才是"真正"的超买超卖。
二、MFI 和 RSI 的区别
| 对比项 | RSI | MFI |
|---|---|---|
| 价格方向 | 用价格涨跌幅 | 用 Typ = (H+L+C)/3 的涨跌方向 |
| 成交量 | 不考虑 | 乘以成交量作为权重 |
| 直觉 | 价格动量 | 资金动量:大量成交的涨/跌更重要 |
| 参数 | 默认14日 | 默认14日(相同) |
| 阈值 | 70/30 常见 | 80/20 常见 |
大成交量的涨/跌日在 MFI 中权重更高,理论上对机构大单更敏感。但实际中 A 股成交量噪声多,这个优势是否显著需要数据验证。
三、青柠数据实验
股票池:全A股(排除ST、北交所),后复权,近一年(2025-10-15 至 2026-10-16,共 244 交易日,4,980 只股票)。信号日收盘确认,次日开盘买,持有20日。超额 = 个股收益 − 同日全部股票平均。
三个信号汇总
| 信号 | 信号次数 | 20日收益 | 胜率 | 20日超额 | 扣0.15%成本 |
|---|---|---|---|---|---|
| MFI穿越20线(超卖回升) | 10,706 | +0.36% | 46.4% | −0.13% | −0.28% |
| MFI < 30(宽松超卖持有) | 111,837 | +0.60% | 46.2% | +0.25% | +0.10% |
| MFI穿越80线(超买回落) | 14,898 | +0.08% | 42.6% | +0.23% | +0.08% |
MFI<30 持有的 +0.25% 超额是本章(第41–47课)成交量指标里唯一扣成本后为正的信号,但信号次数 11 万次,平均每天每只股票都可能触发,选股区分度有限。
牛熊市拆分(MFI穿越20线)
| 市场环境 | 信号次数 | 20日收益 | 胜率 | 20日超额 | 扣成本 |
|---|---|---|---|---|---|
| 牛市(HS300 > MA250) | 9,357 | −0.39% | 44.3% | −0.46% | −0.61% |
| 熊市(HS300 < MA250) | 1,349 | +8.34% | 68.7% | +3.42% | +3.27% |
结果截然相反。牛市中 MFI 触及超卖的股票,往往是强势市场里的弱势股("掉刀子"),持有后继续下跌。熊市中触及超卖的信号,反而对应均值回归,20日后大幅反弹。
注意:熊市样本只有 1,349 次,数据期仅一年,请勿过度解读。
四、常见误区
「MFI 超卖就是买点」
近一年牛市中,MFI 穿越20线后 20 日超额−0.46%。超卖在趋势强的市场意味着这只股票相对更弱,不是均值回归信号。
「MFI 比 RSI 更准」
两者框架相同,MFI 加了成交量权重。本课近一年 A 股中,MFI 超卖信号(10,706次)比 RSI(14)<30 同口径信号(第25课,约15,000次)表现类似,没有显著优势。
「超买到80就该卖」
MFI 穿越 80 线回落信号(超买回落)近一年超额+0.23%——反而略正,说明超买后持续强势的概率高于均值回归。不要把超买当做反手卖出信号。
「MFI < 10 才是真正的超卖(极端信号)」
原作者 Quong & Soudack 建议用 10/90 作为极端阈值,但极端信号很少出现。一年内 MFI<10 的次数远少于 MFI<20,统计上样本不足,本课不单独展示。
五、在青柠中实操
- 1. 在指标列表中搜索「MFI」,参数默认14日、阈值 20/80。
- 2. 用数值比较组件:「MFI 上穿 20」实现超卖回升筛选。
- 3. 建议配合大盘判断:熊市环境下(第53课)才开启 MFI 超卖买入;牛市中改用趋势跟踪信号。
- 4. MFI<30 的持仓策略适合用作剔除条件的反面——MFI>70 的股票相对强势,可以在趋势策略中优先选择。
更多策略可以在青柠策略市场查看。
六、下一课和相关课程
下一课(第47课):VR 成交量比率,更简单直接——只看涨日成交量和跌日成交量的比值,不涉及典型价格计算。
相关课程:
- – 第25课(RSI:超买超卖的标准答案):MFI 的原型,超卖买入在 A 股的表现
- – 第45课(A/D 和 CMF:资金是在流入还是流出):同系列成交量指标
常见问题
MFI 和 CMF 都和资金流相关,有什么区别?
CMF(第45课)用的是 A/D Line 里的 CLV 来计算资金流向,衡量"收盘在K线内的位置";MFI 用典型价格 Typ=(H+L+C)/3 判断方向,然后乘以成交量计算正负资金流比率。本质上 CMF 是振荡指标,MFI 是类 RSI 振荡指标,两者计算思路和值域不同。
为什么 MFI<30 的信号比 MFI 穿越 20 多得多?
MFI穿越20是"动作",当日刚从20以下回升才触发,一年只触发约10,700次。MFI<30 是"持续状态",只要 MFI 处于30以下每天都算一次信号,因此 11 万次要多得多。
一字板涨停时 Typ = C = H = L,MFI 怎么处理?
一字板时 Typ 保持不变,MFI 不会变化(当日归入正资金流或负资金流取决于前一日的 Typ),信号不失真,但也没有额外信息。
口径说明
股票池为全 A 股,排除 ST(按当前名称)和北交所,剔除未复权收盘价低于 3 元的股票,价格后复权。信号期 2025-10-15 至 2026-10-16,共 4,980 只股票、244 个交易日。MFI(14):Typ=(H+L+C)/3,MF=Typ×V,PMF=14日正资金流总和(Typ≥前日Typ时为正),NMF=14日负资金流总和,MFI=100×PMF/(PMF+NMF);需满14根K线。MFI穿越20:前日MFI<20,当日MFI≥20。MFI<30:当日MFI低于30(持续状态信号)。MFI穿越80:前日MFI>80,当日MFI≤80。牛熊:沪深300收盘相对MA250,需满250日方判定。信号日收盘确认,次日开盘买入,持有至第20日收盘;次日一字涨停剔除。超额收益 = 信号股票收益 − 同日股票池全部股票同口径平均。个股每笔来回成本 0.15%。历史统计不代表未来表现,不构成投资建议。
读到这里,不如自己验证一次
文章里的逻辑,你可以在青柠量化里用真实数据重新跑一遍。免费,零代码。