Money Flow Index
RSI with volume weighting. It is one of the few oscillators that introduces an input other than price, which is the whole of its claim.
MadStockAlerts Research · Updated August 28, 2026
What to take away
- The construction is RSI applied to price multiplied by volume.
- It is bounded 0 to 100, with the same conventional thresholds.
- The volume weighting is a genuine second input, unlike most oscillators.
- It cannot distinguish buying from selling, because volume never can.
- It saturates in a trend, like every bounded oscillator.
MAD Academy Training Video · 0:44
RSI With the Volume Put Back In
MFI weights each move by the money behind it, which makes its divergences mean more than a price-only oscillator's.
This lesson is part of a Stock Alerts + Tools plan.
The construction
- 1Compute the typical priceThe average of the high, low and close for each period.
- 2Multiply by volumeProducing what the indicator calls raw money flow.
- 3Split into positive and negativeBy whether the typical price rose or fell against the previous period.
- 4Apply the RSI formulaThe ratio of positive to negative flow, normalised onto a 0 to 100 scale.
Step four is the same normalisation RSI uses. The difference between the two indicators is entirely in step two: RSI weights every period equally, and this weights each by its volume.
Why the volume weighting matters
Almost every indicator in this pillar is a transformation of price alone, which is why several of them agreeing carries no information. Volume is the one standard input that is not another view of price.
That makes this one of the few oscillators whose divergence from price is not purely arithmetic. A reading that differs from RSI on the same series differs because of the volume distribution, which is a genuinely separate fact.
- 1Typical priceHigh, low and close averaged
- 2x volumeThe step that separates it from RSI
- 3Split by directionPeriods where the typical price rose against those where it fell
- 4Normalised 0 to 100The same formula RSI uses
What it still cannot do
- It cannot distinguish buying from selling. Every share traded has both sides, whatever the direction of the close.
- Assigning a period's whole volume to one side based on the close is the same simplification on-balance volume makes.
- It saturates in a trend, because it is bounded and normalised over a lookback.
- Index rebalancing and expiry volume enter the calculation with no view attached.
The second item is the substantive one. A period that rose by a hundredth of a percent contributes all of its volume as positive flow, which makes the measure sensitive to closes near unchanged in exactly the way OBV is.
Reading it against RSI
The informative comparison is between the two rather than either alone. Where they agree, the volume weighting changed nothing. Where they diverge, the difference is attributable to volume, which is the only reason to run this indicator rather than RSI.
The thresholds, and the same regime problem
Because the construction ends in an RSI-style normalisation, the conventional thresholds of eighty and twenty inherit exactly the behaviour the RSI article describes.
| Regime | Typical range | How the thresholds behave |
|---|---|---|
| Strong uptrend | Elevated, frequently above 50 throughout | Eighty is reached regularly and means the trend continued |
| Range | Oscillating across the middle | The textbook interpretation works best here |
| Strong downtrend | Depressed | Twenty is reached repeatedly with no reversal |
The regime therefore has to be established before the reading is interpreted, which is what the ADX filter is conventionally used for and what makes any single-indicator rule fragile.
The volume weighting does not change this. It changes what the input is; the normalisation that produces saturation is the same, and saturation is a property of bounded range-relative measures rather than of the input.