# Twiggs Money Flow

Also known as: Twiggs studies: Momentum, Trend Index, Volatility.
A Volume & Order Flow concept (Cumulative flow lines) in the LuxAlgo Library, with 1 indicator implementation.

## What is Twiggs Money Flow?

Twiggs Money Flow (TMF) is Colin Twiggs' refinement of Chaikin Money Flow, which itself builds on the close-location logic of the [Accumulation/Distribution Line](https://www.luxalgo.com/library/concept/accumulation-distribution-line/). Each bar's volume is signed by where the close sits inside the true range (true high is the greater of the bar's high and the prior close; true low is the lesser of the bar's low and the prior close): a close at the true high counts the full volume as buying pressure, at the true low as selling pressure, and at the midpoint as zero net flow.

TMF is that signed volume, exponentially smoothed, divided by smoothed total volume, commonly over 21 periods, so it oscillates around zero and is bounded between -1 and +1. Sustained positive readings indicate accumulation, sustained negative readings distribution, and the zero line is the practical bull/bear divide. Using true range makes it gap-aware: a gap down that closes weak registers almost entirely as selling pressure instead of slipping through the formula, one of the two weaknesses (with lumpy rolling sums) the design set out to fix.

The study comes from Colin Twiggs, whose Incredible Charts platform and newsletter popularized it as a longer-horizon replacement for Chaikin Money Flow. Reading it is deliberately simple: the zero line divides accumulation from distribution, and conviction comes from persistence rather than level. A common approach waits for the line to hold one side of zero for several bars, or beyond a small band such as plus or minus 0.05, before treating the state as changed; brief pokes across zero on a 21-period smoothing rarely mean anything. Because the output is a bounded ratio, readings are comparable across symbols, which is why the study also gets used to rank a watchlist by flow rather than only to read a single chart.

Its verdicts are only as good as the volume feed beneath them. Spot forex has no centralized volume, so TMF there runs on tick counts; crypto volume differs exchange to exchange; and thin instruments produce a line dominated by a handful of prints. The exponential smoothing that makes the study calm also makes it late, so a sharp distribution day bends the line rather than breaking it. And like every flow proxy built from bar shape, it infers pressure from where candles close instead of measuring who initiated trades, an inference that intrabar [volume delta](https://www.luxalgo.com/library/concept/volume-delta/) data can contradict.

## How to identify accumulation and distribution with Twiggs Money Flow

TMF plots as a single bounded line around zero in a subpanel. The reads that matter are the side of zero, how long it has held, and disagreements with price at new extremes.

1. Apply the study with its common 21-period smoothing on a market with trustworthy volume; on spot forex or thin issues, treat the line as a tick-activity sketch rather than a flow measure.
2. Read the regime from the zero line: sustained positive values indicate closes concentrating high in their true ranges on volume, the accumulation signature; sustained negative values the reverse.
3. Ignore brief zero crosses: require several bars on the new side, or a push beyond a small threshold, before calling a state change; the smoothing makes single-bar flips unreliable.
4. Mark [volume divergence](https://www.luxalgo.com/library/concept/volume-divergence/) at fresh price extremes: new highs with TMF fading toward zero warn that the advance is being sold into, a warning that fails often enough to demand structural confirmation.
5. Cross-check event bars with [relative volume](https://www.luxalgo.com/library/concept/relative-volume/): a breakout that TMF supports on ordinary participation is a weaker claim than one arriving with genuinely elevated volume.

## How it's calculated

A bounded flow oscillator that signs each bar's volume by where the close sits inside the true range, then divides smoothed signed volume by smoothed total volume.

```
TRH_t = max(H_t, C_{t-1})
TRL_t = min(L_t, C_{t-1})
AD_t = V_t × ((C_t - TRL_t) - (TRH_t - C_t)) / (TRH_t - TRL_t)
AD_t = 0 when TRH_t = TRL_t
W_n(x)_t = W_n(x)_{t-1} + (x_t - W_n(x)_{t-1}) / n
TMF_t = W_n(AD)_t / W_n(V)_t

  H_t: high of bar t
  L_t: low of bar t
  C_t: close of bar t (C_{t-1} is the prior close)
  V_t: volume of bar t
  t: bar index
  TRH_t: true high, the greater of the bar's high and the prior close
  TRL_t: true low, the lesser of the bar's low and the prior close
  AD_t: signed, volume-weighted accumulation/distribution value of bar t
  x: the series being smoothed (AD or V); x_t is its value at bar t
  W_n(x): exponential smoothing of x with length n
  n: smoothing length (default 21)
  TMF_t: Twiggs Money Flow at bar t, bounded between -1 and +1
```

Colin Twiggs designed TMF as a gap-aware replacement for Chaikin Money Flow: true range stands in for the raw high-low range and exponential smoothing replaces rolling sums.

The smoothing above uses alpha = 1/n (Wilder style, per the published definition); ports using a standard EMA with alpha = 2/(n+1) respond faster and print slightly different values.

Readings above zero indicate net accumulation and below zero net distribution; Twiggs' related Momentum, Trend Index and Volatility studies reuse the smoothing style but are separate calculations.

## How traders use it

- As a trend-quality filter: holding longs only while TMF stays above zero (or a small positive threshold) keeps exposure aligned with net accumulation; the crossing itself is slow by design and will lag sharp turns.
- As divergence context: price printing new highs while TMF fades toward zero suggests the advance is being sold into, the same read applied to [OBV](https://www.luxalgo.com/library/concept/obv/) and other flow lines, and just as fallible.
- As an independent cross-check: because TMF weights volume by close location within true range, it can disagree with a bounded oscillator like the [Money Flow Index](https://www.luxalgo.com/library/concept/money-flow-index/); agreement between the two is a stronger accumulation or distribution claim than either alone.
- As breakout vetting: a resistance break with TMF positive and rising is backed by accumulation in the run-up, complementing the bar-level read of [volume at breakout](https://www.luxalgo.com/library/concept/volume-at-breakout/); a break attempted while the line sags is suspect.
- As a watchlist screen: because the reading is bounded, sorting a universe of symbols by TMF surfaces those under persistent accumulation or distribution, a comparative use that unbounded cumulative lines cannot serve without extra normalization.

## Twiggs Money Flow vs other flow gauges

- **OBV** (https://www.luxalgo.com/library/concept/obv/): OBV adds or subtracts each bar's entire volume on the close's direction and accumulates forever, so its level is path-dependent and only its shape matters. TMF weights volume by close location within true range and stays bounded, making the level itself meaningful and comparable across symbols.
- **Money Flow Index** (https://www.luxalgo.com/library/concept/money-flow-index/): MFI is a bounded 0-100 oscillator built from typical price and volume over a rolling window, read like a volume-weighted RSI with overbought and oversold zones. TMF centers on zero and moves slower; it describes regime rather than stretch.
- **Volume Delta** (https://www.luxalgo.com/library/concept/volume-delta/): Delta measures aggression directly, classifying each trade by whether it hit the bid or lifted the offer. TMF infers pressure from where bars close. Delta is the finer instrument where tick data exists; TMF runs on any OHLCV feed and holds up on higher timeframes.

## FAQ

### How is Twiggs Money Flow different from Chaikin Money Flow?

Chaikin Money Flow uses simple rolling sums and the bar's raw high/low range, so gaps escape it and readings can jump when old bars drop out of the window. Twiggs Money Flow substitutes true range, which incorporates the prior close, and exponential smoothing of both numerator and denominator, making it gap-aware and smoother at the cost of extra lag.

### What does a positive Twiggs Money Flow reading mean?

Volume-weighted closing pressure over the lookback (commonly 21 periods) has concentrated in the upper part of each bar's true range, which the method reads as accumulation. It is a bias gauge rather than a timing trigger: in ranges it whipsaws near zero, so many users require sustained readings or a small threshold before acting.

### What is a good threshold for Twiggs Money Flow?

The zero line is the primary divide, and persistence matters more than level. Some users add a small symmetric band, on the order of plus or minus 0.05, to filter drift, or require a set number of bars on one side before acting. Thresholds tuned to one market's history do not transfer automatically; the bounded scale helps, but liquidity and volatility still shape the typical range.

### What length should I use for Twiggs Money Flow?

The common default is 21 periods, roughly a month of daily bars, matching the study's intent as a position-trade bias gauge. Shorter settings track swings but reintroduce the noise the design set out to remove; longer settings suit weekly charts and slow rotation. Whatever the choice, behavior should be revalidated rather than assumed to carry across lengths.

### Does Twiggs Money Flow work on forex and crypto?

With caveats. Spot forex has no consolidated volume, so the study runs on tick volume, a rough activity proxy whose relationship to real flow varies by session and venue. Crypto volume is exchange-specific and can be distorted on some venues. Futures and equities, where volume is measured centrally, give the study its cleanest inputs.

### Is Twiggs Money Flow better than Chaikin Money Flow?

It fixes two specific weaknesses: gaps, which CMF's raw high-low range ignores and true range captures, and the jumps CMF prints when a large bar drops out of its rolling sum, which exponential smoothing removes. The price is additional lag. Neither version is predictive, and on gap-free, liquid instruments the two often tell the same story.

## Implementations in the Library

- Twiggs Money Flow (LuxAlgo): https://www.luxalgo.com/library/indicator/twiggs-money-flow/

## Related concepts

- Money Flow Index: https://www.luxalgo.com/library/concept/money-flow-index/
- Weis Wave Volume: https://www.luxalgo.com/library/concept/weis-wave-volume/
- OBV: https://www.luxalgo.com/library/concept/obv/
- OBV Divergence: https://www.luxalgo.com/library/concept/obv-divergence/
- Accumulation/Distribution Line: https://www.luxalgo.com/library/concept/accumulation-distribution-line/
- Chaikin Oscillator: https://www.luxalgo.com/library/concept/chaikin-oscillator/
- Chaikin Money Flow: https://www.luxalgo.com/library/concept/chaikin-money-flow/
- Williams A/D: https://www.luxalgo.com/library/concept/williams-a-d/
- Price Volume Trend: https://www.luxalgo.com/library/concept/price-volume-trend/
- Negative Volume Index: https://www.luxalgo.com/library/concept/negative-volume-index/

---

Source: https://www.luxalgo.com/library/concept/twiggs-money-flow/ (LuxAlgo Library, the encyclopedia of trading & technical analysis). Free to use with attribution: https://www.luxalgo.com/library/license/