WhitmanTrading

Choppiness Index: A Filter, Not a Signal

The choppiness index compares how far price travelled against how far it got, on a nought to one hundred scale. High readings mean directionless movement and low readings mean trending. It is backward-looking, so its honest use is filtering whether to trade a trend method at all.

How it works

The choppiness index asks how much of the path was wasted. It compares the sum of each bar’s true range over a window against the total high-to-low range of that whole window, then takes a logarithm and scales the result to a nought-to-one-hundred band.

A candlestick chart of the site's shared price history. The headline on the chart reads: How much of the path was wasted.
How much of the path was wasted. Illustrative chart - not real market data.

In plain English, it divides ground covered by ground gained. If price moved a great deal and finished near where it started, the reading is high; if it travelled efficiently, the reading falls.

A gently rising stretch of the long price series. The headline on the chart reads: Total range travelled against the net distance covered.
Total range travelled against the net distance covered. Illustrative chart - not real market data.

The standard setting is fourteen bars and the published thresholds are 61.8 and 38.2. Those two numbers are Fibonacci-derived rather than empirically optimised, which is worth saying plainly — a convention that stuck, not a result anyone tested and published.

A calmly advancing stretch of the long price series. The headline on the chart reads: A hundred-point scale, with high meaning directionless.
A hundred-point scale, with high meaning directionless. Illustrative chart - not real market data.

Why the scale runs backwards

It says nothing about direction and is not meant to. The reading describes how much of the path was wasted, which is a question with no sign attached — a violent collapse and a violent advance print alike.

A choppy, directionless stretch of the long price series. The headline on the chart reads: It says nothing about direction and is not meant to.
It says nothing about direction and is not meant to. Illustrative chart - not real market data.

High is directionless and low is trending, which is inverted against most oscillators. People who have spent years reading high as strong and low as weak import that habit here and read every signal exactly backwards.

A flat, quiet stretch of the long price series. The headline on the chart reads: Measured here, the ten-bar efficiency median is 0.34.
Measured here, the ten-bar efficiency median is 0.34. Illustrative chart - not real market data.

It belongs to the same family as an efficiency ratio. Both compare net movement with total movement over a fixed window, and both ignore direction.

A strongly rising stretch of the long price series. The headline on the chart reads: And only 30% of bars sit in trending conditions.
And only 30% of bars sit in trending conditions. Illustrative chart - not real market data.

In practice

Its honest use is deciding whether to trade at all. A high reading is an instruction to leave the trend-following method in the drawer, not an instruction to reverse it.

A declining stretch of the long price series. The headline on the chart reads: So its honest use is deciding whether to trade at all.
So its honest use is deciding whether to trade at all. Illustrative chart - not real market data.

It is a price measure and ignores participation entirely. Nothing in the calculation looks at volume, so a quiet drift and a heavily traded range of the same shape read identically.

A candlestick chart with a volume histogram beneath it, with the volume histogram emphasised. The headline on the chart reads: It is a price measure and ignores participation.
It is a price measure and ignores participation. Illustrative chart - not real market data.

On a slower chart the same period reads differently. Fourteen bars is fourteen bars whatever the interval, so a stretch that is pure chop hourly can be a clean leg daily. Choose the timeframe you actually trade.

A long-horizon candlestick view of the same price series. The headline on the chart reads: On a slower chart the same period reads differently.
On a slower chart the same period reads differently. Illustrative chart - not real market data.

A gap inflates the range and distorts the reading. True range counts the jump from the prior close, so one overnight move can make an orderly window print as chop.

A candlestick series containing several opening gaps, with the largest opening gap marked. The headline on the chart reads: A gap inflates the range and distorts the reading.
A gap inflates the range and distorts the reading. Illustrative chart - not real market data.

It never tells you where the stop goes. The reading has no level attached, so every risk decision still comes from structure or bar size.

A declining stretch of the long price series, with the entry price and the level at which a stop would trigger drawn as horizontal lines. The headline on the chart reads: It never tells you where the stop goes.
It never tells you where the stop goes. Illustrative chart - not real market data.

Where it sits among the trend tools

It answers a narrower question than the Average Directional Index does. The ADX is built from directional movement and rises with the strength of a move; the choppiness index only measures the efficiency of the path, and never asks which way that path pointed.

Its raw material is the same as the Average True Range. The numerator is a running sum of exactly the figure ATR averages, so the two share an input and diverge only in what they do with it — one reports typical bar size, the other reports wasted motion.

None of the three replaces trend analysis. Structure tells you what the market is doing and where the levels are; these tools only grade the quality of the ground you are standing on. Grading the ground is useful and it is not a plan.

What the choppiness index is not

When it fails

Trading the chop costs a share of a bar each time. A round trip is 0.0098 price units, which is 2% of a median bar’s range and 45% of the smallest bar, and exceeds 10% of a bar’s range on 15 of the 576 bars.

A candlestick chart of the site's shared price history, annotated with the round-trip cost. The headline on the chart reads: And trading the chop costs a share of a bar each time.
And trading the chop costs a share of a bar each time. Illustrative chart - not real market data.

It describes the past fourteen bars and nothing ahead. That is the unavoidable limitation: it names chop only after the chop, never before.

A 72-bar candlestick section of the shared price history. The headline on the chart reads: It describes the past fourteen bars and nothing ahead.
It describes the past fourteen bars and nothing ahead. Illustrative chart - not real market data.

In a range it is correct and it is also too late. By the time the reading is convincingly high, the sideways action has already taken the losses out of you.

A sideways, range-bound candlestick series. The headline on the chart reads: In a range it is correct and it is also too late.
In a range it is correct and it is also too late. Illustrative chart - not real market data.

Bar sizes vary too much for one threshold to hold. The median bar range here is 0.493 against a tenth percentile of 0.17 and a ninetieth of 1.101, a ratio of 6.5.

It cannot tell a pause from a top. A trend that stalls and a trend that has finished print the same rising reading, because both waste motion.

And the thresholds themselves were never tested. 61.8 and 38.2 are Fibonacci ratios that arrived by convention, so treat them as a starting point, not a boundary to obey.

The original data

The figures below come from research/series-measurements.json, produced by site/measure_series.py on this site’s shared 576-bar history. The ten-bar efficiency ratio has a median of 0.34, a tenth percentile of 0.08 and a ninetieth of 0.71, with 30% of bars above 0.5. Direction runs average 2.01 bars with a longest of 11, across 286 runs. A breakout above a 20-bar high closed back below the level within ten bars in 85% of 39 events, against a base rate for a higher close ten bars later of 54% across 566 observations. From research/corpus-coverage.json, across 31,760 videos, “choppiness” appears in 2 videos with a median of 196,237 views from 2 channels, while “bollinger bands” appears in 311 videos with a median of 3,816 views.

A 72-bar window of the shared price history, cut short at the decision bar. The headline on the chart reads: The reading says chop and the setup looks perfect. Skip?
The reading says chop and the setup looks perfect. Skip? Illustrative chart - not real market data.

A median efficiency of 0.34 says the default state is waste. Only three bars in ten clear 0.5, and direction runs average barely two bars before flipping. A filter that spends most of its life saying no is therefore usually right.

The coverage numbers explain why nobody teaches this properly. Two videos on choppiness against 311 on Bollinger bands says which word people search for, not which tool is better. So do this: log the reading at the open daily for two weeks alongside whether the day trended, and compare your count against three in ten before you accept 61.8 as a boundary.

Trend analysis is the discipline this filter serves, because a chop reading only means something once you can name the structure it is grading.

The Average Directional Index answers the neighbouring question, measuring the strength of directional movement rather than the efficiency of the path.

Average true range supplies the raw input, since the choppiness calculation sums the same per-bar true range that this indicator averages.

What I actually do

I do not run a chop filter as a rule that overrides me. I run it as a question at the start of the session, which is whether the market is even paying for the method I am about to use. Most days it says the ground is poor, and most days that is correct. What I have learned the hard way is that it never stops me taking a good setup, it just changes how much I am willing to lose finding out.

— Michael Whitman

This page is educational, not financial advice. Test every idea on your own charts before risking money. Some links on this page earn a commission if you buy through them. It costs you nothing and it does not decide what appears here or in what order — how these pages are made is set out in our methodology.