RSI tells you how hard price has been pushing. It says nothing about how many shares changed hands while it pushed. The money flow index fixes that gap. It takes the same up-versus-down logic that drives RSI and weights every day by the money that actually traded, so a rally on thin volume counts for less than a rally where buyers turned up in size.
If you already read RSI on Nifty stocks, MFI will feel familiar within ten minutes. The scale is the same 0 to 100, the zones look the same, and the signals have the same names. What changes is the input, and that changes how the line behaves on the days that matter.
In this article
- What the money flow index is and where it came from
- The money flow index formula, step by step
- A worked example on a hypothetical stock
- Reading overbought and oversold levels
- Divergences: when money and price disagree
- Failure swings at 80 and 20
- Why the 50 line matters less here
- Settings: should you change the 14?
- How MFI fits with other volume tools
- A simple way to use it on Indian stocks
- The short version
What the money flow index is and where it came from
StockCharts’ ChartSchool describes MFI as an oscillator that uses price and volume to measure buying and selling pressure. It was created by Gene Quong and Avrum Soudack, and it is also called a volume-weighted RSI. The output moves between zero and one hundred.
The idea underneath is simple. Every session, the indicator works out a “typical” price and asks one question: was today’s typical price higher or lower than yesterday’s? If higher, that day’s money flow goes into the buying pile. If lower, it goes into the selling pile. Over a look-back window, the two piles are compared, and the comparison is squeezed into the 0-100 range with the RSI formula.
So MFI isn’t measuring the size of price moves the way RSI does. Wikipedia’s entry on the indicator puts the difference neatly: both look at up days against total up and down days, but RSI accumulates price-change amounts while MFI accumulates an approximation of the value traded.
The money flow index formula, step by step
There are four steps. None of them needs anything more than a calculator or a spreadsheet.
- Typical price = (High + Low + Close) ÷ 3.
- Raw money flow = Typical price × Volume. ChartSchool points out that this is essentially the value of the day’s trading.
- Money flow ratio = sum of positive money flow over the period ÷ sum of negative money flow over the period. A day counts as positive when its typical price is above the previous day’s, and negative when it is below. If the typical price is unchanged, the day is left out entirely.
- Money flow index = 100 − 100 ÷ (1 + money flow ratio).
There’s an equivalent way to write the last step that we find easier to think about. MFI = 100 × positive flow ÷ (positive flow + negative flow). In other words, MFI is simply the percentage of total money flow in the window that came on up days. An MFI of 70 means 70% of the money traded in the period changed hands on days when the typical price rose.
The default look-back is 14 periods. ChartSchool notes that 14 is both the standard setting on its charts and the one the indicator’s creators recommended. On a daily chart that means 14 sessions, roughly three trading weeks on NSE.
MFI is just the share of money traded on up days. Read it that way and most of the mystery goes out of the number.
A worked example on a hypothetical stock
Let’s run the numbers on a made-up NSE stock, Stock X. To keep the table readable we’ll use five sessions of flow instead of fourteen. The arithmetic is identical; only the window is shorter. All prices and volumes below are hypothetical.
| Day | High (₹) | Low (₹) | Close (₹) | Volume | Typical price (₹) | Direction | Raw money flow |
|---|---|---|---|---|---|---|---|
| 0 | 512 | 498 | 505 | – | 505.00 | Base day | – |
| 1 | 520 | 506 | 518 | 2,40,000 | 514.67 | Up | ₹12.35 crore |
| 2 | 524 | 512 | 515 | 1,80,000 | 517.00 | Up | ₹9.31 crore |
| 3 | 517 | 503 | 506 | 3,10,000 | 508.67 | Down | ₹15.77 crore |
| 4 | 511 | 500 | 509 | 2,20,000 | 506.67 | Down | ₹11.15 crore |
| 5 | 522 | 508 | 520 | 3,60,000 | 516.67 | Up | ₹18.60 crore |
Look at Day 2 for a second. The close (₹515) is lower than Day 1’s close (₹518), yet the day counts as an up day. That’s because MFI compares typical prices, not closes, and Day 2’s higher high pulled its typical price up to ₹517.00 from ₹514.67. Small detail, but it’s exactly the kind of thing that makes MFI and RSI disagree on a given day.
Now add up the piles:
- Positive money flow = 12.35 + 9.31 + 18.60 = about ₹40.26 crore.
- Negative money flow = 15.77 + 11.15 = about ₹26.92 crore.
- Money flow ratio = 40.26 ÷ 26.92 = about 1.50.
- MFI = 100 − 100 ÷ (1 + 1.50) = about 59.9.
Check it the other way: 40.26 ÷ (40.26 + 26.92) = 0.599, or 59.9%. Same answer. So roughly three-fifths of the money that traded in this window did so on up days. That’s a mildly positive reading, nowhere near either extreme.
Notice what the volume did here. Price-wise, Stock X had three up days and two down days, which sounds comfortable. But the two down days carried heavy volume, especially Day 3 at 3.1 lakh shares. That’s why MFI landed near 60 and not somewhere higher. Day 5’s big-volume rally then did a lot of the lifting. This is the whole point of the indicator: it lets the heavier days speak louder.
A few quick sanity checks on the formula with round numbers, again hypothetical. If the 14-day positive flow were ₹42 crore and negative flow ₹18 crore, MFI would be 70. Flip it to ₹15 crore positive and ₹45 crore negative and you get 25. Equal piles always give exactly 50.
Reading overbought and oversold levels
The classic zones, per both ChartSchool and Wikipedia, are above 80 for overbought and below 20 for oversold. The thinking is that once that much of the recent money has gone one way, the move may be running ahead of itself.
Quong and Soudack went further. ChartSchool says they recommended widening the extremes to qualify signals: above 90 is truly overbought and below 10 is truly oversold. Those readings are rare and suggest a price move that probably can’t keep going at that pace. Plenty of stocks will go a long time without ever touching 90 or 10.
Here’s the trap, and it’s the same one RSI traders fall into. In a strong uptrend MFI can sit above 80 while price just keeps climbing. In a hard downtrend it can stay below 20 while the stock keeps sliding. ChartSchool is clear that an oversold reading alone isn’t reason enough to turn bullish; you need some sort of upturn in price to confirm the turn. On Indian midcaps, where a stock can rally for weeks on steady delivery buying, shorting every 80 reading is a quick way to lose money.
We’d treat 80 and 20 as “pay attention” zones and 90 and 10 as “something unusual is going on” zones. Neither is a trade on its own.
Divergences: when money and price disagree
A bullish divergence forms when price makes a lower low but MFI makes a higher low. Price is still falling, but less money is being pushed out on the down days. A bearish divergence is the mirror: price makes a higher high, MFI makes a lower high, and the rally is happening on thinner relative flow.
Wikipedia gives the bearish case as the example. If price makes a new rally high but the MFI high is below its previous high, that may point to a weak advance that is likely to reverse. ChartSchool adds that divergences are bullish signals when they appear in a downtrend and bearish ones in an uptrend.
If you’ve used RSI divergence, the drawing is the same. Connect the two price swings, connect the two indicator swings, and see whether they slope the same way. The difference is that an MFI divergence also carries a volume message, which some traders find more convincing than a pure price-momentum one.
Failure swings at 80 and 20
Failure swings are the signal people skip, and they’re worth learning. ChartSchool defines them like this.
A bullish failure swing: MFI drops below 20, climbs back above 20, holds above 20 on the next pullback, and then breaks above its prior reaction high. The sellers had their chance to push it back into oversold territory and couldn’t.
A bearish failure swing: MFI goes above 80, falls back below 80, fails to get above 80 on the next bounce, and then breaks below its prior reaction low.
ChartSchool’s view is that divergences and failure swings each work on their own, but when both show up at the same time the signal is much stronger than either one alone. When only one appears, it’s less robust. That’s a sensible filter. It cuts the number of signals you get, but the ones left have more behind them.
A divergence and a failure swing appearing together is a far better reason to act than an 80 reading on its own.
Why the 50 line matters less here
With RSI, a lot of traders use 50 as a trend filter: above it favours the bulls, below it favours the bears. ChartSchool says that doesn’t carry over well to MFI. Even though MFI is a volume-weighted RSI, using the centreline to decide a bullish or bearish bias isn’t ideal. The indicator earns its keep at the extremes and in divergences and failure swings, not in the middle of the range.
Settings: should you change the 14?
A shorter look-back makes MFI more sensitive and a longer one makes it smoother. ChartSchool notes that you can also draw your own overbought and oversold lines, such as 10 and 90, instead of the default levels.
There’s some research worth knowing about. Wikipedia cites a 2020 study by Marek and Čadková that tested different MFI parameters on stocks such as Apple, ExxonMobil, IBM and Microsoft. Their finding was that MFI could beat a simple buy-and-hold approach, but that the settings usually recommended in the literature gave no advantage, and the parameters needed to be optimised for each stock. We’d read that carefully. A setting tuned to one stock’s past can easily be overfitted, so if you experiment, test on data you didn’t use to pick the setting.
For most swing traders on NSE, 14 on a daily chart is a fine starting point. Change it only for a reason you can explain.
How MFI fits with other volume tools
MFI isn’t the only indicator that mixes price and volume. Wikipedia lists on-balance volume, the price and volume trend and the accumulation/distribution index as similar price-times-volume indicators. If you’ve read our guides on on-balance volume and the Chaikin Money Flow indicator, here’s the practical difference.
- On-balance volume is a running total. It has no fixed range, so you read its direction, not its level.
- Chaikin Money Flow looks at where the close sits inside each day’s range, so it cares about intraday buying and selling pressure.
- MFI compares day-to-day changes in typical price and outputs a bounded 0-100 reading, which is why it’s used for overbought, oversold and failure-swing signals.
ChartSchool’s advice is not to use MFI by itself. Pairing it with a pure momentum oscillator such as RSI, or with plain pattern analysis like support, resistance and trendlines, makes the signals sturdier. Our broader guide to technical analysis for Indian stocks covers how these pieces fit together.
A simple way to use it on Indian stocks
Here’s how we’d put MFI to work without overcomplicating things. Treat this as a process for study, not a trading system.
- Decide the trend first from price: higher highs and higher lows, or the opposite. MFI comes second.
- In an uptrend, ignore overbought readings as sell signals. Watch instead for dips where MFI falls toward 20 and then turns up while price holds support.
- In a downtrend, ignore oversold readings as buy signals until price itself shows a reversal.
- Give extra weight to a divergence that lines up with a failure swing.
- Confirm with something that isn’t volume-based, like a breakout above resistance or RSI turning.
- Use a stop-loss sized so one wrong call doesn’t hurt much. Indicators are wrong often enough that this part isn’t optional.
One practical caution for anyone scanning stocks during market hours: ChartSchool notes that daily volume is incomplete while the session is still running, so volume-based scans like MFI should be based on the last market close. An MFI reading at 11 a.m. is working off a fraction of the day’s volume.
The short version
The money flow index is RSI that cares about volume. It measures what share of recent money traded on up days, maps it onto 0 to 100, and flags extremes at 80/20 and, more seriously, at 90/10. Its best signals are divergences and failure swings, ideally together. Its weakness is the same as RSI’s: strong trends can pin it at an extreme for a long time. Use it with price structure, not instead of it.
Disclaimer: This article is for educational purposes only and is not investment advice. Stock X and all prices, volumes and money flow figures in the examples are hypothetical. Consult a SEBI-registered investment adviser before making investment decisions.

Leave a Reply
Join the conversation
Commenting is open to registered readers. Sign up with just your email — no password needed, and it takes under a minute.
Sign up to comment Log in