Skip to content
Day Trading: An Honest Definition and Survival Guide
TradeOlogy Academy
VolumeMFI

Money Flow Index

RSI weighted by volume. Same 0-to-100 scale, same overbought / oversold levels, but heavy-volume bars count more than thin ones.

AMD1D
Loading AMD...

Money Flow Index on AMD, daily candles. Data via Financial Modeling Prep, cached server-side.

Quick reference

Formula
Typical price × volume = money flow. Positive money flow / negative money flow = money ratio. MFI = 100 - (100 / (1 + money ratio)).
Default settings
14 periods.
Best for
Spotting volume-confirmed overbought / oversold conditions. If RSI is hot but MFI is not, the move is thin and likely to fail.
Signal
Above 80 = overbought with volume confirmation. Below 20 = oversold with volume confirmation. Divergences are especially meaningful because they survive the volume filter.
Common mistake
On thin instruments (small-cap stocks, illiquid futures contracts) MFI can be erratic. Volume data quality matters; bad ticks distort the indicator.

The Money Flow Index is what RSI looks like when you tell it to take volume seriously. The math is RSI's basic structure - average gains versus average losses, scaled 0 to 100 - but each "gain" or "loss" is weighted by the volume traded on that bar. The result: a momentum oscillator that ignores low-volume noise and pays attention to bars where real capital changed hands.

For traders who already use RSI, MFI provides a meaningful upgrade in signal quality on liquid markets. The same overbought / oversold framework applies, but with a volume filter that screens out the "fake" moves that send RSI signals during low-conviction trading.

What MFI actually measures

MFI measures the ratio of volume-weighted upward price moves to volume-weighted downward price moves over the lookback period.

Each bar is classified as either positive money flow or negative money flow based on whether typical price ((H+L+C)/3) moved up or down from the prior bar. The actual money flow value is the typical price multiplied by volume on that bar. Sum the positive money flow over N bars; sum the negative money flow; take the ratio.

That ratio (positive money flow / negative money flow) then gets transformed through the RSI formula to produce a 0-100 scale.

The volume weighting is the entire point. A 1 percent up-day on 50 million shares contributes more to MFI than a 1 percent up-day on 5 million shares. RSI cannot distinguish between those two scenarios; MFI can.

The formula

Typical Price (TP)    = (High + Low + Close) / 3
Raw Money Flow (RMF)  = TP × Volume

If TP > TP(prior):  RMF is positive money flow
If TP < TP(prior):  RMF is negative money flow
If TP = TP(prior):  RMF is neither (often treated as positive on most platforms)

Money Ratio (MR) = Sum of positive RMF over N periods / Sum of negative RMF over N periods

MFI = 100 - (100 / (1 + MR))

The final transformation is identical to RSI's. The difference is that MFI's "gains" and "losses" are dollar-weighted by volume rather than treated equally.

Default lookback is 14 periods, matching RSI's convention.

A worked example

Take a 5-period MFI for simplicity. Over the last 5 bars:

Bar 1: TP = 50, Volume = 10,000, prior TP = 49 (positive). RMF = 50 × 10,000 = 500,000 (positive)
Bar 2: TP = 52, Volume = 12,000, prior TP = 50 (positive). RMF = 52 × 12,000 = 624,000 (positive)
Bar 3: TP = 51, Volume = 8,000,  prior TP = 52 (negative). RMF = 51 × 8,000  = 408,000 (negative)
Bar 4: TP = 53, Volume = 15,000, prior TP = 51 (positive). RMF = 53 × 15,000 = 795,000 (positive)
Bar 5: TP = 54, Volume = 9,000,  prior TP = 53 (positive). RMF = 54 × 9,000  = 486,000 (positive)

Sum the positive RMF: 500,000 + 624,000 + 795,000 + 486,000 = 2,405,000 Sum the negative RMF: 408,000

Money Ratio = 2,405,000 / 408,000 ≈ 5.90

MFI = 100 - (100 / (1 + 5.90))
    = 100 - (100 / 6.90)
    = 100 - 14.49
    ≈ 85.5

MFI reads 85.5 - clearly overbought (above 80). The high volume on up-days produced a strong reading.

Compare to RSI on the same data (which would ignore volume): the equivalent reading would be lower, because RSI would weight the down-day in Bar 3 equally with the up-days. MFI's volume weighting amplifies the up-day signal because Bar 4's heavy volume on an up-day contributed disproportionately.

How traders actually use MFI

Three uses generate edge. The fourth (treating MFI as a complete replacement for RSI) misses the point - MFI is a refinement, not a substitute.

1. Volume-confirmed overbought / oversold

MFI's primary value. When RSI signals overbought but MFI does not, the rally is happening on thin volume - less convincing. When both signal overbought, the move has real participation behind it - more meaningful.

The setup: monitor both RSI and MFI. Discount RSI extremes that MFI does not confirm. Take more confidence from RSI/MFI agreement at extremes.

2. Divergence (MFI's strongest signal)

Divergence reads on MFI tend to be more reliable than RSI divergence because the volume filter eliminates a category of false signals. When MFI prints a lower high while price prints a higher high, the price advance is happening on lower-volume bars - genuine weakness.

Trade the divergence with the usual structural confirmation: wait for the prior swing low (in bearish divergence) or swing high (bullish) to break before entering.

3. Volume-weighted regime filter

MFI crossing 50 in a low-volume context is less meaningful than MFI crossing 50 with heavy volume. Use the volume context to filter regime signals: a 50-line cross on the highest-volume day in weeks is more durable than one on the quietest day.

The trap most retail traders fall into

The biggest MFI mistake: using it on instruments with bad volume data.

MFI's entire premise is that volume data is meaningful and accurate. On low-volume futures contracts, thin small-cap stocks, or sketchy crypto exchanges (where reported volume can be wash-traded), MFI's signals are computed on garbage inputs. The output is garbage too.

Stick to liquid instruments: large-cap stocks, major index futures, major crypto pairs on legitimate exchanges. On illiquid instruments, RSI is more reliable than MFI because it ignores the bad volume data entirely.

The second trap: treating MFI overbought as automatic sell signals in trends. Same problem as RSI's 70/30 trap and Stochastic's 80/20 trap. In a strong uptrend, MFI can stay above 80 for extended stretches. The 80 line is a context flag, not a signal. Combine with structure and regime context.

The third trap: assuming MFI and RSI provide independent signals. They are correlated (MFI is RSI with volume weighting). When MFI shows overbought, RSI almost always does too. Treating them as two independent confirmations of the same idea overstates the signal.

MFI vs other indicators

vs RSI. MFI is RSI with volume weighting. On liquid markets, MFI is the upgrade. On illiquid markets, RSI is more reliable. The two move together; the divergence between them is itself informative (RSI bullish, MFI not = volume-weak rally).

vs OBV. OBV is cumulative and unbounded; MFI is bounded and oscillates. OBV measures directional flow over the entire history; MFI measures recent (14-period) volume-weighted momentum. OBV is for trend confirmation and divergence; MFI is for overbought / oversold reads within recent context.

vs Accumulation/Distribution Line. A/D weights volume by close-position-in-bar; MFI weights volume by typical price direction. A/D is finer-grained for "indecision bars"; MFI is bounded and easier to use as an overbought / oversold signal.

vs Chaikin Money Flow (CMF). CMF combines OBV-style direction with A/D-style bar-position weighting over a fixed period (20 days typically). CMF is bounded ± 1 and reads like a money-flow oscillator. MFI uses the RSI framework; CMF uses A/D. Both are valid; choose by preference.

Common questions

Should I change the 14-period default? Almost never. 14 is the convention for RSI and for MFI; using the same period across both keeps signals comparable.

Does MFI work on cryptocurrency? Yes on liquid pairs (BTC/USD, ETH/USD on major exchanges). Unreliable on low-volume altcoins where reported volume is often wash-traded.

Why does my MFI look different from RSI on the same chart? Because they are calculated differently. MFI weights by volume; RSI does not. When volume varies meaningfully across bars, the two diverge. When volume is constant, MFI and RSI move similarly.

Can MFI predict reversals? Only via divergence with confirmation from structure. Extreme readings alone are not predictive in trending markets.

Is MFI better than RSI? On liquid markets with reliable volume, yes - the volume filter improves signal quality. On illiquid markets, no - bad volume data corrupts the indicator. Choose based on what you trade.

What happens to MFI when volume is zero? On any bar where volume is zero (rare but possible in illiquid markets), the bar contributes zero money flow regardless of price direction. The indicator effectively ignores that bar. This is correct behavior but is another reason MFI degrades on thin instruments.

When to use MFI and when not to

Use MFI when:

  • You are trading liquid instruments with reliable volume data
  • You want volume-confirmed RSI signals
  • You are looking for divergence reads with a built-in volume filter

Skip MFI when:

  • You are trading instruments with unreliable volume (microcaps, thin futures, sketchy crypto)
  • You only need a simple bounded oscillator - RSI is simpler and almost as good
  • You are already using OBV or A/D for volume confirmation - MFI is correlated with both

Related volume indicators