Twiggs Money Flow Explained with a Worked NSE Example
Learn Twiggs Money Flow with a full worked Reliance TMF calculation, zero line signals, Indian taxes and a rupee profit and loss example.
Key Takeaways
- 1.Twiggs Money Flow (TMF) is a volume weighted indicator built on the true range, so it tracks whether buyers or sellers controlled each NSE session, not just the close.
- 2.The core building block is the Money Flow Multiplier: ((Close minus Low) minus (High minus Close)) divided by (High minus Low). It runs from minus 1 to plus 1 for each bar.
- 3.TMF is an exponentially smoothed ratio of money flow volume to volume over 21 periods, so it sits between minus 1 and plus 1 and crosses the zero line to flag accumulation or distribution.
- 4.This page walks through a full worked TMF calculation on Reliance Industries using realistic daily candles, then turns the signal into a rupee profit and loss with STT and brokerage included.
- 5.For F&O traders, money flow profits are business income taxed at slab rates, while delivery equity is STCG at 20 percent or LTCG at 12.5 percent above Rs 1.25 lakh. Numbers here are illustrative and never a promise of returns.
What Twiggs Money Flow Actually Measures
The Twiggs Money Flow (TMF) is a volume weighted oscillator created by Colin Twiggs as an improvement on Marc Chaikin's Chaikin Money Flow. Both indicators try to answer one question: across a chosen window of sessions, did money flow into a stock (accumulation) or out of it (distribution)? TMF combines where a stock closes inside its daily range with how much volume traded, so a strong close on heavy volume pushes the line up far more than a strong close on thin volume.
The important fix over the older Chaikin version is that Twiggs uses the true range rather than the simple high minus low, and it uses exponential smoothing instead of a simple sum. True range accounts for overnight gaps, which matter a lot on the NSE where stocks routinely gap on earnings, block deals or global cues. Because of this, TMF behaves more sensibly on gappy single stocks like Reliance, Adani names or PSU banks than the raw Chaikin formula does.
TMF oscillates between minus 1 and plus 1. A reading near plus 0.20 to plus 0.30 signals firm accumulation, a reading near zero signals indecision, and a reading below minus 0.20 signals active distribution. Unlike price, TMF is bounded, so you read it by its position relative to the zero line and by its slope, not by an absolute target.
The Formula, Step by Step
TMF is built in four stages. The first stage is the Money Flow Multiplier (MFM), which scores where the close landed inside the bar. If the stock closes at the high, the MFM is plus 1. If it closes at the low, the MFM is minus 1. If it closes dead centre, the MFM is zero. The formula is ((Close minus Low) minus (High minus Close)) divided by (High minus Low).
- Step 1, Money Flow Multiplier: MFM = ((Close minus Low) minus (High minus Close)) / (High minus Low). Range is minus 1 to plus 1.
- Step 2, Money Flow Volume: MFV = MFM multiplied by that session's volume. This is the volume weighted score for the bar.
- Step 3, Smooth both series: take the 21 period exponential moving average of MFV and the 21 period exponential moving average of volume. Twiggs uses a Wilder style smoothing where the weight is roughly 2 divided by (21 plus 1).
- Step 4, Twiggs Money Flow: TMF = (EMA of MFV) divided by (EMA of Volume). The result stays between minus 1 and plus 1.
Many charting platforms, including the ones inside Zerodha Kite and Upstox, simplify step 3 to a rolling 21 period sum rather than a true exponential average, and they use high minus low rather than true range. The difference is small on liquid large caps but can shift the exact decimal. The worked example below uses the sum based version because you can reproduce it by hand, and it is the version most retail charts actually display.
Do not memorise the formula. Memorise the intuition: a close near the high on big volume is strong accumulation, a close near the low on big volume is strong distribution, and low volume bars barely move the line no matter where price closes.
A Fully Worked TMF Calculation on Reliance Industries
Let us calculate TMF by hand on Reliance Industries (RELIANCE) using six illustrative daily candles. A full 21 day window is too long to print, so we use a short 6 day window here to expose every arithmetic step. The logic is identical; you would simply extend the same columns to 21 rows on a real chart. All prices and volumes below are realistic for Reliance but are illustrative, not actual quotes.
| Day | High | Low | Close | Volume (shares) |
|---|---|---|---|---|
| 1 | 2950 | 2910 | 2944 | 62,00,000 |
| 2 | 2962 | 2938 | 2958 | 71,00,000 |
| 3 | 2970 | 2940 | 2948 | 55,00,000 |
| 4 | 2955 | 2920 | 2926 | 84,00,000 |
| 5 | 2940 | 2912 | 2936 | 48,00,000 |
| 6 | 2968 | 2934 | 2965 | 93,00,000 |
Step 1 and 2, MFM and MFV per day. For Day 1, MFM = ((2944 minus 2910) minus (2950 minus 2944)) / (2950 minus 2910) = (34 minus 6) / 40 = 28 / 40 = plus 0.70. MFV = 0.70 multiplied by 62,00,000 = plus 43,40,000. Repeat for every day and you get the table below. Notice Day 4 is negative because Reliance closed near its low on the heaviest volume so far, a textbook distribution bar.
| Day | MFM | Volume | Money Flow Volume (MFV) |
|---|---|---|---|
| 1 | +0.70 | 62,00,000 | +43,40,000 |
| 2 | +0.67 | 71,00,000 | +47,28,300 |
| 3 | +0.07 | 55,00,000 | +3,66,700 |
| 4 | -0.66 | 84,00,000 | -55,20,000 |
| 5 | +0.71 | 48,00,000 | +34,28,600 |
| 6 | +0.82 | 93,00,000 | +76,72,900 |
Step 3 and 4, sum and divide. Sum of MFV across the 6 days = 43,40,000 plus 47,28,300 plus 3,66,700 minus 55,20,000 plus 34,28,600 plus 76,72,900 = plus 1,50,16,500. Sum of volume = 62 plus 71 plus 55 plus 84 plus 48 plus 93 lakh = 4,13,00,000 shares. TMF = 1,50,16,500 divided by 4,13,00,000 = plus 0.36.
A TMF of plus 0.36 is a firmly positive accumulation reading. Even though Day 4 was an ugly distribution candle on the highest volume of the early week, the two strong closes on Day 5 and especially Day 6 (close at 2965, near the high of 2968, on the heaviest volume of 93 lakh shares) pulled the line decisively positive. That is the signal: buyers absorbed the Day 4 selling and took control. On a real 21 day chart you would watch this value cross above zero and hold there before acting.
TMF is a ratio, so a single huge volume bar near the high or low can swing it hard. Day 6 added plus 76.7 lakh of money flow volume on its own. Always check whether your TMF reading is driven by broad participation across the window or by one outlier session.
Turning the Signal into a Rupee Profit and Loss
A number on a chart is useless until it becomes a trade. Suppose the plus 0.36 accumulation reading, confirmed by Reliance holding above its rising 50 day moving average, convinces you to go long. You can express this three ways. We will cost out the delivery equity trade and the futures trade so you see how taxes and charges differ. All figures are illustrative.
Delivery equity trade. You buy 200 Reliance shares at 2965 and sell two weeks later at 3050 after TMF stays positive. Gross profit = (3050 minus 2965) multiplied by 200 = 85 multiplied by 200 = Rs 17,000. Now the charges. Delivery STT is 0.1 percent on both buy and sell. Buy value is 5,93,000 and sell value is 6,10,000, so STT is roughly Rs 593 plus Rs 610 = Rs 1,203. A typical discount broker charges zero brokerage on delivery, but exchange transaction charges, SEBI fees, stamp duty and 18 percent GST together add roughly Rs 250 to Rs 350. Call total costs about Rs 1,500. Net profit before tax is about Rs 15,500.
Because you held under 12 months, this is a short term capital gain taxed at 20 percent (the rate that applies to listed equity STCG after the July 2024 budget). Tax is roughly 0.20 multiplied by 15,500 = Rs 3,100, leaving about Rs 12,400 in hand. If you had instead held the same position for more than 12 months and booked the gain, it would be a long term capital gain taxed at 12.5 percent on the amount above the Rs 1.25 lakh annual exemption.
Futures trade. The Reliance futures lot size is 500 shares (illustrative; always confirm the current NSE lot size before trading because it is revised periodically). Buying one lot at 2965 and selling at 3050 gives a gross profit of 85 multiplied by 500 = Rs 42,500. Futures STT is 0.02 percent on the sell side only, so on a sell value of about 15,25,000 that is roughly Rs 305. Add brokerage of about Rs 40 plus exchange, SEBI, stamp and GST charges of roughly Rs 250, so total costs are near Rs 600. Net profit before tax is about Rs 41,900.
| Item | Delivery equity (200 shares) | Futures (1 lot, 500) |
|---|---|---|
| Entry price | Rs 2,965 | Rs 2,965 |
| Exit price | Rs 3,050 | Rs 3,050 |
| Gross profit | Rs 17,000 | Rs 42,500 |
| STT and charges | about Rs 1,500 | about Rs 600 |
| Net before tax | about Rs 15,500 | about Rs 41,900 |
| Tax treatment | STCG 20 percent | Business income at slab |
Profit on Reliance futures and options is taxed as business income at your applicable slab rate, not as capital gains. You can offset costs like brokerage, data fees and internet against it, but you cannot use the 20 percent STCG rate or the LTCG exemption. Keep a trade log for your return.
Reading TMF Around the Zero Line
The single most watched event is a zero line cross. When TMF climbs from below zero to above it, control is shifting from sellers to buyers, which is the accumulation our Reliance example showed. When it falls from above zero to below, distribution is setting in. The longer the line holds on one side of zero, the more reliable the regime.
Slope matters as much as level. A TMF that is positive but falling toward zero warns that buying pressure is fading even while price may still be rising, an early caution flag. A TMF that is negative but curling up off a low can lead price by a few sessions. On Indian large caps this lead is usually one to three sessions; on illiquid small caps the signal is noisier and you should demand confirmation.
- TMF above plus 0.20 and rising: firm accumulation, look for long setups in the trend.
- TMF oscillating between plus 0.10 and minus 0.10: indecision, the indicator is giving little edge, stand aside.
- TMF below minus 0.20 and falling: active distribution, avoid fresh longs and consider exits.
- TMF crossing zero with expanding volume: the highest conviction version of the signal.
TMF Versus Chaikin Money Flow and OBV
Indian traders often confuse TMF with the older Chaikin Money Flow and with On Balance Volume. They answer related questions but in different ways. Chaikin uses simple high minus low and a simple sum, so it can give distorted readings when a stock gaps, which is common on NSE earnings days. On Balance Volume is a running total with no range weighting at all; it only asks whether the close was up or down. TMF sits between them, range aware like Chaikin but smoothed and gap aware like Twiggs intended.
| Indicator | Uses volume | Range aware | Handles gaps well | Bounded output |
|---|---|---|---|---|
| Twiggs Money Flow | Yes | Yes (true range) | Yes | Yes, minus 1 to plus 1 |
| Chaikin Money Flow | Yes | Yes (high minus low) | Weaker on gaps | Yes, minus 1 to plus 1 |
| On Balance Volume | Yes | No | No | No, unbounded line |
The practical takeaway: on gappy NSE single stocks, TMF tends to give cleaner accumulation and distribution reads than Chaikin. On a smoothly trending index like Nifty, the three indicators mostly agree, and OBV's simplicity is fine. Use TMF where overnight gaps and uneven volume distort the simpler tools.
Best Settings and Confirmation for Indian Markets
The default 21 period setting maps neatly to roughly one trading month on the NSE and works well for swing trading large caps and indices. Intraday futures traders on Bank Nifty or Nifty sometimes drop the period to 13 on a 15 minute chart for faster signals, accepting more whipsaws in return. Positional investors may stretch it to 34 or even 55 to filter noise. There is no single correct number; match the window to your holding period.
Never trade TMF in isolation. It tells you about pressure, not price structure. Pair it with a trend filter such as the 50 day moving average we used in the Reliance trade, and add a momentum or location tool such as RSI to avoid buying an accumulation signal that is already extended. The table below lists the most useful pairings for Indian charts.
| Companion tool | What it adds to TMF |
|---|---|
| 50 day moving average | Confirms the larger trend direction |
| RSI (14) | Flags overbought or oversold before you act on TMF |
| Volume profile / VWAP | Shows the price levels where the accumulation happened |
| Advance Decline ratio | Confirms whether the whole market supports the single stock signal |
Divergence: The Higher Skill Signal
Divergence is where experienced traders extract the most value from TMF. A bullish divergence occurs when price prints a lower low but TMF prints a higher low, meaning sellers pushed price down but money flow did not confirm the weakness. A bearish divergence is the mirror: price makes a higher high while TMF makes a lower high, warning that the rally is running on thinning participation.
On Reliance, imagine the stock revisits 2920 a week after our example and makes a marginally lower low, but TMF holds at minus 0.05 instead of returning to its earlier minus 0.30. That positive divergence says the second dip was sold less aggressively, often a precursor to a bounce. Treat divergence as a warning to tighten risk or prepare for a reversal, not as a standalone entry trigger. Wait for price to confirm with a structure break before committing capital.
Limitations, False Signals and Risk Control
TMF has real weaknesses you must respect. In sideways, low volume markets it hugs the zero line and chops back and forth, generating signals that net to nothing after costs. In thinly traded small caps a single block deal can spike volume and throw the ratio off for days. And like every volume tool, it is blind to news: a SEBI order, a Reliance results surprise or an RBI policy shock can override any accumulation reading instantly.
- Avoid trading TMF signals when the stock is range bound and volume is below its own average.
- Discount sudden TMF jumps in illiquid stocks that come from one block or bulk deal.
- Size positions so a single failed signal costs no more than a small fixed percentage of capital.
- Always confirm with price structure and a trend filter before risking money.
- Remember that brokerage, STT and taxes eat into every trade, so a marginal signal is often not worth taking.
Used with discipline, Twiggs Money Flow is a clean way to see whether smart money is quietly building or unloading a position before the move shows up in price. Used carelessly, it is just another wiggly line. The difference is confirmation, position sizing and an honest accounting of costs and taxes.
Sources and Further Reading
For authoritative data and further reading on this topic, refer to Zerodha Varsity, Investopedia, NSE India and SEBI (Securities and Exchange Board of India). Always confirm current lot sizes, STT rates, transaction charges and tax rules on the official source before you trade, because contract specifications and rates change.
Sources and Further Reading
For authoritative data and further reading on this topic, refer to Zerodha Varsity, Investopedia, NSE India and SEBI (Securities and Exchange Board of India). Always confirm current rules, rates and contract specifications on the official source before you trade.
Related Topics
Related Articles
Understanding the Vertical Horizontal Filter in Indian Markets
How the VHF spots trending vs ranging Nifty, with real NSE regimes, a worked calculation, option tactics, and Indian F&O tax rules.
RSI 2 Period Strategy for Indian Markets
The RSI(2) mean reversion strategy for Indian markets: 200 DMA filter, exact entry and exit rules, and worked Reliance and Bank Nifty rupee examples.
Understanding Trading Psychology in Indian Markets
Learn trading psychology for Indian markets with a worked Nifty options example showing how fear and greed turned a Rs 3,600 loss into Rs 16,500.
Understanding Short Selling in Indian Markets
How short selling works in India: the intraday-only retail rule, SEBI SLB overnight borrowing with a real Reliance borrow-cost example, F&O shorts and tax.
How to Rebalance Your Portfolio in Indian Markets
How to rebalance your Indian portfolio with the correct post-2024 tax: 20% STCG, 12.5% LTCG above Rs 1.25 lakh, plus a worked Nifty example.
Pair Trading Strategy for Indian Markets
Pair trade TCS and Infosys with real z-score math, lot sizes, rupee P&L, STT and slab-rate tax. A worked, market-neutral guide for Indian traders.
The trading journal built for Indian F&O traders. Track your trades, spot patterns, build discipline.
- Log one trade a day by hand, on purpose
- AI mentor finds your repeat mistakes
- Behavioural analytics catch tilt early
- Trading calendar with P&L heatmap
- Pre-trade checklist flags risks
Yearly ₹2,499 · No broker credentials