Every major technical indicator explained step by step, with the underlying math, textbook strategies, and real, dated chart examples behind each one. Free for everyone once the site is live.
RSI is the single most common indicator on the internet, on TradingView charts, broker platforms, and every free stock-screener out there. Here's the full breakdown: where it actually comes from, the exact math behind it, how to read it correctly, the trap almost everyone falls into, and two real, dated market examples showing it working exactly as designed.
The Relative Strength Index (RSI) turns the balance between average gains and average losses over a lookback window into a number from 0 to 100. The rule that matters most is that it describes momentum, not a price ceiling or floor: a reading above 70 says buying has been strong and fast, not that a fall is due. The usual way it goes wrong is treating every 70 as a sell and every 30 as a buy, because in a real trend RSI can sit past those lines for weeks.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Average gain and average loss | The mean size of up moves and of down moves over 14 periods, the length Wilder used | Bigger average gain than loss pushes RSI above 50; the reverse pulls it below 50 | It counts size as well as frequency, so one huge day matters, though smoothing softens it |
| RS and the 0 to 100 scale | RS = average gain ÷ average loss, then RSI = 100 − (100 ÷ (1 + RS)) | RS of 1 gives 50; a larger RS climbs toward 100, a smaller one falls toward 0 | The scale is a squeezed ratio, so the same RS change moves RSI less near the ends |
| Wilder smoothing | New average = (previous average × 13 + today’s value) ÷ 14 | RSI moves gradually, and a single day cannot flip it from oversold to overbought | Platforms that use a plain average instead give slightly different numbers |
| Default bands 70 and 30 | Above 70 is read as overbought, below 30 as oversold, in between as neutral | Some traders tighten to 80 and 20 on fast markets such as crypto | The bands flag strong momentum; they do not mark where a move ends |
| Staying overbought | RSI can remain at 70 or higher for weeks in a strong trend | In the 2026 example, the S&P 500 went from RSI 30 or below to 70 or higher in 12 trading days | Selling the first reading above 70 meant missing the rally; this is the main trap |
| Divergence | Price makes a new high but RSI makes a lower high than its last peak | A hint that momentum is fading while price still rises | An early warning that can last a long time; it is not an instant reversal signal |
| Range shift | RSI moves in a different band depending on the trend underneath it | Uptrend: about 40 to 90, with 40 to 50 as pullback support. Downtrend: about 10 to 60, with 50 to 60 as resistance | Reading 45 in an uptrend as weakness, or 55 in a downtrend as a reversal |
Second outcome. If the same window had 4 up days and 10 down days with the totals swapped (gains 1.40, losses 3.68), RS would be 0.38 and RSI 27.6, the mirror image. In an uptrend, a drop to 45 sits inside the usual 40 to 90 range and reads as a pullback, while the same 45 in a downtrend sits inside 10 to 60 and says little about a turn.
In plain words: RSI measures the balance of gains and losses, 70 and 30 mark strong momentum rather than turning points, and the trend underneath decides what a reading means. Education, not advice.
RSI is a ratio of average gains to average losses, squeezed onto a 0 to 100 scale. Its history is mostly a story of one fixed recipe from 1978 and later traders asking what to do with it: shorten it, stack another indicator on it, or stop treating 70 and 30 as the only lines that count.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder Jr. presented the Relative Strength Index in the June issue of a commodities trading magazine | The first public form. The setting was futures trading, which is why the rules assume a market with full daily ranges |
| 1978 | The same year, his book New Concepts in Technical Trading Systems was issued by his firm, Trend Research, with RSI beside ATR, ADX and Parabolic SAR | It fixed the recipe still copied today: a 14-period window, a smoothed average and the 70 and 30 lines |
| 1994 | Tushar Chande and Stanley Kroll published StochRSI in The New Technical Trader | The first well-known indicator built on RSI itself, made to react faster than RSI alone |
| 1999 | Constance Brown’s book Technical Analysis for the Trading Professional set out Andrew Cardwell’s range-shift work | Moved attention from fixed lines to trend-dependent zones, about 40 to 90 in an uptrend and 10 to 60 in a downtrend |
| 2008 | Larry Connors and Cesar Alvarez published Short Term Trading Strategies That Work, which brought a 2-period RSI into wide use | The same formula on a very short window, with bands such as 10 and 90, aimed at brief dips rather than trends |
| 2012 | Connors Research published An Introduction to ConnorsRSI | A composite of three parts: a 3-period RSI of the close, an RSI of the streak of up or down closes, and a percent rank of the day’s change |
The Relative Strength Index was created by J. Welles Wilder Jr. and published in his 1978 book New Concepts in Technical Trading Systems, the same book that introduced Average True Range and the Parabolic SAR. Nearly fifty years later, RSI is still the default momentum oscillator built into virtually every charting platform on earth (free or paid).
RSI measures the speed and size of recent price changes on a 0–100 scale. It's built in two steps. First, calculate the Relative Strength (RS): the average size of up-moves divided by the average size of down-moves over a lookback period (14 periods is the standard Wilder himself used). Then convert that ratio to the 0–100 scale with a simple formula.
14 days of hypothetical daily closes, 10 up days and 4 down days, not a real ticker, just clean numbers to show exactly how the math works.
Notice what actually drove that 72.4 reading: gains outnumbered losses 10 days to 4, and the up days were also bigger on average. That's the entire idea behind RSI in one example. It's not tracking price, it's tracking the balance of power between buyers and sellers.
Above 70 is generally read as overbought: buying has been strong and fast. Below 30 is oversold: selling has been strong and fast. Everything in between is treated as neutral. Some traders tighten those bands to 80/20 to flag only the most extreme readings, especially on very volatile instruments like crypto.
The single biggest beginner mistake is treating "RSI is over 70" as a sell signal. In a genuinely strong trend, RSI can sit in overbought territory for weeks. A real, very recent example: the S&P 500 bottomed out oversold (RSI at 30 or below) around a March 30, 2026 low, then crossed into overbought territory, RSI 70 or higher, just 12 trading days later. That was the fastest oversold-to-overbought flip in more than four decades; the only faster one on record happened in 1982.
The other core RSI skill is divergence: when price makes a new high (or low), but RSI doesn't confirm it. It's a warning that the move is running on fumes, not a guaranteed reversal signal.
A real, well-documented case: Bitcoin set a new high near $64,000 in mid-April 2021, around the week Coinbase went public on the Nasdaq. It then pushed to an even higher all-time high of $69,044 on November 10, 2021. Technical analysts widely flagged that second top as a textbook bearish RSI divergence. Price made a higher high, but momentum was already fading. Bitcoin spent the next year in a bear market, falling below $16,000 by November 2022 during the FTX collapse.
RSI specialist Andrew Cardwell, whose work was later formalized by Constance Brown in her 1999 book Technical Analysis for the Trading Professional, found that RSI doesn't actually use its full 0–100 range evenly. It shifts depending on the trend underneath it. In a genuine uptrend, RSI tends to oscillate between roughly 40 and 90, with the 40–50 zone acting as pullback support instead of a sell signal. In a genuine downtrend, it tends to run between roughly 10 and 60, with 50–60 acting as resistance on bounces instead of a buy signal.
Nobody serious trades RSI crossing 70 or 30 in isolation. It's almost always read alongside the broader trend: a moving average, price structure, or simply which range (Cardwell's bull range or bear range) it's currently living in. Divergence is weighted far more heavily near obvious support or resistance than it is in the middle of open space. And many traders use RSI on more than one timeframe at once: a daily chart for context, a shorter chart for timing.
The same illustrative 30-bar series used throughout this module: a sharp decline, a choppy bottom, and a recovery. Watch what RSI does at the low and at the extension.
3,940 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
RSI needs no special access. It's a built-in, free indicator on TradingView's free plan, Yahoo Finance's charting tools, and virtually every retail broker's free charting package, almost always defaulted to the same 14-period setting Wilder originally used.
The fastest way to actually understand RSI is to calculate one yourself, once, instead of only ever reading the number a chart hands you.
That's the real skill this chapter is teaching: RSI isn't a magic overbought/oversold light to flip a trade on. It's a measurement of momentum, built from real gains and losses, that only means something once you read it alongside the trend it's sitting inside of.
RSI turns the ratio of average gains to average losses into a number from 0 to 100. Set both averages over the look-back window.
RSI comes from J. Welles Wilder Jr., a mechanical engineer who moved into real estate and then commodities trading, and in 1978 self-published "New Concepts in Technical Trading Systems", a book that quietly introduced RSI, ATR, ADX, and Parabolic SAR all at once. He sold it directly by mail. Half a century later RSI is the default oscillator on almost every charting platform on earth, and three of his other inventions show up later in this same module.
This guide fixes the vocabulary of RSI and then builds the number from raw closes: the seed average, the Wilder recursion, the price move that would push the reading to a chosen level, and the places where the formula stops working. Every figure is hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Change | Today’s close minus yesterday’s close. | The only raw input. Fifteen closes give fourteen changes. |
| Gain (U) | The change if it is positive, otherwise 0. | Up days feed the numerator of RS. |
| Loss (D) | The size of the change if it is negative (a positive number), otherwise 0. | Down days feed the denominator of RS. |
| Lookback N | The number of bars in the average, 14 by default. | Sets the seed length and the smoothing weight 1 ÷ N. |
| Seed | The first average gain and loss: a plain sum over N changes divided by N. | Starts the recursion. Every later value inherits a trace of it. |
| Wilder smoothing | New average = (old average × (N − 1) + today’s value) ÷ N. | Same as an EMA with weight 1 ÷ N, so RSI moves gradually. |
| RS | Average gain ÷ average loss. | A ratio from 0 upward. 1 means gains and losses balance. |
| RSI | 100 − 100 ÷ (1 + RS). | Maps RS onto 0 to 100. 50 is balance, 70 and 30 are the usual bands. |
| Warm-up | The early bars before the seed has faded. | Values here differ between platforms that seed differently. |
| Reverse RSI | The solved price change that lands RSI on a chosen level. | Shows how much movement a level really demands. |
Mechanism one: seed, then recursion. The chapter’s walkthrough uses 10 up days summing to 3.68 and 4 down days summing to 1.40. Here that case is rebuilt from a full list of changes starting at a close of 50.00, so every line can be checked. After the seed, each new bar keeps 13 ÷ 14 of the old average and adds 1 ÷ 14 of the new value.
| Step | Close | Change | Avg gain | Avg loss | RS | RSI |
|---|---|---|---|---|---|---|
| Seed (change 14) | 52.28 | n/a | 0.2629 | 0.1000 | 2.629 | 72.4 |
| Change 15 | 52.88 | +0.60 | 0.2869 | 0.0929 | 3.090 | 75.6 |
| Change 16 | 51.98 | −0.90 | 0.2664 | 0.1505 | 1.770 | 63.9 |
| Change 17 | 52.08 | +0.10 | 0.2546 | 0.1398 | 1.821 | 64.6 |
Read across the row for change 16. A fall of 0.90 is nine times the seed average loss, yet RSI falls from 75.6 to 63.9, a drop of 11.7 points rather than a collapse to an extreme, because the new loss enters with weight 1 ÷ 14. That damping is the reason one large bar cannot flip the indicator at once. The cost is lag: Wilder smoothing with N = 14 has the same decay as an EMA of period 2 × 14 − 1 = 27, and a shock loses half its weight after about 9.4 bars.
| Single-bar loss | Avg gain after | Avg loss after | RSI after |
|---|---|---|---|
| 0.00 | 0.2441 | 0.0929 | 72.4 |
| 0.50 | 0.2441 | 0.1286 | 65.5 |
| 1.00 | 0.2441 | 0.1643 | 59.8 |
| 2.00 | 0.2441 | 0.2357 | 50.9 |
The first row shows a useful fact: a bar with no change shrinks both averages by the same factor, so RS and RSI do not move. Only the mix of gains and losses changes the reading. Even a loss of 2.00, about 3.8 percent of the price, leaves RSI near the middle of the scale rather than at an extreme.
Mechanism two: reverse RSI. A level pins down RS, and RS pins down the one-bar loss that reaches it. Setting RS = (13 × G) ÷ (13 × L + x) and solving for the loss x gives the line below.
| Target RSI | RS required | Loss needed | As % of close |
|---|---|---|---|
| 70 | 2.333 | 0.164 | 0.3% |
| 50 | 1.000 | 2.117 | 4.0% |
| 30 | 0.429 | 6.673 | 12.8% |
Read across the row for 30. Getting from an overbought reading to 30 in a single bar would take a loss of more than 12 percent. Oscillator levels are therefore not equally reachable, and a level that needs an extreme bar is a statement about the averages, not about the market.
| Bars after seed | Seed weight left |
|---|---|
| 14 | 35.4% |
| 28 | 12.6% |
| 50 | 2.5% |
| 100 | 0.1% |
After 100 bars the seed carries under 1 percent of the value, which is why long histories on different platforms agree while the first month does not.
| Situation | What goes wrong | What to check |
|---|---|---|
| No down days in the window | Average loss is 0, so RS divides by zero. | Convention sets RSI to 100. Treat it as a limit, not a measurement. |
| Completely flat prices | Both averages are 0 and RS is 0 ÷ 0. | Platforms differ (hold the last value or print 50). Do not trade a flat tape. |
| Fewer than N+1 closes | The seed cannot be formed. | Wait for 15 closes before reading the first value. |
| Overnight gap | The gap is a single change and enters at full size. | Compare with the same bar’s range. One gap is not a trend. |
| Strong trend | RSI sits above 70 for weeks. | The shifted range (about 40 to 90 in uptrends) is normal there, so 70 alone is not a signal. |
| Different N | N = 7 reacts faster and swings more; N = 21 reacts slower. | Quote the lookback together with any level. |
In plain words: RSI is a ratio of two slowly updating averages, so its level depends on the seed, the lookback and the size of the next bar as much as on direction. Education, not advice.
Chapter 1 set out to show how RSI is built from raw closes and how to read the number it produces. Everything hangs on one idea: RSI is a ratio of two slowly updating averages, average gain over average loss, so it describes the balance of momentum and not a price ceiling or floor.
| Question | Short answer | Where it was taught |
|---|---|---|
| An average gain is 0.30 and an average loss is 0.20. What is RSI? | RS = 0.30 ÷ 0.20 = 1.50, so RSI = 100 − 100 ÷ 2.5 = 60.0. | The Formula, Built From Scratch |
| The next bar loses 0.70 with no gain. Where does RSI go? | Average gain becomes 0.2786, average loss 0.2357, RS 1.18 and RSI 54.2, a fall of 5.8 points. | Cypher Guide: RSI Built From Raw Closes |
| RSI drops to 45 during a strong uptrend. What does that usually mean? | A normal pullback inside the 40 to 90 range, not a sell warning. | The Range-Shift Trick Most Traders Never Learn |
| Price makes a higher high while RSI makes a lower high. What is it called, and how firm is it? | Bearish divergence. It is a warning to watch closely, not a guaranteed reversal or an exact timer. | Divergence: When Price and Momentum Disagree |
| Why did a reading above 70 not mark the top in spring 2026? | Overbought describes strong momentum. In a fast rally RSI can stay above 70 while the move continues. | The Trap: RSI Can Stay Overbought |
Chapter 1 ended on a warning: RSI can sit in overbought or oversold territory for weeks without ever really moving. Stochastic RSI exists because two analysts got tired of exactly that problem, so they built an indicator of an indicator to fix it.
Stochastic RSI (StochRSI) asks where today’s RSI sits between its own recent low and high, instead of where price sits. The rule that matters most is that it is a magnifier: it reaches its extremes far more often than RSI, so a touch of 80 or 20 is common and a lone touch carries little weight. The main way it goes wrong is trusting that an extreme means the move is over, when in a strong trend it can stay pinned at 0 or 100 for many bars.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Raw StochRSI | (today’s RSI − lowest RSI in the window) ÷ (highest RSI − lowest RSI), times 100 | Near 100 means RSI is at the top of its own recent range; near 0 means the bottom | A raw RSI of 50 can read as 30 here, so the two numbers can disagree |
| Defaults 14, 14, 3, 3 | A 14-period RSI, a 14-period lookback for the high and low, then 3-period smoothing for %K and again for %D | The 14s follow Wilder’s RSI length; the 3s calm a very jumpy raw line | Changing one number changes the signal count, so compare like with like |
| %K and %D | %K is the smoothed line; %D is a 3-period average of %K | %K crossing %D while both sit in an extreme zone is the signal worth watching | A crossing that does not hold is a whipsaw |
| Zones 80 and 20, centerline 50 | Above 80 is overbought, below 20 oversold, 50 divides the range | Wider than RSI’s 70 and 30 because StochRSI reaches the ends more often | Some platforms show 0 to 1 instead of 0 to 100; the zones become 0.80 and 0.20 |
| Twitchiness | The range is RSI’s own recent high to low, which can be narrow | Small RSI changes can move StochRSI a long way when the range is tight | More signals means more false alarms as well as earlier real ones |
| Pinned extremes | In a strong trend StochRSI can sit at 0 or 100 and stay there | Wait for %K to cross %D and hold, and read the trend underneath first | Buying every reading under 20 in a downtrend, the chapter’s averaging-down story |
Second outcome. Suppose RSI has been tightly held between 48 and 52. At 50 the raw reading is 50. If RSI then edges up one point to 51, the reading jumps to 75, a move of 25 points from a one-point change. That is the twitchiness at work, and it is why a StochRSI above 80 after a quiet stretch says little about the market itself.
In plain words: StochRSI shows where RSI stands inside its own recent range, it fires often by design, and the useful signal is a held %K and %D crossover in an extreme zone, read with the trend. Education, not advice.
StochRSI joins two older ideas: George Lane’s stochastic formula for where a close sits in a range, and Wilder’s RSI. Its own history is short, a 1994 book and then a long run of platform defaults, but the two parents explain both its speed and its habit of crying wolf. Nothing in the record suggests the combination was meant to stand alone; the authors framed it as a way to see RSI more sharply, and later platforms turned it into a default panel.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1950s | George Lane developed the Stochastic Oscillator, which compares a close with the high-low range of a window | The formula StochRSI borrows: position inside a range, scaled from 0 to 100 |
| 1978 | J. Welles Wilder Jr. published RSI with a 14-period window | The input series. StochRSI is only as smooth or as noisy as the RSI beneath it |
| 1984 | Lane’s article on stochastics appeared in the May and June issue of a trader magazine | Put the oscillator in front of working traders, so the %K and %D vocabulary was familiar by the 1990s |
| 1994 | Tushar Chande and Stanley Kroll described StochRSI in The New Technical Trader | Their form ran from 0 to 1 with lines at 0.80 and 0.20, chosen because RSI can wander between 80 and 20 without reaching a true extreme |
| 1999 | Constance Brown’s book formalized Andrew Cardwell’s range-shift reading of RSI | A different answer to the same complaint: keep RSI, but move the zones with the trend |
| 2008 | Larry Connors and Cesar Alvarez brought a 2-period RSI into wide use | A third answer: shorten RSI itself so it reaches extremes quickly, with bands near 10 and 90 |
Stochastic RSI was developed by Tushar Chande and Stanley Kroll and published in their 1994 book The New Technical Trader. Their stated reasoning was blunt: regular RSI can oscillate between 80 and 20 for extended periods without ever reaching a true extreme, which makes it slow to flag genuine overbought or oversold conditions. Their fix was to stop applying the Stochastic formula to price, like the original Stochastic Oscillator does, and instead apply it to RSI's own output.
StochRSI takes the last several days of RSI readings (not price, RSI itself) and asks one question: relative to its own recent high and low, where does today's RSI sit right now?
14 days of hypothetical daily RSI readings, not derived from a real ticker, just a clean series to show exactly how StochRSI reads a RSI history.
38, 42, 47, 53, 58, 63, 69, 74, 78, 73, 68, 61, 55, 50
Look at what that number is actually saying. A raw RSI of 50 looks perfectly neutral. Textbook middle-of-the-road. But StochRSI of 30 tells you RSI itself has fallen a long way from its own recent peak of 78, down toward the bottom third of its own range. That's information the raw RSI number alone simply doesn't carry.
The near-universal default across TradingView, most brokers, and every major charting platform is 14, 14, 3, 3: a 14-period RSI, fed into a 14-period Stochastic lookback, with the raw result smoothed into a %K line using a 3-period moving average, and %D as a further 3-period moving average of %K, the exact same %K/%D relationship the original Stochastic Oscillator uses, just built on RSI instead of price.
This is the entire point of the indicator, and also its biggest risk. Because StochRSI measures RSI relative to its own recent range instead of on a fixed 0–100 scale, it reaches its own overbought and oversold extremes far more often. Charting-platform technical documentation describes it as "dramatically" increasing signal count compared to plain RSI. Take Chapter 1's real example: the S&P 500's 14-day RSI went from oversold to overbought over 12 trading days following the March 30, 2026 low. StochRSI, watching that same real climb, would have registered its own overbought reading well before RSI itself ever touched 70, and likely printed more than one %K/%D crossover along the way up, some of them well before the move was actually over.
A widely shared trading-education story tells of a trader buying every StochRSI reading below 20 during what turned out to be a strong, sustained downtrend, averaging down five separate times into the close as the stock kept falling anyway. The writer calls it a "$4,250 lesson." It's a useful, honest illustration of the core risk: StochRSI hitting an extreme doesn't mean the extreme is over. In a strong trend, it can hit 0 or 100 and simply stay pinned there.
StochRSI is almost never used as a standalone trigger. Most traders treat a %K/%D crossover in the extreme zones as the actual signal, not a single bar touching 80 or 20; a crossover confirms the move has actually turned, where a bare touch can reverse instantly. It's also read alongside the underlying trend, just like RSI itself. A StochRSI dip to 0 during a strong uptrend is read very differently than the same dip during a downtrend. Many traders use it as a fast-moving early warning layered on top of regular RSI, not as a replacement for it.
Same illustrative series. Compare how much more erratic this line is than Chapter 1's RSI on identical price data. That's the “second derivative” effect this chapter's title refers to.
22,823 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
StochRSI ships as a free, built-in study on TradingView's free plan and most retail broker charting packages, almost always defaulted to the same 14, 14, 3, 3 settings covered above, no different in cost or access from RSI itself.
The fastest way to really understand StochRSI is to build one from a RSI history you already have, once, by hand.
That's the real skill this chapter is teaching: StochRSI isn't a better version of RSI, it's a magnifying glass held up to RSI, useful for catching turns early, dangerous if you forget that a magnifying glass also magnifies every false alarm along with the real ones.
StochRSI asks where today’s RSI sits between its recent low and high. Set the three values.
Stochastic RSI was built by Tushar Chande, an engineer turned quantitative analyst, and Stanley Kroll, a veteran commodities trader who'd already written several trading books of his own. Their complaint, laid out in their 1994 book "The New Technical Trader," was specific: regular RSI could sit between 20 and 80 for weeks without ever flagging a real extreme. Their fix was procedural rather than clever: run the Stochastic formula on RSI's own output instead of on price. It's a small idea that became a standard oscillator in its own right.
This guide fixes the vocabulary of StochRSI and then works the calculation across a rolling window: the raw reading, the two smoothing steps, what the window length does, and what happens when the RSI range collapses. The chapter’s 14-day RSI series is extended by six hypothetical days. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| RSI series | The list of RSI values, one per bar. | The input. StochRSI never touches price directly. |
| Window W | How many RSI values are searched for a high and a low, 14 by default. | A longer window gives a wider range and calmer readings. |
| Range | Highest RSI in the window minus lowest RSI in the window. | The denominator. A small range magnifies every move. |
| Raw StochRSI | 100 × (RSI − lowest) ÷ (highest − lowest). | Where today’s RSI sits inside its own range, 0 to 100. |
| %K | A 3-bar simple average of the raw value. | The smoothed line most charts draw first. |
| %D | A 3-bar simple average of %K. | The signal line. %K crossing it is the usual trigger. |
| Extreme reading | Raw value of 0 or 100. | Happens whenever RSI sets a new low or high for the window. |
| Degenerate range | Highest equals lowest, so the denominator is 0. | Raw value is undefined. Platforms hold the last value or print 0. |
| Warm-up | Bars needed before %D exists. | RSI needs 15 closes, then W RSI values, then 2 more for %K and 2 more for %D. |
Mechanism one: a rolling window. The first raw value needs 14 RSI values, so it appears on day 14. The two smoothing steps each cost two more bars, so %D first exists on day 18. Each row below drops the oldest RSI value from the window and adds the newest.
| Day | RSI | Lowest in window | Highest in window | Raw | %K | %D |
|---|---|---|---|---|---|---|
| Day 14 | 50 | 38 | 78 | 30.0 | n/a | n/a |
| Day 15 | 48 | 42 | 78 | 16.7 | n/a | n/a |
| Day 16 | 45 | 45 | 78 | 0.0 | 15.6 | n/a |
| Day 17 | 52 | 45 | 78 | 21.2 | 12.6 | n/a |
| Day 18 | 57 | 45 | 78 | 36.4 | 19.2 | 15.8 |
| Day 19 | 61 | 45 | 78 | 48.5 | 35.4 | 22.4 |
| Day 20 | 59 | 45 | 78 | 42.4 | 42.4 | 32.3 |
Read across the row for day 16. RSI fell from 48 to 45, only three points, yet the raw value dropped from 16.7 to 0.0 because 45 was the lowest value in the window. A three-point RSI move produced a full-scale swing in the raw line. The smoothed lines soften this: %K at that day is 15.6, and %D does not exist yet at that point.
| Window W | Lowest | Highest | Raw on day 20 |
|---|---|---|---|
| 14 | 45 | 78 | 42.4 |
| 10 | 45 | 68 | 60.9 |
| 7 | 45 | 61 | 87.5 |
| 5 | 45 | 61 | 87.5 |
The same RSI of 59 reads 42.4 on a 14-bar window and 87.5 on a 5-bar window. A shorter window cannot see the earlier low or high, so the reading depends on how much history the window holds. Quote the window with every value.
Mechanism two: why a small range magnifies. The raw value moves by 100 ÷ range points for each point of RSI. The table holds the RSI move at 2 points and changes only the range.
| Range (RSI points) | Raw points per RSI point | Raw points for a 2-point RSI move |
|---|---|---|
| 40 | 2.5 | 5.0 |
| 20 | 5.0 | 10.0 |
| 10 | 10.0 | 20.0 |
| 5 | 20.0 | 40.0 |
Read across the row for range 5. A quiet RSI makes StochRSI the most violent when nothing much is happening, which is the mechanical reason it is twitchier than RSI and why a flat RSI can still print 0 and 100 in the same week.
| RSI range in window | Raw StochRSI at RSI = 50 |
|---|---|
| 38 to 78 | 30.0 |
| 45 to 55 | 50.0 |
| 40 to 52 | 83.3 |
| 49 to 51 | 50.0 |
| Situation | What goes wrong | What to check |
|---|---|---|
| RSI flat for the whole window | Highest equals lowest, so the raw value divides by 0. | Check how the platform handles it; ignore the reading. |
| RSI at a new window high | Raw prints 100 even though RSI itself may be only 55. | Read RSI beside it. An extreme raw value is not an extreme RSI. |
| Short window | Range is small and the line pins at 0 and 100. | Compare the same chart at W = 14 before acting on a cross. |
| Different smoothing | Platforms use 3 and 3, 3 and 1, or none. | Match the settings before comparing two screens. |
| Early bars | Fewer than 14 RSI values exist. | Ignore output until %D has a value, about 32 closes in total. |
In plain words: StochRSI re-scales RSI by its own recent high and low, so the same RSI can read very differently depending on the window and the range. Education, not advice.
Chapter 2 set out to show how StochRSI is built on top of RSI and why it behaves so differently from it. The one idea is that it asks where today’s RSI sits inside its own recent range, which makes it a magnifier of RSI and not a better version of it.
| Question | Short answer | Where it was taught |
|---|---|---|
| RSI has ranged from 38 to 78 and is now 50. What is the raw StochRSI? | (50 − 38) ÷ 40 × 100 = 30.0. | The Formula: An Indicator of an Indicator |
| Why can a one-point RSI move from 50 to 51 produce a jump of 25 points? | RSI had been held between 48 and 52, a range of 4, so each RSI point is worth 25 raw points. | Streamline View: How StochRSI Is Built and Read |
| The last five RSI values are 44, 51, 57, 53 and 49 on a window of 5, and the two previous raw readings were 80 and 60. What is the new %K? | Raw = (49 − 44) ÷ 13 × 100 = 38.5, so %K = (80 + 60 + 38.5) ÷ 3 = 59.5. | Cypher Guide: StochRSI Rolled Across a Window |
| What is the sturdier signal, a touch of 80 or a crossover? | A %K and %D crossover in the extreme zone that holds, read with the trend. | How Professionals Actually Use It |
| Why does StochRSI print more signals than RSI? | It measures RSI against its own recent range and not a fixed scale, so it reaches its extremes more often. | Why It’s So Much Twitchier Than RSI |
RSI and StochRSI are both boxed into a fixed 0–100 scale. MACD isn't — it has no ceiling and no floor, because it isn't measuring where price sits on a scale at all. It's measuring the gap between two moving averages, and how that gap is changing. That's a genuinely different tool, not just another flavor of the same one.
MACD, Moving Average Convergence Divergence, is the gap between a fast and a slow exponential moving average, plotted with a smoothed copy of itself and the bars between the two. The rule that matters most is that it measures how fast the averages are pulling apart or together, not where price sits on a scale. The main ways it goes wrong are looking for overbought and oversold levels that do not exist on it, and trading every crossover in a market that is going sideways.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| MACD line | 12-day EMA − 26-day EMA | Above zero, the fast average is above the slow one; below zero, the reverse. Rising means the gap is widening | It is in price units, so 3.75 means different things on a $20 stock and a $2,000 one |
| Signal line | A 9-day EMA of the MACD line itself | MACD crossing above it is a bullish signal-line cross; below it, bearish | It lags the MACD line by design, and in a range it crosses back and forth |
| Histogram | MACD line − signal line | Bars shrinking toward zero often show up before the lines cross; a flip through zero is the cross itself | Shrinking bars are a warning, not a trade; they can grow again |
| Defaults 12, 26, 9 | Chosen on a six-day trading week as two weeks, one month and a week and a half | Almost every platform uses them, so charts can be compared across screens | Changing them makes a chart harder to compare, with no proven gain |
| Signal-line vs centerline cross | The first compares MACD with its signal; the second compares MACD with zero | The signal cross is faster and lighter. The zero cross means the fast EMA has crossed the slow one outright | Treating both crosses as equal weight |
| No overbought or oversold | There is no fixed scale and no 70 or 80 line | Judge strength against that chart’s own history, not a fixed level | Calling any large reading overbought; a strong trend can set a new extreme |
| Asymmetry in trends | In the Bitcoin example, the bearish crosses of winter 2025 into 2026 worked better than the bullish ones | Compare how both kinds of cross behaved on the same market | A signal that fits one direction of a trend may fade in the other |
Second outcome. To compare two markets, divide the MACD line by the slow average. Here 3.75 ÷ 178.65 is 2.1%. The same MACD of 3.75 on a stock whose 26-day EMA is 20.00 would be 18.8%, a far stronger gap. The raw number alone cannot say that.
In plain words: MACD plots how far apart two averages are and how fast that gap is changing, the histogram shows the change early, and no level on it means overbought or oversold. Education, not advice.
MACD is a gap between two exponential averages, so its history has two layers: the smoothing method it rests on, and the trader who turned it into a timing tool and the later hands that changed how it is drawn. The bar chart most traders look at first today, the histogram, is the newest piece. Appel did not patent MACD or try to control it, according to the chapter, so it spread by being copied into charting software and became the shared default it is now.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1950s | Robert G. Brown developed exponential smoothing as a method for forecasting demand | The weighting scheme behind an EMA, where recent values count more, which is why MACD reacts faster than a plain average |
| 1979 | Gerald Appel introduced MACD in a trading method built on exponential averages | The core idea: track the distance between two averages and a smoothed copy of that distance, with no price scale attached |
| 1986 | Thomas Aspray developed the MACD histogram that autumn, to see turns before the signal-line cross | Added the bars most traders now watch first. Appel’s original display did not have them |
| 1988 | Aspray wrote up the idea in a trading magazine, in the August issue | Put the histogram in print, with a 10-day momentum of the histogram tested on weekly data |
| 2005 | Appel published Technical Analysis: Power Tools for Active Investors | A later account of the method by its author, 26 years after the first version, still built on the same 12, 26 and 9 pieces |
MACD was developed by Gerald Appel in the late 1970s, and later documented in his 2005 book Technical Analysis Power Tools for Active Investors. The now-standard histogram (the bar chart showing the gap between MACD and its own signal line) wasn't part of Appel's original version. Thomas Aspray added it in 1986, later publishing the idea (1988) in a trading magazine, specifically to make MACD's own turning points easier to see before the signal-line crossover actually happened.
MACD starts with two exponential moving averages of price (a fast one and a slow one) and simply subtracts the slow one from the fast one. That gap is the MACD line. A second, smoothed average of that gap becomes the signal line. The difference between those two is the histogram.
Two already-calculated EMA values and a signal line reading, not a real ticker, just clean numbers to show how the three MACD components relate to each other.
The 12-day EMA sitting above the 26-day EMA is what "convergence/divergence" actually refers to. The two moving averages are diverging apart, and MACD is simply plotting the size of that gap as its own line.
Those numbers look arbitrary, but they aren't. Appel built MACD back when trading weeks still ran six days. 12, 26, and 9 represented two weeks, one month, and a week and a half on that old six-day calendar. Markets have run five-day weeks for decades now, which means the "clean" modern equivalents would actually be slightly different numbers, but 12/26/9 became the standard everyone uses, so deviating from it mostly just makes your chart harder to compare with everyone else's.
There are two different crossovers MACD gives you, and they mean different things. A signal-line crossover (MACD crossing above or below its own signal line) is the faster, more frequent signal, and it's exactly what the histogram flipping from negative to positive (or back) is showing you visually. A centerline (zero-line) crossover, MACD crossing above or below zero, is slower and heavier: it means the fast EMA has actually crossed the slow EMA outright, not just that momentum is shifting within an existing trend.
Bitcoin's daily MACD histogram gave a real, dated, and unusually clean track record of bearish crossovers over the winter of 2025 into 2026. On November 3, 2025, MACD turned bearish with Bitcoin trading around $106,000; by November 21 it had fallen to roughly $80,000. On January 20, 2026, MACD flashed bearish again, this time with Bitcoin near $90,000; by February 6 it had dropped to nearly $60,000. By late March 2026, the histogram had crossed below zero a third time.
Unlike RSI or StochRSI, MACD has no fixed scale and no built-in overbought or oversold zone. There's no equivalent of "70" or "80" to watch for. A strong trend can push MACD to a reading nobody's ever seen on that chart before, and it still wouldn't technically be "overbought." That's also why MACD values can't be meaningfully compared across two different stocks: a MACD of 3.75 means something different on a $20 stock than it does on a $2,000 one, since it's built from raw price, not a normalized percentage.
MACD is most often used as a trend-confirmation tool sitting alongside a bounded oscillator like RSI or StochRSI, not as a replacement for either. The histogram's slope (whether the bars are growing or shrinking, even before a full crossover happens) is watched as an early read on fading momentum. And just like RSI, MACD divergence, price making a new high or low that MACD doesn't confirm, is treated as a genuine warning sign, particularly on a longer timeframe like a weekly chart.
Same illustrative series. The histogram flips from negative to positive at bar 14, one bar after the crash's low volume capitulation.
12,422 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
MACD is a free, default study on TradingView's free plan, Yahoo Finance, and effectively every retail broker's charting package, almost always shipped with the same 12, 26, 9 settings covered above.
The fastest way to really understand MACD is to watch its histogram build in real time on a chart you already follow.
That's the real skill this chapter is teaching: MACD isn't telling you where price is on a scale, like RSI does; it's telling you whether the trend underneath price is speeding up, slowing down, or reversing, which is a genuinely different question with a genuinely different kind of answer.
MACD is the gap between a fast and a slow EMA. The histogram is the gap between MACD and its signal line.
Gerald Appel ran a registered investment advisory and wrote a market newsletter, Systems and Forecasts, for decades. MACD grew out of that newsletter work in the 1970s — Appel wanted a way to track the relationship between two moving averages without redrawing charts by hand every day. He never patented it or tried to control how it spread; he just kept publishing about it, and traders kept copying it into their own charting software. By the time personal computers made plotting indicators trivial, MACD was already the default trend-momentum tool taught alongside RSI.
This guide fixes the vocabulary of MACD and then works the three nested calculations by hand: one full update step from the chapter’s numbers, the close that would flip the histogram, and the weights that show what the indicator really measures. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Multiplier a | 2 ÷ (N + 1) for an N-bar EMA. | 12 bars: 0.1538. 26 bars: 0.0741. 9 bars: 0.2000. |
| EMA update | New EMA = old EMA + a × (close − old EMA). | Each bar corrects the old value by a fixed share of the miss. |
| MACD line | EMA(12) minus EMA(26). | In price units. Positive means the fast average is above the slow one. |
| Signal line | EMA(9) of the MACD line. | A smoothed copy of the gap, so it reacts later. |
| Histogram | MACD line minus signal line. | Zero when the two cross. Its slope shows speed. |
| Zero line | MACD = 0, where the two EMAs are equal. | Crossing it means the fast and slow averages have swapped places. |
| Seed | The first EMA value, usually a plain average of the first N closes. | Starts the recursion; its effect fades with each bar. |
| Warm-up | Bars before every line exists. | 26 closes for the first MACD, 9 more MACD values for the first signal, 34 closes in all. |
| PPO | MACD ÷ EMA(26) × 100. | The same gap as a percentage, so tickers at different prices can be compared. |
Mechanism one: one full update step. Start from the chapter’s state: EMA(12) = 182.40, EMA(26) = 178.65, signal = 2.90, so the MACD line is +3.75. A new close arrives. Each EMA moves by its own multiplier times the miss, the new gap is formed, and the signal takes 0.2 of the gap between the new MACD and the old signal.
| New close | EMA12 | EMA26 | MACD | Signal | Histogram |
|---|---|---|---|---|---|
| 176.00 | 181.415 | 178.454 | 2.962 | 2.912 | 0.049 |
| 180.00 | 182.031 | 178.750 | 3.281 | 2.976 | 0.305 |
| 182.40 | 182.400 | 178.928 | 3.472 | 3.014 | 0.458 |
| 184.00 | 182.646 | 179.046 | 3.600 | 3.040 | 0.560 |
| 188.00 | 183.262 | 179.343 | 3.919 | 3.104 | 0.815 |
Read across the row for a close of 182.40, equal to the old EMA(12). The fast average does not move, the slow one still rises, and the histogram shrinks from 0.85 to 0.458. A flat-to-down close can shrink the histogram even while MACD is positive. Each extra dollar of close adds 0.0798 to the MACD line and 0.0638 to the histogram, so the histogram is a damped response to price.
Mechanism two: what the histogram flip needs. The histogram is zero when the new MACD equals the old signal, because the signal moves only 0.2 of the way. Solving for the close gives the price at which momentum, in this sense, turns.
From a close of 182.40 the flip level is 175.23, a drop of 7.17 dollars, or 3.9 percent. The histogram can stay positive through a surprisingly large decline, which is one reason a histogram flip confirms a turn late.
| Bars ago k | EMA12 weight | EMA26 weight | MACD weight |
|---|---|---|---|
| 0 | 15.38% | 7.41% | 7.98% |
| 1 | 13.02% | 6.86% | 6.16% |
| 2 | 11.02% | 6.35% | 4.66% |
| 5 | 6.67% | 5.04% | 1.63% |
| 10 | 2.89% | 3.43% | −0.54% |
| 20 | 0.54% | 1.59% | −1.04% |
| 40 | 0.02% | 0.34% | −0.32% |
The MACD weights add to zero, because each EMA's weights add to 100 percent. They are positive for recent closes and turn negative from 9 bars ago. MACD is therefore a measure of recent price against older price, not a price level, and a long flat price drives it to zero.
| Situation | What goes wrong | What to check |
|---|---|---|
| Fewer than 34 closes | The signal line does not exist yet. | Wait for all three lines before reading a crossover. |
| Different seeds | Early values differ between platforms. | Compare only after about 100 bars; the seed weight is then tiny. |
| Comparing tickers | MACD is in price units, so 3.75 means different things at 20 and at 400. | Use PPO: 3.75 ÷ 178.65 = 2.10 percent. |
| Sideways market | The two EMAs braid and the lines cross often. | Count crossovers in a range before trusting one. |
| Large gap | One close moves both EMAs at once. | Check the histogram change for that single bar. |
| Zero-line cross | Needs the fast EMA to pass the slow one, which lags the move. | Note how far price had already travelled. |
In plain words: MACD is a weighted comparison of recent closes with older closes, passed through a second smoother, so each line answers more slowly than the one before it. Education, not advice.
Chapter 3 set out to show how MACD is built from two exponential averages and how its three parts are read. The one idea is that MACD measures how fast two averages are pulling apart or together, so it has no scale of its own and no overbought or oversold level.
| Question | Short answer | Where it was taught |
|---|---|---|
| The 12-day EMA is 182.40, the 26-day EMA is 178.65 and the signal is 2.90. What are the MACD line and histogram? | MACD = 182.40 − 178.65 = 3.75, and the histogram = 3.75 − 2.90 = 0.85. | The Formula: Two EMAs and the Gap Between Them |
| EMA(12) = 100, EMA(26) = 98, signal = 1.5, and the next close is 103. What is the new histogram? | EMA12 = 100.462 and EMA26 = 98.370, so MACD = 2.091 and signal = 1.618. The histogram is 0.473. | Cypher Guide: MACD Updated Bar by Bar |
| Which crossover is faster, signal line or zero line? | The signal-line crossover. The zero-line crossover is slower and heavier. | Reading Crossovers |
| Why is MACD never called overbought? | It is built from raw price differences, has no fixed scale, and cannot be compared across markets. | The Big Limitation: No Overbought or Oversold |
| Why are 12, 26 and 9 still used? | They trace back to the six-day week, and they are now a shared standard that makes charts comparable. | Why 12, 26, and 9? |
RSI smooths gains and losses. MACD is nothing but two moving averages and the gap between them. Both are secretly built on top of the same tool, the one neither chapter has named outright. This chapter covers that tool directly: the moving average itself, and the single most-watched crossover in all of technical analysis.
A moving average smooths a run of closing prices into one line that shows the direction of the trend. The rule that matters most is that every moving average looks backward, so it confirms a trend rather than calling the turn. The two ways it goes wrong are treating a crossover as a bottom call, and trading crosses mechanically in a sideways market where they reverse almost at once.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Simple moving average (SMA) | The sum of the last N closes ÷ N, with every day weighted equally | A slope up reads as an uptrend; price above the line reads as strength | Old data drops off the back all at once, which can make the line jump |
| Exponential moving average (EMA) | New EMA = yesterday’s EMA + (today’s close − yesterday’s EMA) × 2 ÷ (N + 1) | It reacts faster than an SMA of the same length, because recent prices carry more weight | Faster means more false turns; it is a trade-off, not an upgrade |
| Periods | 5 to 20 for near-term moves, 50 for the working trend, 200 as the long-term line | The 200-day matters because so many traders watch the same line | 200 is not mathematically special. Treat it as a zone, not an exact price |
| Golden cross | The 50-day crossing above the 200-day | Read as a longer-term bullish change of trend | It is confirmation after the fact. Price is typically already 10 to 20% off the real low |
| Death cross | The 50-day crossing below the 200-day | Read as a bearish change of trend | The same lag applies in reverse, so a fall is often well under way |
| Whipsaw | Crosses that fire and reverse in a non-trending market | The U.S. Global Jets ETF threw several short-lived crosses in a row in 2023 and 2024 | Using crosses mechanically when the market has no trend |
| Trend filter | Professionals use averages to weigh other signals, not as a lone trigger | An RSI or MACD signal that agrees with the average’s slope carries more weight | Using a slow SMA where a faster EMA fits, or the reverse, without knowing why |
Second outcome. In a trending market, a golden cross that arrives with price at 110 still leaves a trend to ride. In a sideways market, the 50-day and 200-day can sit close together and cross, uncross and cross again within weeks, and each cross is a signal that does not last. The averages did not fail; the market simply offered no trend to confirm.
In plain words: a moving average shows where the trend has been, an EMA reacts faster than an SMA, and a golden or death cross confirms a move that is already well under way. Education, not advice.
The moving average began as a statistician’s tool for smoothing data, became an engineer’s tool for forecasting stock levels, and only then reached the charts of traders. The exponential version has the most traceable line from one field to the next.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1901 | R. H. Hooker computed “instantaneous averages” of economic series | The first known use of the smoothing idea on time-ordered data, years before anyone charted stocks with it |
| 1909 | G. U. Yule described Hooker’s method and the name “moving average” followed | Gave the tool its permanent name, taken from statistics rather than from markets |
| 1957 | Charles Holt wrote up exponentially weighted moving averages in a research memorandum | A formal treatment of weights that fade with age, the basis of the EMA |
| 1959 | Robert G. Brown described exponential smoothing in his book on inventory control | Showed that the method needs only the last average and the new value, which kept it cheap to run on early computers |
| 1960 | Richard Donchian began a weekly newsletter, Commodity Trend Timing, based on a 5 and 20 moving-average method | An early published crossover rule for traders, the plain ancestor of the golden cross |
| Early 1960s | Pete Haurlan, who worked at the Jet Propulsion Laboratory, is believed to be the first to apply exponential smoothing to stock prices | Moved the EMA from inventory forecasting to markets, under the name “Trend Values” |
| 1968 | Haurlan published the booklet Measuring Trend Values | Put the method in print, with the percent-style labels such as a “10% Trend” for what is now a 19-day EMA |
The moving average itself predates modern charting software by more than a century. R. H. Hooker was calculating "instantaneous averages" of economic data as early as 1901, and the term "moving average" was formally applied by G. U. Yule in 1909, describing Hooker's method in a statistics journal. The exponential version has a stranger origin story: Pete Haurlan, a rocket scientist at Caltech's Jet Propulsion Laboratory, applied exponential smoothing to stock prices in the early 1960s. He didn't call it an EMA. He called them "Trend Values," labeled by their smoothing percentage (what's now a 19-day EMA, he called a "10% Trend"). His aerospace background is exactly why the math works the way it does: an EMA only needs yesterday's average and today's price to update, not an entire stored history, a real constraint on 1960s computing that still shapes the formula today.
A simple moving average is exactly what it sounds like: add up the closing prices over N days and divide by N. Every day in the window counts equally, and old data simply falls off the back as new data comes in. An exponential moving average weights recent price more heavily, so it reacts faster and lags less: the tradeoff most other indicators in this module, including MACD, are built around.
Notice the EMA only moved from 48.20 to 48.53 even though the new close was a full $1.80 higher. It absorbed about 18% of that move and carried the rest of its own history forward. That's the entire mechanism in one example.
Shorter periods (5–20) track fast, near-term moves and are common on intraday charts. Medium periods, especially 50, are read as the trend traders are actually positioned around right now. The 200-day is the one everyone watches, on every asset class, not because 200 is mathematically special, but because so many other traders are watching the exact same line that it becomes a real, self-reinforcing level.
These are the single most-referenced moving average signals in the entire industry. A golden cross is the 50-day moving average crossing above the 200-day, read as a bullish, longer-term trend change. A death cross is the reverse: the 50-day crossing below the 200-day, read as bearish.
On April 8, 2026, market commentary reported that the S&P 500 had formed a golden cross on its weekly chart (the 50-week moving average crossing above the 200-week), describing it as the first since the post-pandemic recovery. The claim does not hold up on the chart itself: a golden cross needs the 50-week line to have been below the 200-week line first, and through the 2022 and 2025 declines the 50-week line stayed above it. The useful habit is to check a reported crossover on the chart before trusting the headline.
A backtest of the classic 50-day/200-day golden cross and death cross rule on the S&P 500 from 2003 through 2023 captured most of the major bull runs, including the recoveries after 2009 and 2020, but it also produced real whipsaw signals during sideways, range-bound stretches. The U.S. Global Jets ETF is a documented real example: during 2023–2024's choppy, directionless trading, it threw off several short-lived golden cross and death cross signals in a row, each one reversing almost immediately. The same signal that nails a real regime change can fire uselessly, over and over, in a market that isn't actually trending at all.
Moving averages are rarely a signal on their own — they're the trend filter everything else in this module gets read against. Price above a rising 50-day and 200-day is read as a genuine uptrend; RSI, StochRSI, and MACD signals that agree with that trend are trusted more, and signals that fight it are trusted less. Many traders also stack several moving averages at once (a "ribbon" of 10, 20, 50, and 200) and read how tightly bunched or spread out they are as its own read on trend strength.
Same illustrative series, periods shortened to 5 and 10 bars so the cross is visible inside a 30-bar window. A real chart would typically use 50/200.
2,677 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Every major free charting platform (TradingView, Yahoo Finance, and virtually every broker) plots SMA and EMA at any period for free, and most will flag a golden cross or death cross automatically the moment it happens.
The fastest way to really understand moving averages is to find a real one on a chart you already know.
That's the real skill this chapter is teaching: a moving average isn't a signal by itself so much as it's the lens everything else in this module gets viewed through — the trend that tells you whether a momentum reading is confirming the move or fighting it.
An EMA is a running average that leans on recent prices. Set the length, yesterday’s EMA and today’s close to see how much weight the new close gets.
Richard Donchian is usually called the father of trend following. In 1949 he launched Futures, Inc., one of the first publicly available commodity trading funds, built almost entirely on moving average crossovers and breakout rules, decades before "systematic trading" was a phrase anyone used. His simplest rule, buy when a short average crosses above a long one and sell on the reverse, is the direct ancestor of the Golden Cross taught in this chapter. Donchian ran his fund on hand-plotted charts; the logic hasn't changed since, only the plotting.
This guide fixes the vocabulary of moving averages and then works two calculations by hand: how an SMA and an EMA of the same length answer a price jump, and how long a crossover takes to appear after a trend begins. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Period N | The number of closes an SMA averages, or the length that sets an EMA multiplier. | 50 and 200 are the usual long pair; 10 to 21 are common short ones. |
| SMA | Sum of the last N closes divided by N. | Equal weight of 1 ÷ N on each close, then a hard drop-off. |
| EMA | Previous EMA plus a share of the miss between today’s close and that value. | Weights decay by a factor (1 − a) per bar and never reach zero. |
| Multiplier a | 2 ÷ (N + 1). | N = 10 gives 0.1818; N = 20 gives 0.0952. |
| Seed | The first EMA, normally the SMA of the first N closes. | Its influence fades by (1 − a) each bar. |
| Lag (average age) | The weighted average age of the closes in the average, in bars. | For both an SMA and an EMA built this way it equals (N − 1) ÷ 2. |
| Step response | How the average moves after a one-time jump that then holds. | Shows the speed and shape of the catch-up. |
| Golden cross | The short average moves from below the long average to above it. | A late confirmation of an advance already under way. |
| Death cross | The short average moves from above the long average to below it. | The mirror case. |
| Whipsaw | A cross that reverses within a few bars. | Common when prices move sideways. |
Mechanism one: the step response. Let price sit at 100 for a long time and then jump to 110 and stay there. A 10-bar SMA climbs in a straight line and arrives exactly 10 bars later. A 10-bar EMA climbs quickly at first and then creeps. The number to compare is the share of the 10-point jump closed after k bars.
| Bars after jump | SMA share | EMA share | SMA value | EMA value |
|---|---|---|---|---|
| 1 | 10.0% | 18.2% | 101.00 | 101.82 |
| 2 | 20.0% | 33.1% | 102.00 | 103.31 |
| 3 | 30.0% | 45.2% | 103.00 | 104.52 |
| 5 | 50.0% | 63.3% | 105.00 | 106.33 |
| 10 | 100.0% | 86.6% | 110.00 | 108.66 |
| 20 | 100.0% | 98.2% | 110.00 | 109.82 |
Read across the row for k = 3. The EMA has closed 45.2 percent of the jump and the SMA 30.0 percent, so the EMA looks faster. Look at k = 10: the SMA has finished, while the EMA still has 13.4 percent to go. Both have the same average age of 4.5 bars. The EMA answers sooner and finishes later, which is a difference of shape, not of overall lag.
Mechanism two: how late a cross arrives. Let price fall by 0.25 per bar for 600 bars into a low of 100, then rise by 1 per bar. The table finds the first bar after the turn on which the short average moves above the long one.
| Pair | SMA cross bar | Gain from low | EMA cross bar | Gain from low |
|---|---|---|---|---|
| 10 and 30 | 8 | 8% | 7 | 7% |
| 20 and 50 | 14 | 14% | 13 | 13% |
| 50 and 200 | 45 | 45% | 44 | 44% |
Read across the row for 50 and 200. The SMA pair crosses on bar 45, when price is already 45 percent above its low of 100; the EMA pair crosses on bar 44, one bar sooner. Shorter pairs cross sooner. The slopes here are assumed (a steep rise of 1 percent of the low per bar), so the bar numbers show the order of magnitude, not a forecast, and are a separate example from the 10 to 20 percent rule of thumb used earlier in the chapter. Even so, every cross arrives after the turn is well under way, and in a jagged market the shorter pairs would also cross back and forth more often.
| Situation | What goes wrong | What to check |
|---|---|---|
| Fewer than N closes | An SMA of N bars cannot be formed. | Wait for N closes. A 200-bar SMA needs 200. |
| Sideways market | Short and long averages braid and cross repeatedly. | Count crosses in the last range; compare with the average trend length. |
| Gap through both averages | A single bar moves price far from both. | The cross may print many bars later. Check price against the lines. |
| Different seeds | EMA values differ for the first bars. | Compare after about 5 × N bars. |
| Period mismatch | A 20 EMA on one chart is not a 20 SMA on another. | Match type and length before comparing. |
| Sharp drop-off of an SMA | An old extreme leaves the window and the SMA jumps. | Look at the close that dropped out of the window. |
In plain words: an SMA and an EMA of the same length have the same average lag but different shapes, and a crossover of long averages is a delayed confirmation, not an early warning. Education, not advice.
Chapter 4 set out to show how moving averages are built, how the two common kinds differ, and what the golden and death crosses can and cannot tell you. The one idea is that every moving average looks backward, so it confirms a trend that is already under way and does not call the turn.
| Question | Short answer | Where it was taught |
|---|---|---|
| A 10-period EMA stood at 48.20 and the close is 50.00. What is the new EMA? | 48.20 + (2 ÷ 11) × 1.80 = 48.527, about 18 percent of the move. | Two Ways to Average: SMA vs EMA |
| A 20-bar EMA was 105.00 and today closes at 110.00. What is the new EMA, and the 5-bar SMA of 102, 104, 103, 107 and 109? | EMA = 105.00 + 0.0952 × 5.00 = 105.476. The SMA = 525 ÷ 5 = 105.00. | Cypher Guide: SMA and EMA Step Response |
| Which average closes more of a jump after 3 bars, SMA or EMA of length 10? | The EMA, 45.2 percent against 30.0 percent. Their average lag is the same 4.5 bars. | Cypher Guide: SMA and EMA Step Response |
| What is a golden cross, and why is it not an early signal? | The 50-day crossing above the 200-day. It prints after the move is well under way. | The Golden Cross and the Death Cross |
| Why can crosses fail repeatedly in a sideways market? | There is no trend to confirm, so the averages cross back and forth, as with the airline ETF in 2023 and 2024. | Where This Signal Actually Fails |
The last chapter built the moving average: the single line that smooths price into a trend. Bollinger Bands take that same line and wrap it in a second measurement most traders never think to ask for: how confident should you be that price stays near it? The answer changes constantly, and when the bands squeeze down to almost nothing, that answer is about to get tested.
Bollinger Bands wrap a 20-day moving average in two lines set a multiple of the recent standard deviation above and below it. The rule that matters most is that the width shows how much price has been moving, so tight bands mean a quiet market and wide bands a restless one. The main way it goes wrong is reading a touch of the upper band as an automatic sell, when in a strong trend price can walk along the band for weeks.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Middle band | The 20-day simple moving average of closes | The slope shows the trend; price above it leans strong, below it leans weak | It lags like any average, so it confirms rather than predicts |
| Upper and lower bands | Middle band ± 2 × the 20-day standard deviation | Wide bands: price has been moving a lot. Narrow bands: it has been quiet | The bands measure dispersion, not direction |
| Default 20 and 2 | A 20-day window and a multiple of 2, the creator’s own default | A 2 leaves a minority of closes outside the bands, so a close outside is worth noticing | Closes outside the bands are not rare enough to trade on their own |
| Standard deviation | How spread out the last 20 closes are around their own average | Tight cluster, small number, narrow bands; scattered closes, wide bands | It uses past closes only, so the bands are recalculated every day |
| The squeeze | Bands pull in when volatility dries up | A signal that a bigger move is statistically overdue | It gives no direction, and it can end in a fakeout that reverses hard |
| Riding the band | Price closes at or near the upper band session after session | Read as trend strength, unless RSI or MACD disagrees | Selling the first touch and missing the strongest part of the move |
| Never alone | Pair the bands with a momentum tool such as RSI or MACD | A new high near the upper band with no new high in RSI or MACD is a divergence warning | Using the bands as a standalone system |
Second outcome. If the same average were held but the standard deviation were half as large, at 1.23, the bands would run from 143.19 to 148.09, a width of 3.4%. The same 148.60 close would then sit above the upper band. A close outside tight bands after a squeeze is the kind of breakout the squeeze flags, though it does not say whether the move will hold.
In plain words: the bands show how much price has been moving around its average, a squeeze says a bigger move is due without naming a direction, and a touch of the band is a fact about spread, not an order to sell. Education, not advice.
Bollinger Bands are the best-known descendant of a much older family, the trading bands drawn around a moving average. The family had existed for years as flat-percentage envelopes, alongside other band designs such as Keltner bands and Donchian bands, which draw their edges from ranges rather than from standard deviation. The change that made this member lasting was small: let the standard deviation set the width, and the bands begin to track the market’s own mood.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1970s | Traders drew bands a flat percentage above and below a moving average | The problem to be solved: a fixed width suits one volatility level and fails at another |
| 1980 | John Bollinger became an independent trader, and in the early 1980s began the work on the bands while trading options | Bollinger has described the starting point as noticing that volatility changes over time, so the bands were built to follow it |
| 1980s | Bollinger became Chief Market Analyst at the Financial News Network, a post he held through the late 1980s | The bands were named on air, which spread both the shape and the name to a wide audience |
| 1987 | He began publishing a newsletter, the Capital Growth Letter | A regular channel for teaching the rules, such as pairing the bands with other tools |
| 2001 | He published Bollinger on Bollinger Bands | The author’s full account of how to read the bands, later translated into eleven languages |
John Bollinger developed Bollinger Bands in the early 1980s while working as a technical analyst, frustrated with the fixed-percentage "trading bands" popular at the time (bands drawn a flat 4% or 5% above and below a moving average, regardless of whether the market was calm or chaotic). Bollinger's insight was to let the bands breathe: instead of a fixed percentage, he measured how far price had actually been wandering from its own average, and used that wandering (statistical standard deviation) to set the width. A quiet market gets tight bands. A turbulent one gets wide bands. The indicator adapts to the market instead of asking the market to fit a fixed rule.
Three lines make up the indicator, all built from the same 20-day price series:
Standard deviation is just a measure of how spread out the last 20 closes are around their own average. Tight cluster of closes, small standard deviation, narrow bands. Closes scattered all over the place, large standard deviation, wide bands. Multiplying by 2 is Bollinger's own default, chosen because, in many samples of price data, roughly 88–89% of closes fall inside a 2-standard-deviation band, leaving a meaningful minority of closes to push outside it and flag something unusual happening.
Twenty hypothetical daily closes, drifting from 141.20 up to 148.60, not a real ticker, just clean numbers to show exactly how the math works.
141.20, 142.05, 140.80, 143.10, 144.25, 143.60, 145.00, 146.15, 144.90, 145.75, 146.40, 147.20, 145.85, 146.60, 147.90, 148.35, 147.10, 148.80, 149.25, 148.60
Today's close of 148.60 sits inside the upper band but has climbed steadily toward it over the last several sessions, the kind of "riding the band" behavior professionals watch closely, covered later in this chapter.
Because the bands are built from standard deviation, they don't just show where price is; they show how much price has been moving at all. When volatility dries up, the 20-day standard deviation shrinks, and the upper and lower bands pull in toward the middle line. Bollinger called this pattern the squeeze, and it's arguably the single most useful signal the indicator produces: a tight squeeze means the market has gone unusually quiet, and low volatility has a strong tendency to resolve into high volatility. The squeeze doesn't tell you which direction the breakout will go. Only that one is statistically overdue.
New traders often treat a touch of the upper band the way they'd treat RSI crossing 70, as a sell signal. That's a mistake Bollinger himself has repeatedly warned against. In a strong, healthy uptrend, price can walk right along the upper band for weeks, closing above or against it session after session, precisely because the trend is strong enough to keep pushing standard deviation outward faster than price can catch up. Reading a band touch as automatically overbought means
On May 7, 2026, a crypto news article reported something unusual: John Bollinger himself said one of his investment fund's proprietary trading models "had flipped positive on bitcoin and taken a position accordingly." This wasn't a media pundit relaying the indicator; it was the person who invented it, acting on it, in public, in real time. Bitcoin had closed above its upper daily Bollinger Band the previous Wednesday, May 6, 2026 (only the second such close since mid-January) and that breakout followed the tightest Bollinger Band reading Bitcoin had ever recorded, a textbook squeeze.
By the time the news article published on May 7, Bitcoin was trading at $80,484, with the upper Bollinger Band itself reading $81,549, price and band nearly touching. Bitcoin was up roughly 9% over the trailing 30 days, but still down 36% from its October 2025 peak of $126,000. The article also noted a separate on-chain indicator, MVRV, reaching levels comparable to those seen before Bitcoin's late-2024 surge toward $100,000.
Bollinger Bands measure dispersion, not momentum or trend direction. A price sitting on the upper band could be a powerful breakout or the exhausted final gasp of a rally — the bands alone can't tell you which. That's precisely why standard investor education guidance states plainly that the indicator is "not intended to be used on its own," and recommends pairing it with a momentum oscillator, exactly the kind of tool built in the earlier chapters of this module. If price pushes to a new high near the upper band while RSI or MACD fails to confirm with a new high of its own, that divergence (covered in Chapter 1 and Chapter 3) is one of the most reliable warnings the two tool families can give together.
Desks rarely trade a single band touch in isolation. The squeeze is used as a volatility alarm: a reason to start watching a name closely, not a trade signal by itself. Band walks (price riding the upper or lower band through a strong trend) are read as trend-strength confirmation, not exhaustion, unless a momentum oscillator disagrees. And bandwidth itself (how wide the bands are as a percentage of price) is tracked as its own mini-indicator: historically narrow bandwidth for a given stock or asset is the closest thing this indicator has to a genuine "something is about to happen" flag.
Same illustrative series, a shortened 10-bar basis so the bands respond fast enough to show inside a 30-bar window.
6,819 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Bollinger Bands are a default overlay on TradingView's free tier, Yahoo Finance charts, and essentially every retail broker's charting package. No paid data feed required. John Bollinger's own site also publishes free educational material directly from the indicator's creator.
Bollinger Bands close the loop this module opened with RSI: momentum tools tell you how hard price is moving, and Bollinger Bands tell you how unusual that movement is relative to its own recent history. Neither one, alone, is a complete system, which is exactly the point their own creator keeps making, including with real money, in public.
The bands are an average plus and minus a number of standard deviations. Set the inputs and see the width and where price sits.
John Bollinger was a technical analyst and options trader who kept running into the same problem with the fixed-width price envelopes traders used in the 1970s: a band that worked in a calm market was useless in a volatile one. In the early 1980s he started scaling the bands to a security's own recent standard deviation instead of a flat percentage, so they widened and narrowed with the market automatically. He trademarked the name but taught the method freely, and it's now one of the handful of indicators recognizable by name to people who've never placed a trade.
This guide fixes the vocabulary of Bollinger Bands and then works the calculation from the raw closes: the mean, the sum of squared deviations, the population standard deviation, the bands, and the two derived readings %b and bandwidth. A rolling step and a multiplier comparison follow. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Middle band | The simple moving average of the last N closes, N = 20 by default. | The centre of the envelope. |
| Deviation | A close minus the middle band. | Positive above the mean, negative below it. |
| Population standard deviation | Square root of (sum of squared deviations ÷ N). | The spread measure used by the bands. Dividing by N − 1 gives the sample form, which is slightly larger. |
| Multiplier k | The number of standard deviations added or subtracted, 2 by default. | Wider k means wider bands and fewer touches. |
| Upper and lower band | Middle band plus or minus k × standard deviation. | An envelope that widens and narrows with volatility. |
| %b | (close − lower) ÷ (upper − lower). | 0 at the lower band, 1 at the upper band, 0.5 at the middle. |
| Bandwidth | (upper − lower) ÷ middle band. | A volatility gauge as a share of price. Low values mark a squeeze. |
| Squeeze | Bandwidth near its recent low. | Says volatility is low, not which way price will move. |
| Band walk | Closes staying at or near one band for several bars. | A sign of a strong move, not of exhaustion. |
Mechanism one: from raw closes to bands. The chapter lists twenty closes. The steps are: add them, divide by 20, square each deviation, add the squares, divide by 20, take the square root. Doing it this way shows where the chapter’s rounded figures come from.
Read across the %b line. A close of 148.60 sits at 0.80 of the way from the lower band to the upper band: inside the envelope, in its top fifth, but not at the edge. The chapter’s figures all agree with the raw calculation. Bandwidth of 6.7 percent is the number to compare with later readings to judge a squeeze.
| Quantity | Before | After the new close |
|---|---|---|
| Middle band | 145.64 | 146.12 |
| Standard deviation | 2.45 | 2.47 |
| Upper band | 150.54 | 151.07 |
| Lower band | 140.74 | 141.17 |
| %b of the newest close | 0.80 | 0.97 |
| Bandwidth % | 6.7 | 6.8 |
The new close of 150.80 is above the old upper band of 150.54, yet its %b is only 0.97 against the new bands, because the bands moved up as well. The oldest close left the window at the same time, and a low value leaving a window raises the mean. A touch is always measured against bands that the same bar has changed.
Mechanism two: the multiplier. Changing k stretches the envelope in proportion. The last column is the share of data any distribution must keep inside k standard deviations (Chebyshev’s bound). The chapter’s 88 to 89 percent is an empirical figure for price series; a normal curve would give 95.4 percent for k = 2.
| k | Lower | Upper | Bandwidth | Guaranteed inside |
|---|---|---|---|---|
| 1.5 | 141.97 | 149.32 | 5.0% | 55.6% |
| 2.0 | 140.74 | 150.54 | 6.7% | 75.0% |
| 2.5 | 139.52 | 151.77 | 8.4% | 84.0% |
| 3.0 | 138.29 | 153.00 | 10.1% | 88.9% |
Read across the k = 3 row. The envelope runs from 138.29 to 153.00, so a close of 148.60 is nowhere near the edge. A multiplier is a choice about how rare a touch should be, so the same price can be a band touch at k = 1.5 and ordinary at k = 3.
| Situation | What goes wrong | What to check |
|---|---|---|
| Fewer than 20 closes | The mean and spread cannot be formed. | Wait for 20 closes. |
| Flat prices | Standard deviation is 0, the bands collapse onto the mean and %b divides by 0. | Treat %b as undefined. Bandwidth reads 0. |
| One extreme close | A single outlier raises the standard deviation for all 20 bars it stays in the window. | Expect the bands to stay wide, then narrow suddenly when it leaves. |
| Trending market | Closes cluster near one band. | Compare with %b over several bars before calling it overbought. |
| Population against sample | Platforms differ in the divisor. | Check the divisor; the gap is about 2.6 percent at N = 20. |
| Squeeze threshold | No fixed number defines it. | Compare bandwidth with its own six-month low, not with another ticker. |
In plain words: Bollinger Bands are a moving average with a margin that grows when the last 20 closes are scattered, so %b and bandwidth are simply position and width measured against that margin. Education, not advice.
Chapter 5 set out to show how Bollinger Bands are built from a moving average and a measure of spread, and how to read their width and position. The one idea is that the bands measure how much price has been moving, not which way it will go.
| Question | Short answer | Where it was taught |
|---|---|---|
| Five closes are 10, 12, 11, 13 and 14, with N = 5 and k = 2. What are the bands? | Mean 12.00, standard deviation 1.414, so the bands run from 9.17 to 14.83. | Cypher Guide: Bollinger Bands From Raw Closes |
| For those five closes, what are %b for the last close and the bandwidth? | %b = (14 − 9.17) ÷ 5.657 = 0.85, and bandwidth = 5.657 ÷ 12 = 47.1 percent. | Cypher Guide: Bollinger Bands From Raw Closes |
| Bands run from 140.74 to 150.54 and the close is 148.60. Where is %b? | (148.60 − 140.74) ÷ 9.80 = 0.80. | The Formula: A Moving Average With a Margin of Error |
| What does a tight squeeze say, and what does it leave out? | Volatility has dried up and a larger move is overdue. It does not say the direction, and it can end in a fakeout. | The Squeeze |
| Why is a touch of the upper band not automatically a sell? | Price can walk the band for weeks in a strong trend, so the touch is a fact about spread. The bands also need pairing with a momentum tool. | Riding the Band |
Price has been the only raw material this module has used so far. OBV throws that out and builds from something else on the chart that most beginners ignore completely: how many shares actually changed hands. The idea behind it is simple and a little unsettling: that big money tends to start buying or selling before the price fully shows it, and volume is where that shows up first.
On-Balance Volume (OBV) is a running total of volume that adds the day’s volume when the close rises and subtracts it when the close falls. The rule that matters most is that only the direction of the line and its agreement with price carry information; the number itself means nothing. The main ways it goes wrong are reading the absolute level, and trusting one volume spike as if it were a trend.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Up close | OBV = yesterday’s OBV + today’s volume | Volume on rising days is counted as buying pressure | The whole day’s volume is credited, however small the rise |
| Down close | OBV = yesterday’s OBV − today’s volume | Volume on falling days is counted as selling pressure | The sign comes from the close alone, not from who traded |
| Unchanged close | OBV stays exactly where it was | A flat close adds nothing, however busy the day | A volatile session that closes flat leaves no trace |
| No window, no smoothing | The total runs from wherever the count began | Compare the line with its own past on that chart | The level depends on the start date, so it cannot be compared across stocks |
| Slope | A rising line shows net buying pressure; a falling line shows selling pressure | Granville’s idea was that volume precedes price | A slope is a hint of pressure, not a forecast of size |
| Divergence | Bullish: OBV makes a higher low while price makes a lower low. Bearish: a lower high in OBV with a higher high in price | The most watched OBV signal | A divergence can last a long time before price responds |
| Volume spike | One huge day adds a sharp one-off jump | Check whether the next days confirm | Treating a single spike as a trend |
Second outcome. Suppose price makes a lower low at 49.90 after an earlier low of 50.20, while OBV at the second low is 900,000 against 300,000 at the first. That is a bullish divergence: sellers moved price lower with less volume behind them. It is a clue to watch, not a buy order. For scale, the GameStop session on January 25, 2021 saw more than 175 million shares against a 30-day average of 29.8 million, a ratio of 5.9 times, yet OBV would not have shown how large the move would be.
In plain words: OBV keeps a running tally of volume by the direction of the close, its slope and its divergence from price are what count, and its level is not comparable between stocks. Education, not advice.
OBV is a bookkeeping idea older than its famous name: sum volume with a sign set by the direction of the close. Its history follows one author, Joseph Granville, from an earlier technique he renamed, through a newsletter that gave it an audience, to a public record of market calls that has little to do with the maths.
| Year | What happened | What it added to the topic |
|---|---|---|
| Before 1963 | Woods and Vignola used the same running total under the name “continuous volume” | Shows the idea was not Granville’s alone. What he added was the name, the framing and the audience |
| 1963 | Granville renamed it on-balance volume and set it out in Granville’s New Key to Stock Market Profits | Tied the line to one claim, that volume precedes price, which is still how it is taught |
| 1963 | He began publishing The Granville Market Letter, which ran until shortly before his death in 2013 | A steady channel through which a generation of traders met the indicator |
| 1976 | His book Granville’s New Strategy of Daily Stock Market Timing for Maximum Profit appeared | A book on daily timing, the horizon on which OBV is most often read now, which was not the horizon of the original 1963 text |
| 1980 and 1981 | On April 22, 1980 the Dow rose 4.05%, and on January 7, 1981 it fell, with media linking both moves to his calls | Made him a market figure and made the separate question of his forecasts a public one |
| 1982 | His $250 newsletter had a large paying subscriber base | Reported annual revenues of several million dollars by then. The indicator later outlived the forecaster’s standing |
Joe Granville introduced On-Balance Volume in his 1963 book Granville's New Key to Stock Market Profits. His central claim, distilled into a single phrase that's still quoted today, was that "volume precedes price" — that a rising tide of buying or selling pressure shows up in trading volume before it fully shows up in the price itself, giving attentive traders an early read on where a stock is headed.
OBV doesn't use volume's actual size beyond a simple add-or-subtract rule. It's a cumulative running total, adjusted every day based on whether the close went up, down, or stayed flat:
That's the entire calculation. There's no lookback window, no smoothing, no averaging: just a running ledger of volume added on up days and subtracted on down days, all the way back to whenever you started counting.
Ten hypothetical days of closes and volume, starting OBV at zero, not a real ticker, just clean numbers to show exactly how the running total builds.
Notice the price only climbed from 50.00 to 52.10 over these ten days (a modest 4.2% move) but OBV climbed far more sharply on the up days than it fell on the down days, showing buying pressure building underneath a fairly ordinary-looking price chart.
Charting-platform technical documentation is explicit that OBV's absolute value means nothing on its own; the number itself isn't even shown on many charting platforms. What matters is the shape of the line: a rising OBV suggests buying pressure that can precede higher prices, a falling OBV suggests selling pressure that can precede lower prices, and OBV moving in the opposite direction of price (divergence) is the single most-watched signal the indicator produces. Bullish divergence is OBV making a higher low while price makes a lower low; bearish divergence is OBV making a lower high while price makes a higher high.
GameStop's January 2021 squeeze is the clearest real-world illustration of Granville's "volume precedes price" idea that modern markets have produced. The stock started January 2021 trading around $17.25. On January 13, it surged more than 50% in a single session. By January 22, call-option buying had exploded and market makers were forced into large-scale delta-hedging, triggering the first major gap up. On January 25 alone, more than 175 million shares changed hands, against a trailing 30-day average of just 29.8 million, nearly six times normal turnover. By the January 28 intraday peak of $483, the stock had gained over 2,700% in under a month.
Desks rarely trade a single OBV divergence in isolation; it's used as a confirmation layer, checking whether a price breakout is backed by real volume conviction or is happening on thin, unconvincing turnover. A price making new highs on a rising OBV is read as a healthy, well-supported trend; a price making new highs while OBV stalls or falls is read as a warning that the move may be running on fumes. Institutional desks also watch abnormal single-day volume spikes, exactly like GameStop's 175-million-share day, as a signal that something structurally unusual (short covering, options hedging, a sudden shift in sentiment) is happening beneath the surface.
Same illustrative series, with volume assumed heaviest on the sharpest decline and breakout bars.
20,572 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
OBV is a standard, no-cost overlay on TradingView's free tier, Yahoo Finance charts, and most retail broker platforms, typically found in the same indicator list as RSI and MACD from earlier in this module.
Every indicator up to this chapter has been built entirely from price. OBV is a reminder that price is only half of what a chart is actually recording, and that the other half, volume, sometimes moves first.
OBV adds the day’s volume on an up close and subtracts it on a down close. Set the inputs and see the new value.
Joseph Granville was one of the most famous, and most controversial, market forecasters of the 1960s and 70s. His 1963 book "New Key to Stock Market Profits" introduced On-Balance Volume on the premise that volume moves before price does. Granville's market calls later became erratic and his reputation took a hit, but OBV itself survived his own credibility problems intact because the underlying logic held up independently of who was making the forecasts. It's a reminder that an indicator's usefulness and its inventor's track record are two separate questions.
This guide fixes the vocabulary of On-Balance Volume and then rebuilds the running total day by day, showing what the rule keeps and what it throws away. A comparison with a variant that also uses the size of the price move follows. All figures are hypothetical, and the ten days are chosen so that they reproduce the chapter’s walkthrough values.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Direction | The sign of today’s close minus yesterday’s: up, down or flat. | The only way price enters OBV. |
| Signed volume | Today’s volume times +1, −1 or 0 by direction. | The daily increment to the running total. |
| OBV | Yesterday’s OBV plus signed volume. | A cumulative ledger with no lookback and no smoothing. |
| Start value | The OBV on the first bar, usually 0. | Shifts the whole line up or down; it has no meaning on its own. |
| Net volume over a span | OBV at the end minus OBV at the start of the span. | The meaningful quantity: volume added less volume removed. |
| Slope | Change in OBV per bar over a few bars. | Rising means up days carried more volume than down days. |
| Divergence | Price and OBV making new extremes in different directions. | Bullish: price lower low, OBV higher low. Bearish: price higher high, OBV lower high. |
| Price-volume trend | A variant adding volume × percent change instead of full volume. | Weights each day by the size of the move. |
| Zero-volume bar | A bar with no volume. | Adds nothing, whatever the direction. |
Mechanism one: the ledger. The table gives ten closes and volumes. The OBV column uses the rule exactly: add the day’s volume on an up close, subtract it on a down close, change nothing on a flat close. The values on days 2, 3, 4, 7 and 10 match the chapter. The last column adds a variant described below.
| Day | Close | Volume | Direction | Signed | OBV | PVT |
|---|---|---|---|---|---|---|
| Day 1 | 50.00 | 1.0M | start | 0 | 0.0M | 0.000M |
| Day 2 | 50.50 | 1.2M | up | 1.2M | 1.2M | 0.012M |
| Day 3 | 50.20 | 0.9M | down | −0.9M | 0.3M | 0.007M |
| Day 4 | 50.20 | 1.1M | flat | 0.0M | 0.3M | 0.007M |
| Day 5 | 50.80 | 1.1M | up | 1.1M | 1.4M | 0.020M |
| Day 6 | 50.70 | 0.2M | down | −0.2M | 1.2M | 0.019M |
| Day 7 | 51.50 | 2.0M | up | 2.0M | 3.2M | 0.051M |
| Day 8 | 51.90 | 1.9M | up | 1.9M | 5.1M | 0.066M |
| Day 9 | 51.70 | 0.2M | down | −0.2M | 4.9M | 0.065M |
| Day 10 | 52.10 | 1.0M | up | 1.0M | 5.9M | 0.073M |
Read across the row for day 7. Price rose 0.80 and volume was 2.0M, and OBV added the full 2.0M. Had the close risen only 0.01, it would still have added 2.0M. The rule sees up or down and never how far. Volume traded on days 2 to 10 totals 9.6M, and the net of 5.9M is 61 percent of it.
Mechanism two: a variant with size. Price-volume trend adds volume × (close ÷ previous close − 1), so a 0.01 move adds almost nothing and a 0.80 move adds a lot. On the same ten days the variant ends at 0.073M against 5.9M for OBV; the two use different units and are compared by shape, not by level.
Read across both lines. A heavy-volume day with a small move is a large step for OBV and a tiny step for the variant. Neither is more correct; they answer different questions. OBV asks who carried volume. The variant asks who carried volume per unit of price progress.
| Situation | What goes wrong | What to check |
|---|---|---|
| Different start date | The level of OBV changes, the shape does not. | Compare slopes and spans, never levels between charts. |
| Unchanged close | The day adds nothing, even on huge volume. | Look at the day’s range and volume separately. |
| One volume spike | A single day can dominate the line for weeks. | Check whether a slope survives without that day. |
| Different data feeds | Single-venue and consolidated volume differ. | Use the same feed on both charts. |
| Zero-volume bar | No change to OBV. | Confirm the feed is not missing data. |
| Splits | Pre-split volume is on a different share count. | Use split-adjusted volume or restart the line. |
In plain words: OBV is a running ledger of volume signed by direction, so only its slope and span carry information, and it ignores how large each price move was. Education, not advice.
Chapter 6 set out to show how On-Balance Volume turns daily volume into a running ledger and how to read it. The one idea is that only the direction of the line and its agreement with price carry information, while the number itself means nothing.
| Question | Short answer | Where it was taught |
|---|---|---|
| Closes are 20.0, 20.4, 20.1, 20.1 and 20.6 with volumes 2M, 3M, 1M and 4M on days 2 to 5. What is OBV on day 5? | Day 2 gives 2M, day 3 gives −1M, the flat day 4 stays at −1M, and day 5 gives 3M. | Cypher Guide: On-Balance Volume as a Ledger |
| What is the net volume from day 3 to day 5 in that example? | 3M − (−1M) = 4M. | Cypher Guide: On-Balance Volume as a Ledger |
| Why did a flat close with heavy volume leave OBV unchanged? | The rule only adds or subtracts on a change in the close. A flat close adds nothing. | The Formula: A Running Total That Only Cares About Direction |
| What is a bullish OBV divergence? | OBV makes a higher low while price makes a lower low. It suggests selling is weakening and calls for watching, not acting at once. | Reading OBV |
| Why is the absolute OBV number not worth reading? | It depends on where the count started and says nothing across different stocks. The line’s shape is what counts. | Reading OBV |
Chapter after chapter, one question has driven the indicators in this module: which way is price going? ATR doesn't answer it at all. It doesn't care about direction. It answers a completely different question: how much is this thing actually moving? That turns out to be one of the most practically useful numbers in trading, because it's the basis for how many professionals decide where to place a stop-loss and how large a position to take in the first place.
Average True Range (ATR) measures how much a market typically moves in a day, gaps included, and says nothing about direction. The rule that matters most is that it is used to size a stop and a position once a direction has been chosen elsewhere. The usual ways it goes wrong are freezing a stop distance set in a calm period, and assuming a stop guarantees an exit price when a gap can skip right past it.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| True range | The greatest of: high − low, |high − yesterday’s close|, |low − yesterday’s close| | Counts an overnight gap as real movement | A plain high-low range understates a gap day, here by two thirds |
| ATR | A 14-period smoothed average of true range: new ATR = (prior ATR × 13 + today’s true range) ÷ 14 | Rising ATR means the market is moving more; falling means it is calming | One huge day nudges ATR, not jumps it, since today is only 1/14 (7.1%) of the new value |
| Default 14 | Wilder’s starting length, roughly three weeks of daily sessions | Use it for the usual daily size of a market | A plain 14-bar average will not match a Wilder-smoothed value |
| ATR stop | Long stop = entry − k × ATR; short stop = entry + k × ATR, with k commonly 1.5 to 3 | The stop sits outside the normal daily noise | Treating a stop as a guaranteed exit price |
| Position size | Risk budget ÷ stop distance | A wider ATR stop means fewer shares, which keeps dollar risk steady across tickers | Sizing off a stale ATR after volatility changes |
| Dollar figure, not percent | ATR is an absolute amount in the price unit | Divide by price to compare markets | Comparing a $5 ATR on a $20 stock with a $5 ATR on a $500 one |
| Gaps | News can arrive while the market is closed | After a gap the next price may be far below the stop | ATR sizes a stop for normal days; only position size limits a gap loss |
Second outcome. Suppose news arrives overnight and the stock opens at $90.00 instead. The $93.94 stop is a market order once it triggers, so it fills near the open, a loss of about $10 per share against the planned $6.06. On a 33-share position that is about $330 against a $200 budget. ATR cannot prevent that. Only a smaller position can.
In plain words: ATR is the typical daily size of a market including gaps, it sets how far to put a stop and how many shares to hold, and it never tells you which way to trade. Education, not advice.
ATR answers one question: how far does this market usually travel in a day? The question is older than the indicator. Wilder’s contribution was a precise answer that survives gaps, and the later history of the tool is a history of other people borrowing that answer for stops, channels and position size.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1960 | Chester Keltner published a ten-day moving-average rule for commodities, with bands offset by the average daily range | An early use of a range measure to size a band, eighteen years before true range was defined |
| 1978 | J. Welles Wilder Jr. introduced true range and ATR in New Concepts in Technical Trading Systems | Fixed the gap problem by taking the greatest of three distances, including those to the prior close |
| 1978 | Wilder set the length at 14 and smoothed with his own rule, a weight of 1 ÷ 14 on each new value, and used ATR as the engine of a volatility stop | Explains why a plain 14-bar average will not match a charting platform’s ATR, and why ATR was a stop tool from the start |
| 1980s | Richard Dennis and William Eckhardt trained a group of new traders, the Turtles, sizing trades by each market’s dollar volatility measured with a 20-day average of true range | Showed the second job of ATR: sizing positions so a quiet market and a wild one carry similar risk |
| 1992 | Charles Le Beau and David Lucas published their guide to computer analysis of futures markets, the source cited for the Chandelier Exit | A trailing stop hung from the highest high by a multiple of ATR, a lasting use of Wilder’s measure |
J. Welles Wilder, the same technical analyst who developed RSI back in Chapter 1, introduced Average True Range in the same 1978 book, New Concepts in Technical Trading Systems. He designed it specifically with commodities in mind, markets that could gap sharply overnight or hit daily limit moves that a plain high-minus-low range would completely miss.
Wilder's insight was that a stock's real range on a given day isn't just today's high minus today's low: if the stock gapped up or down overnight, that gap is real movement too, and a simple high-low range ignores it completely. True Range is defined as the largest of three separate measurements:
ATR itself is simply a 14-period smoothed average of that True Range value, using the same style of smoothing Wilder used for RSI: New ATR = [(Prior ATR × 13) + Today's True Range] ÷ 14. The first ATR value is just a plain average of the first 14 True Range readings; every one after that uses the smoothing formula.
Yesterday's close was $100.00. Overnight news causes the stock to gap up, and today's session prints a high of $106.00 and a low of $104.00, not a real ticker, just clean numbers to show exactly why the "true" in True Range matters.
Notice the plain high-minus-low range would have reported just $2.00, missing the $6.00 overnight gap entirely. If yesterday's 14-day ATR was $2.80, today's smoothed ATR becomes:
New ATR = [($2.80 × 13) + $6.00] ÷ 14 = $3.03
Because ATR is non-directional, it's almost never used to decide whether to buy or sell; it's used to decide how to size and protect a trade once a direction is already chosen from another tool. The standard approach places a stop a multiple of ATR away from the entry price:
Position size then adjusts to match: if a trader's risk budget is $200 per trade and the stop sits $6.06 away from entry, that caps the trade at roughly 33 shares before costs: a wider ATR-based stop on a more volatile stock automatically means a smaller position, keeping the dollar risk consistent across very different tickers.
The clearest real-world illustration of what ATR is measuring doesn't come from a single stock; it comes from the broad market's own volatility gauge. In April 2025, a wave of U.S. tariff announcements and the retaliatory measures that followed triggered a sharp global selloff. The CBOE Volatility Index (VIX), a close cousin of ATR that measures expected volatility through options prices rather than price ranges, closed at 52.33 on April 8, 2025, the highest level markets had seen since the COVID-19 crash of March 2020, when the VIX closed as high as 82.69. Between mid-February and early April 2025, the S&P 500 Growth Index fell more than 22%.
Beyond stops and position sizing, desks watch ATR expanding or contracting as a read on the overall character of a market. A breakout that occurs alongside expanding ATR is read as more credible (real participation is driving real range expansion) while the same breakout on flat or shrinking ATR is treated with more suspicion. Some trend-following systems, like the well-known Chandelier Exit, build the entire trailing-stop mechanism directly on top of ATR, defaulting to a 22-period lookback and a 3× multiplier.
Same illustrative series. ATR is highest during the crash and lowest during the calmer rally grind.
25,949 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
ATR sizes a stop from the normal daily range. The cases below are the days when the stock did not trade through the range at all. News arrived while the market was closed, and the stock opened far below where any stop could have been.
ATR is a standard, free indicator on TradingView, Yahoo Finance, and virtually every retail broker's charting platform, usually listed right alongside RSI and MACD from earlier in this module.
ATR doesn't tell you where price is going — every other indicator in this module has tried to answer that question in its own way. What ATR tells you is how much room to give a trade once you've already decided, which turns out to be just as important as being right about direction in the first place.
True range is the biggest of the day range and the two gaps from the prior close. Wilder smoothing then blends it into the average.
ATR comes from the same 1978 Wilder book as RSI (Chapter 1), but it was solving a completely different problem: how do you measure volatility on a security that gapped overnight, so a simple high-minus-low range understates how far it actually moved? Wilder's “true range” fix (taking the largest of three possible ranges, including gaps) became the basis for ATR and, later, for dozens of other volatility-based tools built by other analysts, including Keltner Channels and SuperTrend elsewhere in this module.
This guide fixes the vocabulary of ATR and then works the calculation from raw highs, lows and closes: fourteen true ranges, the seed average, a gap day entering the recursion, and the way that day fades out. A look at stop distance and position size closes the guide. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| True range (TR) | The largest of high minus low, |high minus previous close| and |low minus previous close|. | Captures the whole day’s movement, including an overnight gap. |
| Previous close | Yesterday’s closing price. | The reference point that makes a gap visible. |
| Seed ATR | The plain average of the first 14 true ranges. | Starts the recursion. It needs 14 bars plus a previous close. |
| Wilder smoothing | New ATR = (old ATR × 13 + today’s TR) ÷ 14. | Weight 1 ÷ 14 on the new bar, 13 ÷ 14 on memory. |
| ATR | The smoothed average of the true range. | A size of typical movement in price units, not a direction. |
| ATR percent | ATR ÷ close × 100. | Allows tickers at different prices to be compared. |
| Multiple k | The number of ATRs a stop is placed from entry. | Common values run from 1.5 to 3. |
| Risk per share | k × ATR. | The distance between entry and stop. |
| Position size | Risk budget ÷ risk per share, rounded down. | Keeps the dollar risk the same on quiet and busy stocks. |
| Gap risk | A move past the stop before any order can fill. | ATR measures typical ranges and cannot cap a gap. |
Mechanism one: seed and recursion. The table builds fourteen true ranges from hypothetical bars, starting from a previous close of 100.0. Each row finds the three candidates and keeps the largest. The seed ATR is their plain average. Then a gap day is fed through the recursion.
| Bar | High | Low | Prev close | A | B | C | TR |
|---|---|---|---|---|---|---|---|
| Bar 1 | 101.5 | 99.2 | 100.0 | 2.3 | 1.5 | 0.8 | 2.3 |
| Bar 2 | 102.6 | 100.4 | 100.8 | 2.2 | 1.8 | 0.4 | 2.2 |
| Bar 3 | 103.0 | 101.0 | 101.9 | 2.0 | 1.1 | 0.9 | 2.0 |
| Bar 4 | 102.2 | 99.4 | 101.4 | 2.8 | 0.8 | 2.0 | 2.8 |
| Bar 5 | 101.1 | 98.8 | 99.9 | 2.3 | 1.2 | 1.1 | 2.3 |
| Bar 6 | 103.4 | 100.9 | 100.6 | 2.5 | 2.8 | 0.3 | 2.8 |
| Bar 7 | 104.5 | 102.4 | 103.0 | 2.1 | 1.5 | 0.6 | 2.1 |
| Bar 8 | 105.0 | 102.9 | 103.8 | 2.1 | 1.2 | 0.9 | 2.1 |
| Bar 9 | 104.1 | 101.7 | 103.1 | 2.4 | 1.0 | 1.4 | 2.4 |
| Bar 10 | 103.5 | 101.2 | 102.2 | 2.3 | 1.3 | 1.0 | 2.3 |
| Bar 11 | 105.6 | 102.9 | 103.2 | 2.7 | 2.4 | 0.3 | 2.7 |
| Bar 12 | 106.2 | 103.8 | 105.1 | 2.4 | 1.1 | 1.3 | 2.4 |
| Bar 13 | 105.0 | 102.6 | 104.1 | 2.4 | 0.9 | 1.5 | 2.4 |
| Bar 14 | 105.9 | 103.2 | 103.9 | 2.7 | 2.0 | 0.7 | 2.7 |
Read across bars 4 and 6. On bar 4 the plain range of 2.8 is the largest of the three, so TR equals it. On bar 6 price sits well above the previous close of 100.6, so column B (2.8) beats the plain range (2.5) and TR takes B. The gap day lifts ATR from 2.39 to 2.60, a rise of 8.7 percent from a TR that was 2.2 times the average.
| Bars after the gap | ATR | Excess over seed ATR |
|---|---|---|
| 0 | 2.601 | 0.208 |
| 1 | 2.586 | 0.193 |
| 5 | 2.536 | 0.143 |
| 10 | 2.492 | 0.099 |
| 20 | 2.440 | 0.047 |
| 40 | 2.404 | 0.011 |
The excess shrinks by 13 ÷ 14 each bar, so half of it is gone after about 9 bars and most of it after 40. One large bar therefore affects stops for weeks, even though the market has been calm since. Different smoothing changes this: on the chapter’s numbers (old ATR 2.80, new TR 6.00) Wilder gives 3.029, while an EMA with a = 2 ÷ 15 gives 3.227 and reacts faster.
Mechanism two: stop and size. A stop at k × ATR below entry fixes the risk per share, and the position size is the budget divided by it. The table uses the chapter’s ATR of 3.03 and a higher ATR of 5.00 after a burst of volatility, a risk budget of 200 dollars and an entry of 100.
| k | Risk/share at ATR 3.03 | Shares | Risk/share at ATR 5.00 | Shares |
|---|---|---|---|---|
| 1.5 | 4.55 | 44 | 7.50 | 26 |
| 2.0 | 6.06 | 33 | 10.00 | 20 |
| 3.0 | 9.09 | 22 | 15.00 | 13 |
Read across the row for k = 2. The chapter’s figure of 6.06 dollars per share allows 33 shares, matching the chapter. If ATR rises to 5.00, the same rule allows only 20 shares. Size shrinks as volatility grows, which keeps the dollar risk near 200 but does not remove gap risk: a close-to-open gap of 12 dollars costs 12 per share, not 6.06.
| Situation | What goes wrong | What to check |
|---|---|---|
| First bar of the data | There is no previous close, so only high minus low exists. | Start the TR series on the second bar. |
| Gap through the stop | The fill is far from the stop price. | Estimate the loss from the gap size, not from k × ATR. |
| Recent spike | One huge TR inflates ATR for weeks. | Look at the excess table; reduce k only with a reason. |
| Zero-range bars | TR is 0 on a halted or illiquid bar. | Check the volume and the feed before trusting a low ATR. |
| Price level change | ATR in dollars is not comparable across tickers. | Convert to ATR percent. |
| Rounding the size down | Shares are whole numbers. | Recompute the actual dollar risk after rounding. |
In plain words: ATR is a slow average of the largest of three daily distances, so a gap enters at full size and leaves gradually, and it sizes risk rather than predicting direction. Education, not advice.
Chapter 7 set out to show how Average True Range measures the typical daily size of a market, gaps included, and how that size is put to work. The one idea is that ATR says how far, never which way, so it sizes a stop and a position once a direction has been chosen elsewhere.
| Question | Short answer | Where it was taught |
|---|---|---|
| The previous close was 50.00, today’s high is 53.00 and low is 51.50. What is the true range? | The three candidates are 1.5, 3.0 and 1.5, so TR = 3.0. | The Formula: Why "True" Range Isn’t Just High Minus Low |
| With yesterday’s ATR at 1.40, what is the new ATR? | (1.40 × 13 + 3.0) ÷ 14 = 1.514. | Cypher Guide: True Range to ATR |
| From an entry of 52.00 with k = 2, where is the long stop, and how many shares does a 150 dollar budget allow? | Stop = 52.00 − 2 × 1.514 = 48.97. Risk per share is 3.029, so 49 shares. | Using ATR for Stops and Position Size, Not Direction |
| If ATR rises from 3.03 to 5.00 with the same $200 budget and k = 2, what happens to size? | Risk per share becomes 10.00, so the position falls from 33 shares to 20. | Cypher Guide: True Range to ATR |
| Why can an ATR stop still lose far more than planned? | A gap can open past the stop, and the stop then fills near the open. Only a smaller position limits that. | Hall of Shame for Stops: The Biggest Gaps |
Telling you what to do next has been the job of the indicators in this module up to this point. VWAP has a different job: it grades what a trader already did. It answers a narrow, unglamorous question: "was my average execution price actually good, compared to how the whole market traded today?" And that narrow question turned out to be so useful that VWAP became one of the most-watched lines on every institutional trading desk's screen, and eventually a popular retail tool too.
Volume-Weighted Average Price (VWAP) is the average price of a session in which each price counts in proportion to the volume traded there. The rule that matters most is that it is a benchmark for grading an execution, not a forecast. The usual ways it goes wrong are using the session line on a chart that spans many days, where it resets every morning, and treating every touch of it as a bounce.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Typical price | (High + Low + Close) ÷ 3 for each bar | Gives each bar one representative price | A bar’s inside detail is lost; only these three numbers are used |
| VWAP | Cumulative(typical price × volume) ÷ cumulative(volume), reset at the start of each session | A heavy-volume bar pulls the line toward its price much harder than a quiet bar | It averages what has already traded, so it looks backward by construction |
| Execution benchmark | A buyer wants an average fill at or below VWAP; a seller wants one at or above it | The gap between the fill and VWAP is called VWAP slippage | A good fill against VWAP says the order was handled well, not that the stock was a good buy |
| Intraday support and resistance | Retail traders read price above VWAP as net bullish control, below as net bearish | A break above, a retest and a hold is the common setup | On strong momentum the line gets sliced straight through |
| Anchored VWAP | The same running average, started from a point the trader chooses, such as earnings or a swing low | Asks whether the market, on average, still validates that earlier move | The anchor is a choice, so a different anchor gives a different line |
| Reset each session | Standard VWAP starts again every morning | It suits a single day of trading | Useless on swing or multi-day charts |
| Not a forecast | A volume-weighted average of past trades | Combine with other confirmation | Trading it as a standalone signal |
Second outcome. If the third bar had traded only 2,000 shares instead of 12,000, the same prices would give a VWAP of 100.60, pulled toward the heavier early bars. The line follows where the volume was, not just where the price went. This is why the benchmark must be computed from the day’s own volume.
In plain words: VWAP is the day’s volume-weighted average price, institutions use it to grade fills, and a chart line that starts again each session is a reference for the day and not a prediction. Education, not advice.
VWAP began as a way to answer a client’s question after a large trade: was the price fair for the day? It was a measuring stick before it was a chart line. Its history runs from one fund’s order, through an academic paper, into broker products, and only later onto the charts of individual traders.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1984 | James Elkins, then head trader at Abel Noser, is generally credited with the first execution that used VWAP as the yardstick, for the Ford Motor Company pension fund | Set the purpose: a fair-price test for a large order, applied after the fact |
| 1988 | A paper in a peer-reviewed finance journal used VWAP as a yardstick for the total cost of trading on the New York Stock Exchange | Gave the benchmark academic standing and a place in the study of transaction costs |
| Mid-1990s | Paul Levine developed anchored VWAP as part of his MIDAS system | Freed the line from the session reset, so it could start at an event the trader picks |
| 2015 | Takashi Kato argued that VWAP execution is optimal for a risk-neutral trader, using an extension of the Almgren-Chriss framework | A formal reason why trading in step with volume can be a sensible plan |
| 2016 | Cartea and Jaimungal derived a closed-form strategy that targets VWAP under a more general model of market microstructure | Extended the theory to richer market models, so VWAP execution is a research topic as well as a tool |
| 2020 | A securities-regulator staff report on algorithmic trading noted that many buy-side firms route orders to brokers based on historical VWAP slippage | Confirms that slippage against VWAP is still a working performance measure, decades after 1984 |
The first documented VWAP execution is credited to James Elkins, a trader at the New York agency brokerage Abel Noser, who used it in 1984 to execute an order for the Ford Motor Company pension fund. The idea gained real academic weight in 1988, when three researchers formalized it in a peer-reviewed finance paper studying the true transaction costs of trading on the New York Stock Exchange. From there it became the industry-standard benchmark for judging whether a large institutional order was executed well or poorly.
VWAP is a cumulative, volume-weighted average price, reset at the start of every trading session. Most charting platforms compute it bar by bar using the "typical price", the average of that bar's high, low, and close:
Every bar's typical price gets multiplied by that bar's volume, added to a running total, and divided by the running total of volume itself, so a high-volume bar pulls VWAP toward its price much harder than a quiet, low-volume bar does.
Three hypothetical bars from the first few minutes of a session, not a real ticker, just clean numbers to show exactly how the running total builds.
Notice VWAP after Bar 3 isn't the simple average of 100.00, 101.00, and 102.00 (which would be 101.00). It's pulled slightly higher, to 101.07, because Bar 3's heavier 12,000-share volume gets more weight in the running total than the lighter bars before it.
Institutions use VWAP almost exactly the way it was designed: as a report card. A large pension fund or mutual fund trying to buy a big position wants its average fill price to land at or below the day's VWAP; a fund selling wants its average fill at or above it. Some brokers even guarantee VWAP execution as a service, with the gap between a trader's actual fill and VWAP tracked as "VWAP slippage", a real, measured performance number that execution desks are judged on.
Retail traders borrowed the same line for a different purpose: reading it as dynamic intraday support and resistance. Price trading above VWAP is read as a sign of net bullish control for the session; price below is read as net bearish control. A common setup watches for price to break above VWAP, pull back down to retest it, and hold, treating that retest as confirmation the move has real backing.
Standard VWAP resets automatically at the start of every session, which makes it useless for anything beyond a single day. Anchored VWAP (AVWAP) fixes that by letting a trader pick their own starting point (an earnings announcement, a big gap, a major news event, a swing low) and calculates the same running volume-weighted average from that point forward instead of from the day's open. A trader watching how price behaves relative to the VWAP anchored at a stock's post-earnings gap, weeks later, is really asking: "is the market, on average, still validating that move?"
Unlike most indicators in this module, VWAP's most important real-world proof isn't a single dramatic chart; it's the fact that the entire modern institutional trading industry adopted it as a formal standard. James Elkins' 1984 Ford Motor Company pension fund execution at Abel Noser wasn't a one-off curiosity; the 1988 academic paper that followed it became a foundational reference for measuring transaction costs, and VWAP has been the default execution benchmark on trading desks for decades since. Brokers built entire algorithmic execution products around matching it, and asset managers use VWAP slippage as a routine, contractual performance metric on real institutional order flow, every trading day.
Execution desks run VWAP algorithms that slice a large order into smaller pieces spread across the session, timed to match expected volume patterns, specifically to keep the average fill price close to the benchmark and avoid moving the market against themselves. Day traders use VWAP as a session-long bias filter (favoring long setups only while price holds above it, short setups only while it holds below) and use anchored VWAP from a specific catalyst to judge whether that catalyst's move is still intact weeks later.
Same illustrative series, VWAP anchored at the first bar of the window.
9,752 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
VWAP is a free, standard indicator on TradingView, most retail broker platforms, and day-trading-focused charting tools, typically with both session and anchored variants available at no cost.
VWAP closes out the volume-based half of this module's toolkit alongside OBV and ATR: none of the three care about direction the way RSI, MACD, or the moving averages do. Instead they measure conviction, magnitude, and fair value: three different lenses on the same underlying question of whether a price move is actually backed by real participation.
VWAP weights each price by the volume traded there. Set three price levels with their volumes and compare with a plain average.
VWAP doesn't have a named creator the way most indicators in this module do. It emerged from institutional trading desks in the 1980s as electronic execution started replacing floor trading, as a simple answer to a practical question: did this trade get filled at a fair average price relative to the rest of the day's volume? Asset managers and brokers adopted it as a shared benchmark for execution quality. A fund manager could prove to a client that a large order was filled near VWAP, not dumped carelessly into the market.
This guide fixes the vocabulary of VWAP and then builds the line from raw bars: typical price, the two running sums, the quotient, and the weight each bar carries. A spread band around the line and an anchored version are worked in the same way. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Typical price | (high + low + close) ÷ 3 for the bar. | The one price used to stand for the whole bar. |
| Price × volume (PV) | Typical price times the bar’s volume. | The dollar value traded, treated as one lump. |
| Cumulative PV | Running sum of PV from the start of the session. | The numerator. |
| Cumulative volume | Running sum of volume from the start. | The denominator. |
| VWAP | Cumulative PV ÷ cumulative volume. | The average price paid per share so far, weighted by shares. |
| Weight | A bar’s volume ÷ cumulative volume. | Shows how much each bar pulls the line. |
| Volume-weighted spread | √(Σ volume × (typical − VWAP)2 ÷ Σ volume). | The standard deviation used for bands around VWAP. |
| Session reset | Starting the sums again each trading day. | Makes the line a one-day benchmark. |
| Anchor | A chosen bar from which the sums start. | Anchored VWAP follows one event instead of one day. |
| Warm-up | Early bars of the session. | The line is just the first typical price until volume builds. |
Mechanism one: the running quotient. The first three bars reproduce the chapter: typical prices of 100.00, 101.00 and 102.00 with volumes of 10,000, 8,000 and 12,000 give a VWAP of 101.07. Two more bars are added, one quiet and one heavy. Each bar is built from a high, a low and a close, so the typical price is shown rather than assumed.
| Bar | Typical | Volume | PV | Cum PV | Cum volume | VWAP | Plain average |
|---|---|---|---|---|---|---|---|
| Bar 1 | 100.00 | 10,000 | 1,000,000 | 1,000,000 | 10,000 | 100.00 | 100.00 |
| Bar 2 | 101.00 | 8,000 | 808,000 | 1,808,000 | 18,000 | 100.44 | 100.50 |
| Bar 3 | 102.00 | 12,000 | 1,224,000 | 3,032,000 | 30,000 | 101.07 | 101.00 |
| Bar 4 | 101.50 | 6,000 | 609,000 | 3,641,000 | 36,000 | 101.14 | 101.13 |
| Bar 5 | 100.50 | 20,000 | 2,010,000 | 5,651,000 | 56,000 | 100.91 | 101.00 |
Read across the row for bar 5. The typical price fell to 100.50 on 20,000 shares, the largest bar so far. VWAP dropped from 101.14 to 100.91, a fall of 0.23, while the plain average fell only to 101.00. A heavy bar moves the line much more than a quiet one: bar 5 holds 35.7 percent of the weight. If bar 3 had traded 24,000 shares instead of 12,000, VWAP after three bars would be 101.33 rather than 101.07.
Mechanism two: the anchor. Session VWAP uses all five bars. An anchored VWAP started at bar 3, the high-volume rally bar, sums only bars 3, 4 and 5. The two lines answer different questions: where the day’s average cost sits, and where the average cost since that event sits.
| Version | Bars included | Cumulative volume | VWAP after bar 5 |
|---|---|---|---|
| Session | 1 to 5 | 56,000 | 100.91 |
| Anchored at bar 3 | 3 to 5 | 38,000 | 101.13 |
| Difference | 18,000 volume omitted | 0.22 |
Read across the anchored row. Dropping the first two bars lifts the line to 101.13 because those bars traded at lower prices. Neither value is better. Each is a different average of the same trades, and a price below the anchored line means the average buyer since the anchor is behind.
| Situation | What goes wrong | What to check |
|---|---|---|
| First print of the session | Cumulative volume is small, so the line is nearly the first typical price. | Do not read the line until volume has built. |
| Zero volume so far | The quotient divides by 0. | Platforms hide the line or repeat the last value. |
| Missed session reset | The sums run over several days. | Confirm the line restarts at the open. |
| Daily chart | One bar per day makes the session line meaningless. | Use an anchored version on daily charts. |
| Different typical price | Some tools use close or (open + high + low + close) ÷ 4. | Match the definition before comparing lines. |
| Late or corrected prints | Volume added after the fact changes past values. | Expect small differences between live and stored data. |
In plain words: VWAP is total money traded divided by total shares traded, so heavy bars set it and the starting point decides what it describes. Education, not advice.
Chapter 8 set out to show how VWAP is built from price and volume and why it is a benchmark first and a chart line second. The one idea is that VWAP is total money traded divided by total shares traded, so heavy bars set it and the starting point decides what it describes.
| Question | Short answer | Where it was taught |
|---|---|---|
| Bars have typical prices 20, 22 and 21 on volumes 1,000, 3,000 and 2,000. What is the session VWAP? | 128,000 ÷ 6,000 = 21.33, above the plain average of 21.00. | Cypher Guide: VWAP From Typical Price |
| What is the VWAP anchored at bar 2 for those bars? | (66,000 + 42,000) ÷ 5,000 = 21.60. | Cypher Guide: VWAP From Typical Price |
| Why does VWAP sit above the simple average in the three-bar example? | The last bar had the most volume, 12,000 shares at 102.00, so it carries the most weight. | The Formula: A Running Average, Weighted by How Much Actually Traded |
| Why use an anchored VWAP rather than the session line? | The session line resets every day. Anchoring at an earnings gap or swing low shows the average cost since that event. | Anchored VWAP: Starting the Clock Wherever You Want |
| A buyer fills at 101.30 when VWAP is 101.07. Did the fill beat the benchmark? | No. It was 0.23 worse, which is slippage on the buy side. | Reading VWAP: Institutional Benchmark, Retail Support/Resistance |
Chapter 2 of this module covered StochRSI, the stochastic formula applied to RSI instead of price. This chapter covers the original: the plain Stochastic Oscillator, applied directly to price itself, decades before anyone thought to run it through RSI first. If StochRSI felt twitchier and faster than RSI, that's because it inherited its personality from this indicator.
The Stochastic Oscillator shows where the latest close sits between the highest high and lowest low of a recent window, as a percentage. The rule that matters most is Lane’s observation that momentum turns before price does: as a trend tires, closes drift away from the extremes of the range before price reverses. The usual ways it goes wrong are selling every touch of 80 and buying every touch of 20 in a strong trend, and trading every %K and %D cross in a market that is not ranging.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| %K | [(Close − lowest low) ÷ (highest high − lowest low)] × 100, over 14 periods by default | Near 100 means the close is at the top of the range; near 0, at the bottom | It uses raw price, so it is more reactive than RSI’s smoothed average |
| %D | A 3-period simple moving average of %K | %K crossing above %D is read as bullish, below as bearish | Crosses are frequent and prone to whipsaw outside a range-bound market |
| Zones 80 and 20 | Above 80 is overbought, below 20 is oversold, 50 is a rough centerline | Most useful where price moves back and forth in a range | In a strong trend the line can stay pinned at an extreme |
| Divergence | Price makes a lower low while the oscillator makes a higher low, or the reverse at highs | Watched the same way as for every other oscillator | An early hint, not a trigger |
| Window range | The highest high and lowest low roll forward each day | %K can fall even when price is flat, if the range widens | An old extreme dropping out of the window can shift %K on its own |
| Versus StochRSI | The same shape of formula applied to price here, and to RSI values in StochRSI | The plain version is the original; StochRSI is a layer on top | Mixing up the two, or comparing their readings as equals |
| Never alone | Lane recommended pairing it with tools such as Elliott Wave and Fibonacci retracement | Treat it as one input to timing | Trading it as a complete standalone system |
Second outcome. A close of 146.00 in the same window gives %K of 5.0, deep in the oversold zone, and a close at 165.00 gives 100.0. Now suppose the window’s high rises to 170.00 on a later day while the close stays at 159.00. %K falls to 56.0 even though price did not drop, because the range grew. In a strong uptrend the line can stay above 80 for a long time, which is why an extreme reading is a prompt to look at the trend and not a sell order.
In plain words: the Stochastic Oscillator says where the close sits in its recent range, its crossovers are frequent, and Lane himself paired it with other tools. Education, not advice.
The Stochastic Oscillator is one of the oldest oscillators still on every chart, and the one that supplied the %K and %D vocabulary used across this module. Its history is mainly a story of a classroom: a trader who taught for decades, wrote it up in a magazine in 1984, and saw its formula reused on other indicators long after.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1950s | George Lane began his long career in markets at E.F. Hutton, where he trained under Joseph Granville. The oscillator took shape in this decade | The formula comes from practical desk work with futures and stocks, not from a statistics paper |
| 1954 | By his own account Lane joined Investment Educators, a school that taught commodities and stocks and, he noted, was the first to teach a heavy course in Elliott Wave | The school’s teaching included Elliott Wave, which fits Lane’s later advice to pair stochastics with Elliott Wave and Fibonacci tools |
| 1978 | J. Welles Wilder Jr. published RSI | A different way to measure momentum, built from average gains and losses instead of the position of the close in a range |
| 1984 | Lane’s article “Lane’s Stochastics” appeared in the May and June issue of a trader magazine | A written account of the method for working traders, from the originator himself |
| 1994 | Chande and Kroll applied the same formula shape to RSI values and named it StochRSI | Showed that the position-in-range formula could be pointed at any series, not just price |
| 1998 | George C. Lane and Caire Lane published Getting Started With Stochastics | A book-length statement of how the originator wanted it used |
George Lane developed the Stochastic Oscillator in the late 1950s, while working as a securities trader and educator at E.F. Hutton & Co., where, notably, he trained under Joseph Granville, the same person who would later invent On-Balance Volume, covered in Chapter 6. By Lane's own account, his team tested 28 different oscillator designs before settling on this one and expressing it as a percentage. His central idea was that momentum turns before price does: as a trend loses steam, closing prices start drifting away from the extremes of the recent range well before the price itself actually reverses.
%K measures exactly one thing: where the most recent close sits, as a percentage, between the highest high and lowest low of the lookback window (14 periods by default):
A close sitting right at the top of the 14-period range prints a %K near 100; a close sitting right at the bottom prints near 0. %D is just a smoothed 3-period average of %K, and the two lines crossing each other is the indicator's most-watched signal, the same %K/%D crossover mechanic Chapter 2 applied to RSI instead of raw price.
A hypothetical 14-day window with a lowest low of $145.00 and highest high of $165.00, closing today at $159.00, not a real ticker, just clean numbers to show exactly how the math works.
%K has climbed from 62.0 to 70.0 over three days while %D lags behind at 66.7. %K is still above %D, a bullish alignment, but both are approaching the 80 overbought threshold.
The standard thresholds are 80 for overbought and 20 for oversold, with 50 acting as a rough centerline between the upper and lower half of the range. A %K line crossing above %D from below is read as a bullish signal; crossing below from above is read as bearish, though standard charting documentation is blunt that these crosses are "frequent and prone to whipsaw," especially outside of a clearly range-bound market. Bullish divergence (price making a lower low while the oscillator makes a higher low) and bearish divergence (price making a higher high while the oscillator makes a lower high) are watched the same way they are for every other oscillator in this module.
Chapter 1 covered a real, dated event: the S&P 500's 14-day RSI went from oversold (below 30) to overbought (above 70) in just 12 trading days following the March 30, 2026 low, the fastest such move since 1982, according to reporting at the time. RSI measures average gains versus average losses; the plain Stochastic Oscillator measures something related but distinct: where the close sits within the recent high-low range. Because raw price %K tends to be even more reactive to short-term extremes than RSI's smoothed average-gain/average-loss calculation, a plain stochastic reading on the S&P 500 during that same 12-day sprint would very plausibly have touched its own 80 overbought threshold even earlier than RSI crossed 70 — the entire reason George Lane's original design was later run through RSI to build StochRSI in Chapter 2, and it's the same underlying dynamic showing up a third way.
The Stochastic Oscillator is most trusted in genuinely range-bound markets, where its overbought and oversold readings tend to mark real turning points rather than getting steamrolled by a strong trend. In trending conditions, desks tend to watch the 50 centerline more than the 80/20 extremes, treating %K holding above 50 as confirmation a pullback is still just a pullback within an uptrend, not the start of a reversal. Divergence between %K and price, especially on longer timeframes, is weighted more heavily than any single crossover.
Same illustrative series used throughout: this is the original oscillator Chapter 2's StochRSI and Chapter 13's Williams %R both derive from.
15,243 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
The Stochastic Oscillator is a standard, free indicator on TradingView, Yahoo Finance, and virtually every retail broker's charting platform, typically listed right next to RSI and StochRSI.
This chapter closes a loop that opened all the way back in Chapter 2: StochRSI wasn't invented from nothing, it was built by taking this exact formula and pointing it at RSI instead of price. Seeing the original next to its descendant is a useful reminder that most "new" indicators in this field are really just familiar math applied to a different input.
The Stochastic compares the latest close with the high-low range of the window. Set the range and the close.
George Lane ran Investment Educators Inc. starting in the 1950s, training brokers and traders rather than managing money himself. His core observation was that as a trend loses strength, the closing price tends to drift away from the high (in an uptrend) or the low (in a downtrend) before the price itself actually reverses — momentum peaks early. The Stochastic Oscillator was his way of quantifying that drift. Lane taught it in seminars for decades before it became standard software output, which is part of why the %K/%D naming still carries his classroom shorthand.
This guide fixes the vocabulary of the Stochastic Oscillator and then works the calculation by hand: the chapter’s %K and %D rebuilt from closes, the fast and slow versions side by side, and what happens when an old extreme leaves the window. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Window N | The number of bars searched for a high and a low, 14 by default. | Longer windows give wider ranges and calmer readings. |
| Highest high | The largest high in the window, including today. | Top of the range. |
| Lowest low | The smallest low in the window, including today. | Bottom of the range. |
| Raw %K | 100 × (close − lowest low) ÷ (highest high − lowest low). | Where the close sits in the range, from 0 to 100. |
| %D (fast) | 3-bar simple average of raw %K. | The signal line in the chapter’s version. |
| Slow %K | 3-bar simple average of raw %K. | Used by many platforms as the main line. |
| Slow %D | 3-bar simple average of slow %K. | The signal line for the slow version. |
| Overbought and oversold | Readings above 80 and below 20. | Zones, not instructions. A close at the top of its range is what a strong trend produces. |
| Range | Highest high minus lowest low. | The denominator. A narrow range magnifies each point of price. |
| Window exit | An old high or low dropping out of the window. | Changes %K with no price movement at all. |
Mechanism one: rebuilding the chapter. The chapter gives a lowest low of 145.00, a highest high of 165.00 and a close of 159.00, so %K is (159 − 145) ÷ 20 = 70. Its three-day %K values of 62, 68 and 70 correspond to closes of 157.40, 158.60 and 159.00 if the range stayed fixed. The inverse is useful: close = lowest low + %K ÷ 100 × range.
Read across the formula lines. One point of %K is worth 0.20 of price here, so the move from 62 to 70 is 1.60 in price. The indicator turns a small price change into a large scale change whenever the range is narrow.
Mechanism two: fast against slow. The fast version uses the raw value as %K and its 3-bar average as %D. The slow version first smooths raw %K, then averages the result again. The table uses six raw values, the chapter’s 62, 68 and 70 padded by 55 before and 64 and 58 after.
| Day | Raw %K | Fast %D | Slow %K | Slow %D |
|---|---|---|---|---|
| Day 1 | 55.0 | n/a | n/a | n/a |
| Day 2 | 62.0 | n/a | n/a | n/a |
| Day 3 | 68.0 | 61.7 | 61.7 | n/a |
| Day 4 | 70.0 | 66.7 | 66.7 | n/a |
| Day 5 | 64.0 | 67.3 | 67.3 | 65.2 |
| Day 6 | 58.0 | 64.0 | 64.0 | 66.0 |
Read across day 5. Raw %K has fallen from 70 to 64, a drop of 6, while the slow %K is 67.3 and the slow %D is 65.2. Fast %D equals slow %K by construction. The slow signal line first exists on day 5, two bars after the fast one, so the slow pair answers later and crosses less often.
Window exit. Suppose the 165.00 high was set 14 bars ago and now leaves the window, and the next highest high is 161.00. The close of 159.00 has not moved.
| Range | Lowest low | Highest high | %K | %K points per 1.00 of price |
|---|---|---|---|---|
| 20 | 145.00 | 165.00 | 70.0 | 5.00 |
| 30 | 145.00 | 175.00 | 46.7 | 3.33 |
| 40 | 145.00 | 185.00 | 35.0 | 2.50 |
| 60 | 145.00 | 205.00 | 23.3 | 1.67 |
Read across the row for a range of 60. The same 14.00 above the low reads only 23.3. The oscillator measures position inside the range, so it does not say how large the move was.
| Situation | What goes wrong | What to check |
|---|---|---|
| Flat window | Highest high equals lowest low, so %K divides by 0. | Treat as undefined. Platforms print a held value or 50. |
| Close at the window high | %K prints 100 even on a small bar. | Pair it with the range size. |
| Old extreme exits | %K jumps with no new price. | Check which bar left the window before reading a jump. |
| Strong trend | %K stays above 80 for many bars. | Compare with the trend before reading 80 as a limit. |
| Fast against slow | Crosses are frequent on the fast version. | State which version a rule uses. |
| Settings differ | Some platforms use 5, 3, 3 and others 14, 3, 3. | Compare charts with identical settings. |
In plain words: the Stochastic Oscillator reports where the close sits between the window low and high, so it depends on the window as much as on price. Education, not advice.
Chapter 9 set out to show how the Stochastic Oscillator reports where the latest close sits inside the recent high-low range, and how %K and %D are read. The one idea is that the reading depends on the window as much as on price, and an extreme reading is a prompt to check the trend and not a sell order.
| Question | Short answer | Where it was taught |
|---|---|---|
| The lowest low is 48.00, the highest high is 58.00 and the close is 52.00. What is raw %K? | (52 − 48) ÷ 10 × 100 = 40.0. | Cypher Guide: %K and %D Rebuilt |
| The two previous raw readings were 20 and 35. What is fast %D? | (20 + 35 + 40) ÷ 3 = 31.7. | Cypher Guide: %K and %D Rebuilt |
| The 58.00 high leaves the window and the next high is 54.00, with the close unchanged. What happens to %K? | It rises to (52 − 48) ÷ 6 × 100 = 66.7, up 26.7 points with no change in price. | Cypher Guide: %K and %D Rebuilt |
| In the chapter example, why did %K fall to 56.0 without price dropping? | The window high rose from 165.00 to 170.00, so the range grew to 25.00 and 14 ÷ 25 = 0.56. | Streamline View: How the Stochastic Oscillator Is Built and Read |
| Why is a stochastic above 80 not an automatic sell? | In a strong trend the line can stay above 80 for a long time, as in the 2026 rally. It is a prompt to check the trend. | A Real Example: Revisiting the Fastest RSI Sprint Since 1982 |
This is the third indicator in this module built by J. Welles Wilder (the same person behind RSI in Chapter 1 and ATR in Chapter 7) and it solves a problem neither of those tools was designed for. RSI and the moving averages can tell you which way price is leaning. ADX answers a completely different question: is there actually a real, sustained trend here at all, or is this just noise?
The Average Directional Index (ADX) measures how strong a trend is, whichever way it points. Two companion lines, +DI and −DI, give the direction. The rule that matters most is to keep the two jobs apart: ADX rising means the trend is gaining strength, not that price is going up. The usual ways it goes wrong are reading a rising ADX as bullish, and expecting it to react quickly, since Wilder’s heavy smoothing makes it slow.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Directional movement | UpMove = today’s high − yesterday’s high; DownMove = yesterday’s low − today’s low. The larger one counts, if above 0 | Shows which way the day’s range grew | An inside day, where neither extreme grows, adds nothing to either side |
| +DI and −DI | Smoothed +DM and −DM over 14 periods, divided by ATR | +DI above −DI is upward pressure; the reverse is downward pressure | Crosses need filtering, since they fire often in sideways markets |
| DX | 100 × |+DI − −DI| ÷ (+DI + −DI) | A gap between the lines, as a share of their sum | DX is jumpy, which is why it is smoothed again |
| ADX | A smoothed average of DX | Below 20, no meaningful trend; 20 to 25, a gray zone; above 25, a strong trend | It needs plenty of history before it is reliable, so it is slow |
| Strength is not direction | ADX has no sign | Take direction from +DI and −DI, strength from ADX | A rising ADX in a downtrend means the downtrend is strengthening |
| Strategy filter | Professionals use ADX to pick between trend-following and range methods | High ADX favors following; low ADX favors range tactics | Fading a trend with Bollinger Band trades while ADX is high |
| Real example | Nvidia rose 239% across 2023 and kept climbing into 2024 | That kind of run is what ADX is built to flag | The exact ADX reading for the period is not shown here, so check the actual number |
Second outcome. Swap the two lines, +DI 14.2 and −DI 32.5, and DX is the same 39.2, so ADX would rise the same way, but the trend is downward. With +DI at 22 and −DI at 20, DX is only 4.8: the lines are nearly tied and there is little trend to measure. The same ADX value can sit under very different pictures, so read the DI lines first.
In plain words: ADX says how strong a trend is and never which way it points, the DI lines give direction, and a slow ADX is the price of smoothing out noise. Education, not advice.
ADX has a short public record. It was published once, in 1978, by an engineer who built it as a chain of explicit steps, and its formulas have not changed since. What changes from chart to chart is the smoothing a platform uses, not the idea. This section therefore looks at the pieces it was built from and what each of them brought.
| Year | What happened | What it added to the topic |
|---|---|---|
| Early 1960s | J. Welles Wilder Jr. graduated in mechanical engineering from North Carolina State University | Explains the style: a fixed sequence of small calculations, each feeding the next, much as in a mechanical design |
| 1978 | Wilder published the directional movement system, with +DI, −DI and ADX, in New Concepts in Technical Trading Systems | Separated direction from strength and was built first for commodity markets |
| 1978 | The same book introduced the Commodity Selection Index, a ranking that combines ADXR with volatility terms | Shows the original job: not timing one trade but choosing which markets are worth trading by how strongly they trend |
| 1978 | ADXR was defined as the average of today’s ADX and the ADX from 14 bars earlier | A smoother, slower companion line that many platforms still offer beside ADX |
| 2021 | Wilder died in Christchurch on April 18, aged 85 | His 1978 definitions were by then built into nearly every charting platform, with little change to the formulas |
Wilder introduced ADX alongside RSI and ATR in the same 1978 book, New Concepts in Technical Trading Systems, originally built for commodity markets. His insight was that direction and strength are two separate measurements that most indicators conflate: a stock can be technically "trending up" by the thinnest possible margin, or trending up with real, measurable conviction, and traditional tools didn't distinguish between the two. ADX was designed specifically to fill that gap.
The system starts by comparing each day's high and low to the day before's, to see which direction had the bigger move:
Those raw directional movements get smoothed over 14 periods and divided by ATR from Chapter 7 to produce +DI and −DI, the actual directional indicators. The gap between them, expressed as a percentage of their sum, becomes DX, and ADX itself is just a smoothed moving average of DX:
Yesterday's high was $100, low was $95. Today's high is $104, low is $98, not a real ticker, just clean numbers to show exactly how a single day's directional movement is classified.
Today's low actually came in higher than yesterday's low, making DownMove negative, so it's automatically excluded, and all of today's directional movement counts as +DM. Extend this same logic across 14 days, smooth the results through ATR, and suppose it produces a 14-day +DI of 32.5 and −DI of 14.2:
DX = 100 × |32.5 − 14.2| ÷ (32.5 + 14.2) = 39.2
Wilder's original guideline treats ADX below 20 as "no meaningful trend," 20–25 as a gray zone, and above 25 as a genuinely strong trend, though charting documentation notes many modern analysts use 20 as the key line instead, favoring more sensitivity. Critically, ADX rising says nothing about direction on its own; a rising ADX during a downtrend means the downtrend is strengthening,
Nvidia's 2023–2024 run is one of the clearest real illustrations of what a genuinely strong, ADX-confirmed trend looks like, even though the specific ADX readings from that period aren't something financial media typically quotes the way they quote a price or a percentage gain. The stock rose 239% across 2023 alone, roughly ten times the S&P 500's return that year. It kept climbing into 2024, gaining 36% just through mid-February, then jumping 16.4% the day after its February 21, 2024 earnings report and 17.2% over the following three sessions, on revenue growth of 265% year-over-year. A second earnings report on May 22, 2024 added another 9.3% same-day and 20% over the next three sessions. By the first half of 2024 alone, the stock had climbed 150%.
ADX is rarely traded as a standalone entry signal: it's used as a filter that decides which strategy applies. When ADX is low, desks favor range-trading approaches, like the Bollinger Band and RSI mean-reversion setups covered earlier in this module. When ADX climbs above the strength threshold, the same desks shift toward trend-following approaches, since mean-reversion tools tend to fail badly in a genuinely strong trend. Some traders also watch ADX's own slope — a rising ADX from a low level is read as a new trend just getting started, while a falling ADX from a high level is read as an established trend losing steam, even before +DI and −DI actually cross.
Same illustrative series. Watch how far apart the direction signal (+DI/−DI cross) and the strength signal (ADX > 25) land.
8,541 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
ADX, +DI, and −DI are standard, free indicators on TradingView, Yahoo Finance, and most retail broker platforms, typically bundled together as a single "ADX" indicator package.
Between RSI, ATR, and now ADX, this module has covered three separate tools from the same 1978 book, each one measuring something completely different from the same underlying price data. That's a useful reminder that "technical analysis" isn't one method; it's a toolbox, and even a single analyst's own body of work can cover direction, magnitude, and strength as three entirely separate questions.
ADX is the third Wilder indicator in this module, from the same 1978 book as RSI and ATR. Wilder built it to answer a question the other two couldn't: not whether price was overbought or volatile, but whether a market was trending at all versus just chopping sideways. The +DI/-DI/ADX system was deliberately designed to be read together: ADX for trend strength, the DI lines for direction, which is why it's usually taught as one combined tool rather than three separate ones.
This guide fixes the vocabulary of ADX and then works the calculation by hand: how a bar is classified into directional movement, how the smoothed sums become +DI, −DI and DX, and how the final smoothing slows ADX down. A short period of 7 is used for the first example so the arithmetic fits on a page; the standard period is 14. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| UpMove | Today’s high minus yesterday’s high. | How far the top of the range advanced. |
| DownMove | Yesterday’s low minus today’s low. | How far the bottom of the range extended. |
| +DM and −DM | The larger of UpMove and DownMove if it is positive, otherwise 0; the other is set to 0. | At most one of the two is positive on any bar. |
| True range (TR) | Largest of high minus low, |high minus previous close| and |low minus previous close|. | The same range used by ATR in Chapter 7. |
| Smoothed sum | New = old − old ÷ N + today’s value. | Wilder smoothing in sum form; the seed is the plain sum of N values. |
| +DI and −DI | 100 × smoothed +DM (or −DM) ÷ smoothed TR. | Share of the true range that was directional, up or down. |
| DX | 100 × |+DI − −DI| ÷ (+DI + −DI). | Strength of the gap between the two, from 0 to 100, with no sign. |
| ADX | Wilder average of DX: (old ADX × (N − 1) + DX) ÷ N. | Strength of trend, either direction. Above 25 is the usual strong zone. |
| Inside bar | A bar whose high and low are within the previous bar. | Contributes 0 to both DMs. |
| Outside bar | A bar that exceeds both ends of the previous bar. | Only the larger side counts. |
Mechanism one: classify, sum, divide. The table lists nine bars as high, low and close. For each bar from 1 to 8 it finds UpMove, DownMove, the two DMs and the true range. Bars 3 and 5 are inside bars (both moves are zero or negative) and bar 4 is an outside bar. The first seven changes are then summed.
| Bar | H / L / C | UpMove | DownMove | +DM | −DM | TR | Type |
|---|---|---|---|---|---|---|---|
| Bar 1 | 102 / 97 / 101 | 2 | −1 | 2 | 0 | 5 | up |
| Bar 2 | 104 / 99 / 103 | 2 | −2 | 2 | 0 | 5 | up |
| Bar 3 | 103 / 100 / 102 | −1 | −1 | 0 | 0 | 3 | inside, both 0 |
| Bar 4 | 106 / 98 / 105 | 3 | 2 | 3 | 0 | 8 | outside, larger wins |
| Bar 5 | 105 / 101 / 102 | −1 | −3 | 0 | 0 | 4 | inside, both 0 |
| Bar 6 | 103 / 99 / 100 | −2 | 2 | 0 | 2 | 4 | down |
| Bar 7 | 101 / 96 / 97 | −2 | 3 | 0 | 3 | 5 | down |
| Bar 8 | 99 / 94 / 95 | −2 | 2 | 0 | 2 | 5 | down |
Read across bars 3 to 5. The two inside bars each contribute 0 to both columns, yet their true ranges (3 and 4) still go into the denominator. Bar 4, an outside bar, has UpMove 3 and DownMove 2, so only +DM = 3 counts. After bar 8 the lead flips: +DI falls from 20.6 to 17.6 while −DI rises from 14.7 to 18.4. The flip comes after only one more down bar because the window is 7 bars long; with 14 the sums would respond more slowly.
Mechanism two: the second smoothing. DX can swing from bar to bar, so ADX averages it. The chapter’s numbers give +DI = 32.5 and −DI = 14.2, so DX = 39.2. Suppose the previous ADX was 24.
| Bars after start | ADX |
|---|---|
| 0 | 18.00 |
| 1 | 19.51 |
| 2 | 20.92 |
| 3 | 22.23 |
| 4 | 23.44 |
| 6 | 25.61 |
| 10 | 29.10 |
Read across the table. Even with DX held at 39.2, ADX takes about six bars to climb from 18 to 25. That delay is why a trend is often well under way before ADX confirms it. For the same reason ADX can keep rising for a few bars after DX has begun to fall, since it is an average of past values.
| Situation | What goes wrong | What to check |
|---|---|---|
| Inside bar | Both DMs are 0 but TR is positive. | Expect DI to dip slightly on inside bars. |
| Zero true range | Smoothed TR can be 0 on a halted instrument, so DI divides by 0. | Treat as undefined. |
| Short history | ADX needs about 2 × N bars: N for the DI seed and N more for the DX average. | Wait for about 28 bars at N = 14 before reading ADX. |
| DI equal | +DI equals −DI, so DX is 0. | Read as no direction, whatever the DI level. |
| Falling ADX in a trend | ADX can fall while price keeps rising slowly. | Falling ADX means weaker trend strength, not a reversal. |
| Large gap | TR and one DM are both large on that bar. | Check how many bars the gap stays in the smoothed sums. |
In plain words: +DI and −DI split the true range into upward and downward share, DX measures how lopsided they are, and ADX averages that lopsidedness slowly, so it confirms a trend late and says nothing about direction. Education, not advice.
Chapter 10 set out to show how ADX measures the strength of a trend and how the two DI lines supply its direction. The one idea is to keep those two jobs apart: a rising ADX means the trend is strengthening, not that price is rising.
| Question | Short answer | Where it was taught |
|---|---|---|
| Yesterday’s high and low were 50 and 47, and today’s are 52 and 48. What are +DM and −DM? | UpMove = 2 and DownMove = −1, so +DM = 2 and −DM = 0. | Cypher Guide: ADX From Raw Bars |
| With +DI at 30 and −DI at 10, what is DX, and what is the new ADX from a previous 20? | DX = 100 × 20 ÷ 40 = 50.0. ADX = (20 × 13 + 50.0) ÷ 14 = 22.14. | Cypher Guide: ADX From Raw Bars |
| With +DI at 22 and −DI at 20, what does DX say about the trend? | DX is only 4.8. The lines are nearly tied, so there is little trend to measure. | Streamline View: How ADX Is Built and Read |
| ADX is rising during a downtrend. What does that mean? | The downtrend is getting stronger. It does not signal a reversal or a buy. | Reading ADX: The Threshold Levels That Actually Matter |
| Why does a strong DX of 39.2 barely move ADX? | Each bar moves ADX only one fourteenth of the way toward DX, which smooths noise at the cost of speed. | The Formula: Direction and Strength, Calculated Separately |
Four chapters ago this module covered ATR, J. Welles Wilder's answer to the question of how big a stock's normal moves are. One chapter ago it covered ADX, his answer to whether a trend is even worth trading. This chapter covers another tool from that same 1978 book: Parabolic SAR, Wilder's answer to a different question entirely: once you're in a trend, exactly where should your stop-loss sit, day by day, without you having to think about it?
Parabolic SAR is a trailing stop that moves itself. Each bar the dot steps toward the extreme price of the trend by a fraction called the acceleration factor, so it tightens the longer the trend runs. The one rule that matters: the dot is an exit level for a trade entered on other grounds, not a forecast. It goes wrong in sideways markets, where the dots jump from one side of price to the other again and again and each jump costs a small loss.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| SAR dot | The stop level for the next bar, plotted as a dot on the price chart | Dots below price mean an uptrend and the dot is the stop for a long position. Dots above price mean a downtrend | A level, not a prediction of where price goes |
| Extreme point (EP) | The highest high of the current uptrend, or the lowest low of a downtrend | The dot moves a share of the gap toward the EP on every bar | A new EP speeds the dot up; a stalled trend leaves it creeping |
| Acceleration factor (AF) | Starts at 0.02, adds 0.02 on each new EP, stops at 0.20 | A higher AF closes more of the gap each bar, so the stop sits closer to price | A late-trend stop is tight, so a normal pullback can hit it |
| Defaults 0.02 / 0.02 / 0.20 | Start, step and maximum, the values in the chapter formula | A small start leaves room early, the step tightens in stages, and the cap keeps the dot from collapsing onto price | Not tuned to any one stock; calm and volatile names may need different values |
| Ratchet and guardrail | The dot only moves in the trade’s favor and never sits inside the current or prior bar’s range | The stop never loosens as the trend runs | A gap can carry price through the stop before an order is filled |
| Flip (stop and reverse) | Price trades through the dot and the dots jump to the other side | Wilder’s original system closed the position and opened the opposite one | Always long or short with no neutral state, so ranges cause repeated flips |
| Trend filter | ADX from Chapter 10, taken from the same 1978 book | Follow SAR signals when ADX shows a real trend, ignore them when it does not | A filter adds delay and does not remove every false flip |
| Backtest evidence | 30 Dow stocks: about 19% average win rate on standard charts, about 30% at the defaults, 63% on Heikin Ashi | Shows how often the flips pay, not how much | A win rate alone does not give profit; the size of wins and losses counts too |
Second outcome. The step is capped, so the AF reaches 0.20 on the ninth new extreme point (0.02 + 9 × 0.02). At the start, with SAR at 60, EP at 70 and AF 0.02, the dot moves 0.02 × 10 = 0.20 in one bar. At the cap the same gap gives 0.20 × 10 = 2.00, ten times larger, so the dot lands at 62.00 instead of 60.20. That is the whole parabola: slow at first, then fast, then limited by the cap.
In plain words: the dot trails the trend and tightens as the trend proves itself, and its job is to say when to get out, not when to get in. Education, not advice.
Parabolic SAR is a trailing stop that moves itself, and its history is short and well documented: one author, one book, one year. The rules that platforms plot today still follow the printed version. What has changed since is mostly where the dots are drawn and how many people look at them.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder Jr. publishes New Concepts in Technical Trading Systems (June, Trend Research, Greensboro, North Carolina). The book presents several indicators and trading systems, Parabolic SAR among them. | Gives SAR its rules: the stop-and-reverse flip and the 0.02 start, 0.02 step and 0.20 cap on the acceleration factor. |
| 1978 | The book is issued by Wilder's own firm, Trend Research Ltd. | SAR is documented as one part of a toolkit. The same book supplies ADX, the trend-strength check meant to sit beside it. |
| About the 1980s and 1990s | Desktop charting software begins to list Parabolic SAR among its standard studies. | Code written to the book’s rules carried the 0.02 / 0.02 / 0.20 values into the default settings users still meet. |
| 1987 and 1991 | Wilder publishes The Adam Theory of Markets (1987) and The Delta Phenomenon (1991). | His later books moved to broader market theories, so the 1978 tools stayed the part of his work used on ordinary charts. |
| 2021 | Wilder dies in Christchurch, New Zealand, on April 18, aged 85. | The indicators he published in 1978 outlived him as free menu items, with the start, step and maximum left to the user. |
J. Welles Wilder Jr., a mechanical engineer turned trader, introduced the Parabolic SAR in the same 1978 book that gave the world RSI, ATR, and ADX: New Concepts in Technical Trading Systems. Where RSI and Stochastic try to time entries and exits around overbought and oversold levels, Wilder built SAR to solve a narrower, more mechanical problem: once a trade is working, where does the stop go tomorrow, and the day after that, without the trader having to redraw a line by hand every session?
The name describes exactly what it does. "Parabolic" because the dots it plots trace a curve that accelerates (slow at first, then tightening) as a trend proves itself. "SAR" stands for Stop And Reverse: the indicator is not just a stop-loss level, it's a complete flip signal. When price touches the dot, Wilder's original system closes the current position and opens the opposite one, all in a single mechanical instruction.
Unlike RSI or MACD, Parabolic SAR isn't a single equation; it's a small daily ratchet that only ever moves in the trade's favor, built from three moving parts:
Two guardrails keep the math honest. First, SAR can never be placed inside the current or prior period's price range: it has to sit outside the candle, or the "stop" would already have been hit. Second, because AF only ratchets upward and never resets until a reversal, the SAR line inherently tightens the longer a trend runs, which is the entire "parabolic" shape the dots trace on a chart.
Notice what's happening: the SAR line climbs from $95.00 to $95.89 in four sessions without a single manual adjustment, and it accelerates: the Day 3–4 jump ($95.55 to $95.89, a $0.34 move) is larger than the Day 1–2 jump ($95.10 to $95.20, a $0.10 move), mainly because AF doubled from 0.02 to 0.04 after price set a fresh high on Day 2, and partly because the gap to the higher EP widened. That's the "parabolic" acceleration Wilder named the indicator after, generated automatically as the trend proves itself.
Unlike RSI's 70/30 or ADX's 25, Parabolic SAR doesn't have a numeric threshold to memorize — its signal is purely spatial. While the dots sit below price, the indicator is reading an uptrend, and that dot level is the suggested trailing stop for a long position. The moment price trades through the dot, SAR flips to the opposite side and starts plotting above price, signaling a downtrend and, in Wilder's original all-in system, a reversal from long to short.
That flip is also SAR's most quoted weakness. Because the indicator is always in one state or the other (always bullish or always bearish, with no neutral middle ground the way RSI has 30–70), a market that isn't actually trending will make it flip back and forth rapidly, each flip a small loss as the stop gets hit right before price reverses again. Wilder was aware of this: it's the specific reason he built ADX (Chapter 10) into the same book, explicitly positioning it as the trend-strength filter meant to tell a trader when SAR's signals are worth following and when they should be ignored.
Silver opened 2025 near $29 an ounce and closed the year above $70, a gain of roughly 140% to 155% depending on the price series used. What makes that move relevant to this specific indicator isn't just the size of the gain, it's the shape of it. Following an August breakout, silver's RSI on both the daily and weekly chart stayed above the classic 70 overbought line for roughly five consecutive months into December, and as market analysts covering the move noted at the time, "the pullback never materialized" even with momentum pinned in overbought territory that whole stretch.
That's precisely the environment a trailing stop-and-reverse system is built for. A trader using RSI alone might have exited or faded the move somewhere in September on an "overbought, due for a pullback" read, and then watched silver run tens of dollars higher without them. A Parabolic SAR trailing stop has no opinion about overbought; it simply ratchets upward under the price action, tightening as AF climbs, and only exits when the actual trend structure breaks. In a genuine, sustained, low-pullback trend like silver's 2025 run, that mechanical indifference to "it feels stretched" is the entire point.
In practice, very few traders run Wilder's original always-in stop-and-reverse system, flipping from long to short on every single dot touch. Most use Parabolic SAR for one narrower job: as a trailing stop-loss on positions they've already entered using some other tool: a moving average crossover, a Bollinger Band squeeze breakout, an ADX-confirmed trend. The dot becomes the exit level, ratcheting in the trade's favor and never against it, which removes the temptation to move a stop-loss further away "just this once" when a position is under pressure.
The other common professional use is exactly the pairing Wilder himself pointed to: run SAR only when ADX confirms a trend is actually underway (commonly ADX above 25, per Chapter 10), and stand aside when ADX is flat or falling. Some traders also adjust the acceleration step and cap: a larger step tightens the stop faster for volatile names, a higher cap lets it accelerate further into a strongly persistent trend, though Wilder's own 0.02/0.02/0.20 defaults remain the standard starting point across most charting platforms.
Same illustrative series, step/acceleration tuned to fit a 30-bar window. A real SAR reacts more slowly.
14,683 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Parabolic SAR is a standard, free overlay on TradingView, Yahoo Finance, and virtually every other charting platform, usually listed as "PSAR" or "Parabolic SAR" in the indicators menu, plotted directly on the price chart as a series of dots rather than in a separate panel below.
Pick a stock or ETF that had a long, well-documented trending run: silver in 2025 is one real example, but any clear trend on a liquid name will do.
Three chapters, one 1978 book, three completely different jobs: ATR measured how big normal moves are, ADX measured whether a trend has real strength, and now Parabolic SAR turns both of those ideas into a single ratcheting stop-loss that never gives back what a trend has already earned. Wilder built these tools to work together, not as three separate systems, and this is the first chapter in the module where that design intent has been fully explicit rather than a background historical fact.
Each bar the SAR moves toward the extreme point by a fraction set by the acceleration factor.
Parabolic SAR rounds out the four indicators in this module from Wilder's single 1978 book. His goal here was narrower than with RSI or ADX: a mechanical stop-and-reverse rule that tightens automatically as a trend extends, so a trader isn't stuck deciding by feel when to exit. Wilder called it “stop and reverse” for exactly that reason — it wasn't originally pitched as a trend indicator at all, but as an exit system, which is still its most common use today.
This guide fixes the vocabulary of Parabolic SAR and then works the recursion by hand from raw highs and lows: a longer run than the chapter’s five-day sample, the bar on which it reverses, a test of how the step setting changes the stop, and the speed at which the dot closes on price. All figures are hypothetical, and each dot is rounded to the cent as in the chapter’s walkthrough.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| SAR (stop and reverse) | The dot plotted for a bar. It is a trailing stop level that never moves against the trend. | Dots below price read as an uptrend and the dot is the stop for a long. Dots above price read as a downtrend. |
| Seed | The first dot, set by a starting rule because no earlier dot exists. | Platforms differ (first bar low for a long, first bar high for a short). Early dots depend on this choice. |
| EP (extreme point) | The highest high of the current up-move, or the lowest low of a down-move. | Moves only when a new extreme is made. It is the target the dot is pulled toward. |
| AF (acceleration factor) | The fraction of the gap between EP and the dot that the dot closes in one bar. | Starts at 0.02. It is the only source of the curve in the parabola. |
| Step | The amount added to AF each time a new EP is set. | Default 0.02. A smaller step tightens the stop more slowly. |
| Maximum AF | The ceiling on AF. | Default 0.20. Reached after 9 new extremes with the default step, because (0.20 − 0.02) ÷ 0.02 = 9. |
| Gap | EP minus the prior dot (uptrend). | The dot moves by AF × gap each bar. A shrinking gap means a slowing dot. |
| Reversal (flip) | The bar whose range trades through the dot. | The new dot is the prior EP, AF returns to its start value, and EP becomes that bar’s opposite extreme. |
| Guardrail | A rule that keeps the dot outside the last two bars’ ranges. | In an uptrend the dot may not exceed the lows of the prior two bars. If it would, it is pulled back to that low. |
| Whipsaw | A flip followed soon by a flip back. | Each one realizes the distance between the entry price and the stop. Common when price has no trend. |
Mechanism one: the full ratchet, seed to reversal. Each bar the dot moves a fraction AF of the way to EP, using the EP and AF that stood at the end of the previous bar. Only after the dot is computed does the bar’s high get compared with EP. If the bar’s low is below the new dot, the trend has ended before any update is made. The seed here is 95.00 with EP 100.00 and AF 0.02, the same start as the chapter.
| Bar | High | Low | EP in | AF in | Dot | What happened |
|---|---|---|---|---|---|---|
| Day 1 | 100.00 | 97.00 | 100.00 | 0.02 | 95.10 | No new EP, AF unchanged |
| Day 2 | 104.00 | 99.00 | 100.00 | 0.02 | 95.20 | New EP 104.00, AF steps up |
| Day 3 | 104.00 | 101.00 | 104.00 | 0.04 | 95.55 | No new EP, AF unchanged |
| Day 4 | 107.00 | 102.00 | 104.00 | 0.04 | 95.89 | New EP 107.00, AF steps up |
| Day 5 | 106.00 | 102.00 | 107.00 | 0.06 | 96.56 | No new EP, AF unchanged |
| Day 6 | 109.00 | 104.00 | 107.00 | 0.06 | 97.19 | New EP 109.00, AF steps up |
| Day 7 | 110.00 | 105.00 | 109.00 | 0.08 | 98.13 | New EP 110.00, AF steps up |
| Day 8 | 108.00 | 97.50 | 110.00 | 0.10 | 99.32 | Low 97.50 is below the dot: flip |
Read across the rows. The dot rises from 95.00 to 99.32 while price runs from 100 to 110, and the step sizes grow because AF climbs from 0.02 to 0.10 and the gap to EP stays wide. On day 8 the stop to beat is 99.32 and the low is 97.50, so the trend ends. The flip sets the next dot at 110.00, the old EP, with AF back at 0.02 and EP at 97.50. Day 9 then plots 109.75, a move of only 0.25 because AF has reset. Days 1 to 4 reproduce the chapter’s 95.10, 95.20, 95.55 and 95.89.
Sensitivity: the same highs and lows with a different step. A larger step lifts the dot faster and raises the chance that an ordinary pullback touches it.
| Setting | Dot on day 7 | Stop to beat on day 8 | Low 97.50 breaks it? | Stop minus low |
|---|---|---|---|---|
| step 0.01 | 97.22 | 97.99 | Yes | 0.49 |
| step 0.02 | 98.13 | 99.32 | Yes | 1.82 |
| step 0.03 | 98.98 | 100.52 | Yes | 3.02 |
With step 0.01 the day-8 stop is 97.99 and with step 0.03 it is 100.52. All three settings flip on day 8, but the margin between the stop and the low differs widely (last column). A slightly shallower pullback would separate them, so the setting is part of the signal, not a detail.
Mechanism two: how fast the dot closes on a stalled price. Suppose price stops making new highs, so EP and AF stay fixed. Each bar the dot closes a fixed fraction AF of what remains, so the remaining gap after k bars is gap × (1 − AF)k.
| AF | Gap closed per bar | Gap left after 5 bars (from 10.00) | Bars to halve | Bars to cut by 90 percent |
|---|---|---|---|---|
| 0.02 | 2 percent | 9.04 | 35 | 114 |
| 0.04 | 4 percent | 8.15 | 17 | 57 |
| 0.06 | 6 percent | 7.34 | 12 | 38 |
| 0.10 | 10 percent | 5.90 | 7 | 22 |
| 0.20 | 20 percent | 3.28 | 4 | 11 |
Read across the AF 0.02 row: a stalled price leaves the dot closing only 2 percent a bar, so half the gap takes 35 bars. At the cap of 0.20 the same half takes 4 bars. This is why a long, mature trend can end abruptly: by then the dot is hugging price.
| Situation | What goes wrong | What to check |
|---|---|---|
| Gap open through the dot | The flip happens at the open, not at the dot, so the realized exit is worse than the plotted stop. | Compare the open with the prior dot. Size risk using the gap, not only the dot distance. |
| No trend, price sideways | The dot flips repeatedly and each flip realizes the distance between entry and stop. | Count flips over 20 bars and check trend strength with ADX (Chapter 10) before trusting a flip. |
| Different seed | The first several dots differ between platforms because the starting rule differs. | Discard the first 10 to 15 bars, or recompute from the same seed. |
| Guardrail ignored | A hand calculation can place the dot inside a prior bar’s range, which no real stop could do. | Confirm the dot does not exceed the lows of the prior two bars in an uptrend. |
| AF at the cap | Once AF is 0.20 the dot stops accelerating and only follows EP. | Read the AF column. At the cap a flat price lets the dot close 20 percent of the gap each bar. |
| Rounding | Rounding every step to the cent versus carrying full precision shifts later dots slightly. Here day 7 differs by 0.0030. | Round once, at display, if exact agreement with a platform is needed, and test against its first few dots. |
In plain words: Parabolic SAR is a stop that walks toward the best price so far, a little faster each time price sets a new best. It protects a trend and gives up quickly when price has no trend. Education, not advice.
This chapter set out to teach Parabolic SAR, Wilder’s trailing stop that moves itself by a fixed rule. Everything hangs on one idea: each dot steps toward the extreme price of the trend by a fraction that grows as the trend proves itself, so the dot is an exit level and not a forecast.
| Question | Short answer | Where it was taught |
|---|---|---|
| Seed dot 95.00, EP 100.00, AF 0.02. What is the dot after day 1? | 95.00 + 0.02 × 5.00 = 95.10. | The Formula |
| Price trades through the dot. What happens to the dot, EP and AF? | The dot flips to the other side of price, starting at the old EP, and AF returns to 0.02. | Cypher Guide: Parabolic SAR Worked Bar by Bar |
| With a 10.00 gap to EP, how far does the dot move at AF 0.02 and at AF 0.20? | 0.20 at AF 0.02 and 2.00 at AF 0.20. | Streamline View: Parabolic SAR in One Screen |
| Which companion tool did Wilder pair with SAR, and why? | ADX, to separate trends from ranges, because SAR whipsaws when the market is not trending. | Reading the Dots |
| If price stalls and AF stays at 0.02, how many bars does the dot need to close half the gap? | 35 bars, against 4 bars at the 0.20 cap. | Gap decay in the Cypher Guide |
Eleven chapters of this module have covered indicators built for stocks, indices, and eventually anything liquid enough to chart. This one was built for something narrower and older: commodities, specifically, back when a soybean contract and a copper contract didn't move by remotely the same number of cents per day, and traders needed one tool that could compare "stretched" across wildly different markets on the same numerical scale.
The Commodity Channel Index measures how far the Typical Price has strayed from its own 20-period average, in units of how far it normally strays. That scaling is the point: the same number means a similar degree of stretch on copper, soybeans or a stock. The rule that matters most is that +100 and −100 are lines to watch, not ceilings. The common failure is treating a reading above +100 as a sell signal when a strong trend can hold it there for weeks.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Typical Price (TP) | (High + Low + Close) ÷ 3 | Uses the whole bar, not only the close | Still blind to volume and to what happened inside the bar |
| 20-period SMA of TP | The recent average, the “normal” level | CCI is positive when TP is above it and negative when below | A lagging average, so a fast move shows a large reading quickly |
| Mean deviation | The average absolute gap between each of the last 20 TPs and their average | The yardstick of normal wandering; a quiet market has a small one | Absolute gaps, not squared, so CCI is similar to but not the same as a standard score |
| The 0.015 constant | Lambert’s scaling choice | Set so roughly 70% to 80% of readings fall between −100 and +100 | It sets the scale only; it does not make +100 a reversal point |
| The ±100 band | Readings outside it are unusually stretched for that instrument | A cross above +100 marks a possible new uptrend and a cross below −100 a downtrend; many traders hold until CCI crosses back | Not a hard ceiling; a strong trend can sit above +100 for a long time |
| No upper or lower bound | Unlike RSI, CCI can read 300 or −250 | Larger readings mean a larger stretch, not a coming turn | Fixed thresholds copied from RSI fit it badly |
| Cross-market scale | Dividing by mean deviation puts different markets on one scale | Two instruments both at 150 are similarly stretched for themselves | Says nothing about which one will reverse |
| Divergence | Price makes a new extreme and CCI does not | One of the more useful signals that is not a line cross | Can appear early and persist while the trend continues |
Second outcome. A TP of 48.50 against the same average gives (48.50 − 50.00) ÷ 0.015 = -100.0, exactly on the −100 line. The same $1.80 distance in a market whose mean deviation is 3.00 gives 1.80 ÷ (0.015 × 3.00) = 40.0, well inside the band. The dollar gap is identical, but the second market normally wanders three times as far, so it is much less stretched.
In plain words: CCI answers “how unusual is this distance for this market?”, and a high answer describes a strong move, not a guaranteed turn. Education, not advice.
The Commodity Channel Index is a standard-score idea built for farm and metal futures, then carried to every kind of market. Its history has two threads: the statistics it borrows from, and the 1980 article that turned them into a chart tool for cyclical commodities.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1894 | Karl Pearson uses the term standard deviation in print. | Gives statistics the habit of measuring a gap in units of normal spread, the idea CCI later borrows. |
| 1980 | Donald R. Lambert introduces the Commodity Channel Index in a commodities trading magazine, in an article titled “Commodity Channel Index: Tool for Trading Cyclic Trends.” | Sets the purpose: one scale to compare how stretched very different commodities are. |
| 1980 | In the original design Lambert sets the constant at 0.015, so that roughly 70% to 80% of readings fall between −100 and +100. | Explains why the lines sit at ±100, and why the band is a statistical edge and not a market law. |
| Decades after 1980 | Stock, index and currency traders adopt the formula, mostly with its original structure. | Moves the tool from seasonal markets to ones with no planting or harvest cycle, which changes how well its cyclic logic fits. |
| Today (2026) | Free charting platforms list CCI with a default length of 20 and the ±100 lines already drawn. | Most users meet 1980 settings before they meet the 1980 reasoning. |
Donald R. Lambert introduced the Commodity Channel Index in a 1980 article in a commodities trading magazine, titled "Commodity Channel Index: Tool for Trading Cyclic Trends." Lambert's stated problem was standardization: as he put it in the original piece, some commodities typically move only a few cents a day while others move hundreds of cents, which made it hard to apply one universal "is this overextended" rule across an entire commodities portfolio. His solution, in his own words, was something "akin to a 'standard score' in statistics" — a way of measuring how far current price has strayed from its own recent average, scaled so the same numeric thresholds would mean roughly the same thing on gold, copper, or soybeans alike.
Despite the name, CCI long ago outgrew commodities. It now runs on individual stocks, indices, ETFs, and forex pairs exactly as often as it runs on the futures markets it was built for.
CCI measures the distance between the current Typical Price and its recent average, then scales that distance by how much the Typical Price normally wanders:
The 0.015 constant isn't arbitrary. Lambert calibrated it specifically so that, statistically, roughly 70–80% of CCI readings would fall inside a ±100 band, which is exactly why +100 and −100, not the RSI-style 70/30, became CCI's standard overbought and oversold lines.
The math: (106.00 − 100.00) ÷ (0.015 × 2.50) = 6.00 ÷ 0.0375 = 160.0. A CCI of 160 sits well above Lambert's +100 line: today's Typical Price has strayed roughly 2.4× its own normal wander from its 20-period average, exactly the kind of stretched reading the index was built to flag on a scale that works the same whether the underlying moves in pennies or in dollars.
CCI crossing above +100 is read as the start of a strong uptrend; crossing below −100 is read as the start of a strong downtrend. But unlike RSI, which is mathematically bound between 0 and 100, CCI is an unbound oscillator; there's no ceiling or floor stopping it from reading 300 or −250 in a genuinely extreme move. That has a direct practical consequence: treating +100 as a hard "sell now, it's overbought" signal, the way some traders treat RSI's 70, routinely gets a trader out of a trend that's only just getting started, since a strongly trending security can hold well above +100 for an extended stretch rather than snapping back.
Because of that, many traders use the ±100 crossing itself, rather than the absolute level, as the actual signal: price crossing above +100 confirms a new uptrend is underway, and the trade is held until CCI crosses back below +100, not merely because it happens to be sitting above it.
Comex copper set a fresh record on August 25, 2026, trading at $6.7270 per pound, up 19% year-to-date in 2026 and roughly 50% over the prior twelve months, according to market reporting at the time. The driver wasn't a demand story in the usual sense. It was the threat of a US import tariff on refined copper, scheduled at 15% starting January 2027 and rising to 30% by 2028, which pulled metal into American warehouses ahead of the deadline and turned what analysts had projected as a comfortable global surplus into scarcity everywhere else. Comex inventories reached a record 675,185 tonnes after 46 consecutive days of accumulation.
This is, fittingly, precisely the kind of market Lambert built CCI for in 1980: a commodity, not a stock, moving on a structural supply story rather than an earnings calendar, in a market where price can genuinely detach from its recent range for a policy-driven reason rather than a purely technical one. A trader watching copper's Typical Price stretch further and further above its 20-period average through that 46-day accumulation stretch would have seen CCI holding well above +100 for a sustained period, exactly the kind of persistent extended reading this chapter's earlier caveat about the ±100 band warned against selling into prematurely.
Given that backtest data, professional use of CCI tends to split two ways. Some traders stick close to Lambert's original design: use the ±100 crossing as a trend-confirmation signal, and pair it with a separate trend or volume filter (ADX from Chapter 10, or OBV from Chapter 6) so a strong CCI reading isn't traded in isolation. Others follow the backtest-driven approach and use a tighter threshold, commonly ±50 rather than ±100, on daily charts specifically, accepting more signals, and by the study's own numbers, a meaningfully better long-run result than the untouched 1980 default.
CCI also sees regular use as a divergence tool: when price makes a new high but CCI fails to make a correspondingly higher high, that divergence is read the same way RSI divergence is read in Chapter 1 — a warning that the move's underlying strength doesn't match its price action.
Same illustrative series, a 10-bar basis so the reading has room to move inside a 30-bar window.
12,080 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
CCI is a standard, free indicator on TradingView, Yahoo Finance, and virtually every other charting platform, typically listed as "CCI" or "Commodity Channel Index" in the indicators menu, plotted in its own panel below the price chart with reference lines at +100 and −100.
Pick a commodity or stock with a well-documented recent trending move: copper's 2026 tariff-driven surge is one real example, but any clear trend works.
Twelve chapters in, the pattern across every honest evidence section in this module (from Parabolic SAR's own mixed backtest results to this chapter's 53%-with-the-right-settings result) keeps pointing the same direction: no indicator in this library is a standalone system, and the ones that look best in a backtest are almost always the ones whose parameters were actually tested against real data rather than left untouched since the year they were published.
CCI measures how far the typical price is from its average, scaled by the usual size of that gap. Set the three inputs.
Donald Lambert published CCI in a commodities trading magazine in 1980, designing it specifically for cyclical commodities like grain and livestock, which tend to swing between well-defined highs and lows tied to planting and harvest seasons. He picked the 0.015 constant so that roughly 70–80% of readings would fall between −100 and +100 for a typical cyclical commodity. Stock and forex traders adopted the formula unchanged decades later, even though those markets don't share the same seasonal cyclicality Lambert built it for.
This guide fixes the vocabulary of the Commodity Channel Index and then works it from twenty raw Typical Prices: the mean deviation line by line, how a single large bar moves the reading, and why the constant 0.015 puts about three quarters of normal readings inside the ±100 band. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Typical Price (TP) | (High + Low + Close) ÷ 3 for each bar. | The only price series CCI uses. All averages and deviations are taken on TP, not on the close. |
| SMA of TP | The plain average of the last 20 TP values. | The center line. CCI measures how far the current TP sits from it. |
| Deviation | TP minus the SMA of TP, bar by bar over the window. | Signed. Its absolute value feeds the mean deviation. |
| Mean deviation (MD) | The average of the 20 absolute deviations from the current SMA. | The yardstick for normal wander. A flat window gives a small MD and a sensitive CCI. |
| Constant 0.015 | Lambert’s scaling factor in the denominator. | Chosen so that most readings fall between −100 and +100. |
| Lookback | The number of bars in the window, 20 in the chapter. | Sets both the SMA and the MD. Warm-up needs 20 bars of TP. |
| CCI | (TP − SMA) ÷ (0.015 × MD). | Unbounded. Read the crossing of +100 and −100 more than the absolute level. |
| Band (±100) | The conventional trend-entry lines. | A cross above +100 or below −100 marks stretched price relative to its own wander. |
| Zero MD | A window where every TP equals the average. | The denominator is zero and CCI is undefined; platforms handle it differently. |
| Overshoot | A reading beyond about 200. | Rare in calm data; a sign the latest bar is far outside the window’s normal range. |
Mechanism one: CCI from raw inputs. The last bar has High 111, Low 109 and Close 110, so its Typical Price is (111 + 109 + 110) ÷ 3 = 110.00. The earlier nineteen TP values come from a gently rising hypothetical series. The table lists each bar’s TP and its distance from the 20-bar average.
| Bar | TP | Absolute deviation | Bar | TP | Absolute deviation |
|---|---|---|---|---|---|
| 1 | 100.00 | 4.10 | 11 | 103.00 | 1.10 |
| 2 | 101.00 | 3.10 | 12 | 106.00 | 1.90 |
| 3 | 99.00 | 5.10 | 13 | 104.00 | 0.10 |
| 4 | 102.00 | 2.10 | 14 | 107.00 | 2.90 |
| 5 | 100.00 | 4.10 | 15 | 105.00 | 0.90 |
| 6 | 103.00 | 1.10 | 16 | 108.00 | 3.90 |
| 7 | 101.00 | 3.10 | 17 | 106.00 | 1.90 |
| 8 | 104.00 | 0.10 | 18 | 109.00 | 4.90 |
| 9 | 102.00 | 2.10 | 19 | 107.00 | 2.90 |
| 10 | 105.00 | 0.90 | 20 | 110.00 | 5.90 |
Read across the result. The latest TP is 5.90 above the average, and the typical distance is 2.610, so the move is 2.26 typical distances. Multiplying that ratio by 1 ÷ 0.015 = 66.7 gives 150.7. This steady climb is a trend, so CCI sits above +100. Replacing MD with the standard deviation (3.081) in the same formula would give 127.7, a smaller number, because the standard deviation is always at least as large as MD.
Sensitivity: only the last TP changes while the other nineteen stay fixed. The average and MD are recomputed each time.
| Last TP | SMA | MD | CCI |
|---|---|---|---|
| 108.00 | 104.00 | 2.50 | 106.7 |
| 110.00 | 104.10 | 2.61 | 150.7 |
| 113.00 | 104.25 | 2.78 | 210.2 |
| 120.00 | 104.60 | 3.16 | 324.9 |
| 130.00 | 105.10 | 3.73 | 445.0 |
| 160.00 | 106.60 | 5.80 | 613.8 |
A last TP of 160 produces 613.8. CCI has no ceiling. The reading grows with the size of the outlier but more slowly than the distance itself (the distance from the average grows about nine times, CCI about four times), because the large bar also enlarges the MD that divides it.
Mechanism two: why the constant is 0.015. If TP values in a window were normally distributed with standard deviation σ, their mean deviation would be about 0.798 σ. A CCI of 100 then means a distance of 100 × 0.015 × 0.798 = 1.197 standard deviations. The chance that a normal value falls inside that many standard deviations of the mean is erf( z ÷ √2 ).
| Constant | z at ±100 | Share inside ±100 | z at ±200 | Share inside ±200 |
|---|---|---|---|---|
| 0.010 | 0.80 | 57.5 percent | 1.60 | 88.9 percent |
| 0.015 | 1.20 | 76.9 percent | 2.39 | 98.3 percent |
| 0.020 | 1.60 | 88.9 percent | 3.19 | 99.9 percent |
Read across the 0.015 row: about 76.9 percent of normal readings stay inside ±100 and almost all stay inside ±200, which matches the chapter’s 70 to 80 percent. A constant of 0.010 would put only 57.5 percent inside, and the band would fire far more often.
| Situation | What goes wrong | What to check |
|---|---|---|
| Flat window | Every TP equals the average, MD is 0, and the formula divides by zero. | Expect a blank or a 0 on illiquid or halted instruments. Do not treat it as a signal. |
| Few bars of history | CCI needs 20 TP values before the first reading. | Count bars. Early readings on a new listing are absent, not zero. |
| Treating +100 as a sell line | A trend can hold above +100 for many bars, as in the rising series above. | Use the cross back below +100 as the change, not the level. |
| Mixed deviation rule | Measuring each deviation from its own bar’s average, or using standard deviation, gives a different number from the standard formula. | Recompute one reading by hand from the 20 TP values and compare with the platform. |
| Different lookback | A 14-bar window reacts faster and tends to spend more time outside ±100 than a 20-bar window. | Check the length before comparing readings across charts. |
| Gap bar | A large gap raises TP and MD at once, so the reading jumps then decays as the bar ages out. | Note the date of the gap and the 20 bars it stays in the window. |
In plain words: CCI asks how many of the window’s own typical distances the latest price sits from the window’s average. The scale is built from the data, so it works for pennies or dollars. Education, not advice.
This chapter set out to teach the Commodity Channel Index, which measures how far the Typical Price has strayed from its 20-period average. Everything hangs on the scaling: the distance is divided by the market’s own usual wander, so the same number means a similar stretch on copper, soybeans or a stock.
| Question | Short answer | Where it was taught |
|---|---|---|
| TP 48.50, average 50.00, mean deviation 1.00. What is CCI? | (48.50 − 50.00) ÷ 0.015 = −100.0, exactly on the lower line. | Streamline View: CCI in One Screen |
| TP 106.00, average 100.00, mean deviation 2.50. What is CCI? | 6.00 ÷ 0.0375 = 160.0. | The Formula |
| Five Typical Prices 10, 12, 11, 13, 14: what is the last CCI, and is it above +100? | Average 12.0, MD 1.2, CCI = 2 ÷ 0.018 = 111.1. Yes, it is above +100. | Cypher Guide: CCI From Twenty Typical Prices |
| Does a reading above +100 mean a turn is due? | No. It describes a strong move; a trend can keep it there for a long time. | Reading CCI |
| What share of normal readings sit inside ±100 with the 0.015 constant? | About 76.9 percent. | Why the Constant Is 0.015 |
Rounding out the run through the archetypes is an indicator that isn't really a new idea at all. It's the same idea from Chapter 9 turned upside down. Williams %R measures exactly what the plain Stochastic Oscillator measures: where today's close sits within the recent high-low range, but plots it on an inverted, negative scale that a surprising number of traders have used for decades without ever noticing how close the two indicators really are.
Williams %R shows where the latest close sits inside the highest-high to lowest-low range of the last 14 bars, on a scale that runs from 0 at the top of the range down to −100 at the bottom. The rule that matters most is that it is the Stochastic upside down, not a second opinion. Its usual failure is a reading near −100 taken as a buy signal, when a falling market can stay pinned at the bottom of its range for a long time.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Range position | Close compared with the highest high and lowest low of the lookback | The closer the close is to the high, the closer %R is to 0 | Ignores volume and what happened between the bars |
| Lookback of 14 | The standard setting | A shorter window reacts faster and whipsaws more; a longer one is slower and smoother | The range resets as old highs and lows drop out, so the reading can jump with no new price |
| The negative scale | The formula multiplies by −100 so the top of the range is 0 | Near 0 means near the top; near −100 means near the bottom | Software using the original positive scale reads the other way round |
| −20 and −80 lines | Overbought above −20, oversold below −80 | The mirror of the Stochastic’s 80 and 20 lines | A strong move can stay beyond a line for a long time |
| Link to the Stochastic | At the same period, %R = Stochastic %K − 100 | %R of −80 and %K of 20 describe the same close | Using both as independent confirmation counts one signal twice |
| No smoothing | Raw %R has no averaging step, while the Stochastic usually smooths %K | Faster read on a shift in where price sits in its range | More whipsaws in a sideways market |
| Pinned readings | %R can sit at −100 or 0 for many bars | A pinned reading says the trend is strong in that direction | Not a timing signal; the April 2025 fall stayed near the bottom through further declines |
Second outcome. If the close had been 53.20, %R would be (10.80 ÷ 12.00) × −100 = -90.0, below the −80 line and near the bottom of the range. On the original 1973 positive scale the first example would read 33.3 instead of -33.3, which is why the sign convention of the software matters before any threshold is applied.
In plain words: %R tells you where the close sits in its recent range, and a low reading describes weakness, not a floor. Education, not advice.
Williams %R is a range-position idea from the late 1960s and early 1970s, made public by a working futures trader. Its history explains two things readers trip over: why it looks like the Stochastic, and why its scale runs negative in some places and positive in others.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1970 | Larry Williams publishes his first book, a guide to selecting stocks for substantial gains. His own account says he was trading actively by the mid 1960s and developed %R in 1966, after Stochastic crossovers did not work for him. | Dates the idea to the 1960s, after the Stochastic, and states its purpose: a simpler, faster read on range position. |
| 1973 | %R is made public in How I Made One Million Dollars... Last Year... Trading Commodities, using a ten-day range and a scale from 0% (close at the top of the range) to 100% (close at the bottom). | The original scale and window. Modern software changed both, which is the source of most confusion about thresholds. |
| 1987 | Williams wins the Robbins World Cup Championship of Futures Trading, turning $10,000 into about $1,147,607 in twelve months. | Brought wide attention to his methods. The result involved heavy leverage and says little about what %R alone produces. |
| Later decades | Charting platforms standardize on a 14-period lookback and a scale from 0 down to −100, with lines at −20 and −80. | The sign flip makes %R look like a mirror of the Stochastic, which at the same period it mathematically is. |
| Today (2026) | Free platforms list Williams %R as a built-in panel with no smoothing step and no settings beyond the length. | Most users see the modern convention first and never meet the original definition. |
Larry Williams is one of the more colorful figures in this module's history section. A journalism graduate from the University of Oregon, he built his reputation less as an academic and more as a professional trader with results to point to: in 1987 he won the Robbins World Cup Championship of Futures Trading by turning $10,000 into about $1,147,607 over twelve months, an 11,376% return, competing live against other traders under audited real-money conditions rather than a backtest. He later authored a number of books on trading, and his daughter went on to win the same World Cup championship in 1997, a small, verifiable footnote in an otherwise unusually colorful career for a technical analyst.
%R itself came out of that same practical, results-first trading background rather than an academic paper. Williams wanted a fast, simple read on whether a market had moved too far, too fast, relative to its own recent range, the same underlying question RSI and Stochastic both ask, just answered with a different, deliberately inverted scale.
%R compares today's close to the recent trading range, then flips the sign so the result reads from 0 down to −100:
That negative multiplier is the whole personality of the indicator. A close sitting right at the period's high produces a %R near 0; a close sitting right at the period's low produces a %R near −100. It's worth being precise about one historical wrinkle here: Williams's original published formula multiplied by positive 100, not negative. The now-standard −100 convention used across virtually every modern charting platform is a later adjustment, not what appeared in the original formula.
The math: ((120.00 − 104.00) ÷ (120.00 − 100.00)) × −100 = (16.00 ÷ 20.00) × −100 = −80.0. Today's close is sitting only 20% of the way up from the 14-period low toward the 14-period high, landing %R right at the standard −80 oversold line, close to the bottom of its recent range.
%R's thresholds sit at −20 (overbought, near the top of the range) and −80 (oversold, near the bottom), the mirror image of the Fast Stochastic Oscillator's 80/20 lines from Chapter 9. That's not a coincidence or a rough similarity: with the standard 14-period setting, %R and the Fast Stochastic's %K line are mathematically identical, just plotted on opposite scales. %R at −80 and Stochastic %K at 20 describe the exact same close, in the exact same 14-bar range, on the same day: one counts up from the bottom of the range, the other counts down from the top.
The one meaningful practical difference is speed. %R uses only the raw high-low-close calculation with no smoothing step, while the Stochastic Oscillator typically applies a 3-period smoothing to produce its %K and %D lines. That makes raw %R noticeably choppier and faster to react: useful for a trader who wants the earliest possible read on a shift, but also more prone to whipsaws in a genuinely sideways market than its smoothed cousin.
On April 2, 2025, sweeping new tariffs were announced, and the S&P 500 responded with one of the fastest drawdowns on record: a 4.84% decline on April 3 followed by a 5.97% decline on April 4, a combined two-day loss of roughly 10.5%, part of a reported $6.6 trillion two-day market value loss described at the time as the largest such loss in history. Chapter 7 covered this same episode through ATR and the VIX spike to 52.33; this chapter's angle is what a fast oscillator like %R would have shown happening underneath that plunge.
With a move that sharp compressed into two trading days, a 14-period %R would have collapsed from a normal mid-range reading straight through −80 and toward −100 almost immediately: deep, sustained oversold, exactly the kind of reading this chapter's own caveat below warns isn't automatically a buy signal. What happened next made the case for patience over prediction: on April 9, a 90-day tariff pause was announced, and the S&P 500 posted a 9.52% one-day gain, its largest since 2008. The index kept climbing from there, turning positive for the year by May 13 and reaching a fresh all-time high by June 27, a complete round trip, from a historic two-day crash to a new record high, in under three months.
Because %R and Stochastic are so closely related, professional use of %R tends to follow the same patterns Chapter 9 described for the Stochastic Oscillator: most useful in genuinely range-bound conditions, where −80 and −20 crossings tend to mark real turning points, and least reliable in a strongly trending market, where price can pin near −100 or 0 for an extended stretch without reversing, precisely what happened for several sessions during the April 2025 crash before the actual reversal arrived. Traders who prefer %R over Stochastic usually cite its lack of smoothing as the deciding factor: for very short-term or intraday setups, that extra half-step of speed can matter more than the reduced noise a smoothed %K/%D line would provide.
Some traders run both %R and Stochastic side by side specifically to sanity-check settings, since the two should track almost identically at matching periods, a large divergence between them usually signals a platform-specific calculation quirk (like the positive-vs-negative-100 convention mentioned earlier) rather than a genuine market signal.
The same illustrative series this chapter's real, dated example describes.
18,488 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Williams %R is a standard, free indicator on TradingView, Yahoo Finance, and virtually every other charting platform, typically listed as "Williams %R" or "%R" in the indicators menu, plotted in its own panel below the price chart with reference lines at −20 and −80.
Pick a stock or index around a sharp, well-documented decline: the S&P 500's April 2025 crash and snapback is one real example, but any sharp move on a liquid chart works.
Williams %R is a reminder that not every widely-used indicator is a genuinely new idea — sometimes the most useful thing a tool can do is take an existing, well-proven signal and present it from a different angle, cheap as that may sound on paper. The chapters ahead build outward from here into territory this library hadn't covered yet: a floor-trader's breakout grid with no named inventor, an ATR-powered trailing line, and a volume-weighted reading among them, each one adding a genuinely different tool to the kit rather than another variation on what's already here.
Williams %R uses the same range as the Stochastic but flips the scale to run from 0 down to minus 100.
Larry Williams built %R as a commodities trader, but he's arguably more famous for what he did with it and other tools: in 1987 he won the Robbins World Cup Trading Championship by turning roughly $10,000 into over $1.1 million in twelve months, a real-money result that's rarely been matched since. Williams himself cautioned for years afterward that the result involved aggressive leverage few traders should copy. %R itself, meanwhile, is one of the most widely cited overbought/oversold tools in retail trading education.
This guide fixes the vocabulary of Williams %R and then builds the indicator from raw highs, lows and closes: a run of five consecutive readings, a check that %R is %K minus 100, the effect of the lookback setting, and the roll-off effect that moves the reading when an old extreme drops out. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Lookback (n) | The number of bars in the range window, 14 in the chapter. | Sets the Highest High and Lowest Low. A shorter window makes %R swing more. |
| Highest High (HH) | The largest High among the last n bars. | The top of the range. The reading is 0 when the close equals HH. |
| Lowest Low (LL) | The smallest Low among the last n bars. | The bottom of the range. The reading is −100 when the close equals LL. |
| Range | HH minus LL. | The denominator. A window with no range makes %R undefined. |
| %R | ((HH − Close) ÷ (HH − LL)) × −100. | Runs from 0 down to −100. Near 0 is the top of the range. |
| %K (fast) | ((Close − LL) ÷ (HH − LL)) × 100. | The Fast Stochastic line. It equals %R plus 100. |
| Overbought line | −20 on the %R scale (80 on %K). | The close sits in the top fifth of the window range. |
| Oversold line | −80 on the %R scale (20 on %K). | The close sits in the bottom fifth of the window range. |
| Smoothing | A short average, usually 3 bars, applied to %K. | Raw %R has none. Smoothed %K is calmer and lags a little. |
| Window roll-off | The day the oldest High or Low leaves the window. | HH or LL can change with no new price, which moves %R on its own. |
Mechanism one: five consecutive readings from raw bars. The series has 18 bars. Each Close is 1.00 below the bar’s High and the Low is 2.00 below the Close; the 14-bar window ends on bars 14 to 18. For each window the table finds HH and LL, then %R, then the Fast Stochastic %K, and checks that the two agree.
| Window ends | Close | HH | LL | Range | %R | %K | %K − 100 |
|---|---|---|---|---|---|---|---|
| Bar 14 | 110.00 | 115.00 | 101.00 | 14.00 | −35.7 | 64.3 | −35.7 |
| Bar 15 | 108.00 | 115.00 | 102.00 | 13.00 | −53.8 | 46.2 | −53.8 |
| Bar 16 | 107.00 | 115.00 | 102.00 | 13.00 | −61.5 | 38.5 | −61.5 |
| Bar 17 | 105.00 | 115.00 | 103.00 | 12.00 | −83.3 | 16.7 | −83.3 |
| Bar 18 | 104.00 | 115.00 | 102.00 | 13.00 | −84.6 | 15.4 | −84.6 |
Read across the rows. In every row the last two columns match, so the identity holds. The low rises from 101.00 to 102.00 between the first two windows even though the close only fell from 110.00 to 108.00: the oldest low left the window, shrinking the range from 14.00 to 13.00. The fall in the close alone, against the old range, would put %R at −50.0; the roll-off then pushes it on to −53.8. By the last window %R is −84.6, which is below the −80 line.
Sensitivity: the lookback. The same 18 bars, read at the last bar with three window lengths. The close and the bars are fixed. Only the span of the range changes.
| Lookback | HH | LL | %R | %K |
|---|---|---|---|---|
| 5 | 111.00 | 102.00 | −77.8 | 22.2 |
| 9 | 115.00 | 102.00 | −84.6 | 15.4 |
| 14 | 115.00 | 102.00 | −84.6 | 15.4 |
A 5-bar window gives −77.8, a 14-bar window gives −84.6. The shorter window has a narrower range, so the same close sits at a different place inside it. The setting is part of the reading: −80 on 5 bars and −80 on 14 bars are different statements about price.
Mechanism two: raw versus smoothed. The Stochastic Oscillator usually averages %K over 3 bars before plotting it. Averaging the last three %K values above gives (38.5 + 16.7 + 15.4) ÷ 3 = 23.5. On the %R scale that is −76.5, against the raw −84.6.
Read the two numbers together. The raw line crossed below −80 on bar 17 (−83.3). The smoothed value on bar 17 was (46.2 + 38.5 + 16.7) ÷ 3 = 33.8 on %K, which is −66.2 on the %R scale, and even on bar 18 it has not crossed. That is the lag that buys a calmer line.
| Situation | What goes wrong | What to check |
|---|---|---|
| Window with no range | HH equals LL (a halted or very quiet instrument), so the denominator is 0. | Expect no value. Do not read a gap as a signal. |
| Reading the sign backwards | The larger number (−20) is the overbought end, which reads backwards to anyone used to a 0 to 100 scale. | Convert to %K (add 100) if the scale is unfamiliar. |
| Roll-off | An old extreme leaving the window changes %R with an unchanged close. | Mark the bar that set HH or LL and note when it leaves the n-bar window. |
| Strong trend | %R can sit near 0 for many bars while price keeps rising. | Treat the overbought line as a description of position, not a sell instruction. |
| Extremes from closes | Taking HH and LL from closes instead of Highs and Lows shifts every reading. | Use Highs and Lows. %R is exactly 0 only when the close equals the window high, and −100 only when it equals the window low. |
| Different lookback or smoothing | Two charts show different %R for the same date. | Confirm n and whether the platform is showing raw %R or a smoothed line. |
In plain words: Williams %R states where the close sits inside the last n bars of range, counting down from the top. It is the Fast Stochastic written upside down, and its value can change when an old high or low leaves the window. Education, not advice.
This chapter set out to teach Williams %R, which places the latest close inside the highest-high to lowest-low range of the last 14 bars. Everything hangs on one fact: it is the Stochastic written upside down, on a scale that runs from 0 at the top of the range to −100 at the bottom.
| Question | Short answer | Where it was taught |
|---|---|---|
| HH 64.00, LL 52.00, close 60.00. What is %R? | (4.00 ÷ 12.00) × −100 = −33.3. | Streamline View: Williams %R in One Screen |
| HH 120.00, LL 100.00, close 104.00. What is %R? | (16.00 ÷ 20.00) × −100 = −80.0, right on the oversold line. | The Formula |
| HH 50.00, LL 40.00, close 47.00. What are %R and %K? | %R = −30.0 and %K = 70.0, which is %R + 100. | Cypher Guide: Williams %R Built From Raw Bars |
| The close does not change but %R moves from −30.0 to −12.5. Why? | The 50.00 high left the window, the range narrowed from 10.00 to 8.00, and the ratio changed. | Roll-Off Effect in the Cypher Guide |
| Why is %R not independent confirmation of the Stochastic? | It is the same fraction of the range with the sign flipped, so it always agrees with %K. | Reading %R: The Inverted Scale |
Wilder's 1978 book. Appel's MACD. Bollinger's bands. Up to this point, nearly every indicator has had a named inventor and a publication date. Pivot points have neither. They were not introduced in a book or a journal article; they spread by word of mouth across commodity and equity trading floors decades before charting software existed, calculated by hand from the previous session's high, low, and close, and used to plan the day before the opening bell. That folk-technique origin is exactly why they're still everywhere: free, mechanical, and requiring nothing but yesterday's three numbers.
Pivot points turn the previous session’s high, low and close into a grid of price levels for the current session: one central pivot, three levels above it and three below. The rule that matters most is that the grid is recalculated from the prior day only, so it adapts to volatility with no settings. The usual failure is treating each level as a wall, when on a trending day price runs through several of them in one direction.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Pivot point (PP) | (Prior High + Prior Low + Prior Close) ÷ 3 | Price holding above PP is read as a bullish bias for the session, below it as bearish | A bias for the day, not a forecast |
| R1 and S1 | R1 = 2 × PP − Prior Low; S1 = 2 × PP − Prior High | The first realistic zones for profit-taking or a reversal on a normal session | A zone, not a guarantee; price can run straight through |
| R2 and S2 | PP plus or minus the prior range | Reached on days with real momentum; a push through one is itself information | Seeing price there means the session has more range than usual |
| R3 and S3 | R3 = Prior High + 2 × (PP − Prior Low); S3 = Prior Low − 2 × (Prior High − PP) | Outer levels, each pair less likely to be reached than the one inside it | Rarely tested, so there is little to learn from them most days |
| Fresh grid each session | Only the prior day is used, with no lookback or smoothing | A wide prior range makes a wide grid and a narrow range a tight one | Stale levels if the grid is not refreshed for the new session |
| Intraday design | Built for planning a single session before the open | Strongest as a map of where today’s price might pause | Loses most of its edge when daily-bar pivots are applied to swing or position trades |
| Variants | Woodie, Camarilla and Fibonacci pivots change the arithmetic | Check which formula the chart actually plots | Same label, meaningfully different levels |
| Confluence | A pivot level that lines up with a level from another tool, such as VWAP from Chapter 8 | Agreement between independent tools adds weight | Too many overlapping levels leave an excuse for any trade |
Second outcome. The width of the grid follows the prior range. With a range of 6.00 the gap between R2 and S2 is 12.00. If the prior high had been 90.00 with the same low, the range would be 12.00 and that gap would be 24.00, twice as wide. A quiet day produces tight levels for the next session and a wild day produces wide ones, which is why no setting needs adjusting.
In plain words: yesterday’s range draws today’s map, and the levels mark places price may pause, not places it must. Education, not advice.
Pivot points have no inventor and no first publication, so their history is the history of the places where they were used: the Chicago futures pits and, later, the screen. The idea is old arithmetic on three prices that every exchange already reported at the end of each session.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1848 | The Chicago Board of Trade is founded. | Creates the setting where a daily high, low and close became the shared record of a session. |
| 1865 | The Board of Trade introduces standardized futures contracts. | Identical contracts made one session’s range comparable with the next, which a prior-day grid depends on. |
| 1898 and 1919 | Members of the Chicago Produce Exchange form the Chicago Butter and Egg Board in 1898, which becomes the Chicago Mercantile Exchange in 1919. | A second large pit where floor traders needed quick reference prices before the open. |
| Before the 1990s (about) | Floor traders work the levels out by hand from the previous day’s high, low and close, passing the method on by word of mouth. | No author and no book: the formula survived because it needed a pad and three numbers. |
| 1992 | The Chicago Mercantile Exchange launches Globex, the first global electronic futures trading platform. | Screen trading made it easy to compute and draw the grid automatically for anyone. |
| 1990s and 2000s (about) | Charting software adds pivot points as a built-in tool and the variants known as Woodie, Camarilla and Fibonacci appear. | One name now covers several formulas, so the label alone does not say which levels are drawn. |
There is no Wilder, no Appel, no Bollinger to credit here, and that's not a gap in the historical record — it's the honest answer. Pivot points emerged from open-outcry trading pits (the CBOT, the CME, the NYSE floor) sometime before the widespread adoption of electronic charting in the 1990s, used by floor traders and market makers who needed a fast, repeatable way to frame a session's likely support and resistance without a computer. A trader with a paper pad and the previous day's range could compute a pivot point and its surrounding levels in seconds, then use them to plan entries and exits for the entire session.
The technique only got its now-standard name and formal write-up once it migrated off the floor and into published trading literature and, later, charting software in the 1990s and 2000s. By then it had already been in informal use long enough that no single person could credibly claim to have invented it. It's a piece of trading-floor folklore that happened to survive the transition to screens, not an academic contribution.
Pivot points use only the prior session's High, Low, and Close, nothing else, to project a full grid of support and resistance levels for the current session:
PP is the fulcrum: the level the entire grid is built around. R1 through R3 stack above it as potential resistance; S1 through S3 stack below it as potential support, each pair getting progressively less likely to be reached in a normal session.
The math: PP = (110.00 + 100.00 + 107.00) ÷ 3 = $105.67. From there: R1 = (2 × 105.67) − 100.00 = $111.33, S1 = (2 × 105.67) − 110.00 = $101.33, R2 = 105.67 + 10.00 = $115.67, S2 = 105.67 − 10.00 = $95.67, R3 = 110.00 + 2 × 5.67 = $121.33, S3 = 100.00 − 2 × 4.33 = $91.33, a full seven-level grid built from three numbers.
PP itself sets the day's directional bias: price holding above the pivot point is read as bullish for the session, price holding below it as bearish, and the flip between the two is often watched as a signal in its own right. R1 and S1 are the first realistic profit-taking or reversal zones on a normal session; R2/S2 and R3/S3 are only reached on days with real trending momentum, and seeing price blow through R2 or S2 is itself information. It tells you the session has more range than usual.
Because the whole grid is recalculated fresh every session from just the prior day's range, pivot points adapt automatically to changing volatility without any lookback period or smoothing to configure: a wide prior range produces a wide grid, a narrow prior range produces a tight one.
The broad market stress covered in Chapters 13 and 15 (the sharp early-April 2025 selloff following the White House's April 2, 2025 tariff announcement, and the snapback that followed the temporary 90-day pause announced roughly a week later) is also a clean illustration of pivot points doing exactly what they're built for. On the session following the announcement, price gapped down at the open below the prior day's S2 and, on the worst sessions, went on to trade through even S3, a level that's only supposed to come into play on genuinely extreme days. That's not a failure of the indicator; a gap straight through S2/S3 is itself the signal that the session is not a normal one.
On the recovery sessions once the pause was announced, the pattern flipped: price pushed back above the prior day's PP and went on to take out R1, then R2, in the same session — the hallmark of what floor traders call a trending day, where the pivot grid gets run through level by level rather than respected as a rotation range.
Pivot points remain a staple on index futures and forex desks precisely because they require no configuration and update automatically. A trader watching ES or NQ futures can glance at the grid and instantly know where the prior day's balance area sits relative to the current price. Many desks combine pivots with VWAP (Chapter 8) for confluence: a level where a resistance pivot and VWAP sit close together is treated as meaningfully stronger than either alone.
Same illustrative series. The pivot, R1/R2 and S1/S2 are calculated from the crash period's high, low and close, then held fixed while price rallies through them.
44,800 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
"Pivot Points Standard" is a built-in, free indicator on TradingView and most other charting platforms, typically plotted as a set of horizontal lines directly on the price chart rather than in a separate panel.
Pick a stock or index around a known volatile session (the April 2025 tariff announcement is one dated, public example) and check where the prior day's pivot grid sat relative to how far price actually moved.
Enter the prior period high, low and close.
Pivot points predate modern technical analysis entirely. Before electronic charting, floor traders at exchanges like the NYSE and CBOT needed a fast mental calculation they could do before the opening bell using nothing but the previous day's high, low, and close: no computer, no chart, just arithmetic on a notepad. Nobody owns the formula or gets individual credit for it; it's a trading-pit tradition that got formalized into software once electronic trading made it easy to plot automatically.
This guide fixes the vocabulary of pivot points and then rebuilds the grid by hand from a prior session’s High, Low and Close: each of the seven levels with its formula, how the grid moves when only the Close changes, and how two common variants place the levels differently. All figures are hypothetical and use the chapter’s prior session (High 110.00, Low 100.00, Close 107.00).
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Prior session | The completed period used as input: a day, a week or a month. | All levels for the current session come from this one bar. Nothing earlier is used. |
| Prior High, Low, Close | The three numbers H, L and C of the prior session. | The only inputs to the standard grid. The Close gets equal weight with the High and Low. |
| Pivot point (PP) | (H + L + C) ÷ 3, the average of the three inputs. | The fulcrum. Price above it is read as bullish for the session, below it as bearish. |
| Range | H minus L of the prior session. | Sets the spacing of the outer levels. R2 − PP and PP − S2 each equal the range. |
| R1 and S1 | Reflections of the Low and High across PP. | R1 = 2PP − L and S1 = 2PP − H. The nearest levels to PP. |
| R2 and S2 | PP plus and minus the full prior range. | Reached on sessions with more range than the last one. |
| R3 and S3 | Outer levels, the prior extreme plus or minus twice a distance. | Rarely reached. Their spacing depends on where PP sits inside the range. |
| Grid | The set of seven levels (R3 to S3). | Plotted as horizontal lines for one session, then replaced. |
| Variant | A different weighting of the same inputs. | Examples: a Close counted twice, or levels placed at fixed fractions of the range. |
| Mirror property | Distance from PP up to R1 equals the distance from the Low up to PP. | A check on hand arithmetic: R1 − PP = PP − L and PP − S1 = H − PP. |
Mechanism one: the grid, level by level. The pivot point is found first. Every other level is then expressed through PP and the prior High, Low or range. The table lists each formula with the numbers substituted, the result, and its distance from PP.
| Level | Formula with numbers | Value | Distance from PP |
|---|---|---|---|
| R3 | 110.00 + 2 × (PP − 100.00) | 121.33 | 15.67 |
| R2 | PP + (110.00 − 100.00) | 115.67 | 10.00 |
| R1 | 2 × PP − 100.00 | 111.33 | 5.67 |
| PP | (110.00 + 100.00 + 107.00) ÷ 3 | 105.67 | 0.00 |
| S1 | 2 × PP − 110.00 | 101.33 | −4.33 |
| S2 | PP − (110.00 − 100.00) | 95.67 | −10.00 |
| S3 | 100.00 − 2 × (110.00 − PP) | 91.33 | −14.33 |
Read across the table. R1 sits 5.67 above PP and PP sits 5.67 above the Low, which is the mirror property. The R2 and S2 levels are exactly one range (10.00) from PP. Because the Close of 107.00 is in the upper part of the range, PP is above the middle of the range (105.00), so the upper outer levels are stretched: R3 is 15.67 above PP while S3 is only 14.33 below it.
Sensitivity: only the prior Close changes. High and Low stay at 110.00 and 100.00, so the range is fixed at 10.00 and the only moving part is PP.
| Prior Close | PP | S1 | R1 | S2 | R2 | R1 − S1 |
|---|---|---|---|---|---|---|
| 100.00 | 103.33 | 96.67 | 106.67 | 93.33 | 113.33 | 10.00 |
| 103.50 | 104.50 | 99.00 | 109.00 | 94.50 | 114.50 | 10.00 |
| 107.00 | 105.67 | 101.33 | 111.33 | 95.67 | 115.67 | 10.00 |
| 110.00 | 106.67 | 103.33 | 113.33 | 96.67 | 116.67 | 10.00 |
A move of 10 in the Close shifts PP by 10 ÷ 3 = 3.33 and shifts R1 and S1 by 2 × 10 ÷ 3 = 6.67. R2 and S2 move with PP only. The R1 to S1 gap stays at 10.00, which is the prior range, so the Close decides where the grid sits but not how wide it is.
Mechanism two: variants on the same inputs. Some platforms count the Close twice in the pivot, and some place the outer levels at fixed fractions of the range. The table compares three grids built from the same High, Low and Close.
| Level | Standard | Close-weighted | Fraction-of-range |
|---|---|---|---|
| R3 | 121.33 | 122.00 | 115.67 |
| R2 | 115.67 | 116.00 | 111.85 |
| R1 | 111.33 | 112.00 | 109.49 |
| PP | 105.67 | 106.00 | 105.67 |
| S1 | 101.33 | 102.00 | 101.85 |
| S2 | 95.67 | 96.00 | 99.49 |
| S3 | 91.33 | 92.00 | 95.67 |
Read across the PP row: the Close-weighted pivot is 106.00 against 105.67, because the Close of 107 counts for half the weight instead of one third. The fraction-of-range R1 is 109.49 against 111.33 for Standard. Two traders watching “R1” can be 1.84 apart on the same day.
| Situation | What goes wrong | What to check |
|---|---|---|
| Which session is “prior” | Markets that trade nearly around the clock have no single close, so two sources use different cut-offs. | Confirm the session start and end the platform uses before comparing levels. |
| Gap beyond the grid | A session that opens above R3 has no levels above it from the day’s grid. | Check where the open sits in the grid, and use a longer-period pivot for reference above or below it. |
| Very narrow prior range | The grid is tight, so price crosses several levels in minutes. | Compare today’s opening range with the prior range before using the lines. |
| Close at an extreme | If the Close equals the High, PP sits at one third of the way down from the High and the outer levels spread unevenly around PP. | Recompute with the actual Close, not the midpoint. |
| Outer level below zero | S3 = L − 2(H − PP) can be small or negative for a very wide range on a low-priced instrument. | Discard a negative level; it is arithmetic, not a price. |
| Wrong period | Daily, weekly and monthly pivots are different grids using different inputs. | Label each line with its period. |
In plain words: a pivot grid turns yesterday’s High, Low and Close into a ladder of reference prices for today. The middle rung is an average, and every other rung is a reflection or a multiple of a distance from it. Education, not advice.
This chapter set out to teach pivot points, a grid of seven price levels built from the prior session’s High, Low and Close. Everything hangs on one idea: yesterday’s range draws today’s map, so the levels adapt to volatility with no settings and mark places price may pause, not places it must.
| Question | Short answer | Where it was taught |
|---|---|---|
| Prior session High 84.00, Low 78.00, Close 82.00. What is PP? | (84.00 + 78.00 + 82.00) ÷ 3 = 81.33. | Streamline View: Pivot Points in One Screen |
| Prior High 110.00, Low 100.00, Close 107.00. What are R2 and S2? | 105.67 + 10.00 = 115.67 and 105.67 − 10.00 = 95.67. | The Formula |
| Prior High 52.00, Low 48.00, Close 51.00, open 52.90. Which two levels bracket the open? | R1 at 52.67 and R2 at 54.33, because PP is 50.33. | Cypher Guide: The Pivot Grid Rebuilt by Hand |
| Why does the grid need no volatility setting? | It is rebuilt from the prior range each session, so its width follows that range. | Streamline View: Pivot Points in One Screen |
| Why can two charts show different R1 lines on the same day? | Variants such as Close-weighted or fraction-of-range place the lines differently. | How Variants Move the Lines |
Most trend-following overlays (moving averages, Bollinger Bands) are decades old and academically documented. SuperTrend is a newer arrival, introduced in the 2000s, and it does something genuinely useful that plain moving averages don't: it builds its trailing line directly out of Average True Range, so the line automatically widens its distance from price during volatile stretches and tightens up during calm ones, rather than using a fixed lookback that ignores volatility entirely.
SuperTrend draws a single line that sits below price in an uptrend and above price in a downtrend, placed a multiple of Average True Range away from the midpoint of the bar. The rule that matters most is the flip: the line changes side only when price closes through it, and until then it only moves toward price, never away. The usual failure is a sideways market, where the line flips again and again and every flip costs a small loss.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Midpoint | (High + Low) ÷ 2 for the bar | The anchor the bands are built around | A bar midpoint ignores where the close landed |
| ATR and its period | Average True Range from Chapter 7, default period 10 | A larger ATR means a more volatile market and wider bands | A spike in ATR widens the bands just when a decline is fastest |
| Multiplier 3.0 | The band sits 3 × ATR from the midpoint | Three ATRs is wider than ordinary bar-to-bar noise, so small wiggles do not trigger a flip | A larger multiplier means fewer flips but later exits; a smaller one the reverse |
| Final bands (the ratchet) | The lower band only rises in an uptrend and the upper band only falls in a downtrend | Acts as a trailing stop that never loosens while the trend holds | It tightens only; it cannot predict a top or bottom |
| The plotted line | Final lower band while price is above it, final upper band while price is below it | Below price (often green) reads uptrend; above price (often red) reads downtrend | Only two states, with no overbought or oversold zone |
| The flip | Price closes on the other side of the current band | The only event that matters; the line then jumps to the opposite band | A close is needed, so a wick through the line does not count |
| Volatility adaptation | Band width is built from ATR, not a fixed length | Quiet markets get a tight line and wild markets a wide one | The line is wide by design, so risk per trade follows ATR |
| Typical use | A trailing stop layered on a separate entry signal | Raise the stop as the line ratchets in the trade’s favor | Used alone it lags and whipsaws in a range |
Second outcome. Suppose ATR jumps to 2.00 in a fast move. The basic lower band becomes 40.00 − 3.0 × 2.00 = 34.00, but the ratchet keeps the final lower band at 36.40 because it may not move down. If ATR instead shrinks to 0.60 in a calm stretch, the basic lower band is 40.00 − 3.0 × 0.60 = 38.20, so the line rises closer to price: a distance of 1.80 instead of 3.60. Calm markets get a tight stop and wild ones a wide one.
In plain words: SuperTrend is a volatility-sized trailing stop that confirms a trend after it starts, and it is at its worst when there is no trend. Education, not advice.
SuperTrend is a young indicator with a thin paper trail. It joins two older ideas, Wilder’s Average True Range and the trailing-stop flip, and its credit goes to a French trader, Olivier Seban. The sources that discuss its origin do not agree on the year, so the history below keeps to the parts that are documented.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder Jr. publishes New Concepts in Technical Trading Systems, which introduces Average True Range. | Supplies the volatility yardstick that SuperTrend uses to size its bands. |
| 2000s (about) | Olivier Seban is credited with SuperTrend. Accounts place its introduction from the early 2000s to 2009, and no original publication is documented. | The flip rule and the ratcheting line are the new parts. The unclear date is itself a caution about repeating precise claims. |
| 2006 | A recoded SuperTrend for the MetaTrader 4 platform is credited to Jason Robinson in a download listing. | Shows the indicator was already moving between platforms as shared code before it was a menu item. |
| 2014 | A MultiCharts version, with an ATR period of 10 and a multiplier of 3, is posted to a trader forum’s download section on April 27. | Shows the 10 and 3 pair already serving as the standard setting in shared code. |
| Today (2026) | Many platforms ship SuperTrend as a built-in overlay with 10 and 3 as the defaults. | Most users meet one pair of numbers and treat it as the indicator, not as a choice. |
SuperTrend was introduced by Olivier Seban, a French trader, in the 2000s. Unlike Wilder's RSI or Appel's MACD, it didn't arrive through a landmark book or journal article; it spread primarily through trading communities and, later, became a built-in staple on modern charting platforms like TradingView, where its simplicity and visual clarity (a single colored line that flips between acting as support and resistance) made it one of the most widely adopted trend tools of the last fifteen years despite the comparatively thin published history behind it.
The core idea was to solve a specific problem with a plain moving average: a fixed-length MA doesn't know the difference between a quiet, low-volatility market and a wild one, so it either sits too close to price (getting whipsawed constantly) or too far away (reacting too slowly) depending on conditions. Building the band width directly from Average True Range (a measure of actual volatility from Chapter 7) lets the line adapt automatically.
SuperTrend builds two candidate bands around the midpoint price, then locks in a trailing final band that only moves in the trend's favor:
That ratcheting, one-directional-only rule is what makes SuperTrend behave like a trailing stop rather than a simple moving line: once it's locked in on the trend's side, it only ever moves closer to price, never further away, until the trend actually breaks.
The math: with a midpoint of $100.00 and ATR of $2.50, Basic Lower Band = 100.00 − (3.0 × 2.50) = $92.50, and Basic Upper Band = 100.00 + (3.0 × 2.50) = $107.50. In an established uptrend with price holding above $92.50, the Final Lower Band ratchets up session by session and plots as the SuperTrend line, acting as a rising trailing support.
SuperTrend's entire output is binary: either the line sits below price and is colored to show an uptrend (commonly green), or it sits above price showing a downtrend (commonly red). There's no overbought or oversold zone, no divergence to look for: the only event that matters is the flip, which happens the instant price closes on the opposite side of the current band.
Because the bands only ratchet in the trend's favor and never retreat while the trend holds, SuperTrend behaves less like a classic indicator and more like a dynamic, volatility-adjusted trailing stop-loss, which is precisely how most professionals actually use it, as described below.
The sharp reversal covered in earlier chapters (the early-April 2025 tariff-driven selloff followed by the rally once a 90-day tariff pause was announced roughly a week later) is a useful case for SuperTrend specifically because it contains both a trend break and a clean new trend in the same short window. During the selloff, a SuperTrend line configured on a major index would have flipped to its resistance (downtrend) state early in the decline, though not on the very first down candle: the ratcheted line sits a multiple of the Average True Range from Chapter 7 below price, so the flip waits until price has closed through that cushion, a real and known trade-off of the design.
Once the pause was announced and the index began its sharp multi-session recovery, a SuperTrend line would have flipped back to its support (uptrend) state and then ratcheted upward day by day as the rally continued, exactly the trailing-stop behavior the indicator is designed for, giving a trend-following trader a rising floor to hold the position against rather than a fixed target to exit at.
SuperTrend is used far more often as a trailing stop-loss mechanism layered on top of a separate entry signal than as a standalone entry trigger: a trader might enter a position using a moving-average crossover (Chapter 4) or a breakout, then use the SuperTrend line itself as the exit level, moving the stop up as the line ratchets in the trade's favor. It's also a popular building block in algorithmic and systematic trading rules specifically because its logic (flip on a close through the band) is simple enough to code precisely, with no discretionary judgment required.
Same illustrative series this chapter's real, dated example describes.
3,047 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
SuperTrend is a free, built-in indicator on TradingView and most other modern charting platforms, plotted directly on the price chart as a single colored line that changes color on each flip.
Pick an instrument that went through a clear trend change (the April 2025 tariff selloff and recovery is one dated, public example) and track how SuperTrend would have responded.
SuperTrend starts from the midpoint of the bar and sets bands a multiple of ATR away. Set the inputs.
SuperTrend is generally credited to Olivier Seban, a French financial consultant and author, who combined Wilder's ATR (Chapter 7) with a simple trend-following flip rule: plot a band above or below price at a multiple of ATR, and flip sides whenever price closes through it. Unlike Wilder's own indicators, SuperTrend spread almost entirely through charting-platform communities and open-source scripts rather than a published book, which is typical of more recent indicators built in the TradingView era.
This guide fixes the vocabulary of SuperTrend and then runs it by hand from raw highs, lows and closes: True Range, a smoothed ATR, the basic and final bands bar by bar, the bar on which a band is held by the ratchet, and a test of three multipliers. To keep the arithmetic short the run uses a 3-bar ATR and a multiplier of 2.0 instead of the chapter’s 10 and 3.0. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Midpoint (HL2) | (High + Low) ÷ 2 of the bar. | The anchor of both bands. SuperTrend is centered on the bar’s middle, not on its Close. |
| True Range (TR) | The largest of High − Low, |High − prior Close| and |Low − prior Close|. | Includes gaps. The first bar has no prior Close, so it uses High − Low. |
| ATR | A smoothed average of True Range over n bars. | Seeded with a plain average of the first n TR values, then smoothed: ATR = ((n − 1) × prior ATR + TR) ÷ n. |
| Multiplier | The number of ATRs placed above and below the midpoint. | The chapter default is 3.0. It sets how much adverse movement is tolerated. |
| Basic bands | Midpoint ± Multiplier × ATR, recomputed on every bar. | Candidates only. They can move toward or away from price each bar. |
| Final Lower Band | The basic lower band, held up by a ratchet. | It may rise but not fall while the prior Close stayed above it. |
| Final Upper Band | The basic upper band, held down by a ratchet. | It may fall but not rise while the prior Close stayed below it. |
| Ratchet | The rule that lets a final band move only in the trend’s favor. | Gives the line its trailing-stop behavior. |
| SuperTrend line | The Final Lower Band in an uptrend or the Final Upper Band in a downtrend. | Its side of price is the whole signal. |
| Flip | A Close beyond the active final band. | The line jumps to the other final band. Only the Close counts, not an intrabar touch. |
Mechanism one: from raw bars to the line. First the ATR. Bar 1 has TR = High − Low. Later bars take the largest of the three True Range candidates. The ATR is first computed on bar 3 as the plain average of the first three TR values, then smoothed.
| Bar | High | Low | Close | TR | ATR |
|---|---|---|---|---|---|
| 1 | 101.00 | 99.00 | 100.00 | 2.00 | warm-up |
| 2 | 103.00 | 100.00 | 102.00 | 3.00 | warm-up |
| 3 | 104.00 | 101.00 | 103.00 | 3.00 | 2.667 |
| 4 | 106.00 | 102.00 | 105.00 | 4.00 | 3.111 |
| 5 | 108.00 | 104.00 | 107.00 | 4.00 | 3.407 |
| 6 | 109.00 | 106.00 | 108.00 | 3.00 | 3.272 |
| 7 | 108.00 | 105.00 | 106.00 | 3.00 | 3.181 |
| 8 | 106.00 | 102.00 | 103.00 | 4.00 | 3.454 |
| 9 | 104.00 | 100.00 | 101.00 | 4.00 | 3.636 |
| 10 | 103.00 | 99.00 | 102.00 | 4.00 | 3.757 |
| 11 | 106.00 | 101.00 | 105.00 | 5.00 | 4.172 |
Next the bands. On each bar the basic bands are the midpoint plus and minus 2.0 × ATR. The final bands then apply the ratchet: a final lower band takes the new basic lower band only if it is higher, or if the prior Close had fallen below the old final lower band.
| Bar | Close | ATR | Basic Lower | Final Lower | Basic Upper | Final Upper | Line | Trend |
|---|---|---|---|---|---|---|---|---|
| 3 | 103.00 | 2.67 | 97.17 | 97.17 | 107.83 | 107.83 | 107.83 | Down |
| 4 | 105.00 | 3.11 | 97.78 | 97.78 | 110.22 | 107.83 | 107.83 | Down |
| 5 | 107.00 | 3.41 | 99.19 | 99.19 | 112.81 | 107.83 | 107.83 | Down |
| 6 | 108.00 | 3.27 | 100.96 | 100.96 | 114.04 | 107.83 | 100.96 | Up |
| 7 | 106.00 | 3.18 | 100.14 | 100.96 | 112.86 | 112.86 | 100.96 | Up |
| 8 | 103.00 | 3.45 | 97.09 | 100.96 | 110.91 | 110.91 | 100.96 | Up |
| 9 | 101.00 | 3.64 | 94.73 | 100.96 | 109.27 | 109.27 | 100.96 | Up |
| 10 | 102.00 | 3.76 | 93.49 | 100.96 | 108.51 | 108.51 | 100.96 | Up |
| 11 | 105.00 | 4.17 | 95.16 | 100.96 | 111.84 | 108.51 | 100.96 | Up |
Read across the rows. On bar 6 the Close of 108.00 is above the Final Upper Band of 107.83 set on bar 3, so the trend flips up and the line becomes the Final Lower Band, 100.96. On bar 7 the basic lower band falls to 100.14, but the final lower band stays at 100.96 because that is the higher value: this is the ratchet. The line holds there through bars 7 to 11 even as the Close drops to 101.00 on bar 9, which is still above it.
Mechanism two: the multiplier. The same bars and the same ATR, run with three multipliers. A wider multiplier tolerates more movement before the Close crosses the line.
| Multiplier | Flips after the first bar | Line on bar 11 | Trend on bar 11 | Close minus line |
|---|---|---|---|---|
| 1.0 | 3 | 99.33 | Up | 5.67 |
| 2.0 | 1 | 100.96 | Up | 4.04 |
| 3.0 | 0 | 110.50 | Down | 5.50 |
At 1.0 the line flips 3 times between bars 4 and 11 and ends bar 11 in an up trend. At 2.0 it flips 1 time. At 3.0 the line never flips and stays on the Final Upper Band of 110.50 throughout, with the Close 5.50 below it on bar 11. The setting is a trade-off between reacting early and being whipsawed, and no value is correct for every market.
| Situation | What goes wrong | What to check |
|---|---|---|
| Warm-up | No ATR exists until n bars of TR are available, and the first line depends on a starting convention. | Ignore the first n to 2n bars of a new chart and compare with the platform’s first lines. |
| Gap through the line | The Close flips the line, but the position would have exited at the gap price, not the line. | Compare the open with the prior line and estimate the gap cost. |
| Range-bound market | A small multiplier flips back and forth, as the 1.0 row shows. | Count flips and test a wider multiplier on the same data. |
| Intrabar touch | A wick through the line without a Close beyond it does not flip. | Use Close, not High or Low, for the flip test, matching the indicator. |
| ATR spike | One very wide bar widens the bands for many bars afterward. | Look at the TR of the largest bar in the window and when it will leave. |
| Different ATR method | Plain-average and smoothed ATR give different lines, as shown above. | Read the platform’s ATR definition and match it when checking by hand. |
In plain words: SuperTrend marks a volatility-sized corridor around each bar’s midpoint and keeps only the edge that has moved with the trend. The line changes sides only when a Close crosses it. Education, not advice.
This chapter set out to teach SuperTrend, a single line that sits below price in an uptrend and above it in a downtrend. Everything hangs on the ratchet: the line sits a multiple of ATR from the bar midpoint, only moves toward price while the trend holds, and changes side only when a close crosses it.
| Question | Short answer | Where it was taught |
|---|---|---|
| Midpoint 100.00, ATR 2.50, multiplier 3.0. What are the basic bands? | 92.50 below and 107.50 above. | The Formula |
| An uptrend has ATR jump while the final lower band is 36.40. Where does the line plot? | Still at 36.40, because the ratchet will not let it move down. | Streamline View: SuperTrend in One Screen |
| Prior Final Lower 98.00, Close today 97.80, Final Upper 103.00. What happens? | The Close is below 98.00, so the trend flips down and the line jumps to 103.00. | Cypher Guide: SuperTrend Run Bar by Bar |
| What happened to flips as the multiplier rose from 1.0 to 3.0 in the run? | From 3 flips to 1 flip to none. | Cypher Guide, mechanism two on the multiplier |
| When does the line change sides? | Only when price closes through it, not when it merely touches the line. | Reading SuperTrend |
Keltner Channels look almost identical to Bollinger Bands from Chapter 5 on a chart (a moving average with two bands wrapped around it) but they're built from an entirely different ingredient, and the indicator actually has two distinct authors separated by more than two decades: one who introduced the original idea in 1960, and another who rebuilt it into the version every platform actually plots today.
A Keltner Channel is an exponential moving average with a band above and below it, each placed a multiple of Average True Range away. The rule that matters most is that it is a trend channel: price often rides along a band during a strong move, and a close outside the band reads as strength, not as an automatic reversal. The usual failure is mistaking it for Bollinger Bands, which look alike but are sized by standard deviation, or treating every touch of a band as a turning point.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Middle line | 20-period EMA of the close | The trend direction; a pullback that holds near it is often read as a continuation setup | An EMA reacts faster than a simple average and so makes more small turns |
| Bands | Middle line ± multiplier × ATR, with ATR period 10 and multiplier 2.0 | Two ATRs from the middle line; the width tracks recent bar-to-bar range | Width follows ATR, so a single large bar widens it for the next several sessions |
| Touch versus close | A touch is a wick at the band; a close outside it ends the bar beyond the band | A close outside is generally read as stronger continuation than a mere touch | Neither is a reversal signal by itself in a strong trend |
| Riding the band | Price staying near the upper or lower band for many bars | Marks sustained momentum, not exhaustion | Selling every touch fights the trend |
| Return to the middle | Price pulls back to the EMA and holds | Often read as a trend-following entry, not an exit | A close through the middle line weakens that reading |
| Exit use | A close back inside the channel after a run | Used as a trailing-stop style exit for a trend position | A single close inside can be a pause that resumes |
| Versus Bollinger Bands | Bollinger sizes bands by standard deviation of price, Keltner by ATR | Keltner is usually smoother and less moved by one-bar spikes | Two near-identical charts can hide different formulas |
| Original 1960 version | 10-day simple average of typical price with a 10-day average range | Same idea, different ingredients | Rarely what a modern platform plots under this name |
Second outcome. If ATR doubles to 3.00 after a burst of large bars, the bands become 80.00 ± 6.00, which is 74.00 and 86.00, and the width doubles to 12.00. The same 83.40 close is then well inside the channel. Under the original 1960 method, with a 10-day simple average of typical price at 80.00 and a 10-day average range of 2.50, the bands would be 77.50 and 82.50, a narrower channel built from different ingredients.
In plain words: the channel measures how far price normally ranges around its trend, so a move outside it says momentum is strong more often than it says a turn is near. Education, not advice.
Keltner Channels have two authors separated by decades. The first was a commodity writer in 1960, the second a trader who rebuilt the channel with Average True Range, and the version on most screens today is the second. The history explains why two charts with the same name can show different lines.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1960 | Chester W. Keltner publishes How to Make Money in Commodities, presenting a “Ten-Day Moving Average Trading Rule.” The center is a 10-day simple average of the typical price, and the bands add and subtract a 10-day average of the high-low range. | The original channel: a simple, hand-calculable band for commodity futures. |
| 1978 | J. Welles Wilder Jr. publishes New Concepts in Technical Trading Systems, which introduces Average True Range. | Gives later authors a range measure that counts gaps between sessions, which the plain high-low range does not. |
| 1980s | Linda Bradford Raschke introduces the newer version, which sets the band width with ATR. | The shift from a range average to ATR, parallel to how Bollinger Bands use standard deviation, creates the channel most platforms plot. |
| 1995 | Street Smarts by Linda Bradford Raschke and Laurence A. Connors is published and is the book most often cited for her channel work. | Puts the modern channel into the trading literature, where later authors and software vendors could copy it. |
| Since then (about) | Charting platforms adopt the EMA and ATR channel with a 20-period EMA, a 10-period ATR and a multiplier of 2.0 as the usual defaults. | Most users meet only the Raschke-style version, under Keltner’s name. |
| Today (2026) | The channel is a free built-in overlay and is used as one half of squeeze set-ups that compare it with Bollinger Bands. | Its role has shifted from a standalone rule to a yardstick that other tools are measured against. |
Chester W. Keltner introduced the original concept in his 1960 book, "How to Make Money in Commodities," calling it the "Ten-Day Moving Average Trading Rule." His version built bands around a 10-day simple moving average of the typical price, sized using the 10-day average trading range, a reasonable idea for its time, but one that's rarely used in its original form today.
The version that appears on virtually every modern charting platform was rebuilt decades later by Linda Bradford Raschke, a professional trader and author who replaced Keltner's original moving-average-and-range approach with an exponential moving average and Average True Range (Chapter 7), the same volatility measure already used by ATR and SuperTrend (Chapter 15) in this module. That ATR-based version is dramatically more responsive to changing volatility than the 1960 original, and it's the one this chapter covers.
The modern, ATR-based Keltner Channel builds two bands symmetrically around a central EMA:
Unlike Bollinger Bands, which widen and narrow based on standard deviation of price itself, Keltner Channels widen and narrow based on ATR, a distinction that matters in the comparison covered in Chapter 19's channel-width discussion.
The math: with a 20-EMA of $50.00 and a 10-period ATR of $1.20, Upper Band = 50.00 + (2.0 × 1.20) = $52.40, and Lower Band = 50.00 − (2.0 × 1.20) = $47.60, a $4.80-wide channel built directly from real recent volatility rather than a fixed percentage.
Because Keltner Channels are built on an EMA rather than a simple average, and sized by ATR rather than standard deviation, they tend to be smoother and less reactive to single-bar spikes than Bollinger Bands. Price tends to ride along the upper or lower band for extended stretches during a genuine trend rather than snapping back after every touch. That makes Keltner touches a poor standalone reversal signal on their own; they're read far more often as a trend-strength gauge than a mean-reversion trigger.
A close outside the band (rather than a mere touch) is generally read as a stronger continuation signal, while price pulling back to the middle EMA and holding is often read as a trend-following entry rather than an exit.
Large semiconductor stocks tied to the AI buildout, most visibly Nvidia, spent extended stretches through 2023 and into 2024 in strong, sustained uptrends where price rode consistently along or above the upper Keltner band on the daily chart rather than reverting to the mean after each push, the kind of extended band-riding behavior that punishes a trader treating every touch of the upper band as an automatic short signal. Pullbacks during that stretch repeatedly found support near the 20-period EMA rather than the lower band, consistent with how Keltner Channels are meant to be read in a strong trend.
Keltner Channels are widely used as a trend-confirmation and trailing-stop framework: a trader might use a close back inside the channel, rather than a mere touch of a band, as an exit signal for a trend-following position, similar in spirit to how SuperTrend (Chapter 15) is used as a trailing stop. They're also a standard component of the volatility-squeeze technique covered in Chapter 19.
Same illustrative series used throughout this module.
7,695 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Keltner Channels are a free, built-in indicator on TradingView and most other charting platforms, plotted directly on the price chart as three lines.
Pick a stock that had a well-documented sustained trend (the 2023–2024 AI semiconductor rally is one dated, public example) and check how price interacted with its Keltner Channel.
A Keltner Channel is an EMA plus and minus a multiple of ATR. Set the center, the ATR and the multiple.
Chester Keltner introduced the original version of this channel in his 1960 book “How to Make Money in Commodities,” using a simple moving average of the typical price. Decades later, trader Linda Bradford Raschke, known for her own books on short-term trading, reworked it using Wilder's ATR (Chapter 7) instead of Keltner's original range calculation, which is the version almost everyone uses today. The channel taught in this chapter is technically Raschke's update to Keltner's original idea.
This guide fixes the vocabulary of Keltner Channels and then builds the channel from raw closes and true ranges: the EMA recursion from a seed, the smoothed ATR, the bands, and where each close sits inside them. It then tests the multiplier and the EMA length, and compares the channel with a standard-deviation band on two stylized windows. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| EMA (middle line) | An exponential moving average of the Close, 20 bars in the chapter. | Weights recent closes more. EMA = prior EMA + α × (Close − prior EMA). |
| α (alpha) | The smoothing weight, 2 ÷ (n + 1). | For n = 20, α = 2 ÷ 21 = 0.0952. It is the share of today’s gap to the Close added to the EMA. |
| Seed | The starting EMA value, usually the simple average of the first n closes. | Its influence fades but never reaches zero. |
| ATR | Average True Range, 10 bars in the chapter, smoothed as ((n − 1) × prior ATR + TR) ÷ n. | Measures how far a bar typically travels, including gaps. |
| Multiplier | The number of ATRs between the middle line and each band, 2.0 by default. | Sets the channel width. |
| Upper and lower band | Middle line plus and minus Multiplier × ATR. | Move up and down with the EMA and widen or narrow with the ATR. |
| Channel width | Upper minus lower, which equals 2 × Multiplier × ATR. | 4.80 in the chapter’s walkthrough, from 4 × 1.20. |
| Position in channel | (Close − lower) ÷ (upper − lower), as a percentage. | Above 100 percent is a close outside the upper band; below 0 percent is outside the lower band. |
| Close outside | A Close beyond a band, not a mere touch of it. | The chapter reads it as strength in that direction. |
| Earlier form | A 10-day simple average of Typical Price with bands from the 10-day average range. | Uses no ATR, so it ignores gaps. A different tool under the same name. |
Mechanism one: the channel bar by bar. The run starts from the chapter’s snapshot: EMA 50.00 and ATR 1.20, which give bands of 52.40 and 47.60. Eight new bars follow. For each bar the EMA moves 0.0952 of the way to the Close, and the ATR blends in the new True Range with a weight of one tenth.
| Bar | Close | EMA | TR | ATR | Upper | Lower | Close in channel |
|---|---|---|---|---|---|---|---|
| 1 | 50.60 | 50.057 | 1.00 | 1.180 | 52.42 | 47.70 | 62 percent |
| 2 | 51.20 | 50.166 | 1.20 | 1.182 | 52.53 | 47.80 | 72 percent |
| 3 | 50.90 | 50.236 | 1.10 | 1.174 | 52.58 | 47.89 | 64 percent |
| 4 | 51.80 | 50.385 | 1.40 | 1.196 | 52.78 | 47.99 | 80 percent |
| 5 | 52.40 | 50.577 | 1.30 | 1.207 | 52.99 | 48.16 | 88 percent |
| 6 | 52.00 | 50.712 | 1.20 | 1.206 | 53.12 | 48.30 | 77 percent |
| 7 | 52.90 | 50.921 | 1.50 | 1.235 | 53.39 | 48.45 | 90 percent |
| 8 | 53.50 | 51.166 | 1.30 | 1.242 | 53.65 | 48.68 | 97 percent |
Read across the rows. By bar 8 the EMA has climbed from 50.00 to 51.166 while the Close is 53.50, so the Close leads its own average by 2.33. The channel is 4.97 wide (48.68 to 53.65) and the Close sits at 97 percent of the way up it, which is inside the band even in a clear uptrend. A close outside would need a position above 100 percent.
Sensitivity: the multiplier. The EMA, ATR and Close on bar 8 are held fixed. Only the number of ATRs changes.
| Multiplier | Lower | Upper | Width | Close in channel | Close status |
|---|---|---|---|---|---|
| 1.5 | 49.30 | 53.03 | 3.73 | 113 percent | Outside |
| 2.0 | 48.68 | 53.65 | 4.97 | 97 percent | Inside |
| 2.5 | 48.06 | 54.27 | 6.21 | 88 percent | Inside |
| 3.0 | 47.44 | 54.89 | 7.45 | 81 percent | Inside |
The Close of 53.50 is outside the 1.5 channel and inside the 3.0 channel, so “a close outside the band” depends entirely on the multiplier. The width scales in direct proportion, from 3.73 to 7.45.
| EMA length | α | Lag in bars | Weight on newest 5 closes | Seed weight left after 20 bars |
|---|---|---|---|---|
| 10 | 0.1818 | 4.5 | 63.3 percent | 1.8 percent |
| 20 | 0.0952 | 9.5 | 39.4 percent | 13.5 percent |
| 50 | 0.0392 | 24.5 | 18.1 percent | 44.9 percent |
At n = 20 the newest five closes carry 39.4 percent of the weight, and 13.5 percent of the seed is still in the line after 20 bars. That is why the first twenty or so bars of a new chart can differ between platforms.
Mechanism two: why this is not a Bollinger Band. A Keltner half-width is a multiple of ATR, which measures bar size. A Bollinger half-width is a multiple of the standard deviation of the closes, which also includes any drift in the window. Two stylized 20-bar windows show the contrast, each with multiplier 2.0 on both bands. The standard deviation uses the population form.
| Window | Closes | σ | Bollinger half-width | ATR | Keltner half-width | Wider band |
|---|---|---|---|---|---|---|
| A: steady climb | 20 closes rising 1.00 per bar | 5.766 | 11.53 | 1.50 | 3.00 | Bollinger |
| B: tight chop | Closes alternate 49.70 and 50.30 | 0.300 | 0.60 | 1.20 | 2.40 | Keltner |
In window A the steady climb makes the Bollinger band 11.53 wide on each side against 3.00 for the channel. In window B the closes barely move, so the Bollinger half-width is only 0.60 while the channel stays at 2.40. A Bollinger band sitting inside a Keltner channel, as in window B, is the condition Chapter 19 builds on.
| Situation | What goes wrong | What to check |
|---|---|---|
| Early bars of a chart | The EMA still carries part of its seed, so the middle line and bands differ across platforms. | Wait for several lengths of history before comparing. |
| Gap or very wide bar | ATR jumps, so the channel widens at once and then narrows only gradually as the smoothing fades. | Find the largest True Range in the last ten bars. |
| Two versions, one name | The earlier simple-average form gives different bands from the ATR form. | Read the settings label before comparing any result with a source. |
| Treating a touch as a reversal | Price can ride the upper band for many bars in a trend. | Check the position in the channel over several bars, not one. |
| Large price changes | Channel width is in price units, so widths from before and after a large change in price level are not comparable. | Express the width as a share of the middle line when comparing periods. |
In plain words: a Keltner Channel is an average of closes with a corridor around it sized by how far bars usually travel. A close outside the corridor is information about strength, and how often it happens depends on the multiplier chosen. Education, not advice.
This chapter set out to teach the Keltner Channel, an exponential moving average with a band above and below it, each a multiple of ATR away. Everything hangs on one idea: it is a trend channel sized by how far bars usually travel, so a close outside it reads as strength more often than as a turn.
| Question | Short answer | Where it was taught |
|---|---|---|
| EMA 50.00, ATR 1.20, multiplier 2.0. What are the bands? | 52.40 above and 47.60 below, a 4.80 channel. | The Formula |
| EMA 80.00 and ATR rises to 3.00. Where are the bands? | 86.00 and 74.00. | Streamline View: Keltner Channels in One Screen |
| EMA moves from 80.00 to 80.60, ATR to 2.20, Close 83.00. Where is the Close in the channel? | Bands 85.00 and 76.20, so the Close sits 77.3 percent of the way up, inside the channel. | Cypher Guide: Keltner Channel From Closes and True Range |
| What does a close outside the upper band usually say? | That momentum is strong, not that a reversal is due. | Reading Keltner Channels |
| Why can Keltner and Bollinger bands differ on the same chart? | One is sized by ATR (bar size) and the other by standard deviation, which also picks up drift. | Versus Bollinger in the Cypher Guide |
Volume appears nowhere in the formulas for RSI, the Stochastic Oscillator, or Williams %R, and nearly all the oscillators covered before this one share that trait: they're built purely from price. The Money Flow Index fixes that specific gap: it takes the exact same overbought/oversold framework RSI made famous and rebuilds it using volume as the key ingredient, which is why it's frequently described as "volume-weighted RSI."
The Money Flow Index is RSI rebuilt with volume. Each bar’s typical price is multiplied by its volume to give a money flow, the flows on up bars and down bars are summed over 14 periods, and the ratio is squeezed onto a 0 to 100 scale. The rule that matters most is that heavy-volume bars carry more weight than light ones. The usual failure is reading it exactly like RSI and ignoring that a one-off volume spike, such as an index addition, can distort the number.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Typical price | (High + Low + Close) ÷ 3 | The single price used for each bar | Hides where inside the bar the volume traded |
| Raw money flow | Typical price × volume | A dollar-sized measure of how much traded at that bar’s price | Only as good as the volume data behind it |
| Positive and negative flow | A bar is positive if its typical price rose from the prior bar and negative if it fell | Splits the dollars into buying-side and selling-side by price direction | The direction rule says nothing about who initiated the trades |
| Money flow ratio and MFI | Sum of positive flow ÷ sum of negative flow over 14 periods; MFI = 100 − 100 ÷ (1 + ratio) | A ratio of 3.00 gives 75.0; a ratio of 1.00 gives 50.0 | Bounded 0 to 100, so it saturates like RSI in a strong trend |
| 80 and 20 lines | Overbought above 80, oversold below 20 | Wider than RSI’s 70 and 30 | Subjective levels; volatile or thinly traded names may need wider ones |
| Divergence | Price makes a new high or low and MFI does not | Often treated as more useful than the raw level because it shows weakening conviction | Can appear early and persist while a trend continues |
| Volume sensitivity | A big move on light volume gives a more muted reading than the same move on heavy volume | Separates convincing moves from thin ones | A structural spike (index addition, split) looks like conviction but is not |
| Data quality | MFI uses reported volume | Works best on liquid, exchange-traded names | Thin or over-the-counter volume makes the input the weak link |
Second outcome. Keep the same price moves but cut the volume on the up bars in half, so positive flow falls to $225 million. The ratio becomes 225 ÷ 300 = 0.75 and MFI = 100 − 100 ÷ (1 + 0.75) = 42.9. The prices did not change, only the volume behind them, and the reading dropped from 60.0 to 42.9. That difference is what RSI cannot show.
In plain words: MFI asks whether the dollars are flowing in on up bars or down bars, and a move with little volume behind it counts for less. Education, not advice.
The Money Flow Index is a direct descendant of RSI. Its history is a short chain: Wilder’s ratio in 1978, a 1989 article that swapped price change for dollar volume, and the textbooks that made 14 periods with 80 and 20 lines the shared default.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder Jr. publishes New Concepts in Technical Trading Systems, which introduces the Relative Strength Index. | Supplies the bounded up-versus-down ratio, 100 − 100 ÷ (1 + ratio), that MFI reuses. |
| 1989 | Gene Quong and Avrum Soudack introduce the Money Flow Index in a magazine article. | Replaces close-to-close change with typical price times volume, so heavy sessions count for more. |
| 1999 and 2001 | Standard reference books on chart analysis, published in 1999 and 2001, teach MFI with a 14-period lookback and 80 and 20 levels. | Fixes the defaults most users still apply without asking why they were chosen. |
| January 2021 | Record trading volume in GameStop and AMC puts volume at the center of market news. | Shows both the strength of a volume-aware reading and its risk: an extreme volume spike may mean something other than steady buying or selling. |
| Today (2026) | Free platforms list Money Flow (MFI) as a separate panel with a default length of 14. | Users see a familiar oscillator and may forget that its input is a data series with its own quality limits. |
The Money Flow Index was developed by Gene Quong and Avrum Soudack and introduced in a 1989 article. Their stated goal was explicit: take RSI's well-understood 0-to-100, overbought/oversold structure, which Chapter 1 covered, and rebuild it so that volume, not just price change, determines whether a reading is bullish or bearish. Their reasoning was that a price move backed by heavy volume represents more genuine conviction than the same price move on thin volume, information RSI has no way to capture since it never looks at volume at all.
MFI builds on "typical price" (the average of the high, low, and close) multiplied by volume to get a dollar-weighted flow, then applies the same up/down ratio structure as RSI:
Because raw dollar volume feeds directly into the calculation, a big price move on unusually light volume produces a noticeably weaker MFI reading than the identical price move on unusually heavy volume, a distinction RSI is structurally incapable of making.
The math: Money Flow Ratio = 420M ÷ 140M = 3.00. MFI = 100 − (100 ÷ (1 + 3.00)) = 100 − 25.0 = 75.0, approaching the overbought threshold of 80, with three dollars of volume-weighted buying flow for every dollar of selling flow over the lookback.
MFI is read almost identically to RSI: readings above 80 flag overbought conditions, below 20 flag oversold, and a divergence between MFI and price (price making a new high or low that MFI fails to confirm) is watched as a warning sign of weakening conviction behind the move. The key practical difference is that MFI can stay more muted during a price move on genuinely thin volume, where RSI alone might already be flashing an extreme reading.
The GameStop and AMC episode of January 2021 is a well-documented case where trading volume itself became as newsworthy as the price moves. Both stocks saw volume levels many multiples above their historical norms during the most extreme sessions. An indicator like MFI, which weights price change directly by dollar volume, would have registered those sessions as dramatically more extreme than a purely price-based oscillator like RSI would on the same candles, precisely because MFI's formula amplifies exactly this kind of volume surge rather than treating a 50% single-session move the same regardless of whether it happened on ordinary or record volume.
MFI is commonly used alongside a pure price oscillator like RSI specifically to check whether volume is confirming or contradicting a price signal: a stock hitting RSI overbought while MFI stays comparatively muted can suggest the move lacks real conviction, while both flashing overbought together is read as a stronger, more reliable signal. It's also used as a standalone divergence tool in its own right, following the same logic Chapter 1 covered for RSI.
Same illustrative series used throughout this module.
2,757 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Money Flow Index is a free, built-in indicator on TradingView and most other charting platforms, typically plotted in its own panel below the price chart with reference lines at 80 and 20.
Pick a stock around a well-documented volume-spike event (the January 2021 meme-stock episode is one dated, public example) and compare its MFI reading to its RSI reading on the same sessions.
MFI is RSI that counts money. Set the positive and negative money flow over the window.
Gene Quong and Avrum Soudack built MFI as a direct response to a known gap in RSI (Chapter 1): RSI only looks at price, so it can't tell the difference between a move on heavy volume and one on thin, unconvincing volume. By folding volume into the same overbought/oversold framework RSI traders already understood, they made an indicator that's sometimes nicknamed the “volume-weighted RSI”: familiar enough to adopt instantly, but carrying information RSI alone can't see.
This guide fixes the vocabulary of the Money Flow Index and then builds it from sixteen raw bars: Typical Price, signed money flow, the two 14-bar sums and the ratio, two consecutive readings, and a test of how changing the volume on single bars moves the result. All figures are hypothetical. Each bar’s High and Low sit 1.00 above and below its Close, so TP equals the Close, and volume is in thousands of shares.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Typical Price (TP) | (High + Low + Close) ÷ 3. | The price attached to each bar’s volume. |
| Raw Money Flow | TP × Volume for the bar. | A dollar-sized measure of how much traded at that bar’s typical price. |
| Positive flow | Raw Money Flow on a bar whose TP is above the prior bar’s TP. | Counted toward the numerator. |
| Negative flow | Raw Money Flow on a bar whose TP is below the prior bar’s TP. | Counted toward the denominator. |
| Neutral bar | A bar whose TP equals the prior TP. | Counted in neither sum, though it stays in the window. |
| Money Flow Ratio (MFR) | Sum of positive flows divided by the sum of negative flows over n bars. | Above 1 means more flow on up bars than on down bars. |
| MFI | 100 − 100 ÷ (1 + MFR). | Maps the ratio to a 0 to 100 scale. A ratio of 1 gives 50. |
| Lookback (n) | The number of flows summed, 14 in the chapter. | It takes n + 1 bars of TP to produce the first n flows. |
| Thresholds | 80 overbought and 20 oversold in the chapter. | Equal to ratios of 4 to 1 and 1 to 4. |
| Divergence | Price makes a new extreme that MFI does not confirm. | A warning that the dollar flow behind the move weakened. |
Mechanism one: from bars to the index. Take bar 2 as the first example: High 21.40, Low 19.40, Close 20.40 gives TP = (21.40 + 19.40 + 20.40) ÷ 3 = 20.40. With a volume of 620 thousand shares, Raw Money Flow = 20.40 × 620 = 12,648 thousand dollars. TP rose from 20.00, so the flow is positive.
| Bar | TP | Volume (000s) | Raw flow ($000s) | Class |
|---|---|---|---|---|
| 2 | 20.40 | 620 | 12,648 | Positive |
| 3 | 20.20 | 480 | 9,696 | Negative |
| 4 | 20.80 | 700 | 14,560 | Positive |
| 5 | 21.30 | 840 | 17,892 | Positive |
| 6 | 21.10 | 600 | 12,660 | Negative |
| 7 | 21.10 | 550 | 11,605 | Neutral |
| 8 | 21.60 | 900 | 19,440 | Positive |
| 9 | 22.00 | 1,100 | 24,200 | Positive |
| 10 | 21.70 | 650 | 14,105 | Negative |
| 11 | 22.40 | 1,250 | 28,000 | Positive |
| 12 | 22.90 | 1,300 | 29,770 | Positive |
| 13 | 22.60 | 700 | 15,820 | Negative |
| 14 | 23.10 | 1,400 | 32,340 | Positive |
| 15 | 23.40 | 1,000 | 23,400 | Positive |
| 16 | 23.00 | 800 | 18,400 | Negative |
Read across the table. Bar 7 repeats the TP of bar 6 (21.10), so it is neutral and its flow is excluded. For the reading on bar 15 the window is bars 2 to 15: positive flow 202,250, negative flow 52,281, MFR = 3.869, MFI = 100 − 100 ÷ 4.869 = 79.5. One bar later the window is bars 3 to 16: bar 2’s positive flow leaves and bar 16’s negative flow enters, giving positive 189,602, negative 70,681, MFR 2.683 and MFI 72.8. The index fell from 79.5 to 72.8 on a bar that closed down 0.40.
Sensitivity: change the volume on one bar and recompute the latest reading, bar 16. The price path is unchanged in every row.
| Scenario | Positive sum | Negative sum | MFR | MFI |
|---|---|---|---|---|
| Base case | 189,602 | 70,681 | 2.683 | 72.8 |
| Volume on bar 14 (largest positive flow) halved | 173,432 | 70,681 | 2.454 | 71.0 |
| Volume on bar 16 (largest negative flow) doubled | 189,602 | 89,081 | 2.128 | 68.0 |
| All volumes doubled | 379,204 | 141,362 | 2.683 | 72.8 |
| Volume of 1 on every bar (sums in price units) | 177.50 | 108.60 | 1.634 | 62.0 |
Halving the volume on the biggest up bar lowers MFI from 72.8 to 71.0. Doubling the volume on the biggest down bar lowers it to 68.0. Doubling every volume changes nothing (72.8), because the scale cancels in the ratio. With equal volume on every bar the same prices give 62.0. The index therefore reads volume distribution, not volume level, and a unit change (shares versus dollars) has no effect.
Mechanism two: the ratio behind each threshold. Because MFI = 100 − 100 ÷ (1 + MFR), the inverse is MFR = MFI ÷ (100 − MFI). The table converts the usual lines into the dollar-flow imbalance they represent.
| MFI | Money Flow Ratio | Positive per 1 of negative |
|---|---|---|
| 90 | 9.00 | 9.00 to 1 |
| 80 | 4.00 | 4.00 to 1 |
| 75 | 3.00 | 3.00 to 1 |
| 70 | 2.33 | 2.33 to 1 |
| 50 | 1.00 | 1.00 to 1 |
| 30 | 0.43 | 0.43 to 1 |
| 20 | 0.25 | 0.25 to 1 |
| 10 | 0.11 | 0.11 to 1 |
Read down the table. The steps are uneven: moving from 50 to 70 needs the ratio to rise from 1.00 to 2.33, while moving from 70 to 90 needs it to rise from 2.33 to 9.00. The last stretch toward 100 requires a very lopsided window, which is why readings above 90 are uncommon.
| Situation | What goes wrong | What to check |
|---|---|---|
| No negative flow in the window | The ratio divides by zero; implementations usually return 100 or no value. | Confirm what the platform does before reading a flat 100. |
| No volume reported | Every flow is zero, so both sums are zero and the index is undefined. | Do not use MFI on instruments without volume data. |
| One huge bar | A single bar can supply a large share of one sum, as bar 14 does here. | Look at the largest flow in the window and when it will leave. |
| Neutral bars | Equal TP values add nothing to either side, yet they still use a place in the window. | Count signed bars. A window of mostly neutral bars is thin. |
| Different volume sources | Volume from one venue differs from consolidated volume, so flows differ. | Compare readings only from the same data source. |
| Partial current bar | The latest bar changes as it forms, and so does its flow. | Judge divergence on completed bars. |
In plain words: MFI asks what share of the recent dollar flow went through up bars and what share went through down bars, and squeezes that ratio onto a 0 to 100 scale. A big move on thin volume barely registers. Education, not advice.
This chapter set out to teach the Money Flow Index, which rebuilds RSI so that each bar is weighted by the dollars traded. Everything hangs on one ratio: money flow on up bars divided by money flow on down bars, squeezed onto a 0 to 100 scale.
| Question | Short answer | Where it was taught |
|---|---|---|
| Positive flow $420 million, negative $140 million. What are the ratio and MFI? | Ratio 3.00 and MFI = 100 − 100 ÷ 4.00 = 75.0. | The Formula |
| Positive flow falls from $450 million to $225 million with negative flow at $300 million. What is MFI? | 225 ÷ 300 = 0.75, so MFI = 42.9. | Streamline View: Money Flow Index in One Screen |
| 4-bar window with flows 1,100 and 1,150 and 3,600 up, 2,100 down. What is MFI? | Ratio 5,850 ÷ 2,100 = 2.786, so MFI = 73.6. | Cypher Guide: Money Flow Index Built From Bars |
| What imbalance does an MFI of 80 represent? | Positive flow four times negative flow (MFR = 80 ÷ 20 = 4). | The Ratio Behind 80 and 20 |
| Why does doubling every volume change nothing? | The scale cancels in the ratio, so only the distribution of volume matters. | Cypher Guide sensitivity test |
Smoothing. Ratios. Multi-step formulas. That's what the other indicators in this module involve. Rate of Change is different: it's just a percentage-change calculation, the same basic arithmetic taught in any introductory statistics class, applied to a price series. That simplicity is exactly why it belongs here: it's one of the most widely used momentum readings in trading precisely because there's nothing to misunderstand about how it's calculated.
Rate of Change is the percentage difference between today’s close and the close a fixed number of bars ago, plotted around a zero line. The rule that matters most is that it is a plain momentum number: positive means price is above where it was N bars ago, negative means below, and rising or falling says whether that gap is growing. The usual failure is judging a reading as extreme without looking at that instrument’s own history, since ROC has no fixed ceiling or floor.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| The formula | ((Close − Close N bars ago) ÷ Close N bars ago) × 100 | The percent change over the lookback window | Compares only two points; everything between them is ignored |
| Lookback N | Commonly 9, 12 or 14 depending on the platform | A short window suits fast momentum and a much longer one suits broad trend screening | No single standard, so two charts called ROC may differ |
| Zero line | ROC above zero means price is higher than N bars ago | A cross from below to above zero is the most watched signal, similar to a MACD zero-line cross | The cross lags the actual price low, since it looks back to a fixed point |
| Rising or falling | Direction of ROC itself | Positive and rising: momentum building. Positive and falling: the gain is slowing though price is still higher | A falling positive ROC is not yet a sell signal |
| Percent scale | Moves are measured in percent, not points | A $20 stock and a $400 stock with the same percent move read the same | Comparable by size of move, not by risk or volatility |
| No bounds | No ceiling or floor like RSI | Judge extremes against the instrument’s own past ROC range | A fixed number such as 10 is large for one stock and ordinary for another |
| Roll-off effect | An old bar leaves the window each period | ROC can jump when a spike drops out of the lookback | A change caused by old data, not by anything new happening |
| Price only | No volume input | Pairs with a volume tool, such as Chapter 17’s Money Flow Index, for conviction | Says nothing about how many shares traded behind the move |
Second outcome. Suppose the close that falls out of the window is a spike at 90.00 on one bar and 80.00 on the next, while the latest close stays at 84.00. ROC is (84.00 − 90.00) ÷ 90.00 × 100 = -6.7% on the first bar and +5.0% on the second. The current close did not move, but ROC swung by 11.7 points because the comparison point changed.
In plain words: ROC says how much price has changed over a fixed window and whether that change is growing, and its readings need the instrument’s own history to mean anything. Education, not advice.
Rate of Change has no inventor and no first paper. It is the everyday idea of percentage change applied to a price series, and its history is a record of when textbooks and software made that habit standard. This section covers the pieces it is built from and says plainly where dates are unknown.
| Year | What happened | What it added to the topic |
|---|---|---|
| Mid-20th century (about) | Technical manuals already treat the percent change over a fixed window as a momentum reading. | Shows that ROC predates any named indicator, so there is no original author or setting to appeal to. |
| 1979 | Gerald Appel develops the MACD, which popularizes the zero-line cross as a momentum signal. | Gives the zero line of ROC a familiar reading, since both share the idea of a momentum measure centered on zero. |
| 1999 | John Murphy publishes Technical Analysis of the Financial Markets, a standard reference that presents momentum oscillators as ordinary tools. | Helps fix ROC in the standard toolkit next to Momentum, its sibling that subtracts instead of dividing. |
| 2001 and 2002 | Further reference books on chart analysis, published in 2001 and 2002, cover the same oscillators. | More repetition of the same definitions, with lookbacks that vary by author and platform. |
| Today (2026) | Free platforms list ROC as a built-in oscillator; some default to a length of 9 and others to 12. | Because there is no official setting, the same name on two charts can mean two different windows. |
Unlike RSI, MACD, or the Awesome Oscillator, Rate of Change has no single credited inventor and no landmark publication date: percentage change over a fixed period is a basic mathematical technique that predates modern technical analysis entirely, used across economics, statistics, and everyday life ("prices are up 3% from last month") long before anyone applied it specifically to a stock chart. Its adoption into trading is best understood the same way as pivot points from Chapter 14: a genuinely useful, simple technique that became a standard part of the toolkit through widespread practical use rather than a single author's published breakthrough.
What ROC does add, in a trading context, is a clean way to compare momentum across completely different instruments and price levels: a $5 stock moving $0.50 and a $500 stock moving $50 both register as an identical 10% ROC, something a raw price-difference calculation could never show side by side.
ROC compares today's close to the close some fixed number of periods ago and expresses the difference as a percentage:
A positive ROC means price is higher than it was N periods ago; a negative ROC means it's lower. The indicator oscillates around a zero line with no fixed upper or lower bound, unlike the 0-to-100-bounded oscillators covered earlier in this module.
The math: ROC = ((46.00 − 40.00) ÷ 40.00) × 100 = (6.00 ÷ 40.00) × 100 = +15.0%. Price is 15% higher than it was 12 periods ago: the exact same calculation that would apply whether this were a $46 stock or a $4,600 one.
ROC's read is as simple as its formula: positive and rising means accelerating upward momentum, positive and falling means the up-move is losing steam even though price is still higher than N periods ago, and the zero-line cross itself is the most commonly watched signal, similar in spirit to a MACD zero-line cross from Chapter 3. Because ROC has no fixed ceiling or floor, an extreme reading has to be judged relative to that specific instrument's own historical ROC range rather than a fixed number like RSI's 70 or 30.
The sharp early-April 2025 tariff-driven selloff and the snapback following the 90-day pause announced roughly a week later, covered across several chapters in this module, is a clean case for ROC specifically because the event is so often discussed in exactly the percentage terms ROC measures — single-session declines and gains in the multiple-percent range on major indices during that stretch. A 12-period ROC calculated through the worst of the selloff would have shown a sharply negative reading reflecting how far price had fallen from its level roughly two-and-a-half weeks earlier, then crossed back above zero as the recovery pushed the current close back above where it stood 12 sessions prior.
ROC is commonly used as a straightforward momentum-confirmation tool alongside trend indicators, and its simplicity makes it a popular building block inside more complex, custom indicators and screening formulas: a trader might screen for stocks with the strongest 3-month ROC as a simple relative-momentum ranking across an entire watchlist, something more complex oscillators are less convenient for.
The same illustrative series this chapter's real, dated example describes, measured here as a 10-bar rate of change.
18,619 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Rate of Change is a free, built-in indicator on TradingView and most other charting platforms, typically plotted as a line oscillating around a zero line in its own panel.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and track its ROC through the event.
Rate of change is today’s price compared with the price some bars ago, as a percent.
Rate of Change has no single credited inventor the way RSI or MACD do. It's one of the oldest ideas in technical analysis: simply comparing today's price to a price N periods ago, and it shows up in momentum literature going back to the early-to-mid 20th century, used by countless technicians before anyone bothered to trademark a name for it. That anonymity is almost the point: ROC is less a proprietary system than a piece of market-math infrastructure, the same way a percentage change is infrastructure for anyone reading a quarterly earnings report.
This guide fixes the vocabulary of Rate of Change and then works it from 18 raw closes: six consecutive 12-bar readings, a split of one bar’s change into a new-close part and a base part, a comparison of lookback lengths, and the arithmetic of percentages that makes rises and falls asymmetric. The series starts at the chapter’s base close of 40.00. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Close(t) | Today’s closing price. | The numerator side of the comparison. |
| Lookback (N) | The number of bars back to the comparison close, 12 in the chapter’s sample. | Platforms use 9, 12, 14 or others. There is no single standard. |
| Base close | Close(t − N), the close N bars ago. | The denominator. It changes every bar as the window slides. |
| ROC | (Close(t) − Close(t − N)) ÷ Close(t − N) × 100. | A percentage change over N bars. Positive means higher than N bars ago. |
| Zero line | The level at which today’s close equals the base close. | The main reference. A cross marks the change from net rise to net fall over N bars. |
| Momentum (price difference) | Close(t) − Close(t − N), without the division. | Same sign as ROC, but in price units, so not comparable across prices. |
| Base effect | A change in ROC caused by the base close leaving the window. | ROC can fall even when today’s close has not changed. |
| Log ROC | ln( Close(t) ÷ Close(t − N) ) × 100. | Symmetric for rises and falls and additive across periods. |
| Unbounded | No fixed upper or lower limit. | Extremes are judged against the instrument’s own ROC history. |
| Adjusted prices | Closes corrected for splits and dividends. | Required for a meaningful ROC across such events. |
Mechanism one: six readings from the raw closes. Bar 13 closes at 46.00 and the close 12 bars earlier (bar 1) was 40.00, which reproduces the chapter’s +15.00 percent. Each later bar uses a base one bar further along.
| Bar | Close | Close 12 bars ago | Change | ROC(12) |
|---|---|---|---|---|
| 13 | 46.00 | 40.00 | 6.00 | 15.00 percent |
| 14 | 47.00 | 40.50 | 6.50 | 16.05 percent |
| 15 | 46.50 | 41.00 | 5.50 | 13.41 percent |
| 16 | 48.20 | 40.20 | 8.00 | 19.90 percent |
| 17 | 47.10 | 39.80 | 7.30 | 18.34 percent |
| 18 | 45.50 | 41.30 | 4.20 | 10.17 percent |
Read across the rows. On bar 18 the Close of 45.50 is 1.60 below the prior close, and ROC drops from 18.34 to 10.17 percent, a fall of 8.17 points. Part of that comes from the new close and part from the base moving from 39.80 to 41.30. Holding the old base, the new close alone gives (45.50 − 39.80) ÷ 39.80 = 14.32 percent, a change of −4.02 points. Then the base moves up and removes another 4.15 points. Together they equal the full change.
Sensitivity: the lookback. The same 18 bars, read at bar 18 with different N. A short window compares against a recent base; a long window compares against the start of the series.
| N | Base bar | Base close | ROC(N) |
|---|---|---|---|
| 1 | Bar 17 | 47.10 | −3.40 percent |
| 5 | Bar 13 | 46.00 | −1.09 percent |
| 9 | Bar 9 | 42.50 | 7.06 percent |
| 12 | Bar 6 | 41.30 | 10.17 percent |
| 14 | Bar 4 | 40.20 | 13.18 percent |
| 17 | Bar 1 | 40.00 | 13.75 percent |
The same last close reads −3.40 percent for N = 1 and 13.75 percent for N = 17. The sign changes with the window. A reading of +10 percent has no meaning until N is stated, and a zero-line cross on N = 5 and N = 12 are different events.
Mechanism two: why percentages are asymmetric. A rise of 15 percent needs a fall of 13.04 percent to return to the start, because the fall is measured from a larger number. A percentage comparison is therefore not symmetric between up moves and down moves, and the effect grows with the size of the move. A rise at a steady rate also does not add: 15 percent over 12 bars is 1.17 percent a bar compounded, and 12 × 1.17 = 14.04, not 15.
| ROC | Reverse move needed | Log ROC of the move |
|---|---|---|
| +50 percent | −33.33 percent | +40.55 percent |
| +25 percent | −20.00 percent | +22.31 percent |
| +15 percent | −13.04 percent | +13.98 percent |
| −15 percent | +17.65 percent | −16.25 percent |
| −25 percent | +33.33 percent | −28.77 percent |
| −50 percent | +100.00 percent | −69.31 percent |
Read down the table. A fall of 50 percent needs a gain of 100 percent to recover, and a gain of 50 percent needs a fall of only 33.33 percent. The log of the reverse move has the same size and the opposite sign (ln of 0.6667 is −40.55 percent in the first row), which is why log ROC is used when moves are large or are added across periods. For small moves the two measures nearly agree.
| Situation | What goes wrong | What to check |
|---|---|---|
| Base close of zero or below | ROC divides by zero or flips sign, so the percentage has no meaning. | Do not apply ROC to series that can be zero or negative, such as spreads. |
| Split or dividend | An unadjusted series shows a jump that is not a price change. | Use adjusted closes, and compare with an adjusted source. |
| Base effect | ROC falls or rises when an old close leaves, with no news in the latest bar. | Look up the close N bars ago before interpreting a move in ROC. |
| Different N | Two charts of the same stock show different ROC for the same date. | Confirm N on each chart. |
| Comparing instruments | A +10 reading is ordinary for a volatile stock and extreme for a steady one. | Compare ROC with the same instrument’s history. |
| Treating ROC as a bound | There is no ceiling, so a high value is not a limit. | Use the zero line and slope, not a fixed overbought level. |
In plain words: ROC compares today’s close with the close N bars ago and states the difference as a percentage. Both ends of that comparison change every bar, and a percentage rise and the same-sized percentage fall are not equal. Education, not advice.
This chapter set out to teach Rate of Change, the percentage difference between today’s close and the close N bars ago. Everything hangs on one fact: the number is a plain comparison around a zero line, and both ends of the comparison move every bar.
| Question | Short answer | Where it was taught |
|---|---|---|
| Close 12 bars ago 40.00, latest close 46.00. What is ROC? | (6.00 ÷ 40.00) × 100 = +15.0%. | The Formula |
| Latest close 84.00, base 80.00. What is the ratio reading around 100? | 105.0, the same level as +5.0%. | Streamline View: Rate of Change in One Screen |
| N = 10, close 25.00 to 28.00, then base 25.80 and new close 25.20. What are the two ROC values? | +12.00 percent, then −2.33 percent, a fall of 14.33 points that crosses zero. | Cypher Guide: Rate of Change From Raw Closes |
| How large a fall reverses a 15 percent rise? | 13.04 percent, because the fall is measured from the larger number. | Percent Asymmetry in the Cypher Guide |
| Why can ROC move sharply when the latest close has not changed? | The comparison base changed, because an old close left the window. | Streamline View: Rate of Change in One Screen |
The TTM Squeeze is an indicator that doesn't introduce a new calculation so much as a new idea: take two tools already covered: Bollinger Bands from Chapter 5 and Keltner Channels from Chapter 16, and read the relationship between them as its own signal. When volatility contracts far enough that one channel tucks entirely inside the other, something is coiling, and coiled markets tend not to stay coiled for long.
The TTM Squeeze compares two channels from earlier chapters. When the Bollinger Bands sit entirely inside the Keltner Channel, volatility has contracted, the squeeze is on, and a larger move is more likely to follow. The rule that matters most is that the squeeze flags a coiled market and says nothing about direction. The usual failure is entering the moment it appears: a squeeze can last many sessions, and when it fires the move can go either way.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Bollinger Bands | 20-period average ± 2 standard deviations of price | Widen and narrow with the spread of recent closes | Respond to price dispersion, so a few unusual bars can move them |
| Keltner Channel | 20-period EMA ± 2.0 × 10-period ATR (the Chapter 16 default; the original squeeze uses 1.5 × ATR) | Widens and narrows with the average bar range | Respond to bar size, so they react differently from Bollinger |
| Squeeze ON | Bollinger upper below Keltner upper and Bollinger lower above Keltner lower | Volatility has contracted unusually far; a bigger move is likely at some point | Says nothing about when or in which direction |
| Squeeze OFF (fires) | The Bollinger Bands move back outside the Keltner Channel on either side | Volatility is expanding again; the stretch of compression is over | The first bar after the fire can be a false start |
| Momentum histogram | Usually a linear regression of price against its own average | Rising above zero as the squeeze fires leans up; falling below zero leans down | A lean, not a guarantee |
| Duration | A squeeze can persist for a long stretch | Waiting for the fire avoids entering early | Early entry ties up capital while nothing happens |
| Context | A known catalyst, such as an earnings date, supplies a reason for volatility to return | Compression before a scheduled event is a common setting | Trading every squeeze on every time frame dilutes the idea |
| Settings differ | The original version uses a Keltner multiplier of 1.5; the examples here use the 2.0 from Chapter 16 | Check what the chart is plotting before comparing signals | A different multiplier changes how often the squeeze is on |
Second outcome. Settings change the answer. With a Keltner multiplier of 1.5 the Keltner band is 20.00 ± 1.5 × 0.50, or 19.25 to 20.75. The Bollinger upper band at 20.80 is now above 20.75, so the same bar is not a squeeze. Two charts called TTM Squeeze can disagree because of a single input, so note the multiplier before comparing.
In plain words: a squeeze says the market has gone unusually quiet and is likely to move, and a patient reader waits for the fire and a direction. Education, not advice.
The TTM Squeeze is assembled from older parts. Bollinger Bands came from the 1980s, the Keltner Channel from 1960 with an ATR rebuild in the 1980s, and John Carter combined them into a single yes-or-no condition that he taught to retail traders. The dated record is short, so this section keeps to what can be placed in time.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1960 and 1980s | Chester Keltner publishes his channel in 1960, and in the 1980s Linda Bradford Raschke rebuilds it around Average True Range. | Supplies the ATR-sized channel, the half of the squeeze that responds to bar range. |
| 1980s | John Bollinger develops Bollinger Bands, sized by the standard deviation of price. | Supplies the other half, which responds to the spread of closes. The two measure volatility in different ways. |
| About 2004 | John Carter reports using the squeeze indicator from about this year. | The first dated use of the idea of comparing the two channels as a signal, two decades after the bands themselves. |
| 2018 | A third edition of Carter’s book Mastering the Trade is published in November. | Shows the squeeze still being taught in a mainstream trading text, with its setups and trade management rules. |
| Today (2026) | The squeeze is offered in two forms, the original and a later variant called Squeeze Pro, on platforms including TradeStation and thinkorswim. | The variant uses several Keltner multipliers, which is why two squeeze indicators can show different signals. |
The TTM Squeeze was developed by John Carter, a trader and the founder of Trade The Markets (TTM), and popularized through his book "Mastering the Trade" and TTM's trading education platform in the 2000s and 2010s. Carter's insight was to combine two tools this module already covers separately, Bollinger Bands (which size their bands using standard deviation of price) and Keltner Channels (which size their bands using ATR), specifically because they widen and narrow for genuinely different reasons, and the moment one tucks fully inside the other is a distinct, identifiable event neither indicator can flag on its own.
The Squeeze itself is a simple comparison between two already-familiar indicators, with an optional momentum histogram layered on top:
The Bollinger side uses Chapter 5's 20-period, 2 standard deviation default. The original squeeze pairs it with a tighter Keltner Channel than Chapter 16's default, 20 periods with a 1.5 ATR multiplier, while the worked examples in this chapter use Chapter 16's 2.0 multiplier. Either way the squeeze condition means something specific: it's not an arbitrary new threshold, it's two familiar channel settings compared directly against each other.
The math: Bollinger's $51.80 upper band sits below Keltner's $52.40 upper band, and Bollinger's $48.20 lower band sits above Keltner's $47.60 lower band. The Bollinger Bands are fully tucked inside the Keltner Channel on both sides, meeting the exact condition for Squeeze ON.
The squeeze condition itself says nothing about direction — it only says that volatility has compressed unusually tightly and is likely to expand again soon, the same underlying logic as Bollinger Band Width mentioned in Chapter 5's own discussion of volatility contraction. The companion momentum histogram is what most traders lean on for a directional lean once the squeeze fires: a rising histogram above zero as the squeeze releases favors an upside breakout, a falling histogram below zero favors the downside, though neither is a guarantee.
Volatility compression ahead of a known, scheduled catalyst (a quarterly earnings report being the most common example) is one of the clearest, most repeatable settings for a squeeze to form, since options market makers and traders alike often pull in their expected trading ranges in the days immediately before a report while everyone waits for the actual number. A stock's Bollinger Bands tightening inside its Keltner Channel in the days leading into an earnings date, followed by a sharp expansion the session the report is released, is a textbook squeeze-and-fire sequence: the release event supplies the volatility catalyst the technical setup was already flagging as overdue.
The squeeze is widely used as a setup-identification tool rather than a standalone entry trigger: a trader flags a squeeze as a stock "worth watching closely," then waits for the actual fire (bands expanding back outside) plus a directional confirmation, often from the companion momentum histogram or a separate trend tool like the moving averages from Chapter 4, before committing to a position.
Same illustrative series, a short 5-bar Bollinger/Keltner pair so the squeeze condition is visible inside a 30-bar window.
3,994 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
A version of the TTM Squeeze is a free, built-in indicator on TradingView and several other charting platforms, typically plotted as a row of colored dots along the zero line (showing squeeze on/off) with an accompanying momentum histogram.
Pick a stock with a known upcoming or recent earnings date and check whether a squeeze formed beforehand.
This squeeze technique is a useful illustration of how the tools covered across this library actually get used together in practice: it's quite literally built by combining two earlier chapters: the standard deviation bands from Chapter 5 and the ATR-based channel from Chapter 16, rather than being a wholly new calculation of its own. Every honest evidence section across this library has pointed at the same conclusion, and it bears restating here too: no single indicator replaces judgment, context, or combining tools with each other. That was true in Chapter 1, and it's just as true of a squeeze built from two indicators as it is of any single one of them.
John Carter is a professional trader and the founder of Simpler Trading, an education company built around teaching retail traders mechanical, rules-based setups. The TTM Squeeze (comparing Bollinger Bands against Keltner Channels to flag when volatility compresses before an expected expansion) is his signature contribution, popularized through his books and Simpler Trading's courses rather than through an academic paper. It's a newer-generation indicator built the way SuperTrend was: assembled from older components (Chapters 5 and 16) and repackaged into something fast to teach.
This guide fixes the vocabulary of the squeeze and then works the test by hand: a standard deviation from 20 raw closes, the comparison against a Keltner Channel, the simplification of the test to a single ratio, a timeline with the bars counted, the effect of the Keltner multiplier, and a small regression for the momentum histogram. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Bollinger Bands | SMA(20) ± 2 × standard deviation of the last 20 closes. | Width reflects the dispersion of closes, trend included. |
| Keltner Channel | EMA(20) ± 2.0 × ATR(10). | Width reflects the typical size of bars. |
| Standard deviation (σ) | The square root of the mean squared distance of the closes from their average. | Population form is used here. Platforms differ by a small factor. |
| ATR | Average True Range, the typical bar size including gaps. | The Keltner yardstick. |
| Squeeze ON | Bollinger upper below Keltner upper and Bollinger lower above Keltner lower. | Both sides must hold. Bollinger Bands sit entirely inside the channel. |
| Squeeze OFF (fire) | Either Bollinger band at or beyond the matching Keltner band. | The compression condition has ended. |
| Squeeze ratio | Bollinger width divided by Keltner width. | With equal multipliers and equal centers it equals σ ÷ ATR. Below 1 means ON. |
| Bars in squeeze | The count of consecutive ON bars. | A longer run means a longer compression; it has no fixed threshold. |
| Momentum histogram | A linear regression of price relative to its own average, plotted as bars. | Suggests which side the release favors. It is not part of the ON/OFF test. |
| Fitted endpoint | The value of the regression line at the latest bar. | Used instead of the raw latest deviation to reduce noise. |
Mechanism one: from 20 closes to the test. The closes below have an average of 50.03. Each row shows a close, its distance from the average, and the squared distance. The Keltner Channel is taken as centered on the same average, with ATR 1.20 as in the chapter’s sample.
| Bar | Close | Distance | Squared | Bar | Close | Distance | Squared |
|---|---|---|---|---|---|---|---|
| 1 | 50.40 | 0.38 | 0.141 | 11 | 50.10 | 0.08 | 0.006 |
| 2 | 49.60 | −0.42 | 0.181 | 12 | 49.90 | −0.13 | 0.016 |
| 3 | 50.50 | 0.48 | 0.226 | 13 | 50.70 | 0.68 | 0.456 |
| 4 | 49.70 | −0.32 | 0.106 | 14 | 49.30 | −0.73 | 0.526 |
| 5 | 50.30 | 0.27 | 0.076 | 15 | 50.00 | −0.02 | 0.001 |
| 6 | 49.50 | −0.52 | 0.276 | 16 | 50.20 | 0.18 | 0.031 |
| 7 | 50.60 | 0.58 | 0.331 | 17 | 49.80 | −0.23 | 0.051 |
| 8 | 49.80 | −0.23 | 0.051 | 18 | 50.50 | 0.48 | 0.226 |
| 9 | 50.20 | 0.18 | 0.031 | 19 | 49.60 | −0.42 | 0.181 |
| 10 | 49.40 | −0.63 | 0.391 | 20 | 50.40 | 0.38 | 0.141 |
Read across the result. The Bollinger upper band (50.85) is below the Keltner upper band (52.43) and the Bollinger lower band (49.20) is above the Keltner lower band (47.63), so the squeeze is ON. The Bollinger width is 1.66 against 4.80 for the channel, a ratio of 0.345.
| Keltner multiplier | Keltner range | Needed σ ÷ ATR below | Sample σ ÷ ATR | Squeeze |
|---|---|---|---|---|
| 1.0 | 48.80 to 51.20 | 0.500 | 0.750 | OFF |
| 1.5 | 48.20 to 51.80 | 0.750 | 0.750 | OFF |
| 2.0 | 47.60 to 52.40 | 1.000 | 0.750 | ON |
| 2.5 | 47.00 to 53.00 | 1.250 | 0.750 | ON |
The table uses the chapter’s sample (σ = 0.90, ATR = 1.20, average 50.00), whose ratio is exactly 0.750. At a multiplier of 1.5 the needed ratio is also 0.750, so the bands are equal and the strict test says OFF. At the chapter’s 2.0 the sample is ON. The same prices give a different status under a different setting, which is why the setting must be stated with any squeeze count. The 20-close series above, with a ratio of 0.345, is ON under every row.
Mechanism two: counting bars and finding the release. A timeline of seven bars gives σ and ATR for each. The ON/OFF test is the ratio rule above.
| Bar | σ | ATR | σ ÷ ATR | Squeeze | Bars in squeeze |
|---|---|---|---|---|---|
| 1 | 0.95 | 1.10 | 0.864 | ON | 1 |
| 2 | 0.80 | 1.15 | 0.696 | ON | 2 |
| 3 | 0.70 | 1.12 | 0.625 | ON | 3 |
| 4 | 0.72 | 1.10 | 0.655 | ON | 4 |
| 5 | 0.90 | 1.18 | 0.763 | ON | 5 |
| 6 | 1.20 | 1.30 | 0.923 | ON | 6 |
| 7 | 1.45 | 1.42 | 1.021 | OFF | 0 |
The squeeze is ON on bars 1 to 6 and the count reaches 6. The ratio is lowest on bar 3 (0.625) and climbs after that as the closes spread out. On bar 7 it is 1.021, the Bollinger Bands move back outside the channel, and the squeeze fires. Bar 6 was still ON with a ratio of 0.923, so the release is decided by exact numbers, not by a visual impression.
The fitted endpoint (0.86) is positive and rising, so the histogram leans upward, but it says nothing about size or certainty. The regression slope (0.32 per bar) is the same sign as the latest deviation.
| Situation | What goes wrong | What to check |
|---|---|---|
| Only one side inside | Bollinger upper is below the Keltner upper but the lower band is outside, so the test fails. | Check both comparisons, not only the upper. |
| Settings differ | Another Keltner multiplier (1.5 in the original version) changes how often the squeeze is ON. | Read the multiplier on each chart before comparing counts. |
| Tie | Equal bands give OFF under a strict test. | Note which inequality the platform uses. |
| Different centers | An SMA and an EMA midline can differ enough to flip a close case. | Compute both bands with the platform’s own centers. |
| Direction read from ON | The squeeze states compression only. | Use the histogram and the release bar, and treat the lean as uncertain. |
| Short window | A 5-bar regression is noisy, and a tiny sample can mislead. | Use the platform’s full window. |
In plain words: a squeeze is a comparison between two measures of spread. When the spread of closes is smaller than the typical bar size, the Bollinger Bands tuck inside the Keltner Channel. It signals compression, not direction. Education, not advice.
This chapter set out to teach the TTM Squeeze, which compares Bollinger Bands with a Keltner Channel. Everything hangs on one rule: when the Bollinger Bands sit entirely inside the channel, volatility has contracted and a larger move is more likely, but the squeeze says nothing about direction.
| Question | Short answer | Where it was taught |
|---|---|---|
| Bollinger 51.80 and 48.20, Keltner 52.40 and 47.60. Is the squeeze on? | Yes, both Bollinger bands sit inside the Keltner Channel. | The Formula |
| σ rises to 0.65 with ATR 0.50 and a 2.0 multiplier. What happens? | Bollinger 18.70 to 21.30 is outside 19.00 to 21.00, so the squeeze fires. | Streamline View: TTM Squeeze in One Screen |
| σ 0.60 and ATR 1.00. Status at 2.0 and 1.5, and the largest σ that stays ON at 1.5? | ON at both; σ must be below 0.75. | Cypher Guide: The Squeeze Test Worked From Closes |
| Does a squeeze indicate which way price will move? | No. It flags compression only; the histogram suggests a lean. | Reading the Squeeze |
| What does a ratio of 1.021 on bar 7 mean? | σ ÷ ATR is above 1, so the bands moved back outside and the squeeze fires. | Counting bars in the Cypher Guide |
One calculation, hand-checked against a chart: that describes the tools covered before this one in this library. Smart Money Concepts breaks that pattern: it's a vocabulary and a framework rather than a single formula, built around the idea that large institutional orders leave visible footprints, and that a retail trader who learns to read those footprints is reading the same map the largest players are reading. It's also, honestly, the most argued-about entry in this entire library, and that argument is worth having directly rather than glossing over.
Smart Money Concepts is a vocabulary for reading price, not a formula. It labels swing highs and lows as market structure, marks the last opposing candle before a strong move as an order block, and treats clusters of resting stop orders as liquidity that price may sweep. The rule that matters most is that these are definitions applied by judgment, so two readers can mark the same chart differently. The usual failure is hindsight: nearly any past chart can be labeled convincingly, which is much easier than calling the label in advance.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Market structure | Higher highs and higher lows mark an uptrend; lower highs and lower lows a downtrend | Label the swing points first; everything else is read against them | Which swings count is a judgment call |
| Break of Structure (BOS) | Price breaks the latest swing point in the direction of the trend | A continuation signal | A wick through the level is not the same as a close beyond it |
| Change of Character (CHoCH) | Price breaks the latest swing point against the trend | An early warning of a possible reversal | A warning, not a confirmed reversal |
| Order block | The last opposing candle before a strong, impulsive move | A zone where large orders are theorized to have been placed; price may return to it | Easy to find on any chart after the fact; marking one on every swing defeats the purpose |
| Fair value gap (FVG) | Three candles where the first candle’s range and the third candle’s range do not overlap | A visible price imbalance that price may revisit | Gaps appear constantly; only a few matter |
| Liquidity and sweep | Resting stop orders sit just beyond obvious highs and lows; a sweep is a fast spike through them followed by a reversal | Used to explain why price briefly broke a level and then reversed | Identified after the reversal, rarely before it |
| Mitigation | An order block is mitigated once price has returned and reacted at least once | Tells you the zone has already been tested | No standard rule for whether a tested zone still counts |
| Evidence | On simulated random-walk data, the textbook retest rule won 51.0% of trades against 49.4% for random entries | A small edge on synthetic prices, with a profit factor of 1.18 | Simulated data is not a real market; independent testing is thin |
Second outcome. If price instead closes below the 104.00 swing low, the higher-low sequence is broken. That is a Change of Character against the uptrend, so the order block long is dropped and the structure is relabeled. The same chart can therefore produce a trade or a cancellation, which is why the rules must be written down before the move happens.
In plain words: Smart Money Concepts gives names to swings, zones and stop clusters, and it is useful as a way to describe price but weak as a proven signal. Education, not advice.
Smart Money Concepts joins two histories that are a century apart. The older one is the tape-reading tradition around Richard Wyckoff, the newer one is a set of video lessons from the 2010s and 2020s. The ideas overlap, but the vocabulary and the audience are modern, and the dated record is thin in places.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1907 | Richard Wyckoff founds a market-analysis journal, later known as The Magazine of Wall Street. | Begins a publishing base for the idea that careful readers can infer what large operators are doing. |
| 1910 | Wyckoff publishes Studies in Tape Reading under the name Rollo Tape. | The earliest text in this lineage: reading price and volume for the footprints of large participants. |
| 1930 and 1931 | Wyckoff sets up the Stock Market Institute and runs a course on investing and speculation, later known as the Wyckoff Method. | Packages the “composite operator” idea as a teachable method, the direct ancestor of the smart money label. |
| 1934 | Wyckoff dies on March 7, and followers expand his methods in later decades. | The method continues through students and renamings, a pattern repeated by SMC. |
| Early 2000s (about) | Michael J. Huddleston begins formalizing his observations on institutional price dynamics, the framework that becomes ICT. | Origin of the order block, fair value gap and liquidity vocabulary used today. |
| About 2016 | His educational content becomes freely available as video lessons. | Moves the framework from paid programs to a mass audience and starts the spread of variants. |
| 2023 | The SEC finalizes Rule 13f-2 on short-position reporting and Rule 10c-1a on securities-lending data. | Disclosure rules aimed at the question SMC tries to answer by eye, which is where large positions actually sit. |
The intellectual roots go back to Richard Wyckoff's early-1900s "composite operator" theory: the idea that price action reflects the accumulated intentions of large, coordinated players, and that a careful chart reader can infer their footprints from volume and price behavior. The modern "Smart Money Concepts" vocabulary specifically (order blocks, fair value gaps, liquidity sweeps, break of structure) was popularized far more recently, largely through educator Michael J. Huddleston's "Inner Circle Trader" (ICT) content, which built a large following through the 2010s and especially exploded across YouTube and social media in the early 2020s. Thousands of independent creators have since built on and renamed pieces of the same framework, which is part of why terminology varies more from source to source here than with almost any other tool in this library.
Quick decoder for the words used in the definitions below.
None of these require a formula in the traditional sense. They're precise definitions applied to raw price structure:
A "liquidity sweep" or "stop hunt" is a fast, usually brief spike through one of those liquidity pools, triggering the resting stops, immediately followed by a reversal back in the opposite direction. An order block is considered "mitigated" once price returns to that zone and reacts to it at least once.
Following the White House's April 2, 2025 tariff announcement, the S&P 500 spiked sharply below its prior multi-month swing low before reversing hard on the 90-day pause announced roughly a week later. SMC practitioners widely described the initial spike as a sell-side liquidity sweep, clearing out stops resting below the obvious prior low, immediately ahead of the reversal.
That last row matters more than it might look. The sweep-and-reversal read is a genuinely common and useful pattern description, but like most SMC analysis, it's far easier to label convincingly on a chart that's already played out than to have called in real time before the reversal happened.
The most commonly taught SMC setup, step by step: identify a Break of Structure confirming a new trend direction, locate the order block (the last opposing candle before the impulsive move that caused the break), wait for price to return to that order block's price range, and look for confirmation (typically a smaller-timeframe Change of Character) before entering in the direction of the original break, with a stop placed beyond the order block itself.
This is the one entry in this library with genuinely less independent, peer-reviewed quantitative backtesting behind it than almost anything else covered so far — not because it's untested by traders, but because its definitions ("the last opposing candle before a strong move," "an obvious swing high") involve a degree of subjective judgment that's hard to encode into a single unambiguous backtest rule the way a moving-average cross can be. Its popularity is not in question; independent, rigorous statistical validation at the scale RSI or Bollinger Bands have received over decades is much harder to point to. Proponents argue the concepts describe real, observable institutional order-flow behavior; skeptics argue that with enough swing points on a chart, a trader can always find an order block or a liquidity sweep to fit whatever already happened. Both things can be true at once: genuinely useful descriptive vocabulary for price action, and also easier to apply with hindsight than in advance.
Same illustrative series used throughout this module, read here as market structure rather than a formula.
18,006 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Two SEC rules finalized back in 2023 were designed to do exactly what Smart Money Concepts tries to do by eye, except with real disclosed data instead of inference. Rule 13f-2 (Form SHO) would require large institutional investment managers to disclose their gross short positions once they cross a reporting threshold, and Rule 10c-1a would require FINRA to collect and publicly publish details on securities-lending transactions market-wide. Both are a direct answer to the exact question SMC is trying to reverse-engineer from candles: where is large, coordinated positioning actually sitting right now?
Neither rule is close to live. A Fifth Circuit Court of Appeals ruling sent both back to the SEC for further review of their combined economic cost, and the SEC has pushed the compliance dates back repeatedly: Form SHO short-position reporting isn't scheduled to begin until January 2028 (initial filings due February 14, 2028), three years after its original January 2025 target, and FINRA's securities-lending data isn't expected to start public dissemination until March 2029. Until one of those dates actually arrives (and further delay is a realistic possibility given the pattern so far), order blocks, fair value gaps, and liquidity sweeps remain inference from price and volume alone, not a cross-check against disclosed institutional positioning. That gap is exactly why the "honest evidence" caveat above matters: the chart-based read is still the only read available to a retail trader today, for at least another year and probably longer.
One more structural shift worth flagging here: Nasdaq's own proposal for a 9 PM–4 AM ET (8 PM–3 AM CT / 21:00–04:00) overnight trading session, covered in this site's GhostWire module in the chapter on pre-market and after-hours gaps ("The Gap Between"), would, if it launches anywhere close to its currently announced target date, add a new multi-hour window where volume is thin by design. Thin, by-design overnight liquidity is exactly the condition that makes a "liquidity sweep" easiest to trigger and hardest to tell apart from an ordinary low-volume wick, which is worth remembering before reading too much into any sweep that happens outside the hours this market has actually traded in for decades.
Smart Money Concepts is a genuinely useful vocabulary for describing price action that a large and growing number of traders use every day, and it's also the entry in this library that leans hardest on judgment rather than a fixed calculation, which is exactly why it closes with this caveat instead of a clean backtest number the way most other chapters do.
Smart Money Concepts traces most directly to Michael J. Huddleston, who taught under the handle “Inner Circle Trader” (ICT) starting in the 2010s, framing retail price action as a reaction to institutional order flow: order blocks, liquidity sweeps, fair value gaps. Huddleston built a large following through free YouTube content and paid mentorships rather than a published book or peer-reviewed study, which is part of why SMC is harder to pin down than older indicators in this module: it's a teaching framework passed through video lessons, with different educators since adding their own variations on his original vocabulary.
This chapter has few formulas, so this guide supplies the missing arithmetic in two parts. First it marks swings, breaks, a gap and an order block on a 12-bar hypothetical series by explicit rules, and shows how the rule chosen changes the result. Then it works the statistics behind the chapter’s simulated entry rule: expectancy, a confidence interval for the win rate, and the sample needed to detect a small edge. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Swing high / swing low | A bar whose High (Low) is above (below) the k bars on each side. | The raw material of structure. The choice of k changes which points exist. |
| Break of Structure (BOS) | Price takes out the latest swing point in the direction of the trend. | A continuation. It needs a rule: wick or close. |
| Change of Character (CHoCH) | Price takes out the latest swing point against the trend. | An early possible reversal, confirmed only by the rule used. |
| Order block | The last opposing candle before a strong move. | Marked as a zone: the full range of the candle, or its body. |
| Fair Value Gap (FVG) | Candle 1’s high is below candle 3’s low (bullish), or the reverse (bearish). | Its size is the gap between those two prices. |
| Mitigation | A return of price into a marked zone. | Measured here as the share of an FVG filled. |
| Liquidity sweep | A brief move beyond a marked swing point followed by a reversal. | Only identifiable after the reversal has occurred. |
| Expectancy | Win rate × average win − loss rate × average loss, per trade. | Positive means a gross average gain per trade, before costs. |
Mechanism one: structure by rule. The 12 bars below are the raw data. Assume the market was in a downtrend before bar 1, so the latest lower high and lower low are the reference points.
| Bar | Open | High | Low | Close | Candle |
|---|---|---|---|---|---|
| 1 | 100.00 | 102.00 | 99.00 | 101.00 | Up |
| 2 | 101.00 | 103.00 | 100.00 | 102.00 | Up |
| 3 | 102.00 | 104.00 | 101.00 | 103.00 | Up |
| 4 | 103.00 | 103.50 | 100.50 | 101.00 | Down |
| 5 | 101.00 | 102.00 | 98.00 | 99.00 | Down |
| 6 | 99.00 | 100.50 | 97.00 | 98.00 | Down |
| 7 | 98.00 | 101.00 | 97.50 | 100.50 | Up |
| 8 | 100.50 | 104.50 | 100.20 | 104.00 | Up |
| 9 | 104.00 | 106.00 | 103.20 | 105.50 | Up |
| 10 | 105.50 | 105.80 | 103.80 | 104.20 | Down |
| 11 | 104.20 | 104.50 | 102.50 | 103.00 | Down |
| 12 | 103.00 | 107.00 | 102.80 | 106.50 | Up |
Applying the rules with k = 1: swing highs at bar 3 (104.00) and bar 9 (106.00), swing lows at bar 6 (97.00) and bar 11 (102.50). The bullish FVG sits on bars 7 to 9: bar 7’s High is 101.00 and bar 9’s Low is 103.20, a gap of 2.20. The last down candle before the impulse is bar 6 (Open 99.00, Close 98.00), so the order block zone is 97.00 to 100.50 by range, or 98.00 to 99.00 by body. Bar 11 trades down to 102.50, so 31.8 percent of the FVG was filled.
| Break | By wick | By close |
|---|---|---|
| CHoCH: break above the lower high of bar 3 (104.00) | Bar 8 (High 104.50) | Bar 9 (Close 105.50) |
| BOS: break above the swing high of bar 9 (106.00) | Bar 12 (High 107.00) | Bar 12 (Close 106.50) |
The change of character is bar 8 if a wick counts and bar 9 if a close is required. The same chart yields a different date, which matters if a rule is tested. The break of structure at bar 12 is the same either way.
Sensitivity: the swing window k. The same 12 bars with k = 1, 2 and 3.
| k | Swing highs | Swing lows |
|---|---|---|
| 1 | bar 3 (104.00), bar 9 (106.00) | bar 6 (97.00), bar 11 (102.50) |
| 2 | bar 3 (104.00), bar 9 (106.00) | bar 6 (97.00) |
| 3 | none | bar 6 (97.00) |
With k = 1 there are two swing highs and two swing lows. With k = 2 the swing at bar 11 disappears because it has only one bar on its right. With k = 3 only one swing, a low, remains. The structure that a trader reads depends on this one setting, and the latest swing always lags by k bars.
Mechanism two: the statistics behind an edge claim. The chapter’s simulation reports 18,006 entries, a 51.0 percent win rate against a 49.4 percent random baseline, an average win of 3.67 percent and an average loss of 3.25 percent. Three questions follow: how large is the average gain, how certain is the win rate, and how many trades would show it.
| Number of trades | Margin of error (95 percent) | Interval for a 51 percent win rate |
|---|---|---|
| 30 | ±17.9 points | 33.1 to 68.9 percent |
| 100 | ±9.8 points | 41.2 to 60.8 percent |
| 400 | ±4.9 points | 46.1 to 55.9 percent |
| 1,000 | ±3.1 points | 47.9 to 54.1 percent |
| 18,006 | ±0.7 points | 50.3 to 51.7 percent |
Read down the table. After 100 trades the interval for a true 51 percent win rate runs from 41.2 to 60.8 percent, which includes both 49.4 percent and 60 percent. A short record cannot separate this edge from chance. Only the full simulated sample narrows the interval to about 0.7 points on each side.
How many trades are needed to detect a difference? For two groups with win rates near 50 percent, the number per group is about (1.96 + 0.84)2 × 2 × 0.25 ÷ (difference)2, which gives 80 percent power at the 5 percent level.
| Edge to detect | Trades per group | Total trades |
|---|---|---|
| 1.6 points | 15,310 | 30,620 |
| 5.0 points | 1,570 | 3,140 |
| 10.0 points | 390 | 780 |
Detecting a 1.6 point edge needs about 15,310 trades in each group, in line with the 18,006 used. A 10 point edge needs only about 390 per group. Small claimed edges require very large honest samples.
| Situation | What goes wrong | What to check |
|---|---|---|
| Hindsight labeling | Swings and blocks are easy to mark on a finished chart. | Mark zones only from bars that had already closed, with a stated k. |
| Undefined swing | Two traders choose different k and find different structure. | State k, wick or close, and timeframe with every label. |
| Overlapping trades | Trades that share bars are not independent, which overstates certainty. | Count independent trades, not signals. |
| Small sample | Dozens of trades cannot distinguish a small edge from luck. | Check the interval before the win rate. |
| Gap-heavy data | On daily bars, opening gaps create many FVGs. | Compare the count with a random-entry baseline. |
| Costs omitted | A gross edge of 0.28 percent may vanish after spreads and fees. | Subtract a realistic round-trip cost. |
In plain words: structure labels are only as reliable as the rules used to place them, and a claimed edge is only as reliable as the sample behind it. Write the rule first, count the trades honestly, and compare with a random baseline. Education, not advice.
This chapter set out to teach Smart Money Concepts as a vocabulary for reading price: structure, breaks, order blocks, fair value gaps and liquidity. Everything hangs on one point: these are definitions applied by judgment, so they describe a chart well but only become evidence when the rules are written down and tested on an honest sample.
| Question | Short answer | Where it was taught |
|---|---|---|
| Swing lows 100.00 and 104.00, swing highs 110.00 and 116.00. A close above 116.00 is called what? | A Break of Structure, which confirms the uptrend continuing. | Streamline View: Smart Money Concepts in One Screen |
| Entry 109.60, stop 108.50, target 116.00. What are risk, reward and the ratio? | Risk 1.10, reward 6.40, ratio about 5.8 to 1, on paper only. | Streamline View: Smart Money Concepts in One Screen |
| A bullish gap has candle 1 High 50.00 and candle 3 Low 51.20, and a later low of 50.80. Size and share filled? | Size 1.20; (51.20 − 50.80) ÷ 1.20 = 33.3 percent filled. | Cypher Guide: Structure Marked by Rule |
| A rule wins 52 percent of 400 trades. Is 50 percent inside the 95 percent interval? | Yes. The interval is 47.1 to 56.9 percent, so 400 trades do not show a 2 point edge. | The Statistics Behind an SMC Edge Claim |
| Why can two readers date the Change of Character differently? | One counts a wick and the other requires a close, so the label depends on the rule chosen. | Structure Marked by Rule |
On-Balance Volume, back in Chapter 6, plots volume against time, a running total, one value per bar. Volume Profile throws that axis away entirely and plots volume against price instead: a horizontal bar chart, turned sideways, showing exactly which price levels absorbed the most and least trading activity over a chosen window, regardless of when each trade happened.
Volume Profile plots how much volume traded at each price level over a chosen window, as a sideways histogram, instead of how much traded in each bar of time. The key idea is that price levels where a lot of trading happened are treated as areas of agreement, and levels crossed quickly are treated as areas of little agreement. The most common way it goes wrong is comparing profiles built over different windows, or treating the highest-volume price as an exact line rather than the centre of a zone.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Volume at price | Total volume traded at each price level inside the chosen window, regardless of when it traded | Long bars are levels that absorbed a lot of trading; short bars are levels the market barely paused at | The window choice changes the whole picture, so state it before comparing |
| Point of Control (POC) | The single price level with the highest traded volume | Read as the price the market has accepted most; price nearby tends to be pulled toward it | A tendency, not a hard line, and it can shift as new volume prints |
| Value Area (VAH and VAL) | The contiguous range holding a set share of total volume, typically 70% | Price outside the prior Value Area that moves back inside is read as a reversion toward the POC | Platforms build the range in slightly different ways, so numbers differ between tools |
| High Volume Node (HVN) | A level or cluster with unusually concentrated volume | Marks consolidation, where price spent real time | A node is only high relative to the rest of that one profile |
| Low Volume Node (LVN) | A level or cluster with unusually thin volume | In a liquid market, a zone price crossed quickly and may cross quickly again | In a thin, illiquid instrument an LVN can still act as support or resistance |
| Profile shape | Single-peak (bell) or double-peaked (double-distribution) outline; a lopsided single bulge is called P-shaped or b-shaped | A bell suggests balance around one fair price; two peaks suggest two accepted prices with a thin zone between | Shape depends on window length; a single session can disagree with a multi-week composite |
| Evidence | Practitioner experience more than peer-reviewed backtests | Treat the rules as a framework for organising levels | No rigorous academic test supports the specific entries and exits |
Reading the example: a close at 103 sits above the Value Area high of 101. The classic reading watches whether price re-enters the area and drifts back toward the POC at 100, or pushes on with strong volume as a breakout. The profile does not say which will happen; it only shows where the market has already spent its effort.
In plain words: the profile shows where trading piled up and where it did not, and its levels are zones to compare, not lines to trust. Education, not advice.
Volume Profile is the volume-based form of an older idea, Market Profile, which charted how often price visited each level. The history is a story of data: the method began as a way to read an exchange floor, and it became a volume tool only when exact volume at each price was recorded electronically and offered by charting platforms.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1848 | The Chicago Board of Trade is founded. | The exchange where the profile idea would later be worked out by a floor trader. |
| 1985 | Market Profile is introduced to the public as a Chicago Board of Trade product, with a manual and data service, after J. Peter Steidlmayer had spent years as an exchange trader developing the concept. | The first packaged price-by-activity view. Its unit was time spent at a price, not volume. |
| 1986 | Steidlmayer and Kevin Koy start Market Logic School to teach trading with the profile. | Teaching it as a way of reading balance and fair value, which is the vocabulary behind the Value Area. |
| 1987 | A first university course on Market Profile is launched at Western Illinois University. | The method moves from the trading floor into academic teaching. |
| 1989 | Steidlmayer on Markets is published. | A widely read book that spread the framework beyond exchange members. |
| 1992 | CME Globex, the electronic trading platform, begins operating. | Electronic order matching produced records of every trade, the raw material for true volume-at-price. |
| 2007 | The Chicago Mercantile Exchange and the Chicago Board of Trade complete their merger. | The exchange that created the profile concept joins the group that runs the main electronic futures markets. |
Volume Profile descends directly from Market Profile, developed by J. Peter Steidlmayer at the Chicago Board of Trade in the early 1980s. Steidlmayer's original version used Time Price Opportunity (TPO) letters (one letter per half-hour period, stacked at each price the market visited) as a proxy for activity, since exact volume-at-price data wasn't practically available to most traders at the time. Volume Profile is the modern evolution: once electronic markets made real traded volume available at the individual price level, charting platforms substituted actual volume for the TPO letter count, producing a more literal picture of where trading genuinely concentrated.
None of this needs a formula so much as a definition applied to the volume-at-price data itself:
The shape that emerges is usually described as the profile's "type": a normal, bell-shaped single-peak profile suggests a balanced, fairly-valued range; a double-peaked ("double-distribution") profile suggests the market spent real time at two separate price levels with a thin, quickly-traversed zone between them.
A Volume Profile built over the full April 2025 selloff-and-recovery window on the S&P 500 can show thin volume at the most extreme intraday lows of the initial crash, which the market touched only briefly, sitting beneath two much heavier volume nodes: one around the pre-crash level, and a second, newly forming one around the post-recovery price.
That thin low-volume node at the crash low is exactly the kind of level Volume Profile traders watch for: a price the market barely paused at tends to get revisited and crossed quickly if price ever returns there, rather than acting as a zone of real support.
The most common Volume Profile approach treats the prior session's or prior range's Value Area as the expected "fair" trading zone: price opening or trading outside the prior Value Area, then moving back inside it, is read as a reversion trade back toward the POC, while a strong, high-volume push through the Value Area High or Low with continued volume is read as a genuine breakout rather than a reversion setup. The POC itself is treated as a magnet: a level price tends to gravitate back toward when it's nearby, precisely because it represents the price the market has already agreed on most.
Market Profile's originator, Steidlmayer, built the framework from direct CBOT floor-trading observation rather than a published statistical backtest, and most of the evidence for Volume Profile specifically remains practitioner-reported rather than peer-reviewed academic research, similar in that respect to Smart Money Concepts earlier in this library. The underlying idea it's built on is broader: that trading activity in liquid markets tends to cluster in roughly bell-shaped distributions around a fair-value centre, an assumption drawn from auction-market thinking that is older than the specific POC/Value Area trading rules built on top of it.
Same illustrative series. Volume is heaviest on the crash and breakout bars, which is what pulls the POC down toward the lower half of the range.
10,953 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Volume Profile answers a question none of the time-based volume tools earlier in this library can: not how much volume traded, or when, but exactly where — and that horizontal view of the market is precisely what makes the POC and Value Area meaningfully different from anything covered before it.
J. Peter Steidlmayer was a floor trader at the Chicago Board of Trade who, in the early 1980s, developed Market Profile: a way of plotting how much time and volume price spent at each level during a session, rather than just plotting price over time. Volume Profile is the modern, volume-based descendant of that idea. Steidlmayer wasn't trying to build a retail indicator; he was trying to help CBOT members read where “fair value” had actually formed during the day, back when that meant standing in a pit, not staring at a screen.
Volume Profile is a counting exercise followed by a ranking exercise. This guide fixes the vocabulary, builds a profile from raw bars, and then works the Value Area two ways to show how much of the answer depends on the method. Every figure is hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Level or bin | One price slot of fixed width, such as 1.00 | Every trade is counted in exactly one bin; the bin width is a setting, not a fact |
| Volume at price | The total shares traded inside one bin over the window | The bar length in the sideways histogram |
| Window | The span of bars that feeds the profile | Different windows give different profiles; compare only like with like |
| Total volume | The sum of volume at price across all bins | The denominator for every share and percentage |
| Point of Control (POC) | The bin with the largest volume at price | The centre of the zone, not an exact line |
| Value Area target | The share of total volume to enclose, usually 70% | Target volume = total × 0.70 |
| Value Area High and Low | The top and bottom bins of the enclosed range | VAH and VAL; their position depends on the build rule |
| One-level expansion | Grow from the POC by adding the larger single neighbour each step | The method used in the Streamline View |
| Two-level expansion | Compare the next two bins above with the next two below and add the larger pair | A common platform rule; it can return a wider area |
| Node ratio | Volume at one bin divided by the average per bin | Below 1 is thin, well above 1 is heavy; the cut-offs are conventions |
| High and Low Volume Node | A bin or cluster far above or far below the average per bin | HVN marks agreement, LVN marks a level crossed quickly |
| Composite profile | A profile that merges several sessions into one window | Gives the longer-range POC against which a single session is checked |
Mechanism one: from bars to a profile. A profile starts as ten bars, each reduced to one close and one volume, in thousands of shares. Assigning a bar’s whole volume to its close is a simplification; real tools may spread a bar’s volume across its range or use tick data. Counting is then a sum per bin, and the POC is the largest sum.
| Bin | Bars counted | Volume (thousands) | Share of total |
|---|---|---|---|
| 98 | 1 | 14 | 9.3% |
| 99 | 2 | 31 | 20.7% |
| 100 | 3 | 59 | 39.3% |
| 101 | 3 | 37 | 24.7% |
| 102 | 1 | 9 | 6.0% |
Now add one more bar that closes at 98 on 50 thousand shares. The 98 bin rises to 64, above the 59 at 100, so the POC jumps two bins down although most of the old structure is unchanged. Total volume becomes 200, the target 140, and the Value Area becomes 98 to 100 holding 154 (77.0%). Read across the rows: one heavy bar moved the POC by two bins, which is why the POC is read as a zone and why a profile must be rebuilt as new volume prints.
Mechanism two: the same data, two build rules, four targets. Take the Streamline View profile (96 to 104, total 152). One-level expansion adds the larger single neighbour. Two-level expansion compares the pair of bins above the range against the pair below and adds the stronger pair. The target share is also a setting.
| Target | Volume needed | One-level range | Volume held | Two-level range | Volume held |
|---|---|---|---|---|---|
| 60% | 91.2 | 99 to 101 | 100 (65.8%) | 98 to 102 | 130 (85.5%) |
| 70% | 106.4 | 98 to 101 | 118 (77.6%) | 98 to 102 | 130 (85.5%) |
| 80% | 121.6 | 98 to 102 | 130 (85.5%) | 98 to 102 | 130 (85.5%) |
| 90% | 136.8 | 97 to 102 | 139 (91.4%) | 96 to 102 | 143 (94.1%) |
Read across the 70% row: the two rules disagree about the upper edge by one bin (101 against 102) and about the share held by 7.9 points. Raising the target from 60% to 90% widens the one-level area from three bins to six. A level reported as outside the Value Area under one setting can sit inside it under another. The node ratio adds one more view: the average per bin is 152 ÷ 9 = 16.9, so the 42 at the POC is 2.49 times the average, while the 3 at 104 is 0.18 times. Merging bins in pairs gives 13, 49, 69, 18 and 3: the POC bin still holds the most, now with 45.4% of volume, but its price is a two-point band instead of a single level.
Where the method breaks.
| Situation | What goes wrong | What to check |
|---|---|---|
| Few trades per bin | One or two large prints decide the POC, as the 50 thousand bar did above | Count the trades behind the top bins before trusting the peak |
| Twin peaks of equal height | The POC is ambiguous and tools may pick the higher or the lower bin | Note both peaks and which one the platform draws |
| Bin width too narrow or too wide | Narrow bins look jagged and move the POC often; wide bins hide the shape | Rebuild at two widths and see whether the POC stays in the same band |
| Window changed | A different start date gives a different POC and Value Area | Record the window beside every level |
| Volume assigned to the close only | Time spent inside a bar’s range is ignored | Use tick or fine-interval data where the platform allows it |
| Thin or illiquid instrument | A low-volume node may not be crossed quickly because few trades exist at any level | Compare the node with the instrument’s normal volume per bin |
In plain words: a profile is a tally by price, the POC is its tallest column, and the Value Area is whatever the chosen rule encloses, so the settings belong beside every level read from it. Education, not advice.
This chapter set out to show where trading happened, not when. Volume Profile turns volume into a sideways histogram by price level, and the one idea behind it is that heavily traded prices mark agreement while thinly traded prices mark places the market passed through quickly.
| Question | Short answer | Where it was taught |
|---|---|---|
| Volumes of 4, 9, 18, 31, 42, 27, 12, 6 and 3 sit at levels 96 to 104. What is the POC and the 70% target? | POC is 100 (42). Total is 152, so the target is 152 × 0.70 = 106.4. | Streamline View: Volume Profile, POC and Value Area |
| What range does one-level expansion give for that profile, and what share does it hold? | 98 to 101, holding 118 of 152, which is 77.6%. | Cypher Guide: Building a Profile and Its Value Area by Hand |
| Five bins at 20 to 24 hold 5, 12, 28, 20 and 10. What is the POC and the Value Area? | Total 75, target 52.5. POC is 22. Adding 23 gives 48, then adding 21 gives 60, so the area is 21 to 23 (80%). | Cypher Guide: Building a Profile and Its Value Area by Hand |
| Why is a Low Volume Node read as a level crossed quickly? | Few trades happened there, so little agreement formed to slow price. This weakens in illiquid instruments. | The Core Concepts: POC, Value Area and Volume Nodes |
| Why should two profiles not be compared if their windows differ? | The POC and Value Area shift with the window, so the levels do not measure the same thing. | Common Mistakes |
One binary decision per bar: that's all On-Balance Volume (Chapter 6) makes, adding the full volume if the close is up and subtracting it if the close is down. The Accumulation/Distribution Line asks a more specific question: not just whether the close was up or down, but exactly where inside the day's own range it landed, and weights each bar's volume proportionally to that answer.
The Accumulation/Distribution Line (A/D Line) adds up volume weighted by where each bar closed inside its own high-low range. A close near the top of the range counts as mostly buying, a close near the bottom as mostly selling, and a close in the middle as roughly neutral. The rule that matters most is that only the slope of the line and its agreement with price carry meaning, never its absolute level. It most often goes wrong when one wide-range, high-volume bar swings the whole line, or when a single divergence is treated as a sure reversal.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Money Flow Multiplier | ((Close − Low) − (High − Close)) / (High − Low), from +1 to −1 | +1 is a close at the high, 0 is the exact middle, −1 is a close at the low | Says nothing about the move from the prior bar; only about position inside this bar |
| Money Flow Volume | The multiplier times the bar’s volume | Positive adds to the line, negative subtracts, scaled by how heavy the bar was | A huge-volume, wide-range bar can dominate the short-term slope |
| A/D Line | Running total of Money Flow Volume | A rising line that agrees with rising price suggests accumulation behind the move | The starting point and scale are arbitrary, like On-Balance Volume |
| Divergence | Price makes a new extreme that the line does not confirm | Price at a higher high with the line at a lower high is the classic bearish warning | A warning to watch for confirmation, not an automatic reversal signal |
| Versus OBV | OBV adds the full volume on any up close; the A/D Line scales it by close position | The two can disagree bar to bar on the same data | Neither is right by default; decide which question you are asking |
| Chaikin family | Chaikin Money Flow and the Chaikin Oscillator are built on this same base | Money Flow is the bounded form; the Oscillator is a MACD-style difference of two EMAs of the line | Related but read differently, so do not mix their scales |
| Evidence | A Monte Carlo test on random-walk data: 52.4% win rate against a 51.7% random-entry baseline | An edge of about 0.7 points on synthetic data is within noise | Real-market value comes from genuine structure, which a simulation lacks |
Reading the example: after Bars A and B the line is back at zero even though 4,000,000 shares traded, and Bar C’s middle-of-range close leaves it unchanged. The line moves only when closes lean toward one end of the range, which is why it is read for slope and divergence rather than level.
In plain words: the A/D Line asks where each bar closed, not just whether it closed up, and builds a running total from the answer. Education, not advice.
The Accumulation/Distribution Line belongs to a family of cumulative volume tools that began with a simple up-or-down count. Its history is a story of refinement: Marc Chaikin, a broker who moved into options and then into building his own indicators, replaced the one-bit question of the earlier tool with a measure of where the close landed. Accounts differ on the exact year of the line itself, so the dates below are those of the surrounding career and the books that spread the idea.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1963 | Joseph Granville publishes Granville’s New Key to Stock Market Profits, introducing On-Balance Volume. | The one-bit volume running total that the A/D Line was built to refine. |
| 1965 | Marc Chaikin begins work as a stockbroker. | The start of a market career that moved from retail broking into options and then into indicator building. |
| 1980 | Chaikin begins developing proprietary stock market indicators. | The period in which his volume tools, including the A/D Line, took shape. |
| 1982 | He joins Drexel Burnham Lambert and begins a regular segment on the Financial News Network. | A public platform that made his work known beyond the trading desk. |
| 1992 | He sells his securities firm, Bomar Securities, to Instinet and becomes a senior vice-president there. | Volume-flow ideas move into institutional trading technology. |
| 1993 | Alexander Elder’s Trading for a Living is published, one of the print references that describes Chaikin’s volume work. | A widely read book that carried the A/D Line to retail traders. |
| Late 2000s | Chaikin starts a research firm that carries his name and indicator work. | The line, Chaikin Money Flow and the Chaikin Oscillator are packaged for a general audience. |
Marc Chaikin developed the Accumulation/Distribution Line, building it specifically to address what he saw as OBV's biggest blind spot: a bar that closes up by a single tick gets the exact same full-volume treatment as one that closes up at the very top of a wide range. Chaikin's fix was to scale each bar's volume by a ratio describing where the close actually fell between the high and the low, so a strong close near the top of the range contributes far more "accumulation" than a weak, barely-up close does. He later built two further tools on top of this exact same base calculation, both still in wide use today: Chaikin Money Flow, a bounded, fixed-period version of the same idea, and the Chaikin Oscillator, a MACD-style difference between two EMAs of the A/D Line itself.
The Money Flow Multiplier ranges from +1 (the close landed exactly at the high) to −1 (the close landed exactly at the low), and sits at 0 for a close precisely in the middle of the range. Like OBV, the A/D Line is a running cumulative total with no fixed scale: its absolute level means nothing on its own, and only its slope and its agreement or disagreement with price is ever read.
Bar A: High $52, Low $48, Close $51.50, Volume 2,000,000. Bar B: High $52, Low $48, Close $48.50, Volume 2,000,000. Both bars close higher than their own open and would register identically on a plain up/down volume count.
This is precisely the distinction OBV cannot make on its own — it would treat both bars identically, while the A/D Line reads Bar A as real accumulation and Bar B as quiet distribution happening underneath a technically "up" close.
Same illustrative series used throughout this module.
26,162 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
The Accumulation/Distribution Line is what OBV looks like once "up or down" gets replaced with "how convincingly up or down", a small refinement in the formula that changes which bars actually move the needle.
The A/D Line adds each bar’s money flow volume to a running total. Set a bar and see what it contributes.
Marc Chaikin built the Accumulation/Distribution Line as a refinement of the same volume-flow idea behind Granville's OBV (Chapter 6), but with a specific complaint: OBV adds or subtracts an entire day's volume based only on whether the close was up or down, ignoring where in the day's range that close actually landed. Chaikin's version weights volume by where the close sits between the high and low, a more granular read on buying versus selling pressure. He later built an entire analytics firm, Chaikin Analytics, around this and related volume-flow tools, including CMF in Chapter 26.
The A/D Line looks simple, yet three details decide what it shows: the multiplier built from one bar, the running total, and the way an unusual bar leaks into everything built on top of it. This guide fixes the vocabulary, computes the line beside On-Balance Volume on six bars, and then tests how one extreme bar moves it. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| High, Low, Close | The three prices of the bar that fix the close position | The multiplier ignores the open and the prior close |
| Range | High minus Low | The denominator; a zero range makes the ratio undefined |
| Close location value | (Close − Low) − (High − Close), the numerator of the multiplier | Positive above the midpoint, negative below, zero at the midpoint |
| Money Flow Multiplier | Close location value divided by the range, from −1 to +1 | The fraction of the bar’s volume counted as buying or selling |
| Money Flow Volume | Multiplier × Volume | The signed amount one bar adds to the line |
| A/D Line | Running sum of Money Flow Volume from a chosen start | Read by slope and by agreement with price, never by level |
| Seed | The starting value of the running total, usually 0 | Shifts the whole line up or down without changing its shape |
| On-Balance Volume | Running sum of ± full volume by close direction | The one-bit comparison used in Chapter 6 |
| Divergence | Price makes a new extreme that the line does not | A warning to watch, not a signal on its own |
| Chaikin Oscillator | 3-period EMA of the line minus 10-period EMA of the line | Inherits every outlier in the line; the EMA weight is 2 ÷ (N + 1) |
| Outlier bar | A bar with unusually wide range and heavy volume | Can dominate the short-term slope of the line |
Mechanism one: six bars, two running totals. Each bar needs only its high, low, close and volume. The first two bars are those of the Streamline View, so the line returns to zero after bar 2. Volumes are in thousands of shares, and On-Balance Volume starts at 0 on bar 1 because it needs a prior close.
| Bar | High / Low / Close | Volume (k) | Multiplier | Money flow volume (k) | A/D Line (k) | OBV (k) |
|---|---|---|---|---|---|---|
| 1 | 52 / 48 / 51.50 | 2,000 | 0.75 | 1,500 | 1,500 | 0 (start) |
| 2 | 52 / 48 / 48.50 | 2,000 | −0.75 | −1,500 | 0 | −2,000 |
| 3 | 50 / 46 / 48.00 | 1,500 | 0.00 | 0 | 0 | −3,500 |
| 4 | 51 / 47 / 50.00 | 1,800 | 0.50 | 900 | 900 | −1,700 |
| 5 | 53 / 49 / 49.40 | 2,200 | −0.80 | −1,760 | −860 | −3,900 |
| 6 | 52 / 50 / 51.80 | 1,200 | 0.80 | 960 | 100 | −2,700 |
Read across the rows. On bar 5 the close of 49.4 is below the prior close of 50, so OBV subtracts the full 2,200, while the A/D Line subtracts 1,760 because the close sat 0.4 above the low. On bar 6 the two tools end at 100 and −2,700: both moved the same direction on most bars, but their sizes differ each time. The seed is arbitrary. Starting the line at 5,000 instead of 0 would add 5,000 to every row and change no slope.
Mechanism two: one outlier bar, and the oscillator built on the line. Add a seventh bar with High 56, Low 48, Close 48.5 and a volume of 9,000 thousand. Its range is twice the usual width and its volume is more than four times the typical bar.
Read across the lines: a single bar outweighed the six bars before it combined and left the line at −7,775. The Chaikin Oscillator inherits the jolt. With both averages seeded at the first line value of 1,500, the 3-period weight is 2 ÷ 4 = 0.5 and the 10-period weight is 2 ÷ 11 = 0.1818. After bar 2 the averages are 750 and 1,227; after bar 3 they are 375 and 1,004. The short average reacts about three times faster, so the oscillator swings first and furthest after any outlier. Seeding rules differ between platforms, so early values will not match every chart.
| Situation | What goes wrong | What to check |
|---|---|---|
| High equals Low | The range is zero and the multiplier divides by zero | Many tools set the multiplier to 0; confirm what the platform does |
| Gap up that closes at the low | OBV adds the full volume while the multiplier is near −1 | Decide which question you are asking: direction of close or position of close |
| Outlier bar in the window | One wide, heavy bar overrides several quiet ones | Look at the biggest Money Flow Volume before reading the slope |
| Zero or missing volume | The bar adds nothing, which may hide a data gap | Check the volume column for blanks before trusting a flat stretch |
| Different start date | The level changes while the slope does not | Compare slopes and divergences, never levels |
| Close in the middle all window | The line stays flat even on heavy volume | A flat line here means balanced closes, not low activity |
In plain words: the A/D Line weighs each bar’s volume by where it closed, adds the results, and is only trustworthy when no single bar dominates the total. Education, not advice.
This chapter set out to refine On-Balance Volume. Instead of asking only whether a bar closed up or down, the Accumulation/Distribution Line asks where inside its own range the bar closed, and the one idea is that this position decides how much of the volume counts as buying or selling.
| Question | Short answer | Where it was taught |
|---|---|---|
| A bar has High 52, Low 48, Close 51.50 and volume 2,000,000. What does it add to the line? | Multiplier = ((3.50) − (0.50)) ÷ 4 = +0.75, so it adds +1,500,000. | The Formula: Weight Each Bar By Where It Closed |
| A bar has High 30, Low 26, Close 29, volume 500 thousand, and the line stood at −100 thousand. What is the new value? | Multiplier = (3 − 1) ÷ 4 = 0.50, Money Flow Volume = 250, new line = 150 thousand. | Cypher Guide: The Multiplier, the Running Total and the Outlier Bar |
| What does a bar with High = Low = 30 add? | The range is 0, so the ratio is undefined. A tool that sets it to 0 adds 0. | Cypher Guide: The Multiplier, the Running Total and the Outlier Bar |
| Why is the absolute level of the line not read? | It is a cumulative total with an arbitrary start and scale. Only slope and agreement with price matter. | Common Mistakes |
| Which two tools did Marc Chaikin later build on this line? | Chaikin Money Flow and the Chaikin Oscillator. | Who Developed This, and Why |
Where price is. How fast it's moving. Between them, those two questions cover almost all the tools in this library. Aroon measures something different: how much time has passed since price last printed a genuine extreme. That single shift in perspective, from price level to elapsed time, is the whole idea behind it.
Aroon measures time, not price: how many bars have passed since the highest high and the lowest low inside a lookback window, scaled from 0 to 100. A line at 100 means the extreme happened on the current bar, and it decays toward 0 the longer price goes without a new one. The rule that matters most is that Aroon says when the last extreme occurred, never how big the move was. It most often goes wrong in sideways markets, where highs and lows alternate and the lines cross again and again.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Aroon Up | ((N − periods since the highest high) / N) × 100 | 100 means a new high on this bar; low readings mean the last high is old | Says nothing about how far price rose |
| Aroon Down | ((N − periods since the lowest low) / N) × 100 | 100 means a new low on this bar; low readings mean the last low is old | Mirror of Up, with the same blind spot for size |
| Aroon Oscillator | Aroon Up minus Aroon Down, from −100 to +100 | Above zero, highs are more recent than lows; crossing zero matches a line cross | One line hides which side is pinned and which is fading |
| Line cross | Up crossing above Down marks a possible new uptrend; the reverse marks a downtrend | Up above 70 with Down below 30 is a strong, established trend | Crosses multiply in choppy ranges and are low quality there |
| Both lines below 50 | Neither extreme is recent | A consolidating market with no dominant trend | Easy to mistake for a signal when it is the absence of one |
| Lookback N | Standard setting is 25 periods | A shorter window reacts faster and crosses more often | Faster means more false crosses; the speed and noise trade-off is the same as in any lookback tool |
| Pinned at 100 | A new extreme is printed on the current bar | Common and expected during a strong trend | It is not an overbought reading and gives little fresh information mid-trend |
Reading the example: in Case 1 Aroon Up is above 70 and Aroon Down is below 30, the textbook signature of a freshly confirmed uptrend. In Case 2 Down is above Up, so a downtrend reading is forming, but the 60 on Aroon Up shows the last high is not ancient. On random-walk test data the textbook entry rule scored 51.9% against a 52.2% random-entry baseline, so the value lies in structure, not in the arithmetic.
In plain words: Aroon counts the bars since the last high and low, so it tells you how fresh a trend is and nothing about how strong. Education, not advice.
Aroon is a counting tool, and counting the age of an extreme is an old chart habit. Channel breakout rules had long watched the highest high and lowest low of a window, and Tushar Chande turned that idea into two bounded lines in the mid-1990s. His book and its companion tools placed Aroon in the toolkit of the retail charting era.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1960s | Richard Donchian popularises channel rules built on the highest high and lowest low of a recent window, such as the four-week breakout. | The window of highs and lows that Aroon later measures the age of. |
| 1978 | J. Welles Wilder publishes New Concepts in Technical Trading Systems, introducing the Directional Movement system and other trend tools. | A price-based trend measure that Aroon contrasts with by counting time instead. |
| 1994 | Tushar Chande, with Stanley Kroll, publishes The New Technical Trader, the book that also introduced Stochastic RSI. | A manual of new indicators, placing Aroon in a family of tools built for measuring momentum and trend. |
| 1995 | Most references date the Aroon indicator to this year and give its name as a Sanskrit word for early dawn light. | The date to quote when asked when the indicator appeared. |
| 2001 | Chande publishes the second edition of Beyond Technical Analysis, on developing and testing trading systems. | The author’s later emphasis on testing rules, which is the right attitude toward Aroon’s textbook crosses. |
Tushar Chande introduced Aroon in 1995, a year after his book The New Technical Trader, co-written with Stanley Kroll. The name comes from Sanskrit, meaning roughly "dawn's early light". Chande's own framing was that the indicator was built to catch the first light of a new trend as early as possible, before most price-based or momentum-based tools would confirm it.
The standard lookback is 25 periods. Both Aroon Up and Aroon Down are bounded between 0 and 100: a fresh new high on the current bar sets Aroon Up to exactly 100, and it decays toward 0 the longer price goes without printing a new one. Aroon Down works identically off the lowest low.
A stock prints a fresh 25-period high today, and its lowest low over the same window occurred 20 periods ago.
Aroon Up pinned at 100 with Aroon Down down near 20 is the textbook signature of a strong, freshly-confirmed uptrend: new highs happening now, the last meaningful low a long time ago.
Same illustrative series used throughout this module.
8,119 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Aroon doesn't measure a price level, a rate of change, or a volume flow: it measures a clock, counting down from the last time the market actually made new history in either direction.
Aroon counts how many bars have passed since the highest high and the lowest low in the window.
Aroon comes from Tushar Chande, the quantitative analyst already met in Chapter 2 for Stochastic RSI. Where that tool refined a momentum oscillator, Aroon tackles a different question entirely: not whether a market is overbought, but how many periods have passed since the most recent high and low, as a way of catching a new trend right as it begins rather than after it's already underway. Chande named it after the Sanskrit word for “dawn”, meant to evoke an indicator built to spot a trend's first light.
Aroon turns two questions, when was the highest high and when was the lowest low, into numbers between 0 and 100. This guide fixes the counting convention, which is where most mismatches with chart platforms come from, then works the indicator from raw highs and lows and tests how it changes with the lookback. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Lookback N | The number of bars back that the search reaches | The standard value is 25; the window then holds N + 1 bars, the current one and N before it |
| Window | The bars searched for the highest high and lowest low | Bars t − N through t, inclusive |
| Bars since high | Count of bars from the highest high in the window to the current bar | 0 when the current bar holds it, N when the oldest bar holds it |
| Bars since low | The same count for the lowest low | Computed independently of the high |
| Aroon Up | (N − bars since high) ÷ N × 100 | 100 on a fresh high, 0 when the high has aged out of the window |
| Aroon Down | (N − bars since low) ÷ N × 100 | 100 on a fresh low, 0 when the low is N bars old |
| Aroon Oscillator | Aroon Up minus Aroon Down | Ranges from −100 to +100 |
| Step size | 100 ÷ N, the gap between possible readings | 4 points at N = 25; 20 points at N = 5 |
| Tie rule | Which bar counts when two bars share the extreme | Most platforms keep the most recent; some keep the oldest |
| Warm-up | The first N bars, where the window is not full | No reading, or a reading on a partial window |
| Size blindness | Aroon records timing only | A new high by one tick and a new high by ten points both give 100 |
Mechanism one: counting from raw highs and lows. Use N = 5, so each window holds six bars. The series has twelve bars, and the table lists bars 6 to 12, since the first reading is possible at bar 6. For each bar, find the position of the highest high and the lowest low inside the window, count back to the current bar, and apply the formula.
| Bar | High / Low | Bars since high | Bars since low | Aroon Up | Aroon Down | Oscillator |
|---|---|---|---|---|---|---|
| 6 | 11.2 / 10.5 | 1 | 5 | 80 | 0 | 80 |
| 7 | 11.0 / 10.1 | 2 | 5 | 60 | 0 | 60 |
| 8 | 10.6 / 9.8 | 3 | 0 | 40 | 100 | −60 |
| 9 | 10.9 / 10.0 | 4 | 1 | 20 | 80 | −60 |
| 10 | 10.4 / 9.5 | 5 | 0 | 0 | 100 | −100 |
| 11 | 10.2 / 9.2 | 5 | 0 | 0 | 100 | −100 |
| 12 | 10.7 / 9.6 | 5 | 1 | 0 | 80 | −80 |
Read across the rows. At bar 6 the high of 11.4 is one bar old, so Up is 80. Up falls by 20 on each bar without a new high, and from bar 8 it passes below Down. The oscillator crosses zero between bars 7 and 8, when the low at bar 8 resets Down to 100, and it reaches the floor of −100 at bars 10 and 11 as new lows keep printing. Every value is a multiple of 20 because the step size is 100 ÷ 5. At N = 25 the step is 4, so the plotted line looks smoother, but the information is the same: only the age of an extreme.
Mechanism two: the lookback as a sensitivity run. Hold bar 12 fixed and change N. A longer window includes older bars, so it can reach an earlier extreme.
| N | Window bars | Bars since high | Bars since low | Up | Down | Oscillator | Step |
|---|---|---|---|---|---|---|---|
| 3 | 4 (bars 9 to 12) | 3 | 1 | 0 | 67 | −67 | 33.3 |
| 5 | 6 (bars 7 to 12) | 5 | 1 | 0 | 80 | −80 | 20.0 |
| 10 | 11 (bars 2 to 12) | 7 | 1 | 30 | 90 | −60 | 10.0 |
Read across the rows. With N = 3 the high of 10.9 at bar 9 is three bars old and Up is 0. With N = 10 the window reaches back to the 11.4 high at bar 5, which is seven bars old, so Up is 30. The low at bar 11 is the same in all three windows, so Down reads 67, 80 and 90. The oscillator reads −67, −80 and −60 for the three settings, and Up is 0, 0 and 30: the shorter windows treat the old high as expired, while the longest still counts it. The lookback is a choice about how much history counts as recent.
| Situation | What goes wrong | What to check |
|---|---|---|
| Tie between two equal highs | Bars since high depends on whether the oldest or latest bar is kept | Confirm the tie rule; it can shift Up by a full step |
| Flat market, all highs equal | With a most-recent tie rule both lines can read 100 at once | Treat identical readings on both lines as a flat market, not a trend |
| Window length N versus N + 1 | A tool using only N bars never shows 0, and readings will not match a chart | Count the bars in the window and compare one value by hand |
| Fewer than N bars of history | The window is partial and the reading overstates freshness | Ignore the first N bars on a new listing |
| Slow grind with no new extremes | Both lines sag together while price drifts steadily | Add a distance or trend-strength measure before calling it range-bound |
| Gap bar | One bar sets the extreme and resets the clock for the whole window | Look at the size of the gap, which Aroon cannot show |
In plain words: Aroon is a clock that restarts at 100 whenever a new high or low appears, and the lookback decides how fast the clock runs down. Education, not advice.
This chapter set out to introduce a clock instead of a price or speed measure. Aroon counts how many bars have passed since the highest high and the lowest low in a window, and the one idea is that a fresh extreme resets a line to 100 while time without one lets it decay toward 0.
| Question | Short answer | Where it was taught |
|---|---|---|
| At N = 25 the highest high was 10 periods ago and the lowest low 3 periods ago. What are Up, Down and the oscillator? | Up = (25 − 10) ÷ 25 × 100 = 60. Down = (25 − 3) ÷ 25 × 100 = 88. Oscillator = −28. | Streamline View: Aroon Up, Aroon Down and the Oscillator |
| With N = 4, the last five highs are 20, 23, 22, 21 and 22.5 and the lows are 18, 19, 18.5, 17.5 and 17.8. What is the oscillator? | High is 3 bars old, so Up = 25. Low is 1 bar old, so Down = 75. Oscillator = −50. | Cypher Guide: Counting Bars Since the High and Low, and the Lookback Effect |
| What step size does each bar of ageing take at N = 5 and at N = 25? | 100 ÷ 5 = 20 points per bar, and 100 ÷ 25 = 4 points per bar. | Cypher Guide: Counting Bars Since the High and Low, and the Lookback Effect |
| Does Aroon Up at 100 mean price is overbought? | No. It only means today set a new extreme, which is common during a strong trend. | Common Mistakes |
| What reading is the textbook signature of a freshly confirmed uptrend? | Aroon Up above 70 while Aroon Down stays below 30. | Textbook Signals |
Most of the volume-based tools in this library weight volume by direction, or by where the close landed in its range. The Force Index does something more direct: it multiplies the size of the price move itself by the volume behind it, in one single number meant to capture how much genuine force was behind a single bar.
The Force Index multiplies the size of a bar’s price change by its volume, giving one number for the direction, size and weight of the move. Smoothed with a 13-period exponential moving average, it is read for zero-line crosses, unusual spikes and divergence from price. The rule that matters most is that the raw number is meaningless on its own and must be judged against that instrument’s own recent history. It most often goes wrong when raw readings are compared across tickers or when every zero-line cross is traded in a choppy market.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Raw Force Index | (Current Close − Prior Close) × Volume | Positive on up closes, negative on down closes, larger when the move or the volume is larger | Very noisy; Elder himself found the single-bar version too noisy to use |
| Smoothed Force Index | A moving average of the raw value, most commonly a 13-period EMA | The version plotted by default on most platforms and the one textbooks discuss | A smoothing choice, so a different length gives different crosses |
| Zero-line cross | The smoothed line moving above or below zero | Above is a short-term bullish reading, below is bearish | In a choppy market it crosses constantly and most crosses are false |
| Spike to an extreme | A multi-month high or low in the smoothed line | Large volume paired with a large move, which suggests strong conviction | Needs both parts; a big move on light volume barely registers |
| Divergence | Price makes a new extreme that the Force Index does not confirm | Read as a warning that the move lacks the same conviction | A warning to watch, not a signal to act on by itself |
| Two lengths | Elder paired the 13-period EMA for trend with a 2-period EMA for entry timing | The long line sets the direction; the short line times entries inside it | Reading only the 13-period line drops half of his recommendation |
| Scale | Depends on the instrument’s own price and volume | Compare a reading with that same instrument’s past readings | Never compare raw magnitudes across tickers |
Reading the example: the smoothed line stays positive in both cases, so a zero-line rule would say nothing has changed. What changes is the direction of the line, which is why spikes and divergences are read alongside the cross. On random-walk test data the textbook entry rule won 52.3% of entries against a 52.0% random-entry baseline, an edge of 0.3 points.
In plain words: the Force Index is price change times volume, smoothed so it can be read, and it only means something against its own history. Education, not advice.
The Force Index is a small piece of a larger body of work by a trader who came to markets from medicine. Alexander Elder introduced it in a book that blended trading psychology, tactics and money management, and the indicator reflects that mix: it turns the effort behind a price change into a single number. The history below is mostly the story of the author and the book that carried the tool to a retail audience.
| Year | What happened | What it added to the topic |
|---|---|---|
| About 1974 | Elder, a doctor trained in the Soviet Union, requests political asylum in the United States and settles in New York. | The start of a career as a psychiatrist and teacher, which shaped the human side of his indicator thinking. |
| Late 1970s | He becomes interested in speculation and begins trading futures and stocks. | Years of trading experience before any of his tools were published. |
| 1988 | He founds Financial Trading Seminars Inc., which trains traders and runs seminars. | The training business that gave his methods an audience. |
| 1993 | Trading for a Living: Psychology, Trading Tactics, Money Management is published and becomes a worldwide bestseller. | The book that introduced the Force Index and set its 13-period smoothing as the common default. |
| 2002 | Come Into My Trading Room wins a book-of-the-year award. | A follow-up reaching the same audience, with the tools applied to full trading plans. |
| 2012 | Two Roads Diverged: Trading Divergences is first published in January. | A book length treatment of divergence, one of the three classic Force Index readings. |
| 2014 | The New Trading for a Living appears from the same publisher. | An updated edition of the book in which the Force Index first appeared. |
Alexander Elder, a trader and author, introduced the Force Index in his widely-read 1993 book Trading for a Living. Elder's own stated goal was to combine the three pieces of information he considered essential to reading any single bar: the direction of the move, its size, and the volume behind it, into one number, rather than reading price and volume as two separate charts that a trader has to mentally combine themselves.
The raw, single-bar version is extremely noisy in practice, which is exactly why Elder recommended smoothing it — the 13-period EMA version is what's actually plotted on most charting platforms by default, and it's the version almost every textbook discussion of the Force Index actually refers to.
A stock closes at $102, up from a prior close of $100, on volume of 5,000,000 shares.
The raw number's magnitude is meaningless in isolation. It only matters relative to the instrument's own recent history, which is exactly what the smoothed 13-period version is built to make readable.
Same illustrative series used throughout this module.
22,656 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Force Index is Alexander Elder's answer to a simple complaint: price and volume are usually shown as two separate charts, and his fix was to multiply them together into one.
Alexander Elder trained and practiced as a psychiatrist before becoming one of the most widely read trading authors of the late 20th century, best known for “Trading for a Living.” The Force Index, which he introduced in that book, combines price change, direction, and volume into a single number specifically to capture the psychological force behind a move, a framing that reflects his clinical background more directly than almost any other indicator in this module. Elder has said he designed many of his tools to make a trader's own behavior, not just the market's, easier to examine.
The Force Index is one multiplication followed by one smoothing step, but both steps hide choices: how the average is started, how long it is, and what the raw number is compared with. This guide fixes the vocabulary, builds the index from raw closes and volumes, and then shows two ways to put a reading in context. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Price change | Close minus the prior close | Sets the sign and the size of the raw value; the first bar has no prior close |
| Volume | Shares traded in the bar | Scales the price change; the unit (shares or thousands) scales the result |
| Raw Force Index | Price change × Volume for one bar | Positive on an up close, negative on a down close, zero on an unchanged close |
| EMA weight | 2 ÷ (N + 1) for an N-period EMA | 0.1429 for N = 13, 0.5 for N = 3 |
| EMA recursion | New EMA = prior EMA + weight × (new value − prior EMA) | Each new bar pulls the average toward itself by the weight |
| Seed | The first EMA value | Often the first raw value or an average of the first N; platforms differ |
| Smoothed Force Index | The EMA of the raw values | What is normally plotted; 13 periods is the textbook default |
| Zero-line cross | The smoothed value changing sign | Read as a shift in the balance of force, not a timed signal |
| Spike | A reading far from the instrument’s own recent range | Judged against that instrument’s history, never against another ticker |
| Z-score | (Value − mean) ÷ standard deviation of recent raw values | Puts a reading in units of its own typical variation |
| Dollar volume | Price × Volume | The scale that lets two tickers be compared fairly |
Mechanism one: raw values, then two averages. Eight closes and volumes (in thousands of shares) give seven raw values, since bar 1 has no prior close. Both averages are seeded with the first raw value. The 13-period weight is 2 ÷ 14 = 0.1429 and the 3-period weight is 0.5.
| Bar | Close | Volume (k) | Raw force | EMA 13 | EMA 3 |
|---|---|---|---|---|---|
| 2 | 101.0 | 1,200 | 1,200 | 1,200 | 1,200 |
| 3 | 102.5 | 1,800 | 2,700 | 1,414 | 1,950 |
| 4 | 101.8 | 900 | −630 | 1,122 | 660 |
| 5 | 103.2 | 2,000 | 2,800 | 1,362 | 1,730 |
| 6 | 104.0 | 1,500 | 1,200 | 1,339 | 1,465 |
| 7 | 102.4 | 2,600 | −4,160 | 553 | −1,348 |
| 8 | 102.9 | 1,100 | 550 | 553 | −399 |
Read across the rows. On bar 7 the close falls 1.60 on the heaviest volume of the run, and the raw value drops to −4,160. The 3-period average falls to about −1,348 and has changed sign, while the 13-period average only slips to 553 and stays positive. A zero-line rule would therefore flag the same bar on one setting and not on the other. The raw value on bar 7 is also larger in size than every other raw value in the table, which is what a spike looks like before smoothing blends it away.
Mechanism two: reading a value against its own history. The raw numbers carry no scale of their own. One check is a z-score against recent raw values. Another is to divide by dollar volume so that tickers with different prices can be compared.
Read across the lines. Bar 7 sits about 2.0 standard deviations from the mean, the only unusual reading in the set, while bar 8 is close to average. Ticker X has twice the raw force of Y, yet at equal dollar volume it moved 2% against 1%. The ratio says X moved twice as far for the same money traded. Raw force alone would not have shown that the volumes were equally large in money terms.
| Situation | What goes wrong | What to check |
|---|---|---|
| Zero volume bar | Raw force is 0 whatever the price change | Check whether the volume feed has gaps |
| Unchanged close | Raw force is 0 even on heavy volume | Recognise that the formula sees only the close-to-close change |
| Overnight gap | The whole gap is credited to the volume of one bar | Compare with the bar’s own range to see where the move happened |
| Stock split in the data | Unadjusted prices and volumes create a false spike | Use split-adjusted data for both price and volume |
| Different EMA seed | Early values on your chart will not match a hand calculation | Start comparing after about three times the EMA length |
| Comparing tickers | Raw magnitudes depend on price and share count | Use z-scores or divide by dollar volume |
In plain words: the Force Index multiplies the move by the volume, an EMA makes it readable, and the number only means something next to its own recent history. Education, not advice.
This chapter set out to combine direction, size and weight into one number. The Force Index multiplies a bar’s price change by its volume, and the one idea is that the smoothed result only means something when it is judged against that instrument’s own recent history.
| Question | Short answer | Where it was taught |
|---|---|---|
| A stock closes at 49 after 50 on volume of 3,000 thousand. What is the raw value? | (49 − 50) × 3,000 = −3,000 thousand. | Cypher Guide: Raw Force, EMA Recursion and Reading a Value in Context |
| The prior 13-period smoothed value was +1,000 thousand. What is the new one? | 1,000 + 0.1429 × (−3,000 − 1,000) = 429 thousand, still positive but lower. | Cypher Guide: Raw Force, EMA Recursion and Reading a Value in Context |
| What is the smoothing weight for a 13-period EMA? | 2 ÷ (13 + 1) = 0.1429. | Streamline View: Force Index, Price Change Times Volume |
| Why can raw Force Index values not be compared across tickers? | The size depends on each instrument’s own price and volume scale. Dividing by dollar volume gives a comparable ratio. | Common Mistakes |
| Which three readings are classic for the smoothed index? | Zero-line crosses, extreme spikes and divergence from price. | Textbook Signals |
One of the more unusual tools in this library is the one with no trading-specific inventor at all: not because nobody thought to apply it to markets, but because the math behind it predates modern trading charts by roughly a century and belongs to statistics first. A Linear Regression Channel is simply the mathematically best-fit straight line through a set of closing prices, plus a pair of bands marking how far price has statistically strayed from it.
A Linear Regression Channel fits the one straight line that minimises the total squared distance to a window of closing prices, then draws two parallel bands a set number of standard deviations above and below it. The line’s slope is an objective reading of the trend’s rate, and the bands show how far price has strayed from that fitted pace. The rule that matters most is that the channel describes the best-fit trend that already happened and makes no claim about the future. It most often goes wrong when a touch of the outer band is treated as an automatic reversal.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Least squares | The line that minimises the sum of squared vertical gaps between itself and every close | The single mathematically optimal straight line by that measure, not a visual guess | Optimal for the chosen window only; a different window gives a different line |
| Slope (b) | [N × Σ(xy) − Σx × Σy] / [N × Σ(x2) − (Σx)2] | Positive and steep means a strong uptrend; flat or negative otherwise | Fitted to the past, so a steep slope says nothing about what comes next |
| Intercept (a) and line | a = [Σy − b × Σx] / N; line = a + b × x | The regression line is the centre of the channel | Recalculated on every new window, so it shifts as the window rolls |
| Bands | Line ± k standard deviations of price from the line, typically k = 2 | A touch marks a statistically extended move relative to the recent pace | A wider k only tolerates more deviation; it does not make the channel safer |
| Brief touch versus sustained close | A touch of the band versus closes beyond it | A brief touch is watched for a pullback to the line; a sustained close may mean acceleration or a regime change | Treating both the same is the usual misreading |
| Lookback length | The number of closes in the fit | Choose it deliberately, for example only the rebound leg in the chapter’s April 2025 example | Too short and the channel whipsaws with every new bar |
| Origin and evidence | Least squares dates from the early 1800s; no trading-specific inventor | A borrowed statistical tool, not a trading theory | On random-walk test data the textbook rule scored 50.7% against a 51.6% baseline |
Reading the example: a slope of 1.20 per bar is the fitted rate of the rise, and the narrow band shows these five closes hugged the line. A close outside the upper band would mean the move had outpaced its own recent average pace, which is a narrower claim than saying the trend is over.
In plain words: the channel is the best straight line through recent closes plus a margin for normal wobble, and it describes what happened rather than what will. Education, not advice.
The Linear Regression Channel is statistics first and charting second. The least-squares line was worked out for astronomy in the early 1800s, the word regression came from studies of heredity in the 1880s, and only in 1991 did a trader publish a named channel built on a regression line. The history explains why the tool is rigorous in its arithmetic and silent about the future.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1805 | Adrien-Marie Legendre publishes the first clear exposition of the method of least squares. | The rule that defines the line: minimise the sum of squared gaps. |
| 1809 | Carl Friedrich Gauss publishes his method for calculating celestial orbits and says he had used least squares since 1795. | A priority dispute that left two names on the method, and the link to the normal distribution behind the standard-deviation bands. |
| 1822 | Gauss states that least squares is the best linear unbiased estimator under certain error assumptions, a result now called the Gauss-Markov theorem. | The conditions under which the line is optimal, which price series often break. |
| 1886 | Francis Galton uses the term regression in a study of the heights of parents and children. | The word itself, which describes a pull back toward an average and not a prediction of direction. |
| 1991 | Gilbert Raff introduces a regression channel for charts, with parallel lines placed beyond the extreme price moves in the window. | A named trading variant, the first well-documented use of a regression line as a chart channel. |
| 1998 | A magazine article proposes enhancements to the Raff channel, showing the tool still being adapted. | Evidence that the channel’s width rules differ between versions and are open to choice. |
The least-squares method underneath every linear regression line traces back to Adrien-Marie Legendre and Carl Friedrich Gauss in the early 1800s, developed for astronomy and geodesy, long before anyone applied it to a stock chart. Charting platforms began offering it as a built-in drawing tool as software matured through the 1990s and 2000s, and it's been a standard feature ever since: genuinely objective math, borrowed wholesale from a completely different field, rather than a technique purpose-built by any one trader.
Over N closing prices, indexed 1 through N on the x-axis:
"Least squares" means exactly what it sounds like: of every possible straight line through the data, this is the one specific line that minimizes the sum of the squared vertical distance between itself and every closing price it's fitted to — not an approximation or a visual best-guess, but the one line a direct calculation proves is mathematically optimal by that measure.
A short Linear Regression Channel fitted only to the S&P 500’s rebound leg in the April 2025 snapback rally would show a steep positive slope, with price pressing against and briefly closing outside the upper 2-standard-deviation band, a statistically extreme reading by the channel's own definition.
A close outside the band doesn't mean the trend is over — it means the current move has statistically outpaced the trend's own recent average pace, which is a different claim and a narrower one.
Same illustrative series, fit over the clean rally leg only.
6,049 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
That's the run through this library's first twenty-five chapters: momentum (RSI, Stochastic RSI, the Stochastic Oscillator, Williams %R, the Money Flow Index, and Rate of Change), trend (MACD, moving averages, ADX, Parabolic SAR, SuperTrend, the TTM Squeeze's combination of two channels, and this chapter's regression channel), volatility and range (Bollinger Bands, ATR, Keltner Channels, and CCI), volume (OBV, VWAP, Volume Profile, the Accumulation/Distribution Line, and the Force Index), the pure price-structure tool with no single named inventor (Pivot Points), a tool that measures elapsed time since the last extreme instead of price itself (Aroon), and the one entry built more on a popular framework than a fixed formula (Smart Money Concepts). Every honest evidence section across these twenty-five chapters has pointed at the same conclusion, restated here because it's worth restating: no single indicator in this library replaces judgment, context, or combining tools with each other. That was true in Chapter 1, and it's just as true here, twenty-five chapters later.
The Linear Regression Channel has no trading-world inventor at all: it's the ordinary least-squares regression line from statistics, a method formalized by Adrien-Marie Legendre and Carl Friedrich Gauss in the early 1800s, roughly a century before Western price charting took hold. Technical analysts simply plot the regression line through a price series and draw parallel channel lines at a fixed standard-deviation distance, borrowing the math wholesale rather than adapting it. It's one of the few tools in this module where the trading application is more recent than the underlying technique by nearly two centuries.
A regression channel is a small piece of arithmetic that is often drawn without being computed. This guide fixes the vocabulary, derives the slope and intercept from the raw sums, shows two ways to measure the band width, and then changes the window to show how much of the channel is a choice. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| x and y | x is the bar number 1 to N and y is the close | Bars, not calendar days, so a weekend is not a gap in x |
| Least squares | The line that makes the sum of squared vertical gaps as small as possible | Squaring stops positive and negative gaps from cancelling |
| Slope b | Change in the fitted line per bar | Price points per bar; positive is a rising fit |
| Intercept a | The fitted value at x = 0 | Anchors the line; only the line at the last bar is read |
| Fitted value | a + b × x at each bar | The centre line of the channel |
| Residual | Close minus the fitted value | The gap the band width is built from |
| Sum of squared errors (SSE) | The sum of squared residuals | The quantity least squares minimises |
| Band width | k × the standard deviation of the residuals | k is usually 2; the standard deviation divides by N or by N − 2 depending on the tool |
| R-squared | 1 − SSE ÷ SST, where SST is the squared spread of closes around their mean | Share of the variation in closes that the straight line explains |
| Lookback | The number of bars N in the fit | Choosing it is the largest decision in the tool |
| Repainting | The line and bands change when the window rolls forward | The channel at an old bar is not what was seen at the time |
Mechanism one: from raw sums to the band. Take the five closes of the Streamline View, 100, 102, 101, 104 and 105, at x = 1 to 5. An equivalent route to the same slope uses deviations from the means: x-bar = 3 and y-bar = 102.4. Then b = Σ(x − x-bar)(y − y-bar) ÷ Σ(x − x-bar)2.
Read across the lines. The line explains 83.7% of the variation in these closes. At two band widths the channel at bar 5 runs from 103.30 to 106.30 in the population form, and from 102.87 to 106.73 in the sample form. The last close of 105 is inside both. The width of a band is a method choice as well as a measurement.
Mechanism two: the window and one extreme close. The slope, the line and the bands are all recomputed when the window changes. Three more closes, 104, 103 and 99, extend the series to eight bars. The same arithmetic is then run on four windows, using the population form and k = 2.
| Window | Slope | Line at last bar | Band width | Band at 2 widths | Last close vs line |
|---|---|---|---|---|---|
| Bars 1 to 5 (the Streamline View closes) | 1.20 | 104.80 | 0.75 | 103.30 to 106.30 | 0.27 |
| Bars 1 to 8, all eight closes | 0.10 | 102.58 | 1.97 | 98.64 to 106.53 | −1.82 |
| Bars 4 to 8, the latest five | −1.20 | 100.60 | 1.23 | 98.13 to 103.07 | −1.30 |
| Bars 1 to 5 with the last close at 110 | 2.20 | 107.80 | 1.72 | 104.36 to 111.24 | 1.28 |
Read across the rows. The first row is the Streamline View channel, with a slope of 1.20. Extending to eight bars cuts the slope to 0.10 and the latest five closes alone give −1.20, a falling fit, although the same series rose for the first five bars. The last close of 99 sits 1.82 band widths below the line in the all-eight window and 1.30 below it in the latest-five window, where the fit has already tilted down toward it. In the last row a single close of 110 in place of 105 raises the slope to 2.20 and widens the band to 1.72 on its own. One extreme close moves every number in the channel.
| Situation | What goes wrong | What to check |
|---|---|---|
| Very short window | With two points the fit is perfect and the band width is 0 | Use enough bars that residuals have room to vary |
| Flat closes | All residuals are 0 and the band collapses to the line | Check that the band width is above zero before reading a touch |
| Single outlier close | It tilts the line and widens the band | Compare the fit with and without that bar |
| Window rolls forward | Old lines and bands are recomputed and no longer match earlier screens | Save a picture if the channel at the time matters |
| Linear scale on a long rise | A straight line cannot follow compounding growth | Check whether a log-price version is available |
| A close outside the band | It says the move outpaced its own fit, not that it will reverse | Treat as a measurement of stretch only |
In plain words: a regression channel is a fitted line plus a margin built from its own errors, and both parts change when the window or a single close changes. Education, not advice.
This chapter set out to replace a hand-drawn trend line with a calculated one. A Linear Regression Channel fits the straight line that minimises squared error through recent closes, and the one idea is that the line and its bands describe the trend that already happened and move whenever the window or a single close changes.
| Question | Short answer | Where it was taught |
|---|---|---|
| Closes 10, 12, 11 and 13 sit at x = 1 to 4. What are the slope and intercept? | Slope = 16 ÷ 20 = 0.80. Intercept = (46 − 0.80 × 10) ÷ 4 = 9.50. | Cypher Guide: Fitting the Line by Hand and Testing the Window |
| What is the line at x = 4, and the two-width band there? | The line is 12.70. The population width is 0.671, so the band is 11.36 to 14.04. | Cypher Guide: Fitting the Line by Hand and Testing the Window |
| What does the line minimise? | The total squared distance between the closes and the line. | The Formula: The Line That Minimizes Total Squared Error |
| Why is a touch of the outer band not a reversal signal? | It only shows price has moved further than its recent fitted pace. The channel describes the past and does not forecast. | Common Mistakes |
| Where did the least-squares method come from? | Nineteenth-century statistics, roughly a century before trading charts. | Borrowed From Statistics, Not Invented by a Trader |
This module already covers several tools built from volume, among them On-Balance Volume (Chapter 6), VWAP (Chapter 8), the Money Flow Index (Chapter 17), Volume Profile (Chapter 21), the Accumulation/Distribution Line (Chapter 22) and the Force Index (Chapter 24). Chaikin Money Flow and Ease of Movement are the two that complete the volume-analysis section: one refines the A/D Line into a bounded oscillator, the other asks a completely different question: not which direction volume is pushing price, but how much volume it actually costs to move it.
Chaikin Money Flow (CMF) and Ease of Movement (EOM) finish the volume toolkit with two different questions. CMF asks whether closes have landed in the upper or lower part of their ranges, weighted by volume, over a fixed window. EOM asks how far price moved for each unit of volume, which is a read on how much resistance a move is meeting. The rule that matters most is that both tools run entirely through volume, so they are only as good as the volume data. The main mistake is treating CMF’s theoretical bounds of −1 and +1 like RSI’s 0 to 100 scale.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Money Flow Multiplier | ((Close − Low) − (High − Close)) / (High − Low) | Where the close landed in the bar, from −1 to +1 | Same building block as the A/D Line in Chapter 22 |
| CMF | Sum of Money Flow Volume over N bars / sum of volume over N bars; common N is 20, or 21 on some platforms | Above zero means closes in the upper half of their ranges dominated the window; below zero means the opposite | Rarely travels near ±1, so readings like 0.3 or −0.3 are already meaningful |
| Distance moved (EOM) | Midpoint of this bar minus midpoint of the prior bar | Positive means the midpoint rose | Ignores where inside the bar the close landed |
| Box ratio (EOM) | (Volume / scale constant) / (High − Low) | Large means much volume packed into a narrow range | The scale constant is arbitrary and set per instrument and platform |
| EOM | Distance moved / box ratio, then smoothed; 14 periods is common | Positive and rising means price advances on comparatively little volume | Raw values cannot be compared across instruments without checking the constant |
| EOM divergence | EOM flat or negative while price still climbs | The move is becoming labored, needing more volume for the same progress | A warning of effort, not a timed signal |
| Reading them together | CMF: is volume pressure with me. EOM: is this move costing a lot of volume | Two complementary lenses on the same tape; EOM often turns positive first because CMF needs its window to fill | Both fall apart where volume reporting is thin or partial |
Reading the example: CMF of +0.313 is positive but far from +1, which is the realistic size of a bullish reading. The EOM figure of 6.67 is not comparable with a figure from another market unless the same scale constant is used. The chapter’s April 2025 example describes the same expected timing gap: EOM turning positive first because it reacts bar by bar, while CMF waits for its window to fill.
In plain words: CMF measures which way volume was leaning, EOM measures how easily price moved, and neither is useful without good volume data. Education, not advice.
Chaikin Money Flow and Ease of Movement come from two different people who both worked on volume in the decades before home charting. Chaikin refined the cumulative volume line into a bounded oscillator. Richard Arms, known for the Arms Index, built a measure of how easily price moves on volume as a supplement to his own Equivolume charts. The two tools were later placed side by side on retail platforms.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1963 | Joseph Granville publishes the first book describing On-Balance Volume, the original cumulative volume tool. | The up-or-down volume count that both Chaikin and Arms were reacting to. |
| 1967 | Richard W. Arms Jr. creates the Arms Index, first presented as the Short Term Trading Index. | Shows that the Ease of Movement author was already working on volume and breadth. |
| 1980 | Marc Chaikin begins developing proprietary stock market indicators. | The period in which the Accumulation/Distribution Line and the tools built on it took shape. |
| 1983 | Arms publishes Volume Cycles in the Stock Market: Market Timing Through Equivolume Charting. | Equivolume charts widen each bar by its volume, the picture that Ease of Movement was designed to supplement. |
| Late 1980s | Ease of Movement appears as an Arms indicator for measuring price move per unit of volume. | The tool that asks about effort, not direction. |
| 1992 | Chaikin sells his securities firm to an institutional trading company and joins it as a senior vice-president. | Volume-flow analysis moves into institutional desks, where volume data was most reliable. |
Chaikin Money Flow carries the name of the same person behind Chapter 22's Accumulation/Distribution Line: Marc Chaikin, a Wall Street analyst and broker who spent the 1980s building volume-based tools for institutional trading desks. The A/D Line's one real limitation is that it's a running cumulative total with no natural scale: its absolute level means nothing, only its slope. Chaikin addressed that directly by summing the A/D Line's own building block, the Money Flow Volume, over a fixed lookback window and dividing by total volume over that same window, producing a bounded oscillator that moves roughly between −1 and +1 instead of drifting without limit. Ease of Movement is a different invention from a different person: Richard W. Arms Jr., the same trader behind the Arms Index (TRIN), a market-breadth tool covered later in this module. Arms introduced Ease of Movement by about 1990 to measure something neither the A/D Line nor Chaikin Money Flow asks about: not which direction volume is flowing, but how far price moves for a given amount of volume, a direct read on how much resistance a move is meeting.
Chaikin Money Flow starts from the same Money Flow Multiplier and Money Flow Volume used to build the A/D Line in Chapter 22, then normalizes them over a fixed window instead of letting them accumulate forever:
Ease of Movement measures something structurally different: the distance the midpoint of price has traveled, scaled down by how much volume (relative to that bar's range) it took to travel it:
A positive CMF means more of the window's Money Flow Volume came from up-closes than down-closes; a positive EOM means price covered distance while costing comparatively little volume to do it, a genuinely different kind of "positive" than CMF's.
The math: Money Flow Multiplier = ((48.00 − 45.00) − (50.00 − 48.00)) ÷ (50.00 − 45.00) = (3.00 − 2.00) ÷ 5.00 = +0.20. The close landed in the upper half of the day's range but not at the very top, so this single bar's Money Flow Volume gets a modest positive weight. It's the 20-bar sum of readings exactly like this one that becomes the actual CMF line.
CMF above zero means buying pressure has dominated over the lookback window: closes finishing in the upper half of their day's range more often than not; below zero means the opposite. Because it's a sum across a fixed window rather than a single-bar reading, CMF moves more slowly than price itself and rarely approaches its theoretical −1/+1 extremes in live markets. Real-world readings mostly sit in a much narrower band, so treating a reading like 0.3 or −0.3 as meaningfully strong is closer to reality than waiting for the line to hit 1.0. Ease of Movement reads differently: a positive, rising EOM means price is advancing while meeting little resistance, covering real distance on comparatively light volume. An EOM reading that stays flat or negative while price is still climbing is the classic divergence warning — the move is becoming labored, needing more and more volume to make the same amount of progress. Used together, CMF answers "is volume pressure with me," and EOM answers "is this move costing a lot of volume to achieve", two different, complementary lenses on the same tape.
During the sharp early-April 2025 tariff-driven selloff covered throughout this module, a 20-period Chaikin Money Flow reading would have fallen deeply negative as session after session closed in the lower half of its range on elevated volume, a clean read of sustained selling pressure, not just falling price. Ease of Movement told a related but distinct story during the same stretch: it dropped sharply negative too, but for a different reason: the index was covering a lot of downside distance only by trading enormous volume to do it, the hallmark of a labored, effortful decline rather than an orderly one. Once the 90-day pause was announced and the snapback began, the textbook expectation is a reversal in a specific order: Ease of Movement crossing back positive first, as the rally starts covering real distance on comparatively light volume, a low-resistance move. Chaikin Money Flow would catch up only once enough of its 20-day window had filled with strong, upper-range closes to flip the sum positive. That lag between the two tools isn't a flaw in either one — it's the entire reason to use both: EOM reacts to each day's efficiency immediately, while CMF needs sustained pressure to build before it turns.
Professional desks rarely trade Chaikin Money Flow or Ease of Movement as standalone signals. CMF is most often used as a filter: a trend-following entry triggered by a price or moving-average signal is taken only when CMF agrees with the direction of the trade, and discarded when volume pressure points the other way. Divergence is the other common professional use: a price making a new high while CMF fails to confirm with a correspondingly strong positive reading is treated the same way MACD or RSI divergence is treated elsewhere in this module: a warning that the move may be running out of genuine participation. Ease of Movement sees less day-to-day use than CMF but earns its place in trend-quality assessment. Traders use a sustained positive EOM reading to distinguish a trend worth holding through pullbacks from one that's grinding higher against resistance and more likely to reverse sharply once the volume supporting it dries up.
Same illustrative 30-bar series used throughout this module. CMF uses a 10-bar window and EOM a 5-bar smoothing here (shortened from the standard 20/14 to fit inside 30 bars). The Monte Carlo backtest below uses the realistic 20/14 settings on full-length data.
7,648 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Chaikin Money Flow and Ease of Movement are both free, built-in indicators on TradingView and most other charting platforms, each typically plotted in its own panel beneath price.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and track both tools through the event.
The money flow multiplier measures where the close fell inside the bar. Multiply by volume to see how much was credited to buyers or sellers.
Chaikin Money Flow is Marc Chaikin's own further refinement of the volume-weighting idea behind his A/D Line (Chapter 22), compressed into an oscillator around a zero line. Ease of Movement, despite sounding related, comes from a different person entirely: Richard W. Arms Jr., better known for the Arms Index (TRIN), who built EOM in the 1980s to measure how much price moves per unit of volume: high EOM means price is moving a long way on light volume, a sign of low resistance to the move.
These two tools share a tape but not a question. Chaikin Money Flow is a ratio of two sums over a window, so it can be rolled forward by hand. Ease of Movement is a distance divided by an effort measure, so its size depends on a scale constant. This guide fixes the vocabulary, rolls CMF through eight bars, and builds Ease of Movement from the same bars. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Money Flow Multiplier | ((Close − Low) − (High − Close)) ÷ (High − Low) | From −1 at the low to +1 at the high; 0 at the midpoint |
| Money Flow Volume | Multiplier × Volume | The signed volume credited to one bar |
| Window N | The number of bars in the CMF sum | 20 or 21 is common; the window slides one bar at a time |
| CMF | Sum of Money Flow Volume over N bars divided by sum of Volume over N bars | A volume-weighted average of the multipliers; it sits between −1 and +1 |
| Midpoint | (High + Low) ÷ 2 | The price point used to measure distance |
| Distance moved | Midpoint now minus midpoint of the prior bar | The numerator of Ease of Movement; signed |
| Scale constant | A divisor chosen so volume lands in a readable range | Changes the size of EOM in direct proportion, not its sign or shape |
| Box ratio | (Volume ÷ Scale) ÷ (High − Low) | Effort per unit of range; large when volume is heavy for a narrow bar |
| Raw EOM | Distance moved ÷ Box ratio | Positive when price rose on little effort; negative when it fell |
| Smoothed EOM | A moving average of raw EOM, commonly over 14 bars | The line normally drawn; three bars are used below for a hand calculation |
| Zero-volume window | A window in which the volume sum is 0 | Makes CMF undefined; data problem, not a signal |
Mechanism one: rolling CMF forward. The first five bars are the Streamline View bars. Three more follow. At each step from bar 5 onward, CMF(5) uses the latest five bars: add the new Money Flow Volume and volume, drop the oldest.
| Bar | High / Low / Close | Volume | Multiplier | Money flow volume | Sum of MFV (5 bars) | CMF(5) |
|---|---|---|---|---|---|---|
| 1 | 50 / 45 / 48.00 | 100,000 | 0.20 | 20,000 | n/a | n/a |
| 2 | 52 / 47 / 51.00 | 150,000 | 0.60 | 90,000 | n/a | n/a |
| 3 | 53 / 49 / 50.00 | 120,000 | −0.50 | −60,000 | n/a | n/a |
| 4 | 52 / 48 / 51.50 | 90,000 | 0.75 | 67,500 | n/a | n/a |
| 5 | 54 / 50 / 53.00 | 140,000 | 0.50 | 70,000 | 187,500 | 0.313 |
| 6 | 55 / 51 / 52.00 | 130,000 | −0.50 | −65,000 | 102,500 | 0.163 |
| 7 | 53 / 49 / 49.50 | 160,000 | −0.75 | −120,000 | −107,500 | −0.168 |
| 8 | 52 / 48 / 51.50 | 110,000 | 0.75 | 82,500 | 35,000 | 0.056 |
Read across the rows. CMF(5) starts at 0.313 and falls to −0.168 at bar 7, as the down-closes of bars 6 and 7 enter the window and the strong bars 1 and 2 leave it, then recovers to 0.056 at bar 8 on an up-close. The shorter window reaches −0.256 on the same bar. A smaller N reacts faster and swings more. Neither value is near 1, because a CMF of 1 would need every close at the high of the bar, and bars like those in the table mix both ends.
Mechanism two: Ease of Movement and the scale constant. The table builds raw EOM for bars 2 to 8 with a scale of 100,000. Bar 2 reproduces the Streamline View result of 6.67. The final column repeats the calculation with a scale of 1,000,000.
| Bar | Distance moved | Range | Box ratio (scale 100k) | Raw EOM (100k) | Raw EOM (1,000k) |
|---|---|---|---|---|---|
| 2 | 2.0 | 5 | 0.30 | 6.67 | 66.7 |
| 3 | 1.5 | 4 | 0.30 | 5.00 | 50.0 |
| 4 | −1.0 | 4 | 0.23 | −4.44 | −44.4 |
| 5 | 2.0 | 4 | 0.35 | 5.71 | 57.1 |
| 6 | 1.0 | 4 | 0.33 | 3.08 | 30.8 |
| 7 | −2.0 | 4 | 0.40 | −5.00 | −50.0 |
| 8 | −1.0 | 4 | 0.28 | −3.64 | −36.4 |
Read across the rows. The strongest raw readings come on bars where the midpoint moved far on moderate volume, and bar 7 is the weakest: its midpoint fell by 2.0 on the heaviest volume of the set, so the effort per unit of range is high and the raw value is −5.00. Two different scale constants give values that differ tenfold, so an EOM level quoted without its scale cannot be compared with any other.
| Situation | What goes wrong | What to check |
|---|---|---|
| High equals Low | The multiplier and the box ratio both divide by zero | Check what the platform does with a zero range |
| Zero volume in the window | CMF has a zero denominator; EOM has a zero numerator in the box ratio | Look for missing volume before reading a flat line |
| Different scale constants | The same market gives EOM values that differ by the ratio of the constants | Record the constant beside the setting |
| Window mismatch | A 20-bar and a 21-bar CMF are not the same line | Match N before comparing two charts |
| Opposite readings | CMF positive while EOM is negative is possible, since one counts close position and the other counts distance per volume | Treat them as separate questions |
| Gap bar | The midpoint move includes the gap, which inflates distance but not range | Check the range of the bar against the distance |
In plain words: CMF is a volume-weighted average of where closes landed, EOM is distance per unit of effort, and both only make sense when the volume, the window and the scale constant are stated. Education, not advice.
This chapter set out to finish the volume toolkit with two different questions. Chaikin Money Flow asks which way volume leaned over a window, Ease of Movement asks how easily price travelled, and the one idea is that both run entirely through volume, so their size depends on the data and on the settings stated.
| Question | Short answer | Where it was taught |
|---|---|---|
| Bars (H, L, C, V): (10, 6, 9, 100), (10, 6, 7, 300), (12, 8, 12, 200). What is CMF(3)? | Money Flow Volume is 50, −150 and 200, summing to 100. Volume is 600, so CMF = 0.167. | Cypher Guide: Rolling CMF by Hand and Building Ease of Movement |
| For the last of those bars, what is raw EOM with a scale of 100? | Distance = 10 − 8 = 2. Box ratio = (200 ÷ 100) ÷ 4 = 0.50. Raw EOM = 2 ÷ 0.50 = 4.00. | Cypher Guide: Rolling CMF by Hand and Building Ease of Movement |
| What does the multiplier of a bar closing at its high equal? | +1, the top of the range for the close-position measure CMF is built on. | The Formula |
| Why is waiting for CMF to reach +1 a mistake? | Real readings rarely travel near the bounds, because bars mix closes at both ends of the range. | Common Mistakes |
| Which tool turned positive first in the April 2025 example, and why? | Ease of Movement, because it reacts bar by bar while CMF waited for its window to fill. | A Real, Dated Example: Volume Pressure and Effort Through the April 2025 Crash |
The horizontal axis of the charts used earlier in this module has always carried one thing, no matter the indicator plotted on it: time. Point and Figure charting throws it away entirely. It plots only price movement itself, filtering out anything smaller than a chosen box size and ignoring how long a move took to happen, a genuinely different way of looking at the same data.
Point and Figure charting plots price movement only. It ignores time entirely, adding an X when price rises by one box and an O when it falls by one box, and starting a new column only when price reverses by the full reversal amount. The rule that matters most is that the chart is built from two chosen settings, box size and reversal amount, so every chart is a product of those choices. It most often goes wrong when one setting is treated as universal, or when two columns are compared as if they took equal time.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Box size | The minimum price move, in points or percent, needed to add an X or O | Larger boxes filter more noise and show fewer columns | Arbitrary; a tiny box turns routine noise into dozens of columns, a huge one can collapse a bull market into one column |
| Reversal amount | How many boxes price must move against the column to start a new one | The common setting is 3 boxes; 1-box and 2-box charts show far more columns | Fewer boxes means more noise, more boxes means a later reaction |
| X column | A run of rising boxes | Taller means a larger rise | Height says nothing about how long the move took |
| O column | A run of falling boxes | Taller means a larger fall | A thin 1-to-2-box column often reflects noise at the threshold |
| Double Top breakout | A new X column rising above the prior X column’s highest box | The basic buy signal; the mirror image is a Double Bottom breakdown | A signal on a chart with arbitrary settings, not a certainty |
| No time axis | Marks appear only when price clears a box | Quiet stretches add nothing to the chart | Two columns can hold weeks or minutes of trading each |
| Price targets | Horizontal and vertical counts project targets from column structure | Loose, probabilistic projections | Not guarantees; they have their own long history inside the method |
Reading the example: price rose 3 boxes, fell the full 3-box reversal and started an O column, rose 3 boxes from the low and started a new X column, then extended it to 105 before falling 3 boxes from the top. Closes that moved less than the reversal amount, such as a rise from 100 to 102, left no mark at all.
In plain words: a Point and Figure chart records how far price moved, not when, and its shape depends on the box and reversal you choose. Education, not advice.
Point and Figure charting is one of the oldest chart methods in use. It began as a way of writing prices in columns by hand, was written up as a method in the early 20th century, and was standardised around a 3-box reversal by a chart-service firm in the mid-century. Its history explains both its appeal, a chart that needs no clock, and its biggest weakness, a chart whose shape depends on settings.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1898 | Hoyle’s The Game in Wall Street describes price columns and shows charts of the kind that evolved into Point and Figure. | The earliest dated written description of columns of price moves. |
| 1933 | Victor de Villiers writes the first book on the method; a reprint includes a chart of the 1929 crash. | The text that systematised the method and is still the standard historical reference. |
| 1947 | A.W. Cohen publishes a book on the three-point reversal method through the chart service Chartcraft. | The 3-box reversal as the default setting most platforms still use. |
| 1960s | Chartcraft uses an IBM mainframe to draw Point and Figure charts. | Charts could be produced for many stocks at once, not one at a time by hand. |
| Early 1980s | A UK company automates Point and Figure charting, and log scaling is devised, setting box size as a percentage. | Percentage boxes for stocks whose prices range widely, and the ability to view hundreds of charts quickly. |
| 1992 | Charles LeBeau and David Lucas publish a guide to computer analysis of the futures markets. | Computer-based chart methods enter the mainstream of technical analysis. |
Point and Figure charting traces back further than almost anything else in this module — some accounts credit Charles Dow himself with keeping a version of these charts by hand in the late 1800s, decades before most of the indicators covered earlier existed in any form. The method stayed a niche, by-hand floor-trader technique until Victor de Villiers systematized it in his 1933 book, The Point and Figure Method of Anticipating Stock Price Movements, still the most commonly cited historical reference for the technique. It was A.W. Cohen, founder of the chart-service firm Chartcraft in 1947, who standardized the 3-box reversal method as the default most platforms still ship with today. The appeal for floor traders was practical as much as analytical: a Point and Figure chart only needs an update when price actually clears a box threshold, not on every single tick, valuable when every mark had to be made by hand.
Point and Figure isn't a calculation the way most other chapters in this module have been. It's a charting convention built from two chosen settings:
Rising columns are marked with X's and falling columns with O's. As long as price keeps clearing new boxes in the same direction, the current column simply gets taller: nothing new happens on the chart until price either keeps going or reverses by the full reversal amount.
The rise from $100 to $103 adds three X's to the current column, one per box cleared. The subsequent fall back to $100 is itself a 3-box move (exactly meeting the reversal amount), so the X column closes and a brand-new O column opens, starting one box below the X column's top. A fall of only 1 or 2 points would not have been enough to start a new column at all; it would simply not appear on the chart.
X columns mark rising moves, O columns mark falling ones, and a column's height (how many boxes it contains) is the only measure of how far that move traveled: there's no way to tell from the chart alone whether a column took three days or three months to form. The signal most traders watch for is a new column trading past the extreme of the most recent column running in the same direction: a new X column climbing above the prior X column's highest box is called a Double Top breakout, Point and Figure's single most basic buy signal; the mirror image, a new O column falling below the prior O column's lowest box, is a Double Bottom breakdown. More advanced users apply horizontal and vertical counting methods to project price targets directly from a chart's column structure, a technique with its own long history inside the method but well beyond this chapter's scope.
Run the same illustrative 30-bar series used throughout this module (the sharp early-April 2025 tariff-driven selloff and the snapback following the 90-day pause) through Point and Figure logic with 1-point boxes and a 2-box reversal (tightened from the standard 3-box so a reversal is visible across only 30 bars), and the entire month collapses into just four columns: one long O column capturing the whole decline, a small X bounce, a small O pullback, and one long X column capturing the whole recovery. That fourth column's X's climbing past the second column's highest X is exactly the Double Top breakout pattern described above — and it fires early in the recovery, well before the rally's eventual full extent, which is itself worth noticing.
Point and Figure sees the most use today as a secondary, noise-filtering view layered underneath a primary time-based chart, rather than as someone's only chart type. Chart services in the Chartcraft tradition have long published Point and Figure-based relative-strength rankings across entire sectors, since the method's box/reversal filtering makes it well suited to screening large universes of names for the same breakout pattern at once. Horizontal and vertical count price targets are used as one input among several when setting a profit target, not as a standalone prediction, and some trend-following systems use a Double Top breakout or Double Bottom breakdown as a confirming filter layered on top of a primary, time-based entry signal from earlier chapters in this module.
Same illustrative 30-bar series used throughout this module, now run through P&F logic instead of a time axis.
8,836 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Point and Figure is a free, selectable chart type (not just an overlay indicator) on TradingView, StockCharts, and most other charting platforms.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and chart it in Point and Figure form.
Point and Figure charting predates almost everything else in this module: Victor de Villiers formalized it in his 1933 book “The Point and Figure Method of Anticipating Stock Price Movements,” though the technique itself circulated informally among pit and ticker-tape traders even earlier, tracking price moves of a fixed box size while ignoring time entirely. That time-independence was the whole appeal: a trader reading a paper ticker tape didn't need a clock, just a pencil and a column of X's and O's.
A Point and Figure chart is built by a short procedure that can be followed on paper. This guide fixes the vocabulary, runs the procedure on the closes of the Streamline View, repeats it under three other settings to show how much of the chart is chosen rather than observed, and then converts box sizes into percentages. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Box size | The price step that earns one mark | The only way price is measured; moves smaller than a box are invisible |
| Box index | Price ÷ box size, rounded down | Every price falls into exactly one box, labelled by its lower edge |
| Reversal amount | The number of boxes price must retrace to start a new column | Three is the common default; one and two also exist |
| X column | A run of rising boxes | Grows upward while price keeps clearing higher boxes |
| O column | A run of falling boxes | Grows downward while price keeps clearing lower boxes |
| Reversal trigger | Price reaching a box at least (reversal) boxes from the column extreme | The new column starts one box beyond the old extreme, on the opposite side |
| Column height | The number of boxes in a column | The only measure of distance; it carries no information about duration |
| Double Top breakout | An X column rising above the top of the prior X column | The basic buy pattern in the chapter |
| Double Bottom breakdown | An O column falling below the bottom of the prior O column | The mirror pattern |
| Close-only chart | A chart built from closes, as here | Charts built from highs and lows can differ |
| Percentage box | A box defined as a share of price | Keeps the meaning of a column constant across price levels |
Mechanism one: the procedure applied to fifteen closes. Follow the closes in order. Convert each to a box index. A rise to a higher box than the current top extends an X column. A fall to a box at or below top minus the reversal amount closes it and opens an O column, which starts one box below the old top. The same logic, reversed, applies to an O column. Any close that does neither leaves no mark.
| Box | Reversal | Columns | Closes with no mark | Columns listed (boxes) | Double Top breakouts |
|---|---|---|---|---|---|
| 1 point | 3 boxes | 4 | 6 | X 101 to 103 (3); O 102 to 100 (3); X 101 to 105 (5); O 104 to 102 (3) | 1 |
| 1 point | 2 boxes | 4 | 3 | X 101 to 103 (3); O 102 to 100 (3); X 101 to 105 (5); O 104 to 102 (3) | 1 |
| 1 point | 1 box | 4 | 0 | X 101 to 103 (3); O 102 to 100 (3); X 101 to 105 (5); O 104 to 102 (3) | 1 |
| 2 points | 3 boxes | 1 | 12 | X 102 to 104 (2) | 0 |
Read across the rows. The same fifteen closes become 4 columns at 3-box, 2-box and 1-box reversals alike, because this series moves in smooth legs with no small retracement. What changes is the number of closes that leave no mark: 6, 3 and 0. A choppier series would produce many more columns at the smaller reversal amounts. Doubling the box size to 2 points under the 3-box rule leaves a single column, because no retracement reaches 6 points. The number of Double Top breakouts also changes with the setting, which is why a pattern should be quoted together with its box and reversal.
Mechanism two: what a box means in percent. A fixed box of 1 point is a different move at each price. The table converts one box and a 3-box reversal into percentages of price.
| Price | One box as a share of price | Three-box reversal as a share of price |
|---|---|---|
| 25 | 4.00% | 12.00% |
| 50 | 2.00% | 6.00% |
| 100 | 1.00% | 3.00% |
| 200 | 0.50% | 1.50% |
At a price of 25 a single box is 4.00% and a reversal needs a 12.00% retracement; at 200 the same settings need only 1.50%. A 5-box column is therefore a 20% move in the first case and 2.5% in the second. Percentage or logarithmic boxes remove this difference, but a column then measures a percentage and not points, so the two kinds of chart cannot be compared directly.
| Situation | What goes wrong | What to check |
|---|---|---|
| Price lands between box edges | Rounding down puts it in the lower box, so a move can look larger or smaller than it was | State the rounding rule and test one price by hand |
| Close exactly at the trigger box | One tick decides whether a column reverses | Check the equal-to case, as in the 100 and 102 steps above |
| Choppy quiet period | Many closes, no marks, no columns | Do not read an empty stretch as no activity; time is not shown |
| Long stretch with small moves | A column of 1 or 2 boxes can be noise at the threshold | Compare the column height with the reversal amount |
| Comparing two charts | Different box sizes or conventions give different columns from the same prices | Match box, reversal and data type first |
| Price split or large gap | Box scale becomes stale after a split; a gap can add many boxes at once | Adjust data for splits and note gap columns |
In plain words: a Point and Figure chart is a list of box moves with a reversal rule, and its columns can be rebuilt by hand, which also shows how much the settings shape the picture. Education, not advice.
This chapter set out to show a chart with no time axis. Point and Figure records only how far price moved, using X columns for rises and O columns for falls, and the one idea is that every chart is the product of two chosen settings, the box size and the reversal amount.
| Question | Short answer | Where it was taught |
|---|---|---|
| Box size 2, reversal 3 boxes, closes 50, 52, 54, 56, 55, 53, 51. What columns result? | X from 52 to 56 (3 boxes), then O from 54 to 50 (3 boxes). | Cypher Guide: Building Columns by Hand and Testing Box and Reversal |
| Which close triggers the reversal in that series? | The close at 51, which is 5 points below the top at 56. | Cypher Guide: Building Columns by Hand and Testing Box and Reversal |
| What share of a price of 200 is a 1-point box, and what is a 3-box reversal? | 1 ÷ 200 = 0.50% and 3 ÷ 200 = 1.50%. | Cypher Guide: Building Columns by Hand and Testing Box and Reversal |
| When does a new column start? | Only when price reverses by the full reversal amount from the current column’s extreme. | Streamline View: Point and Figure Boxes, Columns and Reversals |
| Why should two neighbouring columns not be compared by length of time? | The chart has no time axis, so columns can span very different amounts of elapsed time. | Common Mistakes |
Trend has stayed baked into price in the indicators covered earlier in this module. Cycle analysis asks a different question: strip the trend away entirely, and does what's left behind move in any kind of recurring rhythm? This chapter covers two complementary answers: the Detrended Price Oscillator, which removes trend bar-by-bar to expose a shorter-term cycle, and calendar seasonality, which looks for a much longer recurring rhythm tied to the time of year itself.
Cycle analysis asks whether price, once its trend is removed, moves in a recurring rhythm. The Detrended Price Oscillator (DPO) answers on a short scale by subtracting a displaced moving average from price, and calendar seasonality answers on a long scale by averaging returns for the same calendar period across many years. The rule that matters most is that cycles drift and seasonal patterns are loose tendencies, never fixed schedules. The most common mistake is reading a DPO peak or trough as a real-time signal, when it can only be confirmed afterwards.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| DPO | Close (shift bars ago) minus SMA(period), where shift = floor(period / 2) + 1 | Subtracting the average’s old position strips out trend and leaves the shorter cycle | Not a real-time timing tool; by design it looks slightly into the past |
| Standard setting | 20-bar SMA with an 11-bar shift; the chapter’s chart uses 10 and 6 to fit 30 bars | A trough marks a cyclical low, a peak a cyclical high, a zero cross the cycle turning | Confirmation arrives only after enough bars have passed |
| Dominant cycle length | The rhythm a DPO period is meant to match | Pick it by testing, then re-test as the market changes | Eyeballing a length and clinging to it after the rhythm shifts |
| Overlapping cycles | Price as the sum of several cycles of different lengths on top of a trend | The idea behind the Hurst approach to cycles | Real cycle lengths drift and can vanish for long stretches |
| Seasonality tally | Average return of a calendar period (month, week, day of month) across as many years as exist | Look for a period that stands out against the rest | A tendency, not a rule; any single year can ignore it |
| Seasonality use | A backdrop tilt for context, not a timing signal | Combine with other evidence | Needs many years of real data and significance testing; the chapter’s seasonality chart is hypothetical |
| Purpose of DPO | Built as a visualisation aid, not a buy or sell generator | Use it to see cycle length and timing, then decide with another tool | Treating its zero crosses as automatic signals |
Reading the example: the DPO is positive when the close from 3 bars ago sat above the average and negative when it sat below, so its sign flips as the swing turns even while price keeps drifting. In the tally, a January average of 1.12% looks attractive, yet two of five years were negative, which is exactly why seasonality is a tilt and not a rule.
In plain words: DPO shows the rhythm left after the trend is removed, seasonality shows what the calendar has done on average, and both describe the past loosely. Education, not advice.
The study of market rhythms has two roots. One is the cycle research of the 1930s and 1940s, which asked whether recurring patterns in data were real or only noise. The other is the calendar almanac tradition of the 1960s. The Detrended Price Oscillator sits between them as a practical detrending tool, and the long record shows how many different efforts were needed to turn cycle ideas into something a chart can show.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1941 | The Foundation for the Study of Cycles is reorganised and incorporated by Edward R. Dewey. | A body set up to test whether cycles in data are real, which remains the question to ask of any DPO setting. |
| 1947 | Dewey and Edwin Franden Dakin publish Cycles: The Science of Prediction. | A book-length case for cycles across many fields, including economics and prices. |
| 1950 | The Foundation begins publishing a periodical on cycle research. | A steady outlet for evidence, including cases where supposed cycles failed. |
| 1967 to 1968 | Yale Hirsch’s Stock Trader’s Almanac first appears, its first edition dated 1968. | The calendar-tally tradition that seasonality studies descend from. |
| 1970 | J.M. Hurst publishes The Profit Magic of Stock Transaction Timing, arguing that price is the sum of overlapping cycles on top of a trend. | The multi-cycle framework that DPO simplifies into a single oscillator. |
| 1999 | John Murphy’s Technical Analysis of the Financial Markets is published and documents the Detrended Price Oscillator among standard indicators. | The reference that placed the DPO among the standard tools of the retail charting era. |
Cycle analysis as a formal discipline traces to Edward R. Dewey, a U.S. government economist who founded the Foundation for the Study of Cycles in 1941 after noticing recurring rhythms across wildly different data series (from sunspots to commodity prices) and wanting a dedicated body to study whether any of it was real rather than pattern-matching on noise. J.M. Hurst later brought cycle thinking directly into trading with his 1970 book The Profit Magic of Stock Transaction Timing, which argued that price moves are the sum of several overlapping cycles of different lengths, all riding on top of the dominant trend. The Detrended Price Oscillator itself is a more modest, practical tool built later by technical analysts needing a simple way to isolate that shorter cycle without Hurst's full multi-cycle machinery — it's documented as a standard indicator in widely used references like John Murphy's Technical Analysis of the Financial Markets. Calendar seasonality has its own separate lineage: Yale Hirsch's Stock Trader's Almanac, first published in 1967, popularized now-famous seasonal patterns like "Sell in May and Go Away" and the "Santa Claus Rally," built from decades of month-by-month historical return tallies.
The Detrended Price Oscillator shifts a moving average back in time before subtracting it from price, which is the trick that removes trend instead of just smoothing it:
Seasonality isn't a single-bar calculation at all. It's a statistical tally. A seasonality study averages the return of a given calendar period (a month, a week, a day-of-month) across as many historical years as are available, then plots those averages side by side to see whether any period stands out as reliably stronger or weaker than the rest.
Because DPO subtracts a displaced average rather than the current one, it isn't trying to time the market in real time; by design it's looking slightly into the past relative to where the average would normally sit, which is exactly what lets it ignore trend and show the cycle underneath. A DPO trough marks a cyclical low; a DPO peak marks a cyclical high; and a cross back through the zero line is usually read as the cycle turning, though confirmation only arrives after the fact. Seasonality is read completely differently: not bar by bar but period by period, looking for which recurring calendar slice has historically carried a statistically meaningful edge over the others, and only ever used as a backdrop tilt rather than a timing signal on its own.
Running the standard DPO settings (shortened here to a 10-bar SMA, 6-bar shift) against the same illustrative 30-bar series used throughout this module, the oscillator reaches its single deepest reading at bar 15, right in the choppy, directionless stretch that followed the sharp early-April selloff, well before price itself showed any obvious strength. That's the entire point of detrending: the raw candlesticks at bar 15 don't look like a turning point at all, but with the trend subtracted out, the cyclical low is unmistakable. DPO doesn't fully clear back above its own zero line until bar 29, right as the recovery's broader snapback (following the 90-day tariff pause) finally matures.
Cycle-focused technicians in the Hurst tradition rarely rely on one oscillator alone: they typically try to identify several overlapping cycle lengths at once and look for the point where multiple cycles bottom or top together, a "cycle synchronization" that's considered a stronger signal than any single DPO reading. Seasonality, meanwhile, shows up at institutional desks mostly as a context layer: a fund manager aware of a historically weak stretch like the September–October window might simply tighten risk controls or trim position size through it, rather than making an outright directional bet purely on the calendar. Firms descended from the Foundation for the Study of Cycles and from the Stock Trader's Almanac's own research arm still publish updated month-by-month and cycle-length studies every year, treating both tools as one input among several rather than a standalone system.
Same illustrative 30-bar series used throughout this module; the Monte Carlo backtest below uses the realistic 20-bar/11-bar-shift settings on full-length data.
Illustrative average monthly return pattern (a simplified, hypothetical shape built to teach the concept, not a real historical dataset), the kind of chart seasonality studies plot to look for a recurring calendar-based cycle layered on top of the shorter-term cycles DPO picks up.
32,854 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
The Detrended Price Oscillator is a free, built-in indicator on TradingView, StockCharts, and most other charting platforms; the Stock Trader's Almanac publishes well-known seasonal studies that are widely discussed (and often re-charted) for free across financial media.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and look for its hidden cycle.
The Detrended Price Oscillator has no single named inventor: it's a general statistical technique, subtracting a lagged moving average from price to strip out the underlying trend and expose shorter cycles hiding underneath it. That makes it unusual in this module: most indicators here are built to generate a buy or sell signal directly, while DPO was built explicitly as a visualization aid, meant to help a trader see cycle length and timing more clearly, with the trading decision left to whatever other tool is paired with it.
The two tools in this chapter look unlike each other, yet both are short calculations that can be followed by hand. This guide fixes the vocabulary, rebuilds the DPO from raw closes and shows what the shift setting does, and then turns the five-year seasonality tally into a mean, a standard error and a confidence interval. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Period | The number of closes in the simple moving average | The standard value is 20; the hand example uses 4 |
| SMA | Sum of the last N closes divided by N | The average that stands in for the trend |
| Shift | The number of bars back from which the close is taken: floor(period ÷ 2) + 1 | 11 for a 20-bar period; 3 for a 4-bar period |
| DPO | Close from shift bars ago minus the current SMA | Positive when that earlier close sat above the average |
| Detrending | Removing the slow drift so that the swing around it is visible | The DPO does it by comparing prices from different moments |
| Cycle length | The number of bars from one trough to the next | Estimated from the chart; it drifts |
| Plot offset | Drawing the DPO earlier on the chart than the bar that computes it | Makes troughs line up with price, but the value is not known in real time |
| Seasonal return | The return of one calendar period in one year | One number per year, such as January of year 3 |
| Seasonal average | The mean of the seasonal returns over the years studied | A tilt, not a rule |
| Standard error | Sample standard deviation divided by the square root of the number of years | How much the average itself would wobble with another set of years |
| Confidence interval | The average plus and minus a critical value times the standard error | A range of averages that the data cannot rule out |
| Multiple comparisons | Testing many periods and reporting the most striking | Raises the chance of a false pattern |
Mechanism one: the DPO from raw closes, and the shift. With a 4-bar period the shift is floor(4 ÷ 2) + 1 = 3. At bar t the average uses closes t−3 to t, and the close compared with it is the one from bar t−3.
| Bar | SMA of last 4 closes | Close from 3 bars ago | DPO |
|---|---|---|---|
| 4 | 102.25 | 100 (bar 1) | −2.25 |
| 5 | 102.50 | 102 (bar 2) | −0.50 |
| 6 | 101.75 | 104 (bar 3) | 2.25 |
| 7 | 101.00 | 103 (bar 4) | 2.00 |
| 8 | 101.25 | 101 (bar 5) | −0.25 |
| 9 | 102.50 | 99 (bar 6) | −3.50 |
| 10 | 104.00 | 101 (bar 7) | −3.00 |
Now fix bar 10 and change only the shift. The average stays at 104.00; the close compared with it changes.
| Shift | Close used | SMA | DPO |
|---|---|---|---|
| 0 | 105 (bar 10) | 104.00 | 1.00 |
| 1 | 106 (bar 9) | 104.00 | 2.00 |
| 2 | 104 (bar 8) | 104.00 | 0.00 |
| 3 | 101 (bar 7) | 104.00 | −3.00 |
Read across the rows. The DPO at bar 10 is +1.00 with no shift and −3.00 with the formula shift, so the sign of the reading depends on which earlier close is chosen. Because the compared close is from bar 7, the value at bar 10 describes how bar 7 sat against the recent average, and nothing about bar 10 itself. A trough at bar 9 (−3.50) is only recognised as a trough at bar 10, when the next value is higher, and a platform that plots the line three bars earlier is drawing a value that was not available at that time.
Mechanism two: what five Januaries can and cannot say. The returns are 2.1, −0.8, 3.2, 1.4 and −0.3 percent. Treat them as a sample and ask how far the average could be trusted.
Read across the lines. The January average of 1.12% has a 95% range that runs from below zero to above 3%, so five years cannot separate a real tilt from no tilt. Reaching a t-value of 2 would take about 9 years if the mean and spread stayed the same. The problem grows when all twelve months are examined: if each month has a 5% chance of looking significant by luck, the chance that at least one does is 1 − 0.9512 = 46%. A single striking month in a twelve-month table is weak evidence.
| Situation | What goes wrong | What to check |
|---|---|---|
| Too few bars for the period | No DPO exists until a full window and the shifted close are available | Count the first valid bar before reading the line |
| Strong trend persists | The SMA lags and the DPO stays on one side of zero | Read swings around the line, not the sign alone |
| Plot offset on a platform | The line appears to lead price, but the values arrive late | Check whether the displayed line is shifted |
| Cycle length changes | A period chosen for one swing no longer fits the next | Re-test the period on fresh data |
| Few years in a seasonality study | The average is dominated by one or two years | Report the standard error and the count of positive years |
| Many months examined | At least one looks strong by chance | Count how many periods were tested before reporting the best |
In plain words: the DPO compares an older close with the current average so the slow drift cancels, and a seasonal average is a small-sample estimate whose uncertainty should be stated beside it. Education, not advice.
This chapter set out to ask whether price moves in a recurring rhythm once its trend is removed. The Detrended Price Oscillator works on a short scale and calendar seasonality on a long one, and the one idea is that both describe the past loosely and cannot be treated as fixed schedules.
| Question | Short answer | Where it was taught |
|---|---|---|
| Closes 10, 12, 14, 13 and 11 with period 4. What are the shift and the DPO at bar 5? | Shift = 3. SMA = (12 + 14 + 13 + 11) ÷ 4 = 12.50, the close 3 bars back is 12, so DPO = −0.50. | Cypher Guide: The DPO Shift Worked Out and a Seasonal Average Put to the Test |
| Yearly returns of 4, −2 and 3 percent. What are the average and the number of positive years? | (4 − 2 + 3) ÷ 3 = 1.67%, positive in 2 of 3 years. | Cypher Guide: The DPO Shift Worked Out and a Seasonal Average Put to the Test |
| Why is the 1.12% January average weak evidence? | Its 95% range includes zero, and two of five years were negative. | Streamline View: Detrending Price and Reading Seasonal Tendencies |
| Why can a DPO peak or trough not be used as a real-time signal? | It can only be confirmed after later bars arrive. | Common Mistakes |
| Do cycle lengths stay constant? | No. They drift and can disappear for long stretches, so a period chosen by eye needs testing. | Common Mistakes |
Two points, chosen by eye — that's all a trendline drawn earlier in this module has ever needed. W.D. Gann's approach to the chart asked for something more rigid: a fixed, repeatable slope measured in price-per-time, plus a separate, purely numerical method for projecting future support and resistance levels from a single starting price, no second data point needed at all.
Gann analysis offers two separate tools. Gann angles are straight lines drawn from a major swing high or low at a fixed ratio of price change to time change, with the 1x1 angle as the dividing line between a strong and a weak trend. The Square of 9 is pure arithmetic on one starting price: take its square root, add a fixed step for each turn around a spiral, then square the result to get a candidate support or resistance level. The rule that matters most is that the angles only mean anything on a chart whose price and time axes are scaled to match. The method goes wrong when enough candidate levels are computed that a few appear to work by chance.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| 1x1 angle | One price unit per one time unit, drawn from a major swing | Price holding above a rising 1x1 is read as a healthy trend; a close below it is an early warning | Means 45 degrees only on a chart with axes scaled to match, which most default views are not |
| Other angles | 2x1 is twice as steep, 1x2 half as steep; Gann also used 4x1, 1x4, 8x1 and 1x8 | The next shallower angle (1x2, then 1x4) is offered as the next support level down | A different instrument or timeframe needs its own 1x1 slope |
| Anchor point | A significant swing high or low | Fan the angles out from a genuinely major extreme | Anchoring on a minor swing makes every line arbitrary |
| Square of 9 | Square root of a start price, plus a fixed step per 90-degree turn, squared back | A ladder of potential turning points computed from one number | Not every level matters, and chance produces apparent hits |
| Time axis | The angles trade price against time, so the scale is part of the tool | Always check the chart aspect ratio first | A slope in dollars per bar copied from another chart has no meaning |
| Standing | Offered on most major platforms, with a small dedicated following | A fringe method compared with RSI or moving averages | Explicitly unvalidated by outside research; independent confirmation of Gann’s claimed results never materialised |
| Source of the rules | Dense, cryptic writing in courses and books | Readers reconstruct the rules, and versions differ | Two analysts may draw different levels from the same low |
Reading the example: after 10 bars the 1x1 line sits at $85.20, the steep 2x1 line at $94.20, and the shallow 1x2 line at $80.70. If price tracks near $85.20 the textbook reading is a healthy trend; if it falls well under that line, the next shallower angle is the next level to watch. The Square of 9 ladder of 110.25, 121.00, 132.25 and 144.00 is arithmetic, not evidence, so the question to ask is how many candidate levels were computed before one seemed to fit.
In plain words: Gann tools turn one low and a chosen slope, or one price and a spiral, into lines and levels, and their meaning rests on the chart settings and on trust in a system that was never independently validated. Education, not advice.
W.D. Gann was a trader and author whose method is easy to date and hard to verify. His books and courses can be placed in the first half of the 20th century, but his claims about his own results were never independently confirmed, and the angle and Square of 9 tools attached to his name were later reconstructed by readers from dense, indirect writing. The history is mostly the history of a body of writing.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1878 | William Delbert Gann is born on June 6 in Lufkin, Texas. | The start of a life whose later claims rest largely on his own books and courses. |
| 1903 | He moves to New York City after working as a cotton broker in Texarkana. | The move into the Wall Street trading world. |
| 1908 | He opens a brokerage under his own name, W.D. Gann & Company. | A business that also sold advice, which matters for judging his published claims. |
| 1923 | Truth of the Stock Tape is published (some listings give 1924). | An early book that presents his chart and time ideas to a general audience. |
| 1927 | His novel Tunnel Thru the Air appears. | A work of fiction that critics and followers still read for hints about his methods. |
| 1949 | 45 Years in Wall Street is published. | A late summary of his methods, a major source for modern writers on the angles. |
| 1955 | Gann dies on June 18 at the age of 77. | No complete method was left in plain form, so every modern version is a reconstruction. |
William Delbert Gann was an early-20th-century trader (active chiefly from the 1900s through the 1950s) whose methods blended chart geometry, numerology, and a close personal study of astrology and ancient mathematics, a combination that makes him one of the most debated figures in the history of technical analysis. Gann claimed an extraordinary trading record and published a string of courses and books (including the 1923 book Truth of the Stock Tape) teaching his angle and square techniques, but he kept much of his actual method deliberately obscure, writing in a dense, cryptic style that later analysts have spent decades trying to fully reconstruct. Whatever the truth of his personal results, the angle and Square of 9 techniques that carry his name are still offered today as standard drawing tools on most major charting platforms.
A Gann angle is defined as a fixed ratio of price change to time change, drawn from a significant swing high or low:
The Square of 9 is a completely separate, non-chart tool: take the square root of a starting price, add a fixed increment for each angular rotation (taken here in 90-degree steps, a quarter turn each), then square the result back to get a projected price level:
Each 90-degree step around the spiral adds a fixed 0.5 to the square root before squaring it back. The resulting prices (85.18, 94.66, 104.64, 115.12...) become candidate support and resistance levels purely from the starting price itself, with no second data point or time axis involved at all.
On a properly scaled chart, price holding above a rising 1x1 angle is read as a healthy, sustainable trend; a close below it is taken as an early warning that the trend is weakening, with the next shallower angle (1x2, then 1x4) offered as the next support level down. The Square of 9's price levels are read as a ladder of potential turning points: not every level will matter for a given move, but Gann practitioners watch for price to pause, reverse, or accelerate specifically as it reaches one of these pre-computed numbers.
Anchoring a set of Gann angles at the series' lowest low (bar 8, $76.20) and projecting them across the same illustrative 30-bar series used throughout this module, price tracks closest to the 1x1 angle through most of the subsequent recovery — the textbook "healthy trend" reading. The steeper 2x1 angle quickly outpaces the actual rally, while the shallower 1x2 angle gets cleared almost immediately, leaving the 1x1 line as the one angle that stays genuinely relevant to where price actually trades. Separately, Square of 9 levels computed from that same $76.20 low land suggestively close to two real pauses in the series: the 180-degree level near bar 18 and the 270-degree level near bar 26, the kind of coincidence Gann followers treat as validation and skeptics treat as exactly the sort of after-the-fact pattern-matching that's easy to find in any 30-bar series if you compute enough candidate levels.
Gann-based analysis occupies a genuinely fringe position relative to the rest of this module's tools. It retains a small, dedicated following (some licensed trading educators still teach dedicated Gann courses, and most major charting platforms ship built-in Gann fan and Square of 9 drawing tools), but it sees far less use at institutional trading desks than RSI, moving averages, or even Elliott Wave. Where it is used professionally, it's typically layered as one more candidate support/resistance ladder alongside more mainstream tools like Fibonacci retracements, rather than as a standalone system, and practitioners are generally candid that reproducing Gann's own original results from his historical writings has proven difficult.
Same illustrative 30-bar series used throughout this module, anchored from its lowest low at bar 8 ($76.20).
5,599 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Gann Fan and Square of 9 (sometimes labeled Gann Square) drawing tools are free, built-in features on TradingView and several other charting platforms.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and fan a set of Gann angles from its low.
William Delbert Gann was a commodities and stock trader active in the early-to-mid 20th century who claimed extraordinary trading results and built an entire geometric system (Gann angles, the Square of Nine, time-cycle forecasting) around the idea that price and time move in mathematically related proportions. Gann never fully disclosed his methods before his death, and independent verification of his claimed results has never materialized. His tools remain taught and used today, but they sit apart from almost everything else in this module as explicitly unvalidated by outside research.
The Square of 9 is a short formula, and the Gann fan is a slope that depends on how a chart is drawn. This guide fixes the vocabulary, works the ladder of levels from two starting prices, derives the 1x1 slope from the chart scale itself, and then measures how easily a ladder of levels produces apparent hits by chance. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Anchor | The swing low or high from which a fan or ladder starts | Should be a major turning point; the whole result rests on it |
| Gann angle | A line from the anchor with a fixed price change per unit of time | Named by a ratio such as 1x1, 2x1 or 1x2 |
| 1x1 slope | The price change per bar that draws a 45-degree line on a given chart | Equals pixels per bar divided by pixels per price unit |
| Angle multiple | The factor applied to the 1x1 slope: 2x1 is twice, 1x2 is half | Gives the other lines of the fan |
| Chart scale | Pixels per bar and pixels per price unit | Changing it changes the numerical meaning of every angle |
| Square root of the start | The number the spiral steps are added to | For a start of 100 it is 10 |
| Root step | The amount added to the square root for one move around the spiral | Level = (square root of start + root step) squared |
| Degree label | The angle attached to a root step | Sources differ: a full turn of the spiral adds 2 to the root, so a step of 0.5 is a quarter turn, so the chapter labels 0.5 as 90 degrees |
| Ladder | The list of levels produced by the steps | Candidate support and resistance, not a forecast |
| Tolerance | How close a price must come to count as a hit | A wider tolerance finds more hits |
| Chance hit rate | The share of random prices that fall inside the tolerance bands of a ladder | The baseline against which an apparent hit is judged |
Mechanism one: the ladder from two starting prices. The formula is level = (√start + step)2. On the spiral a full turn adds 2 to the square root, so each 0.5 step is a quarter turn of 90 degrees. Values are rounded to the cent.
| Root step | Degrees on the spiral | Level from 100 | Above start | Level from 76.20 | Above start |
|---|---|---|---|---|---|
| 0.5 | 90 degrees | 110.25 | 10.25% | 85.18 | 11.78% |
| 1.0 | 180 degrees | 121.00 | 21.00% | 94.66 | 24.22% |
| 1.5 | 270 degrees | 132.25 | 32.25% | 104.64 | 37.32% |
| 2.0 | 360 degrees | 144.00 | 44.00% | 115.12 | 51.07% |
Read across the rows. A one-step ladder is multiplicative: each level is a fixed percentage above the start, and that percentage is larger when the start is smaller. The first level is 10.25% above a start of 100 and 11.78% above 76.20. Moving the start from 76.20 to 77.00 shifts the first level by 0.85, slightly more than the start moved, because the factor is (1 + step ÷ root), which is above 1.
Mechanism two: where the 1x1 slope comes from. A 45-degree line rises as many pixels as it runs. If a bar is 18 pixels wide and one price unit is 20 pixels tall, an 18-pixel rise is 18 ÷ 20 = 0.90 price units, so 1x1 is 0.90 per bar. Squash the price axis to 10 pixels per unit and the same rule gives 18 ÷ 10 = 1.80 per bar.
| Angle | Slope (18 px per bar, 20 px per unit) | Level after 10 bars | Slope (18 px per bar, 10 px per unit) | Level after 10 bars |
|---|---|---|---|---|
| 4x1 | 3.600 | 112.20 | 7.200 | 148.20 |
| 2x1 | 1.800 | 94.20 | 3.600 | 112.20 |
| 1x1 | 0.900 | 85.20 | 1.800 | 94.20 |
| 1x2 | 0.450 | 80.70 | 0.900 | 85.20 |
| 1x4 | 0.225 | 78.45 | 0.450 | 80.70 |
Read across the rows. On the first chart the 1x1 line reaches 85.20 after 10 bars, which matches the chapter. On the second chart the line called 1x1 reaches 94.20, which is the 2x1 value on the first chart. The name of an angle is a property of the picture. Two analysts looking at the same prices in differently shaped windows draw different lines and call them by the same name.
Mechanism three: how often a ladder hits by chance. Take the four levels from 76.20, 85.18, 94.66, 104.64 and 115.12, and a tolerance of 0.50 on either side, so each level covers a band 1.00 wide. The span from the start to the top level is 38.92. If a pause lands at a random price in that span, the chance it falls inside some band is the covered width divided by the span.
| Levels in the ladder | Chance one pause is a hit | Two pauses, at least one hit | Five pauses | Ten pauses |
|---|---|---|---|---|
| 4 | 10.3% | 19.5% | 41.9% | 66.2% |
| 8 | 20.6% | 36.9% | 68.4% | 90.0% |
Read across the rows. With four levels a single random pause is a hit about one time in ten, and with five pauses the chance of at least one hit is above 40%. Doubling the ladder to eight levels pushes it past 68%. Two apparent matches in a 30-bar series, as in the chapter’s example, are therefore expected often enough that they say little by themselves. The test of a ladder is how it performs on pauses recorded after the ladder was written down.
| Situation | What goes wrong | What to check |
|---|---|---|
| Chart window resized | Every angle changes slope while keeping its name | Recompute the 1x1 slope from the pixel scale after any resize |
| Log versus linear price axis | A straight 1x1 line means a different thing on each axis | Note the axis type with the angle |
| Minor anchor | Lines from a small swing carry no weight | State why the anchor is a major turning point |
| Degree labels mixed up | A 0.5 root step is a quarter turn (90 degrees), not 45 | Compare root steps, not labels |
| Rounded square root | Early rounding moves levels by cents | Keep the root unrounded until the final square |
| Many candidate levels | Some hits are certain by chance | Count levels and pauses, and compute the chance rate |
In plain words: a Gann ladder is a square-root step applied to one price, a Gann fan is a slope that exists only for a given chart scale, and both produce many lines, so a hit has to be weighed against how likely a hit was anyway. Education, not advice.
This chapter set out to separate two Gann tools and test how much of each is a choice. Gann angles are fixed-slope lines from a swing point and the Square of 9 is arithmetic on one price, and the one idea is that both produce many lines, so a hit means little until it is weighed against how likely a hit was anyway.
| Question | Short answer | Where it was taught |
|---|---|---|
| A start price of 49 and root steps of 0.5, 1.0, 1.5 and 2.0. What are the levels? | The root is 7, so the levels are 7.52 = 56.25, 8.02 = 64.00, 8.52 = 72.25 and 9.02 = 81.00. | Cypher Guide: The Square of 9 Ladder, the Chart-Scale Slope and Chance Hits |
| A low of 20.00 with a 1x1 slope of 0.50 per bar. Where are the 1x1, 2x1 and 1x2 lines 8 bars later? | 1x1 = 24.00, 2x1 = 28.00 and 1x2 = 22.00. | Streamline View: Gann Angles and the Square of 9 |
| How is the 1x1 slope found from a chart? | From the pixels: an 18-pixel bar and 20 pixels per price unit give 18 ÷ 20 = 0.90 per bar. | Cypher Guide: The Square of 9 Ladder, the Chart-Scale Slope and Chance Hits |
| Why do two analysts draw different lines and call both 1x1? | The slope depends on the shape of the chart window, so the same name labels different numbers. | Common Mistakes |
| Why is a Square of 9 level that seemed to work weak evidence? | Enough candidate levels will always give a few chance hits. | Common Mistakes |
Until now, candlesticks have mostly been scenery in this module: the backdrop other indicators get plotted against, even though the charts have all been drawn with them. This chapter puts the candles themselves in the spotlight. A single candle's shape, or a small handful of them read together, is its own complete technical-analysis discipline, with named patterns that traders have used to flag potential reversals for centuries.
A candlestick pattern is a named shape made by the open, high, low and close of one, two or three candles. It is not calculated like an oscillator: the name describes where the close ended relative to the open and the extremes of the range. The rule that matters most is that a pattern is a prompt to look at context, such as the trend, a support or resistance level and the next candle, not a signal on its own. The usual way it goes wrong is acting on the pattern bar before the following candle confirms it, or treating every instance as equally reliable.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Doji | Open and close nearly identical, almost no real body | Indecision rather than a direction | Meaningful mainly at a significant level, such as after an extended trend |
| Hammer | Small body near the top of the range, long lower wick, little or no upper wick, typically after a decline | A potential bottom after a decline; a shooting-star shape after an advance is read as a potential top | Needs the next candle to confirm the implied direction |
| Engulfing (bullish or bearish) | The second candle’s full body covers the first candle’s body, in the opposite direction | Bullish after a decline is a potential bottom; bearish after an advance is a potential top | In the chapter’s example a bearish engulfing at bars 6 to 7 was wrong one bar before a bullish engulfing marked the low |
| Morning and evening star | Three candles: a long one, a small-bodied candle that gaps away, then a long one in the opposite direction closing well into the first body | Morning star reads as a bottom, evening star as a top | Gaps are rarer on markets that trade around the clock |
| Confirmation | Waiting for the candle after the pattern | Act on what the next candle does, not on the shape alone | Trading the pattern the moment it appears is the standard mistake |
| Context | Trend, support and resistance, volume | A pattern at a genuinely significant level counts for more than one in the middle of a range | Judging by candle shape alone ignores volume and the broader trend |
| Reliability | No fixed win rate; it varies by context | The same pattern family can be noise one bar and the turning point the next | Assuming a universal success rate for a named pattern |
Reading the example: the checks only say that a shape is present. Whether the hammer-shaped Candle B matters depends on whether it followed a decline and whether the next candle closed higher. In the chapter’s own series, an engulfing pattern that looked textbook at bars 6 to 7 failed, and one a bar later marked the actual low, which is why the shape alone cannot settle the question.
In plain words: candle patterns are shape rules that flag where to look, and the confirmation and the surrounding context carry the weight. Education, not advice.
Candlestick charts are among the oldest chart forms in this library, and also among the most contested in their origin. They are tied to rice trading in Osaka in the 1700s and to the trader Munehisa Homma, yet the drawn candle itself is thought to be later. They reached Western traders only in 1991, and academic opinion on whether patterns predict prices is still divided.
| Year | What happened | What it added to the topic |
|---|---|---|
| About 1710 | A futures market for rice emerges in Osaka, using coupons that promise future delivery, and a secondary market in those coupons develops. | The setting in which price-recording methods and trading psychology were first written about. |
| 1724 to 1803 | Munehisa Homma, a rice merchant from Sakata, lives and trades at the Dojima rice market during the Tokugawa period. | The life span of the figure most often credited with the candle tradition. |
| 1755 | Homma publishes The Fountain of Gold, described as an early book on market psychology. | A written link between price action and crowd behaviour, long before Western technical analysis. |
| After 1850 | Candlestick charting in its drawn form is thought to have begun, later than Homma’s lifetime. | A reason to treat the attribution to Homma as a tradition rather than a settled fact. |
| 1991 | Steve Nison’s Japanese Candlestick Charting Techniques introduces the method and its English names to Western traders. | The source of terms such as doji, hammer, engulfing and morning star as used worldwide. |
| 1994 | Nison follows it with Beyond Candlesticks, combining candle patterns with Western tools. | The idea that patterns work best alongside confirmation from other tools. |
| 2017 | A published study tests the predictive power of candlestick patterns, and academic opinion on it remains divided. | Evidence that the reliability of named patterns is still an open question. |
Candlestick charting predates almost every other tool in this module by a wide margin: it's generally traced to 18th-century Japanese rice markets, with the trader Munehisa Homma often credited as a key early figure in developing price-recording and trading methods on the Dojima Rice Exchange in Osaka. The method stayed essentially unknown outside Japan until the American technician Steve Nison studied it directly with Japanese sources and introduced it to Western traders through his 1991 book Japanese Candlestick Charting Techniques, which remains the most widely cited reference for the discipline in English. Nison's book is also responsible for standardizing much of the English-language naming convention (doji, hammer, engulfing, morning star) that traders worldwide now use.
Candlestick patterns aren't calculated from a formula the way an oscillator is. They're defined by the shape and sequence of one, two, or three candles' own open, high, low, and close:
Every one of these is a statement about where the close ended up relative to the open and the extremes of the range: no external data series, moving average, or lookback window is needed to spot one.
A hammer or a bullish engulfing pattern forming after a decline is read as a potential bottom; a shooting-star-shaped candle or a bearish engulfing pattern forming after an advance is read as a potential top. A doji on its own is read as indecision rather than a directional signal — it's usually treated as meaningful only when it shows up at a meaningful level, like after an extended trend or at a known support or resistance line, and traders are taught to wait for the following candle to confirm the pattern's implied direction rather than act on the pattern bar alone.
The same illustrative 30-bar series used throughout this module happens to contain a genuinely instructive back-to-back pair. At bars 6–7, a textbook bearish engulfing pattern forms (a green candle followed by a larger red candle whose body fully covers it) right as the April 2025 selloff was still underway. It's immediately wrong: price falls one more bar to the series' actual low. Then, at bars 7–8, a textbook bullish engulfing pattern forms (a red candle followed by a larger green candle fully engulfing it) and this one marks the real capitulation low and the start of the recovery. Same pattern family, same chart, one bar apart: one is noise, one is the real turning point, and there was no way to tell which was which from the pattern shape alone at the time it formed.
Professional and semi-professional discretionary traders use candlestick patterns constantly, but almost never in isolation: a hammer at a well-known support level, or a bullish engulfing pattern confirmed by a volume spike and a trend-following indicator from earlier in this module, is treated as a far stronger signal than the same pattern appearing in the middle of nowhere. Many systematic and quantitative shops have studied candlestick patterns' raw statistical edge directly and found it considerably weaker and more context-dependent than the pattern's popularity would suggest, which is part of why discretionary traders lean so heavily on confirmation and context rather than trading the pattern shape alone.
Same illustrative 30-bar series used throughout this module, right around its capitulation low.
37,549 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Candlestick pattern recognition is available for free as a built-in screener or overlay on TradingView, StockCharts, and most other charting platforms, and needs no special indicator to be added: every candlestick chart already shows the raw material.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and look for its own candlestick patterns.
Munehisa Homma traded rice futures in 18th-century Osaka and is widely credited as the source of the candlestick charting tradition, reportedly amassing significant wealth and influence through his reading of price action long before Western technical analysis existed. The patterns didn't reach English-speaking traders until Steve Nison's 1991 book “Japanese Candlestick Charting Techniques,” which single-handedly introduced an entire centuries-old visual language (doji, hammers, engulfing patterns) to a Western audience that had been charting with bars alone.
A candlestick pattern is a rule on four prices per candle, so it can be tested with a ruler before it is tested with a market. This guide fixes the vocabulary, applies shape rules to raw open, high, low and close values and shows how thresholds change the answer, and then turns a pattern’s win rate into a confidence interval, a break-even rate and a required sample size. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Body | The absolute difference between open and close | A small body means little net movement over the bar |
| Range | High minus low | The denominator for shape ratios |
| Upper wick | High minus the larger of open and close | The part of the range rejected on the way up |
| Lower wick | The smaller of open and close minus the low | The part of the range rejected on the way down |
| Body ratio | Body divided by range | Doji rules set a ceiling on it, such as 10% or 5% |
| Doji | A candle whose body ratio is at or below the chosen ceiling | Indecision as a shape; the ceiling is a convention |
| Hammer shape | Lower wick at least a set multiple of the body and a short upper wick | This guide uses 2 times the body and an upper wick no longer than the body |
| Engulfing | A second candle whose body covers the first candle’s body in the opposite direction | Variants differ on equal edges and on whether wicks count |
| Confirmation | A later candle that closes in the direction the pattern implies | The step that turns a shape into a candidate |
| Win rate and standard error | Share of wins and sqrt(p(1 − p) ÷ n) | Measure how well a pattern’s record is known |
| Break-even win rate | The win rate at which average gain equals average loss plus costs | (Average loss + cost) ÷ (average win + average loss) |
| Required sample size | Occurrences needed to tell a given edge from 50% | About (1.96 × 0.5 ÷ edge)2 for a 95% test |
Mechanism one: rules on raw prices. Six hypothetical candles are measured. Candles A and B come from the Streamline View. The doji rule is body ratio at or below 10%, tested also at below 10% and at or below 5%. The hammer rule requires a lower wick of at least twice the body and an upper wick no longer than the body.
| Candle | O / H / L / C | Body | Range | Body ratio | Lower wick | Upper wick | Doji at or below 10% | Doji below 10% | Doji at or below 5% | Hammer shape |
|---|---|---|---|---|---|---|---|---|---|---|
| A | 50.00 / 50.60 / 49.40 / 50.05 | 0.05 | 1.20 | 4.2% | 0.60 | 0.55 | yes | yes | yes | no |
| B | 48.40 / 48.60 / 47.00 / 48.50 | 0.10 | 1.60 | 6.3% | 1.40 | 0.10 | yes | yes | no | yes |
| C | 20.00 / 20.50 / 19.50 / 20.40 | 0.40 | 1.00 | 40.0% | 0.50 | 0.10 | no | no | no | no |
| D | 30.00 / 30.30 / 28.80 / 29.95 | 0.05 | 1.50 | 3.3% | 1.15 | 0.30 | yes | yes | yes | no |
| E | 40.00 / 41.00 / 39.90 / 40.50 | 0.50 | 1.10 | 45.5% | 0.10 | 0.50 | no | no | no | no |
| F | 60.00 / 60.60 / 59.40 / 60.12 | 0.12 | 1.20 | 10.0% | 0.60 | 0.48 | yes | no | no | no |
Read across the rows. Candle F has a body ratio of exactly 10.0%, so it is a doji under the at-or-below rule and not under the below rule: one tick of definition changes the label. Candle D carries a long lower wick and a tiny body, yet its upper wick of 0.30 is six times its body, so it does not satisfy the hammer rule even though it looks like a dragonfly; a rule with a different upper-wick limit would accept it. The labels belong to the rule, not to the candle.
Pairs of candles give the same lesson. Three prior and current candles are tested against three engulfing rules: bodies covered with equal edges allowed, bodies covered strictly, and whole ranges covered.
| Pair | Prior candle | Current candle | Body covered, edges equal allowed | Body covered strictly | Whole range covered |
|---|---|---|---|---|---|
| 1 | O 49.00 H 49.30 L 48.00 C 48.20 | O 48.00 H 49.60 L 47.90 C 49.40 | yes | yes | yes |
| 2 | O 49.00 H 49.20 L 48.10 C 48.20 | O 48.20 H 49.50 L 48.15 C 49.40 | yes | no | no |
| 3 | O 49.00 H 49.60 L 48.00 C 48.20 | O 48.00 H 49.40 L 47.90 C 49.30 | yes | yes | no |
Read across the rows. Pair 1 passes every rule. Pair 2 passes only the first, because the current open equals the prior close and the current low is above the prior low. Pair 3 passes the two body rules but not the range rule, because its high is below the prior high. A screener and a textbook may therefore disagree about whether the same two candles form the pattern.
Mechanism two: what a record of wins can support. Suppose a pattern is tested on 100 occurrences with a 10-bar exit and wins 56 times, with an average win of 3.7% and an average loss of 3.3%. Those figures are chosen only for the arithmetic.
Read across the lines. The 95% range for the win rate runs from 46.3% to 65.7%, which includes 50%. A record of 56 wins in 100 cannot be told apart from a coin flip, even though the expected value looks positive. Costs matter next. The table gives the break-even win rate for different round-trip costs and the expected value that remains at a 56% win rate.
| Round-trip cost | Break-even win rate | Expected value at 56% |
|---|---|---|
| 0.00% | 47.1% | 0.62% |
| 0.25% | 50.7% | 0.37% |
| 0.50% | 54.3% | 0.12% |
| 1.00% | 61.4% | −0.38% |
A cost of 1.00% lifts the break-even rate to 61.4%, leaving an expected value of −0.38% at a 56% win rate. The last table shows how many occurrences are needed to separate a given win rate from 50% at the 95% level, using (1.96 × 0.5 ÷ edge)2 and rounding up.
| True win rate | Edge over 50% | Occurrences needed |
|---|---|---|
| 60% | 10 points | 97 |
| 55% | 5 points | 385 |
| 52% | 2 points | 2,401 |
An edge of 2 points needs more than 2,400 occurrences, which is more than most pattern records contain. Screeners that test dozens of patterns add the multiple-comparison problem on top of that.
| Situation | What goes wrong | What to check |
|---|---|---|
| Ratio exactly on a threshold | The label flips with one rule change | Record whether the rule is at-or-below or below |
| Wick rules differ | A dragonfly shape passes one hammer rule and fails another | Check upper and lower wick limits |
| Pattern bar acted on at once | The confirming candle is skipped | Wait for the next close and note the delay in the result |
| Context ignored | Shape rules know nothing about trend or level | Add the trend and level as stated conditions and count again |
| Overlapping signals | One candle can belong to two patterns and inflate the count | Count each occurrence once |
| Gap-based stars on near-continuous markets | Gap rules may rarely trigger when markets open near the prior close | Check how often the gap condition is met |
In plain words: a candle pattern is a labelled measurement whose label depends on the rule used, and a record of wins needs a confidence range, a cost allowance and a large sample before it says anything about an edge. Education, not advice.
This chapter set out to treat a candlestick pattern as a measurement, not a signal. A pattern is a shape rule on open, high, low and close, and the one idea is that the label belongs to the rule used, so the surrounding context and the confirming candle carry the weight.
| Question | Short answer | Where it was taught |
|---|---|---|
| A candle has Open 25.00, High 25.10, Low 23.90 and Close 25.04. Is it a doji at or below 10%? | Body 0.04 on a range of 1.20 is 3.3%, so yes. | Cypher Guide: Measuring Candle Shapes and Testing a Pattern Record |
| Does that candle pass the hammer rule? | The lower wick of 1.10 is 27.5 times the body, but the upper wick of 0.06 is longer than the body of 0.04, so it fails. | Cypher Guide: Measuring Candle Shapes and Testing a Pattern Record |
| A pattern wins 27 of 45 trades. What are the win rate and the 95% range? | 27 ÷ 45 = 0.60, standard error 0.073, range 0.457 to 0.743, which includes 0.50. | Cypher Guide: Measuring Candle Shapes and Testing a Pattern Record |
| What are the usual ways acting on a pattern goes wrong? | Acting before the next candle confirms it, or treating every instance as equally reliable. | Streamline View: Candlestick Shapes, Confirmation and Context |
| Does a named pattern have a fixed win rate? | No. Reliability varies by context, as the back-to-back example showed. | Common Mistakes |
Where the last chapter looked at one or a few candles at a time, this chapter zooms out to the shape of an entire price move. Classical chart patterns are named geometric structures, built from a series of highs, lows, and the trendlines connecting them, that traders have used for over a century to anticipate where a trend is likely to pause, reverse, or continue.
Classical chart patterns are named shapes made of swing highs, swing lows and the trendlines that join them: head and shoulders, double tops and bottoms, triangles and flags. The rule that matters most is confirmation. A shape is only a candidate until price breaks its neckline, trendline or range. The main way it goes wrong is hindsight, because enough highs and lows can be joined into almost any shape after the fact.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Head and shoulders | Three peaks, the middle one highest, with a neckline through the two lows between them | A close below the neckline is read as a bearish reversal | The neckline can be drawn sloped or flat, so two analysts may place it differently |
| Double top or bottom | Two peaks (M) or two troughs (W) at a similar level, split by a pullback | A break of the middle low (top) or middle high (bottom) completes it | Two similar highs are common in noise; without the break it is only a pair of highs |
| Triangle | Converging trendlines from lower highs and/or higher lows | Volume often contracts inside it and expands on the breakout | The breakout can run either way, and false breakouts are common near the apex |
| Flag | A sharp pole, then a brief narrow consolidation leaning against the move | A continuation pattern: the pole is expected to resume after the flag breaks | A flag that sags deep into the pole is no longer a flag |
| Confirmation | The break of the neckline, boundary or range | Before the break the shape is a candidate only | Calling a pattern complete early is the most common error |
| Measured target | Pattern height projected from the breakout point | A rough, popular rule of thumb for how far a move might run | Not a guarantee: on this chapter’s random-walk test the entry rule won 51.3% against a 55.1% random-entry baseline |
Second outcome. If the head and shoulders price instead dips toward the neckline, closes at 102 and then rallies above the right shoulder, the neckline held. The pattern never confirmed, so the target of 80 never applies. A shape that fails to break its line is not a signal at all. Volume is the usual cross-check: contracting volume during a triangle or flag and expanding volume on the breakout is the expected pattern, and a breakout on thin volume deserves more doubt.
In plain words: draw the line first, wait for price to cross it, and treat the projected target as a rough guide rather than a promise. Education, not advice.
A classical chart pattern is a named price shape that chartists learned to recognise and, later, to count. The thread runs from the trend writing of the early 1900s, through the hand-drawn catalogues of the 1930s and 1940s, to modern work that tallies outcomes across thousands of charts. The shapes are old; the testing is recent, and that gap explains how much weight a pattern can carry. Each date below marks a step in that slow move from picture to evidence.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1902 | Charles Dow dies. His newspaper editorials of 1900 to 1902 on market trends were later gathered under the name Dow Theory | The basic frame of chart reading: trends are read from the swings of price, and a signal wants confirmation |
| 1930 | Richard Schabacker publishes Stock Market Theory and Practice | The first book in the run that led to his pattern catalogue |
| 1932 | Schabacker publishes Technical Analysis and Stock Market Profits: A Course in Forecasting | A shared vocabulary for head and shoulders, triangles, flags and the reversal versus continuation split used in this chapter |
| 1948 | Robert D. Edwards and John Magee publish the first edition of Technical Analysis of Stock Trends in Springfield, Massachusetts | The catalogue became a standing reference, revised through many editions, so most pattern definitions in use today descend from it |
| 2000 | Thomas Bulkowski publishes the first edition of an encyclopedia of chart patterns | A move from chosen examples to counting how patterns behaved across many charts |
| 2005 | A revised and expanded second edition of the Encyclopedia appears; a reprint of Schabacker’s original text also returns to print | Both the founding text and the counted evidence are available side by side for comparison |
Classical pattern analysis traces largely to Richard Schabacker, whose 1932 book Technical Analysis and Stock Market Profits is widely credited as the first systematic treatment of chart patterns in English. Schabacker's work directly shaped his brother-in-law Robert D. Edwards and John Magee's 1948 book Technical Analysis of Stock Trends, which remains, through many later editions, the single most cited reference for head-and-shoulders, double tops and bottoms, triangles, and flags. These patterns emerged from decades of hand-charted observation, well before computers could test them statistically. They were, in effect, crowd-sourced over generations of chartists all independently noticing the same recurring shapes.
Like candlestick patterns, these aren't calculated from a formula. They're defined by price structure itself:
Most of these patterns also give a simple, popular method for projecting a price target: measure the pattern's own height (from peak to neckline, or across the triangle's widest point) and project that same distance from the breakout point.
A head-and-shoulders or double top breaking its neckline downward is read as a bearish reversal signal; a double bottom or an ascending triangle breaking upward is read as bullish. A flag is read differently — as a continuation pattern, implying the prior trend (the pole) is likely to resume once the brief consolidation resolves in the same direction it was already heading. In every case, the pattern is considered "confirmed" only once price actually breaks the relevant line (the neckline, the triangle's boundary, or the flag's own range): the shape alone, before that break, is only a candidate.
The same illustrative 30-bar series used throughout this module contains a clean small bull flag rather than any of the reversal patterns. Bars 16 through 20 form the flagpole: a sharp five-bar rise as the April 2025 recovery accelerates. Bars 20–21 form the flag itself: a brief, narrow pullback that gives back only a little of the prior move. Bar 22 delivers the breakout, closing back above the flag's own high and continuing the broader uptrend exactly the way a textbook bull flag is supposed to resolve.
Classical chart patterns remain in wide use among discretionary technical traders and are built into the pattern-recognition screeners on most major charting platforms, which can automatically flag candidate head-and-shoulders, triangles, and flags across thousands of instruments at once. As with candlestick patterns, professionals rarely trade a classical pattern in total isolation — volume behavior during the pattern's formation (often expected to contract through a triangle or flag and expand on the eventual breakout) and the pattern's location relative to the broader trend are both treated as important context, not optional extras.
Same illustrative 30-bar series used throughout this module, zoomed into its mid-recovery continuation.
8,854 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Classical chart pattern screeners and drawing tools are available for free on TradingView, StockCharts, and most other charting platforms.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and look for its own classical patterns.
Richard Schabacker was a financial journalist and editor at Forbes in the 1920s and 30s whose book “Technical Analysis and Stock Market Profits” (1932) first systematically catalogued chart patterns like head-and-shoulders and double tops. After his death, his brother-in-law Robert Edwards and collaborator John Magee carried that work forward into “Technical Analysis of Stock Trends” (1948), the book most responsible for turning Schabacker's catalogue into the standard reference still cited today.
Classical patterns are drawn by eye, but their trading arithmetic is not. This guide fixes the vocabulary, then works two calculations by hand: the measured-move target with the reward-to-risk ratio it implies, and the sample-size arithmetic that says how far a win rate can be trusted. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Swing high and swing low | A bar whose high (low) is above (below) the bars on both sides | Patterns are sequences of swings; the number of bars required on each side sets how coarse the pattern is |
| Neckline | The line through the lows between the peaks of a head and shoulders, or the middle high of a double bottom | The trigger line; a pattern is a candidate until price closes beyond it |
| Pattern height | Distance from the extreme (head, double peak, double trough) to the neckline | The only input the measured-move rule needs |
| Measured-move target | Break level plus or minus one pattern height | A rough projection, up for bullish patterns and down for bearish ones |
| Confirmation | A close beyond the trigger line, not an intrabar poke through it | Entries and counts start here, never at the shape alone |
| Pole and flag | The pole is the sharp move; the flag is the narrow drift against it | The pole height is the height used for the flag target |
| Apex | The point where a triangle’s two trendlines meet | Sources differ on how far toward the apex a break still counts, so state the rule used |
| False break | A close beyond the line followed by a close back inside the pattern | Defines the exit; decide the invalidation level before entry |
| Reward and risk | Distance from entry to target, and from entry to stop | Both are measured from the actual entry close, not from the line |
| Reward-to-risk (R) | Reward ÷ risk | Compare with the break-even win rate before judging a setup |
| Break-even win rate | 1 ÷ (1 + R), ignoring costs | The win rate at which expected value is zero |
| Confidence margin | 1.96 × √(p(1 − p) ÷ n) for an observed win rate p over n trades | Shows how wide the plausible range around a measured win rate is |
Mechanism one: the target and the reward-to-risk it implies. The Streamline View projects the head-and-shoulders height of 20 down from the neckline at 100 to a target of 80. The target is fixed by the pattern, but the reward and the risk are fixed by where the entry actually happens. Suppose the stop is placed just above an assumed right-shoulder high of 112, where the shape would be invalidated.
| Confirming close | Reward to 80 | Risk to 112 | R | Break-even win rate |
|---|---|---|---|---|
| Close at 99 | 19 | 13 | 1.46 | 40.6% |
| Close at 98 | 18 | 14 | 1.29 | 43.8% |
| Close at 97 | 17 | 15 | 1.13 | 46.9% |
| Close at 96 | 16 | 16 | 1.00 | 50.0% |
| Close at 95 | 15 | 17 | 0.88 | 53.1% |
Read across the rows. A close at 99 gives 19 of reward against 13 of risk, R = 1.46, and a break-even win rate of 40.6%. Entering four points later, at 95, leaves 15 against 17, R = 0.88, and the setup now needs a win rate above 53.1% just to break even. The pattern did not change; the entry did. The same height can also give very different ratios across pattern types, as the next table shows.
| Pattern | Height | Entry | Target | Stop | Reward | Risk | R |
|---|---|---|---|---|---|---|---|
| Head and shoulders | 20 | 99.0 | 80.0 | 112.0 | 19.0 | 13.0 | 1.46 |
| Double bottom | 10 | 60.5 | 70.0 | 49.0 | 9.5 | 11.5 | 0.83 |
| Bull flag | 10 | 109.5 | 119.5 | 107.0 | 10.0 | 2.5 | 4.00 |
The double bottom (low 50, middle high 60) has a stop below its lows, 11.5 away, while its target is only 9.5 away, so R = 0.83. The flag has a tight stop under its narrow range, so the same height of 10 gives R = 4.00. Narrow consolidations make the cheapest stops; wide reversal shapes do not.
Mechanism two: how much a win rate proves. Expected value per trade in units of risk is EV = p × R − (1 − p). With R = 1.46 from the first row above, a win rate must exceed 40.6% to be positive, and a measured win rate only estimates the true one.
| True win rate p | EV per trade at R = 1.46 |
|---|---|
| 35% | −0.14 R |
| 40% | −0.02 R |
| 45% | 0.11 R |
| 50% | 0.23 R |
| 55% | 0.35 R |
| 60% | 0.48 R |
Read across the n = 40 row. A 55% win rate over 40 trades is consistent with a true rate anywhere from about 39.6% to 70.4%, which spans both losing and winning setups at R = 1.46. As a cross-check on the chapter’s own simulation: 51.3% wins, average win 3.69%, average loss 3.30% gives a profit factor of (0.513 × 3.69) ÷ (0.487 × 3.30) = 1.893 ÷ 1.607 = 1.18, matching the table, and an expectancy of 0.29% per trade. With 8,854 entries the margin on the win rate is only 1.0 point, so the 3.8-point shortfall against the random baseline is about 3.6 times that margin, though the data are simulated and say nothing about a real market.
| Situation | What goes wrong | What to check |
|---|---|---|
| Gap through the neckline | The first close is far beyond the line, so the entry is late and R shrinks | Recompute R from the actual close, as in the first table |
| Close back inside next bar | A false break; the stop or exit is hit and the target never applies | Write the invalidation level before entry |
| Target closer than stop | R is below 1, so the break-even win rate is above 50% | Compare R with the win rate actually measured |
| Lines drawn after the move | Hindsight makes any shape fit | Count only lines placed before the break bar |
| Height measured two ways | Two analysts get different targets from one chart | State whether height uses the head, the shoulders or the widest point |
| Short track record | 12 trades with 8 winners looks like 67% but the margin is about 27 points, so the range is 40% to 93% | Wait for a sample large enough to narrow the margin |
In plain words: the height gives the target, the actual entry and stop give the ratio, and the number of trades decides how much the win rate means. Education, not advice.
This chapter set out to teach how to read the shape of a whole price move: head and shoulders, double tops and bottoms, triangles and flags. Every pattern is built from the same parts, a shape, a line that triggers it and a way of failing. The idea everything hangs on is that a shape is only a candidate until price breaks its line.
| Question | Short answer | Where it was taught |
|---|---|---|
| A head and shoulders has a head at 120 and a neckline at 100. Where is the projected target? | 80. The height is 20, projected down from the break at 100. | Streamline View: Classical Chart Patterns |
| Is a flag a reversal or a continuation pattern, and what confirms it? | A continuation pattern. It is confirmed when price closes beyond the flag’s own range, as at bar 22 in the example. | A Real, Dated Example: A Flag Inside the April 2025 Recovery |
| A double top has peaks at 80 and a neckline at 70. Price closes at 69 with a stop at 81. What are R and the break-even win rate? | The target is 60, so R = 9 ÷ 12 = 0.75. Break-even is 1 ÷ 1.75 = 57.1%. | Cypher Guide: Measured-Move Targets, Reward-to-Risk and Sample Size |
| Why is a 55% win rate over 40 trades weak evidence? | The margin is about 15.4 points, so the true rate could lie anywhere from about 39.6% to 70.4%. | Cypher Guide: Measured-Move Targets, Reward-to-Risk and Sample Size |
| What did the simulated entries show against a random entry? | A 51.3% win rate against a 55.1% baseline, an edge of −3.8 points. | How Professionals Actually Use It |
A moving average. An oscillator. A ratio. A pattern's own height. The techniques covered before this one have each measured something concrete. Elliott Wave Theory does something different: it claims that collective crowd psychology itself moves in a repeating, fractal rhythm, and that a trader who can correctly label where price currently sits in that rhythm gains a genuine edge in anticipating what comes next.
Elliott Wave Theory is a labeling system, not a calculation. It claims that price moves in a repeating rhythm of a five-wave impulse in the direction of the larger trend, followed by a three-wave correction against it, and that the same rhythm repeats at every scale. The rule that matters most is that three hard rules can never be broken by a valid count. The main way it goes wrong is subjectivity: more than one count often fits the same chart, and counts get relabeled after the fact.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Impulse | Five waves, labeled 1 to 5, moving with the larger trend | Waves 1, 3 and 5 push forward; waves 2 and 4 pull back | A count is a judgment; the same bars can support more than one label |
| Correction | Three waves, A, B and C, against the trend | Unwinds part of the impulse before the next one starts | Corrections take many forms, so they are harder to label than impulses |
| Hard rules | Wave 2 never retraces more than 100% of wave 1; wave 3 is never the shortest of 1, 3 and 5; wave 4 does not overlap wave 1 (in most impulses) | Any break means the count is wrong and must be redrawn | Rules are often only checkable after later waves have printed |
| Fibonacci guidelines | Waves 2 and 4 often retrace 38.2%, 50% or 61.8%; wave 3 or 5 may extend to a Fibonacci multiple of wave 1 | Used to project targets for waves still to come | Guidelines, not laws: a rule-based proxy buying the 38.2% to 61.8% zone won 52.0% against a 51.8% random-entry baseline in this chapter’s simulation |
| Fractal degrees | Each wave subdivides into smaller 5-3 structures | Count the larger degree first, then the smaller | Zooming in gives more places to find a fit |
| Alternate count | A backup count carried beside the primary one | Switch when price breaks a rule of the primary count | Relabeling to match what happened is not a test |
Second outcome. If wave 4 had dropped to 118 instead, it would have entered wave 1’s territory (up to 120). That breaks the overlap rule, so the same labels would be invalid and the analyst would switch to the alternate count. Targets taken from a count that has been invalidated are no longer usable.
In plain words: check the three rules, treat the Fibonacci ratios as rough guides, and keep an alternate count ready. Education, not advice.
Elliott Wave Theory began as one accountant’s attempt to find a repeating rhythm in decades of price charts. Its history runs from a 1938 book, through a small circle of followers who kept it alive, to a late-1970s edition that brought it to a wide audience, and finally to academic checks of its Fibonacci claims. The theory grew by being promoted, much more than by being tested.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1938 | The Wave Principle is published under the name of Ralph Nelson Elliott, with Charles J. Collins involved in its publication | The first statement of the five-wave and three-wave structure |
| 1939 | A series of twelve magazine articles summarises the theory for a wider financial readership | A shorter, plainer version that reached people who had not read the book |
| 1946 | Elliott publishes Nature’s Law: The Secret of the Universe | His most comprehensive work, which developed the Fibonacci side of the theory |
| 1948 | Elliott dies | The theory passed to followers; no further changes came from its originator |
| 1950s to 1960s | Hamilton Bolton promotes wave analysis through annual market commentaries and forecasts | Kept the idea alive and applied counts to live forecasting |
| 1978 | A. J. Frost and Robert Prechter publish Elliott Wave Principle | A modern restatement of the rules and guidelines that most practitioners now learn from |
| 2005 | A study of Fibonacci ratios in Dow cycles finds no significant difference from those expected at random | One published test of the guideline ratios, with a result that counsels caution |
Ralph Nelson Elliott, an accountant by trade, spent the 1930s studying decades of stock market price charts and concluded that prices move in a recurring pattern he called the Wave Principle, first published in 1938. Elliott noticed the same five-wave-then-three-wave rhythm repeating at every scale he examined, and tied several of its characteristic proportions to the Fibonacci sequence, the same ratios behind common Fibonacci retracement tools. The theory remained a niche pursuit until analyst Robert Prechter and A.J. Frost's 1978 book Elliott Wave Principle brought it to a much wider audience, and Prechter's own published wave counts have remained influential (and, at times, controversial) ever since.
Like candlestick and classical chart patterns, this isn't a calculation. It's a structural labeling system with its own rules:
The structure is explicitly fractal: zoom into any single wave and, in principle, it subdivides into its own smaller 5-wave or 3-wave structure, repeating the same shape at a smaller degree.
An analyst's job is to label the current chart with the wave count that best fits the rules and guidelines above, then use that label to anticipate what should come next. If the current leg is judged to be wave 2, for instance, the theory implies wave 3, usually the longest and most powerful wave, should follow. Fibonacci relationships between completed waves are then used to project price targets and time windows for the waves still to come. Because more than one valid count can often fit the same price history, serious practitioners usually carry a primary count alongside one or more alternate counts, and revise both as new bars print.
The same illustrative 30-bar series used throughout this module permits one reasonable 5-wave count on its recovery rally: wave 1 runs bars 5–11, wave 2 is a shallow pullback over bars 11–12, wave 3, the longest of the three motive waves, which comfortably satisfies the rule that it is never the shortest, runs bars 12–20, wave 4 pulls back over bars 20–21, and wave 5 carries price to the series' final bar, 29. None of the three hard rules above are violated by this count. But the series simply ends there, right as a plausible 5-wave count completes, leaving no room for the corrective A–B–C leg the theory says should follow.
Elliott Wave Theory remains popular among independent discretionary technical analysts and is the basis of a long-running commercial publishing business (Prechter's Elliott Wave International publishes ongoing public wave counts across many markets), but it sees comparatively little use among systematic or quantitative funds, largely because a subjective labeling system is difficult to encode into a testable, rules-based strategy. The simplified, mechanical proxy rule this chapter backtests below (buying a pullback into the classic 38.2%–61.8% retracement zone of a recent swing) captures only a thin, systematized slice of what a full discretionary wave count actually involves.
Same illustrative 30-bar series used throughout this module. Wave counting is inherently a judgment call: this is one reasonable count, not the only one a different analyst might draw from the same bars.
29,881 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Elliott Wave International publishes free introductory wave analysis and educational material, and most major charting platforms include drawing tools for labeling waves manually.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and attempt your own wave count on it.
Enter the swing high and low to see where the common retracement levels fall.
Ralph Nelson Elliott was a retired accountant and consultant who, while recovering from illness in the 1930s, began studying decades of stock market data and concluded that prices move in repeating five-wave and three-wave patterns driven by crowd psychology. He published his theory in 1938 as “The Wave Principle.” Elliott had no formal background in markets or mathematics beyond his accounting career, which makes the theory's enduring, if contested, influence on technical analysis one of the more unusual origin stories in this entire module.
Wave counting is a labeling system, yet three of its rules and most of its guidelines reduce to plain arithmetic. This guide fixes the vocabulary, builds a five-wave impulse from stated ratios, tests how the fourth-wave retracement interacts with the overlap rule, and then asks how often a random retracement lands near a Fibonacci level by chance. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Impulse (motive) wave | Five waves, labeled 1 to 5, in the direction of the larger trend | Waves 1, 3 and 5 move with the trend; waves 2 and 4 move against it |
| Corrective wave | Three waves, labeled A, B, C, against the impulse | Unwinds part of the impulse before the next one starts |
| Wave length | Absolute price distance between the start and end of a wave | All three hard rules and every ratio use lengths, not percentages |
| Retracement ratio | Distance a correction gives back ÷ length of the wave it corrects | Wave 2 against wave 1, wave 4 against wave 3 |
| Extension ratio | Length of a wave ÷ length of wave 1 | Wave 3 is often discussed at 1.618 times wave 1 |
| Overlap rule | Wave 4 may not trade into the price territory of wave 1 | For a rising impulse: wave 4 low must stay above the wave 1 high; diagonal forms are a stated exception |
| Shortest-wave rule | Wave 3 may never be the shortest of waves 1, 3 and 5 | Compare the three lengths; ties are not shortest |
| Invalidation level | The price that, if crossed, cancels the current count | Stated before the next bars print, or the count cannot be tested |
| Alternate count | A second labeling that fits the same bars | Held in reserve and promoted when the first count is invalidated |
| Degree | The scale at which a wave is labeled | The same shape repeats at every scale, so the degree must be named |
Mechanism one: an impulse built from ratios, and the wave 4 limit. Fix the start at 100 and the first wave at 20. Wave 2 retraces 61.8% of wave 1, wave 3 is 1.618 times wave 1, and wave 4 retraces a ratio r of wave 3. The rule that matters is that wave 4 must finish above the wave 1 high of 120.
| Wave 4 retracement | Wave 4 low | Stays above 120? | Wave 5 end if wave 5 = wave 1 |
|---|---|---|---|
| 23.6% | 132.36 | yes | 152.36 |
| 38.2% | 127.64 | yes | 147.64 |
| 50.0% | 123.82 | yes | 143.82 |
| 61.8% | 120.00 | yes | 140.00 |
| 78.6% | 114.57 | no, overlap | count invalid |
Read across the rows. At 38.2% the low is 127.64 and wave 5 ends at 147.64, matching the Streamline View. At 61.8% the low is 120.00, level with the wave 1 high, so the count survives only by a rounding margin of 0.002, and any real price grid would call it a touch. At 78.6% the low is 114.57, inside wave 1, and the whole count is cancelled. A deeper wave 4 is therefore not a small change; it can switch a valid count off.
Mechanism two: where the ratios come from, and what chance alone supplies. The ratios are limits of the Fibonacci sequence 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, in which each term is the sum of the two before it.
| Ratio of neighbors | Value | Gap from 0.618034 |
|---|---|---|
| 5 ÷ 8 | 0.6250 | 0.0070 |
| 8 ÷ 13 | 0.6154 | −0.0026 |
| 13 ÷ 21 | 0.6190 | 0.0010 |
| 21 ÷ 34 | 0.6176 | −0.0004 |
| 34 ÷ 55 | 0.6182 | 0.0001 |
| 55 ÷ 89 | 0.6180 | −0.0001 |
Now the chance test. If a retracement were equally likely to be anywhere from 20% to 80% (a range of 60 points), and "near" a ratio meant within 3 points either side, then three levels (38.2, 50, 61.8) cover 3 × 6 = 18 points, or 30% of outcomes. Five levels (23.6, 38.2, 50, 61.8, 78.6) cover 28.4 points after clipping at 80, or 47.3%. A count that lands near a ratio is therefore expected to look good about a third to a half of the time with no structure at all. Widening the tolerance after seeing the chart raises the share further.
| Situation | What goes wrong | What to check |
|---|---|---|
| Wave lengths 20, 18, 22 for waves 1, 3, 5 | Wave 3 is the shortest, so the labeling is invalid even if the picture looks right | Compute all three lengths before accepting a count |
| Wave 2 falls to 99 from a start of 100 | It retraced more than 100% of wave 1, which breaks the first hard rule | Compare wave 2 low with the wave 1 start |
| Wave 4 low equals the wave 1 high | A touch is ambiguous; sources differ on whether it is allowed | Use the stated tolerance and write it down |
| Two counts fit one chart | Targets differ by several points and either label can be defended | Record both with their invalidation levels |
| Ratio tolerance chosen after the fact | Hit rate rises toward the chance values above | Fix the tolerance before looking |
| Wave labeled at the wrong degree | A three-wave move inside a larger move is read as a full impulse | Name the degree and check the larger structure |
In plain words: the rules are checks on three lengths, the ratios are rounded limits of a number sequence, and a good fit to a ratio is common enough by chance that the invalidation level matters more than the target. Education, not advice.
This chapter set out to explain Elliott Wave Theory, a labeling system in which price moves in a five-wave impulse with the trend and a three-wave correction against it, repeated at every scale. The idea everything hangs on is that a count must obey three hard rules, while the Fibonacci ratios attached to it are only soft guidelines. A count is an interpretation, so it is held together with an alternate.
| Question | Short answer | Where it was taught |
|---|---|---|
| An impulse starts at 50 and wave 1 ends at 60. Where does a 50% wave 2 end? | At 55.00, since 60 − 0.5 × 10 = 55. | Cypher Guide: Wave Lengths, the Wave 4 Ceiling and Chance Fibonacci Hits |
| Wave 1 ends at 120 and wave 4 drops to 118. What follows? | Wave 4 overlaps wave 1, so the count is invalid and the analyst switches to the alternate count. | Streamline View: Elliott Wave Theory |
| Why does landing near a Fibonacci level not prove a count? | A random retracement lands near three common levels about 30% of the time, and near five levels about 47.3%. | Cypher Guide: Wave Lengths, the Wave 4 Ceiling and Chance Fibonacci Hits |
| Why does the 30-bar series show no A–B–C correction? | The series ends at bar 29, just as a plausible five-wave count completes. | A Real, Dated Example: One Count on the April 2025 Recovery |
| What was the simulated edge over a random entry? | A 52.0% win rate against a 51.8% baseline, or +0.2 points. | How Professionals Actually Use It |
So far, the subject of each chapter has been a single instrument's own price. Breadth analysis asks a different question entirely: of all the individual stocks that make up an index, how many are actually participating in its move? An index can print a new high while most of its own constituents quietly fall behind — breadth is the toolkit for catching that before the index itself turns.
Market breadth asks how many stocks are taking part in an index move, not where the index itself closed. The four tools are the Advance/Decline Line, the McClellan Oscillator, TRIN and new highs minus new lows, and none of them needs the index price. The rule that matters most is to compare breadth with price: confirmation is healthy, and a new index high on weakening breadth is a warning. The main way it goes wrong is overreading one day, or letting a few large stocks stand in for the whole list.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Advance/Decline Line | Running total of advancing issues minus declining issues | Rising with price is confirmation; flat or falling while price makes highs is a warning | Reads the direction of the crowd, not the size of each stock’s move |
| McClellan Oscillator | A fast EMA of daily net advances minus a slower EMA (classically 19 and 39 days; 5 and 10 in this chapter’s short basket) | Above zero is improving breadth; below zero is weakening | It dipped to −2.97 on bar 28 of the chapter’s basket while the index kept rising |
| TRIN | (Advancing issues / declining issues) divided by (advancing volume / declining volume) | Below 1.0 reads bullish, above 1.0 bearish | It moves opposite the market, and one day proves little: 1.64 on bar 9, 0.61 on bar 29 |
| New highs minus new lows | Stocks at a fresh N-day high minus stocks at a fresh N-day low | Expanding highs alongside a rally confirms it | The lookback matters: 10-day and 52-week counts are not comparable |
| Divergence | Price makes a new high while the breadth measures do not | Read as fewer stocks carrying the move | It can persist for a long time before it matters |
| Index weighting | A few mega-cap names can lift a cap-weighted index | Use breadth to see past the headline value | On simulated random-walk data the single-series proxy won 51.9% against 51.7% for random entry |
Second outcome. If the A/D Line peaked at 5000 earlier and the index now makes a new high with the line at 4700, breadth is 300 below its own peak. That is a divergence, a caution that fewer stocks are leading, and not a sell signal on its own. If the line instead made a new peak with the index, the move would count as confirmed.
In plain words: count how many stocks are joining the move, compare that with the index, and wait for several sessions of agreement or disagreement before drawing a conclusion. Education, not advice.
Market breadth is the oldest kind of internal market analysis: instead of watching the index, count the stocks underneath it. The thread runs from a 1920s economist tallying advancing and declining issues, through volume-based and oscillator versions of the same count in the 1960s, to modern variants that add smoothing and summation. Each step took a raw headcount and made it easier to compare across days.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1926 | Colonel Leonard Ayres, an economist and market analyst, first calculates and studies advance-decline data | The idea that the count of winners and losers carries information the index hides |
| 1931 | Advance-decline numbers begin appearing in print on a regular basis | A public, repeatable series that other analysts could keep and compare |
| 1938 | L. M. Lowry is credited with the concept of advancing and declining volume | The step from counting stocks to weighing them by trading activity, which TRIN later used |
| Early 1960s | Richard Russell and Joseph Granville use the data in their market letters | Breadth moves from a statistic into a regular part of published market commentary |
| 1967 | Richard Arms develops the Short Term Trading Index, later named the Arms Index (TRIN) | A ratio that sets the issue count against the volume count in one number |
| 1969 | Sherman and Marian McClellan develop the McClellan Oscillator and the Summation Index | A smoothed momentum line and a cumulative version built from daily net advances |
| 1970 | The McClellans publish Patterns for Profit (republished in 1976) | Their method was set out in a book and could be taught |
| 1991 | Arms describes an oscillator comparing 21-day and 55-day smoothing of his index | TRIN, a noisy daily ratio, gained a smoothed version |
The Advance/Decline Line is the oldest of these tools, tracked informally on exchanges since at least the 1920s as a simple running tally of winners versus losers. Sherman and Marian McClellan introduced the McClellan Oscillator in 1969, applying moving averages to that same advance/decline data to smooth it into a proper momentum indicator. Richard Arms introduced the Arms Index, universally known as TRIN, short for "TRading INdex", in 1967, a ratio built to compare the number of advancing and declining stocks against the volume actually trading in each direction. New highs and new lows have been tracked as a participation gauge for just as long, in each case because a single index value hides how broadly or narrowly a move is actually distributed.
None of these four need the index's own price at all: each is built entirely from how many individual constituents are participating, and in which direction.
The core use of all four tools is the same: compare what breadth is doing to what price is doing. When the index prints a new high alongside a rising A/D Line, expanding new highs, and a friendly TRIN, that's broad, healthy participation. When the index prints a new high while the A/D Line stalls, new lows start creeping in, and TRIN drifts unfriendly, that's a bearish divergence: a warning that fewer and fewer stocks are actually carrying the rally, often (though not always) ahead of a reversal in the index itself.
Because breadth needs more than one instrument's data, this chapter builds a separate, independently-generated illustrative basket of 20 stocks, each correlated with but not identical to the single-asset index used throughout this module, covering the same 30-bar window as the April 2025 tariff crash and recovery. In this particular basket, the A/D Line bottoms at −96 on bar 7, almost exactly alongside the index's own low, then climbs steadily to +52 by bar 29, broad confirmation, not divergence. New highs within the basket expand right alongside the rally, reaching 16 of 20 names on bar 19. TRIN tells the same story from the volume side: a bearish 1.64 on bar 9, deep in the choppy bottom, versus a bullish 0.61 on bar 29, the recovery's final high. The one wrinkle: the McClellan Oscillator actually dips negative on several of the final bars (as low as −2.97 on bar 28) even as the index grinds to new highs, and two of the twenty names quietly print their own 10-day lows on bars 28 and 29, a small, real non-confirmation worth noting, even though it's far too minor on its own to call a genuine bearish divergence.
Breadth data for the NYSE and Nasdaq Composite is published daily by financial data providers and is a standard part of many professional technicians' daily routine, almost always as confirmation or warning context layered on top of price and volume analysis rather than as a standalone, mechanically-traded signal. That's largely why the simplified single-series Monte Carlo proxy in this chapter (applying the McClellan formula's own math to one series' daily up/down sign, since this backtest harness only ever trades one instrument at a time) can only approximate a thin slice of what breadth analysis actually does with a full universe of real constituent data.
A separate, independently-generated 20-stock illustrative basket, correlated with but not identical to the index above, built specifically for this chapter since breadth requires more than one instrument's data.
33,203 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Free charting sites publish daily A/D Line, McClellan Oscillator, and new-highs/new-lows data for the major U.S. indexes, and most financial news sites' markets pages include a daily advance/decline and new-high/new-low summary.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and check its real breadth data.
Breadth counts how many stocks are rising against how many are falling. Set the two counts.
Market breadth tools like the advance/decline line have no single inventor, but one piece of this chapter does: the McClellan Oscillator. Sherman McClellan and his wife Marian developed it in 1969, applying a simple exponential-average spread to the daily advance/decline numbers the exchanges had already been publishing for decades. It turned a raw headcount of winners and losers into a smoothed, readable momentum line, the same transformation RSI and MACD apply to price, just applied to the whole market's breadth instead of one security.
Breadth tools look like finished numbers on a chart, but each one is a short recursion or a ratio of four counts. This guide fixes the vocabulary, then works the McClellan Oscillator through every step with its seeds, and the TRIN ratio through several volume scenarios. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Advancing and declining issues | Count of stocks that closed up, and count that closed down, on the day | The raw inputs to every tool in this chapter |
| Net advances | Advancing minus declining issues | Positive on broad up days, negative on broad down days |
| A/D Line | Running total of net advances | Compare its trend and peaks with the index; only its direction and divergences carry meaning, not its level |
| Issue ratio | Advancing issues ÷ declining issues | The numerator of TRIN |
| Volume ratio | Volume in advancing issues ÷ volume in declining issues | The denominator of TRIN |
| TRIN | Issue ratio ÷ volume ratio | Below 1.0 is conventionally read as bullish, above 1.0 as bearish; it is undefined if either denominator is zero |
| Smoothing factor | α = 2 ÷ (N + 1) for an N-period exponential average | 5 days gives 0.3333, 10 days gives 0.1818, 19 days gives 0.1, 39 days gives 0.05 |
| Seed | The starting value of an exponential average | Often the first data point; its influence fades as (1 − α) is raised to the number of steps |
| McClellan Oscillator | Fast average of net advances minus slow average of net advances | Positive when the faster average is higher; zero crossings mark changes in momentum of participation |
| Ratio-adjusted net advances | 1000 × (advancing − declining) ÷ (advancing + declining) | Puts exchanges of different size on one scale |
| New highs minus new lows | Stocks at a fresh N-day high minus stocks at a fresh N-day low | Another participation count that ignores index price |
Mechanism one: the oscillator, recursion by recursion. The Streamline View gives the answer; here every step is shown. Each exponential average updates as new = old + α × (today − old), starting from a seed. Seeding with the first day’s value is the simplest choice.
| Day | Net advances | EMA5 | EMA10 | Oscillator |
|---|---|---|---|---|
| Day 1 | 300 | 300.00 | 300.00 | 0.00 |
| Day 2 | 500 | 366.67 | 336.36 | 30.30 |
| Day 3 | −100 | 211.11 | 257.02 | −45.91 |
| Day 4 | 200 | 207.41 | 246.66 | −39.25 |
| Day 5 | 600 | 338.27 | 310.90 | 27.37 |
| Day 6 | −400 | 92.18 | 181.65 | −89.47 |
Read across the last row. EMA5 is 92.2 and EMA10 is 181.6, so the oscillator is −89.5. It is negative: the fast average has fallen below the slow one after the −400 day, which is the opposite of a positive reading. On day 5 the same calculation gave +27.4, so a single heavy decline turned the sign. Seeding both averages from zero instead of from day 1 gives 65.8 and 91.7, an oscillator of −25.8, a difference of 63.7 from the first run. On a six-day series the seed matters; on a long series it fades.
Mechanism two: TRIN as a ratio of ratios. With 1,800 advancing and 1,200 declining issues, the issue ratio is 1.5. TRIN then depends entirely on where the volume went.
| Scenario | Issue ratio | Volume ratio | TRIN | Position vs 1.0 |
|---|---|---|---|---|
| Volume follows advancers (900 up, 450 down) | 1.50 | 2.00 | 0.75 | below 1.0 |
| Volume split evenly (700 and 700) | 1.50 | 1.00 | 1.50 | above 1.0 |
| Volume favors decliners (450 up, 900 down) | 1.50 | 0.50 | 3.00 | above 1.0 |
| Heavy volume in advancers (1,800 up, 450 down) | 1.50 | 4.00 | 0.38 | below 1.0 |
The same 1,800 to 1,200 count gives a TRIN from 0.38 to 3.00 across the rows. A low TRIN means volume favored advancers by more than the head count did; a high TRIN means the count looks healthier than the volume. That is why TRIN is read as a check on a breadth count and not as a substitute for it. Ratio-adjusted net advances scale the count the same way for exchange size: 600 net advances out of 3,000 advancing and declining issues is 1000 × 600 ÷ 3000 = 200, while 600 out of 1,500 is 400.
| Situation | What goes wrong | What to check |
|---|---|---|
| Declining issues or declining volume equal zero | TRIN and the issue ratio are undefined or infinite | Use a floor rule or skip the day and say so |
| Unchanged issues ignored | Net advances look larger or smaller than the share of the exchange | Use ratio-adjusted values when the count of unchanged issues varies |
| Short series with a first-day seed | The first oscillator values mostly reflect the seed | Discard roughly the first slow-average length of bars |
| A/D Line level compared across years | Membership changes shift the level | Compare direction and divergence, not level |
| Index led by a few large stocks | Index high with falling A/D Line may reflect weighting, not weakness | Compare with an equal-weight index |
| One day of divergence | A new index high with the line 300 below its peak is a caution, not a signal | Wait for several sessions of agreement or disagreement |
In plain words: breadth is a handful of counts and ratios, the oscillator is a difference of two smoothed counts that depends on its seed early on, and TRIN compares the head count with the volume count. Education, not advice.
This chapter set out to teach market breadth, the habit of asking how many stocks are taking part in an index move instead of only where the index closed. Four tools do the counting: the Advance/Decline Line, the McClellan Oscillator, TRIN and new highs minus new lows. The idea everything hangs on is that breadth is read against price, and agreement or disagreement is judged over several sessions, not one.
| Question | Short answer | Where it was taught |
|---|---|---|
| One day has 1,500 advancing and 500 declining issues, with 600 advancing and 400 declining volume. What is TRIN? | (1500 ÷ 500) ÷ (600 ÷ 400) = 3.0 ÷ 1.5 = 2.0. It is above 1.0 even though the count is strongly positive. | Cypher Guide: The McClellan Recursion, Seeds and TRIN Scenarios Worked Out |
| The index makes a new high while the A/D Line sits at 4700 against an earlier peak of 5000. What is this called? | A divergence, 300 below the line’s own peak. It is a warning, not a sell signal. | Streamline View: Market Breadth |
| Why is the oscillator negative at the end of the six-day series? | The fast average (92.2) has fallen below the slow average (181.6) after the −400 day, giving −89.5. | Cypher Guide: The McClellan Recursion, Seeds and TRIN Scenarios Worked Out |
| In the April 2025 basket, did breadth confirm or diverge from the index? | It confirmed. The A/D Line bottomed at −96 on bar 7 and climbed to +52 by bar 29. | A Real, Dated Example: Breadth During the April 2025 Recovery |
Price. Volume. Participation. That's what the tools in this module have read up to now. Sentiment analysis reads something different: how the crowd of market participants actually feels, and how extreme that feeling has become. The contrary-opinion idea behind it is simple and a little uncomfortable: when nearly everyone agrees, there's often no one left to keep pushing the move further.
Sentiment analysis reads how crowded and how fearful market participants are, using the VIX, the put/call ratio and the weekly Commitments of Traders (COT) report. The contrary-opinion rule is simple: when a measured gauge reaches a historical extreme, consider the opposite of what the crowd believes. The rule that matters most is that the extreme must be measured, not felt. The main way it goes wrong is timing, because oversold can become more oversold and COT data is days old when it arrives.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Contrary opinion | When a view is near-universal, it is often already priced in | Look for measurable extremes, then ask what the crowd is not prepared for | Not a reason to oppose every popular view |
| VIX | The market’s implied volatility for the next 30 days, from S&P 500 option prices | It tends to spike when prices fall and investors pay up for protection | A level is relative; 35.3 in this chapter’s example sat in the elevated-fear zone |
| Put/call ratio | Put volume divided by call volume | High means more hedging or bearish betting; low means more bullish speculation | Equity-only and total ratios sit at different levels, so compare like with like |
| COT positioning | Weekly net long or short positions of commercial hedgers, large speculators and small traders | A large gap between hedgers and speculators is read as a sentiment signal | Published with a lag of about three days, so it is always a slightly stale snapshot |
| Agreement | Several independent gauges at an extreme together | Alignment is harder to dismiss than one gauge alone | Gauges can disagree, which invites selective reading |
| Persistence | An extreme can last for a long stretch | Treat an extreme as a condition to watch, not a timer | On simulated random-walk data the drawdown-and-bounce proxy won 51.2% against 49.2% for random entry, a modest +2.0 points |
Second outcome. In this chapter’s illustrative data the fear gauge (35.3) and the put/call ratio (1.11) peak together on bar 9, beside the index low, and commercial positioning (+46 on bar 5) led them. Later, commercial positioning falls to −16 on bar 29 while the index rises. That is a wrinkle to watch, not a call that the rally is over. If only one gauge had been extreme, the case for a contrary read would be weaker.
In plain words: measure the extreme, check whether the gauges agree, and remember that the crowd can stay wrong longer than expected. Education, not advice.
Sentiment analysis has three older roots: the idea that a crowd can be wrong together, the options market that lets fear be priced, and the position reports that show who holds what. The thread runs from the 1920s grain reports, through a 1954 book on contrary thinking and the 1973 opening of listed options, to the volatility index of the 1990s and the tradable volatility products of the 2000s. Each step turned a vague mood into a number.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1924 | The Grain Futures Administration of the U.S. Department of Agriculture begins regularly publishing trader position reports | The earliest ancestor of the Commitments of Traders series |
| 1954 | Humphrey B. Neill publishes The Art of Contrary Thinking | The philosophical base of contrary opinion: a view held by nearly everyone is often already priced in |
| 1962 | The Commitments of Traders report is first published in June | A recurring picture of how hedgers and speculators were positioned |
| 1973 | Listed options begin trading on a regulated U.S. exchange, the Chicago Board Options Exchange | Public option volume, the raw material for put/call ratios and implied volatility |
| 1993 | The Chicago Board Options Exchange announces real-time reporting of the VIX, designed by Robert Whaley and based on S&P 100 options | The first widely quoted implied volatility index, later called the fear gauge |
| 2003 | The index is rebuilt on S&P 500 options; the older version is renamed VXO | The VIX in use today is the 30-day measure built from S&P 500 option prices |
| 2004 and 2006 | VIX futures begin trading in March 2004 and VIX options in February 2006 | Volatility became something that could be traded directly, not only observed |
| 2008 and 2020 | The VIX closes above 80 on November 20, 2008 and again on March 16, 2020 | Reference points for what an extreme looks like in the modern series |
Humphrey B. Neill's 1954 book The Art of Contrary Thinking is widely credited with formalizing contrary opinion as a market concept: when a view becomes nearly universal, it's often already priced in, leaving the crowd vulnerable to being wrong together. The CBOE Volatility Index (VIX) followed in 1993 (on S&P 100 options at first, on S&P 500 options since 2003), built from option prices to measure the market's own expected volatility over the next 30 days, and it earned its "fear gauge" nickname because it reliably spikes when investors are paying up for downside protection. The Put/Call Ratio grew out of the same options data, comparing how many put options (bets on a decline, or insurance against one) trade relative to call options (bets on a rise). Commitment of Traders (COT) reports, first issued in 1962 and now published weekly by the U.S. Commodity Futures Trading Commission, break down futures market positioning by trader type, letting analysts see what large commercial hedgers are doing differently from speculative crowds.
None of these measure price directly: they measure how participants are positioned and how they're paying to protect or speculate on what price will do next.
A VIX spike alongside a high Put/Call Ratio typically means fear has become extreme — the classic contrarian read is that this is closer to a bottom than a top, since the selling pressure capable of driving price lower is, by definition, running low on sellers left to sell. COT reports add a different angle: when commercial hedgers (often considered the best-informed, best-capitalized participants) are heavily net long while speculators are heavily net short, or the reverse, that positioning gap is itself treated as a sentiment signal, independent of what VIX or Put/Call happen to show.
Because sentiment needs data no single price series contains, this chapter builds a separate, independently-generated illustrative VIX-style gauge, Put/Call Ratio, and COT-style commercial net-position series, each scaled to the same index used throughout this module. In this illustrative data, both the fear gauge and the Put/Call Ratio peak together on bar 9 (a reading of 35.3 and 1.11 respectively), almost exactly alongside the index's own low. The illustrative COT-style series tells a complementary story: commercial net positioning peaked earlier, at +46 on bar 5, suggesting hedgers were already leaning into the decline before the broader panic (as reflected in VIX and Put/Call) fully peaked four bars later. By the time the recovery reached its final highs, that same commercial series had flipped to −16 on bar 29: commercials reducing their net-long exposure even as the index ground higher, a small, real wrinkle worth watching rather than a reason to call the rally over.
Sentiment extremes are watched closely by professional strategists and are a routine input into asset allocation and tactical positioning calls, but almost always as one input among several rather than a standalone trigger. A single sentiment extreme can persist for a long time before price actually reverses. The simplified single-series Monte Carlo proxy below (buying a sharp drawdown-and-bounce, standing in for "buying a sentiment extreme") captures only a thin approximation of what a full sentiment read across VIX, Put/Call, and COT data actually involves.
A separate, independently-generated illustrative sentiment series built specifically for this chapter, inversely scaled to the index's own drawdown since real sentiment gauges move opposite to price during fear.
10,650 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
The CBOE publishes the real VIX and options Put/Call Ratio data free of charge, and the CFTC publishes the full weekly Commitment of Traders report free to the public.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and check its real sentiment data.
The put/call ratio divides put volume by call volume. Set both and read the sentiment.
Humphrey B. Neill was a market analyst and author who published “The Art of Contrary Thinking” in 1954, arguing that when the overwhelming majority of people agree on an outcome, that consensus is often already priced in, making the crowd most dangerous to follow exactly when it feels most obviously right. His book predates specific sentiment tools like the put/call ratio or the AAII survey by decades, but it's the philosophical foundation underneath all of them: contrarian sentiment reading as a discipline, not just a gut feeling.
Sentiment gauges are only useful when they are converted to a common, comparable scale. This guide fixes the vocabulary, then works two conversions by hand: the VIX into an expected price move over different horizons, and a put/call ratio or positioning figure into a z-score, a percentile and a range index. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Implied volatility | The annualized standard deviation of returns that option prices imply | The VIX is the 30-day version for the S&P 500, quoted in percent |
| Annualization | Converting a yearly volatility to a shorter horizon by multiplying by the square root of the time | Month: ÷ √12; week: ÷ √52; day: ÷ √252 |
| Expected move | One standard deviation of the return over the horizon | About two thirds of outcomes fall inside it if returns are normal; real returns have heavier tails |
| Put/call ratio | Put volume ÷ call volume for a day or a period | Above 1.0 means more puts traded than calls; the level that counts as extreme is set by history |
| Pooled ratio | Total puts ÷ total calls across several days | Differs from the simple average of daily ratios when volumes differ |
| COT net position | Long contracts minus short contracts for a trader group | Reported weekly, as of the Tuesday before release |
| COT index | (net − lowest net) ÷ (highest net − lowest net) × 100 over a lookback | 0 is the most bearish net in the window, 100 the most bullish |
| Z-score | (reading − mean) ÷ standard deviation of past readings | Counts how many standard deviations a reading is from normal |
| Percentile rank | Share of past readings below today’s | Needs no distribution assumption; depends on the window length |
| Lookback window | The span of past readings used for ranges and averages | Changes every extreme figure; state it with the number |
Mechanism one: from VIX to an expected move. Volatility grows with the square root of time because independent daily variances add. If the yearly standard deviation is the VIX in percent, then the standard deviation over T years is VIX × √T.
| Level | 1-day move | 1-week move | 1-month move | Index points on a 4,000 index |
|---|---|---|---|---|
| VIX 12.0 | 0.76% | 1.66% | 3.46% | 139 |
| VIX 16.0 | 1.01% | 2.22% | 4.62% | 185 |
| VIX 20.0 | 1.26% | 2.77% | 5.77% | 231 |
| VIX 25.0 | 1.57% | 3.47% | 7.22% | 289 |
| VIX 35.3 | 2.22% | 4.90% | 10.19% | 408 |
Read across the VIX 35.3 row. The monthly figure of 10.19% matches the Streamline View, and the daily figure of 2.22% means a 1% day is ordinary at that level and a 4% day is about 1.8 standard deviations. On a 4,000 index the monthly one-standard-deviation band is about 408 points either way. At VIX 16 the same band is 4.62%, or 185 points. Doubling the VIX does not change the horizon scaling; it only multiplies every cell.
Mechanism two: putting a reading on a scale. A put/call ratio of 1.10 means little until it is compared with its own history. Day one traded 600,000 puts and 800,000 calls (ratio 0.75). Day two traded 1,100,000 puts and 1,000,000 calls (ratio 1.10). The average of the two daily ratios is 0.925, while the pooled ratio is 1,700,000 ÷ 1,800,000 = 0.944. Which one is used must be stated, because volume-heavy days pull the pooled figure toward themselves.
| Put/call reading | z-score | Normal percentile |
|---|---|---|
| 0.75 | −0.83 | 20.2% |
| 0.85 | 0.00 | 50.0% |
| 1.00 | 1.25 | 89.4% |
| 1.10 | 2.08 | 98.1% |
| 1.20 | 2.92 | 99.8% |
The commercial net position of +40,000 (120,000 long minus 80,000 short) is turned into a range index the same way. Using a three-year window with a low of −60,000 and a high of +90,000, the index is (40,000 + 60,000) ÷ 150,000 × 100 = 66.7. Using a one-year window with a low of −20,000 and a high of +60,000, the index is (40,000 + 20,000) ÷ 80,000 × 100 = 75.0. The same net reads 8.3 points higher on the shorter window, which shows how much the lookback decides. Dividing the net by open interest of 400,000 gives 10.0%; if open interest doubled with the same net, the share would be 5.0%.
| Situation | What goes wrong | What to check |
|---|---|---|
| VIX stays elevated after the first spike | Oversold can become more oversold, so a contrarian entry on the first extreme arrives early | Require the extreme to be measured and plan for it to persist |
| COT data arrives days late | Positions are as of Tuesday; the report is out Friday, so the picture is at least three sessions old | Use it for slow positioning questions, not timing |
| Window length chosen after the fact | A one-year and a three-year range gave 75.0 and 66.7 for the same net | Fix the window before looking at today’s value |
| Normal assumption on skewed ratios | Z-score of 2.08 implies 98.1%; the observed percentile was 96% | Prefer the empirical percentile when the history allows |
| Only one gauge at an extreme | The case for a contrary read is weaker | Check whether VIX, put/call and positioning agree |
| VIX era mixed | The 1993 and 2003 constructions differ | Do not compare levels across the change without care |
In plain words: every gauge is converted to a horizon, a z-score, a percentile or a range index before it is called an extreme, and the choice of window must be written down with the result. Education, not advice.
This chapter set out to teach sentiment analysis, which reads how crowded and how fearful market participants are through the VIX, the put/call ratio and the weekly positioning report. The contrary-opinion rule says to consider the opposite of the crowd at a historical extreme. The idea everything hangs on is that the extreme must be measured on a stated scale, not felt.
| Question | Short answer | Where it was taught |
|---|---|---|
| The VIX is 24. What are the daily and monthly expected moves? | Daily 24 ÷ 15.875 = 1.51%. Monthly 24 ÷ 3.464 = 6.93%. | Cypher Guide: VIX Scaling, Z-Scores and Range Indexes Worked Out |
| A day has 900,000 puts and 750,000 calls. What are the ratio and the z-score (mean 0.85, standard deviation 0.12)? | The ratio is 1.20 and z = (1.20 − 0.85) ÷ 0.12 = 2.92. | Cypher Guide: VIX Scaling, Z-Scores and Range Indexes Worked Out |
| A net of +40,000 has a window low of −60,000 and a high of +90,000. What is the range index? | (40,000 + 60,000) ÷ 150,000 × 100 = 66.7. | Cypher Guide: VIX Scaling, Z-Scores and Range Indexes Worked Out |
| Why is the positioning report a slow tool for timing? | It is published weekly and reflects positions as of the previous Tuesday, so the snapshot is days old. | History of Market Sentiment: From Contrary Thinking to the VIX |
| What did the fear gauge and put/call ratio do on bar 9, and what is the caution? | Both peaked beside the index low, the classic contrary setup. The caution is that an extreme can persist before price turns. | A Real, Dated Example: Sentiment During the April 2025 Recovery |
This is where a complete technical education arguably should zoom out past a single chart entirely. Intermarket analysis treats stocks, bonds, commodities, and currencies as four pieces of one connected system, on the premise that each asset class's moves carry real information about the others, information a single-market chart can never show by itself.
Intermarket analysis treats stocks, bonds, commodities and currencies as one connected system, on the premise that a move in one carries information about the others. The relationships are tendencies: bonds and commodities usually move inversely, the dollar and commodities usually move inversely, and gold often rises when stocks fall in a flight to quality. The rule that matters most is to check whether the usual relationship is currently holding. The main way it goes wrong is treating a textbook link as a fixed law.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Stocks and bonds | Often rise together in steady, non-inflationary growth; can move inversely when rising yields pressure valuations | Ask which regime is in force before using the link | The sign of the relationship can change for long stretches |
| Bonds and commodities | Typically inverse: rising commodity prices point to inflation pressure, higher yields and lower bond prices | Rising commodities with falling bond prices fit one story | Policy environments can break the link |
| Dollar and commodities | Typically inverse, since most are priced in dollars | A weaker dollar makes them cheaper elsewhere and supports demand | Supply shocks can overwhelm the currency effect |
| Gold | A traditional safe-haven asset | Gold and bonds rallying while stocks fall is the classic flight to quality | It does not always move inversely to stocks |
| Context layer | Intermarket reads confirm or question a single-market view | Use it beside the chart already being watched | It rarely produces its own entry; the chapter’s one-series proxy matched random entry (52.3% against 52.4%) |
| Regime | Inflationary and deflationary periods favour different relationships | Re-test the link on recent data | One episode’s correlation is not a universal law |
Second outcome. In this chapter’s illustrative data the bond and gold proxies correlate at −0.97 and −0.88 with the equity index and both peak on bar 9, beside the equity low. If instead stocks rose while bonds and gold both rallied hard, that would be a stress signal worth extra caution. If stocks rose and bonds fell because yields were climbing, the usual link would simply be in its other regime.
In plain words: look at what bonds, the dollar, commodities and gold are doing before leaning on a stock chart, and remember the links are habits of the market, not rules. Education, not advice.
Intermarket analysis rests on a simple fact of finance: stocks, bonds, commodities and currencies are priced against one another. The thread runs from a postwar system that fixed currencies to the dollar and gold, through the break of that system in the early 1970s, to the first books that gathered the cross-market habits into one teachable method. The modern links were shaped by those regime changes.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1944 | The Bretton Woods conference sets up a system of fixed exchange rates with the dollar tied to gold | A world in which currencies and gold were linked by rule, the background to later floating-rate habits |
| 1971 | The United States suspends the dollar’s convertibility into gold | Gold and the dollar began to trade as separate, freely priced markets |
| 1973 | The U.S. Dollar Index is created in March at a base of 100, soon after Bretton Woods ended | A single measure of the dollar against a basket of major currencies, still used to read the dollar leg |
| 1977 | U.S. Treasury bond futures begin trading at the Chicago Board of Trade | A liquid, widely quoted market for long-term interest rates |
| 1991 | John J. Murphy publishes Intermarket Technical Analysis | The scattered cross-market links gathered into one framework with charts of all four markets |
| 1999 | The euro replaces several European currencies in the dollar index basket | The index now leans heavily on one currency, which shapes what a dollar move means |
| 2004 | Murphy publishes Intermarket Analysis: Profiting from Global Market Relationships | The method restated for a world of global, round-the-clock trading |
| 2022 | U.S. stocks and U.S. Treasury bonds both fall sharply in the same year as interest rates rise | A recent example of the stocks-and-bonds link changing sign |
John J. Murphy, already well known for his foundational work on classical technical analysis, systematized intermarket analysis in his 1991 book Intermarket Technical Analysis and extended it further in Trading with Intermarket Analysis. Murphy's central argument was that no market moves in isolation: interest rates influence currencies, currencies influence commodity prices, commodity prices influence inflation expectations and bond yields, and bond yields influence equity valuations, a loop worth watching as a whole rather than one disconnected chart at a time.
Like breadth and sentiment, this isn't one calculation. It's a set of well-documented relationships between asset classes:
These are historical tendencies, not laws of physics — the whole discipline is about checking whether the usual relationships are currently holding, or quietly breaking down.
The core use is confirmation or warning: if bonds and gold are both rallying hard while stocks fall, that's a classic "flight to quality," and the move in stocks is better understood, not just watched on its own chart. If a stock rally continues while bonds, gold, and the dollar all behave as if nothing is wrong, that's unremarkable; but a stock rally that coincides with bonds and gold both signaling genuine stress is a reason to treat the equity move with more caution. Intermarket analysis rarely generates its own entry signal. It's a context layer laid over whatever a trader is already watching in one specific market.
Because intermarket analysis needs more than one asset class's data, this chapter builds a separate, independently-generated illustrative bond price and gold price, each built specifically for this chapter and correlated with the single-asset equity index used throughout this module. In this illustrative data, the relationship is textbook: the bond proxy correlates at −0.97 with the equity index's own daily returns, and the gold proxy at −0.88. Both peak together on bar 9 (the bond proxy at 116.8, the gold proxy at 111.6), almost exactly alongside the equity index's own low, a clean illustrative flight to quality. As the recovery matures, both give back ground, though not by equal amounts: the bond proxy settles around 103.8 by bar 29, still above its starting level, while the gold proxy actually finishes at 93.0, below where it started, a reminder that even a textbook-strength correlation on one measure doesn't mean every asset class retraces by the same proportion.
Global macro funds and multi-asset allocators monitor intermarket relationships continuously as part of broader regime assessment, using them to size and hedge positions across asset classes rather than as a single-market entry trigger. That's exactly why the simplified single-series Monte Carlo proxy below (a relative-strength-style crossover applied to one series alone, since this backtest harness only ever trades one instrument at a time) can only approximate a thin slice of what real cross-asset intermarket analysis actually involves.
A separate, independently-generated illustrative bond price and gold price, each built specifically for this chapter since intermarket analysis requires more than one asset class's data.
15,984 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Free charting platforms and data sources like TradingView, StockCharts, and the Federal Reserve's own FRED database all publish free bond yield, U.S. dollar index, and commodity data alongside equity indices for direct comparison.
Pick an index around a well-documented sharp move (the April 2025 tariff crash and recovery is one dated, public example) and check the real intermarket picture.
John J. Murphy spent decades as a technical analyst, including years at CNBC, before formalizing intermarket analysis in his 1991 book of the same name, the idea that stocks, bonds, commodities, and currencies move in interconnected relationships, so a shift in one often foreshadows or confirms a move in another. Before Murphy's book, these relationships were observed piecemeal by individual analysts; he was the first to organize them into a single, teachable framework rather than scattered market lore.
Intermarket analysis rests on one statistic, the correlation of returns, and one bond relationship, the price response to a yield change. This guide fixes the vocabulary and then works both by hand: the correlation from raw returns with its slope and its significance for a short sample, and the duration and convexity estimate of a bond price move. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Return | Percentage change from one close to the next | Correlation is computed on returns, not on price levels |
| Covariance | Average product of the two series’ deviations from their means | Positive when the series move together, negative when they move opposite |
| Correlation (r) | Covariance ÷ (standard deviation of x × standard deviation of y), always between −1 and +1 | The strength and sign of the link, not its size |
| Beta (slope) | Covariance ÷ variance of x | How many units y moves per one unit of x |
| r2 | Correlation squared | Share of y’s variation that a straight line on x accounts for |
| Rolling window | The last N observations, recomputed each bar | Shows whether a link is holding now; the answer depends on N |
| Critical r | The smallest |r| that beats chance at the 95% level for a sample of size n | Compare with the measured |r| before trusting it |
| Duration (D) | Approximate percentage price change of a bond per one point of yield change | ΔP ≈ −D × Δy; higher D means more price sensitivity |
| Convexity (C) | Curvature correction to the duration estimate | Adds half of C(Δy)2, which helps in both directions |
| Flight to quality | Money moving from stocks to bonds or gold in stress | Shows as a negative stock-bond correlation |
Mechanism one: correlation and slope from raw returns. Using the five daily stock and bond returns from the Streamline View, the means are −0.04% and 0.04%. Each row subtracts the mean, then multiplies and squares.
| Day | Stock % | Bond % | Stock dev | Bond dev | Product | Stock dev2 | Bond dev2 |
|---|---|---|---|---|---|---|---|
| Day 1 | −1.0 | 0.4 | −0.96 | 0.36 | −0.3456 | 0.9216 | 0.1296 |
| Day 2 | 0.5 | −0.2 | 0.54 | −0.24 | −0.1296 | 0.2916 | 0.0576 |
| Day 3 | −2.0 | 0.9 | −1.96 | 0.86 | −1.6856 | 3.8416 | 0.7396 |
| Day 4 | 1.5 | −0.6 | 1.54 | −0.64 | −0.9856 | 2.3716 | 0.4096 |
| Day 5 | 0.8 | −0.3 | 0.84 | −0.34 | −0.2856 | 0.7056 | 0.1156 |
Read across the formula lines. The correlation is −0.999, yet the slope is only −0.422: a 1% stock move goes with a bond move of about 0.42% the other way. Correlation reports how tightly the points hug a line, not how steep the line is. Sensitivity: if day 4 had seen bonds rise by 0.6% instead of fall by 0.6% (stocks and bonds both up), r becomes −0.537, and the slope −0.195. One observation moved r from about −1 to about −0.54, which is why the next table matters.
| Observations n | t value (two-sided 95%) | Critical |r| |
|---|---|---|
| 5 | 3.182 | 0.878 |
| 10 | 2.306 | 0.632 |
| 20 | 2.101 | 0.444 |
| 30 | 2.048 | 0.361 |
| 60 | 2.002 | 0.254 |
With n = 5 the measured r must exceed 0.878 in size; with 30 days, 0.361. A rolling 20-day window can show a value such as −0.4 and still be indistinguishable from noise.
Mechanism two: the bond price response to yields. For a bond with duration D = 8 and convexity C = 80 (both assumed), a yield change Δy gives ΔP ≈ −D × Δy + half of C × (Δy)2, with Δy written as a decimal.
| Yield change | Duration term | Convexity term | Estimated price change |
|---|---|---|---|
| −2.0 points | 16.00% | 1.60% | 17.60% |
| −1.0 points | 8.00% | 0.40% | 8.40% |
| −0.5 points | 4.00% | 0.10% | 4.10% |
| +0.5 points | −4.00% | 0.10% | −3.90% |
| +1.0 points | −8.00% | 0.40% | −7.60% |
| +2.0 points | −16.00% | 1.60% | −14.40% |
Read across the +0.5 row: −8 × 0.005 = −4.00%, plus half of 80 × 0.0052 = +0.10%, so about −3.90%. The first term matches the Streamline View. For a fall in yields of the same size the gain is +4.10%, larger than the loss, which is the convexity effect. The proportions also matter for recovery: the gold proxy fell from a peak of 111.6 to 93, a drop of (111.6 − 93) ÷ 111.6 = 16.7%, and regaining the peak needs 111.6 ÷ 93 − 1 = 20.0%.
| Situation | What goes wrong | What to check |
|---|---|---|
| Correlation from five or ten days | Looks strong but is below the critical value, so it may be chance | Compare |r| with the table above |
| Correlation of price levels | Two trending series correlate highly with no real link | Use returns, not levels |
| Stocks and bonds fall together | The usual inverse link is in its other regime, as in 2022 | Re-measure on recent data before relying on the link |
| Different closing times | A bond close hours before the equity close misaligns the returns | Use matching timestamps |
| One outlier day | A single large day can drive r and the slope | Recompute without that day and compare |
| Yield and price confused | A rise in yields is a fall in bond prices | Write the sign explicitly before reading any chart |
In plain words: a correlation needs raw returns, a sample large enough to beat chance, and a recent window; the bond estimate needs a sign and two sensitivities. Education, not advice.
This chapter set out to teach intermarket analysis, which treats stocks, bonds, commodities and currencies as one connected system. A move in one market carries information about the others. The idea everything hangs on is that each link is a tendency, so the first job is to check whether the usual relationship is holding now.
| Question | Short answer | Where it was taught |
|---|---|---|
| A bond has duration 8 and yields rise 0.5 points. What is the price change from duration alone? | −8 × 0.5 = −4.00%. Adding convexity of 80 gives about −3.90%. | Cypher Guide: Correlation, Slope and Duration Worked from Raw Returns |
| What do r = −0.999 and a slope of −0.422 each tell you? | The correlation says the points hug a line tightly. The slope says the line is shallow: about 0.42% of bond move per 1% of stock move. | Cypher Guide: Correlation, Slope and Duration Worked from Raw Returns |
| Four returns give r = −0.983. The critical value for n = 4 is 0.950. What follows? | The size of r is above the critical value, but four points is a very small sample. | Cypher Guide: Correlation, Slope and Duration Worked from Raw Returns |
| Stocks rise while bonds and gold both rally hard. How is that read? | As a stress signal that deserves extra caution, not as the usual risk-on picture. | Streamline View: Intermarket Analysis |
| Gold fell from a peak of 111.6 to 93. What rise regains the peak? | 111.6 ÷ 93 − 1 = 20.0%, more than the 16.7% fall. | Cypher Guide: Correlation, Slope and Duration Worked from Raw Returns |
Two lines built from how far each bar’s high and low reach past the prior bar’s range (one tracking upward movement, one tracking downward movement) that swap places exactly when a trend is changing hands.
The Vortex Indicator is a pair of lines, VI+ and VI−, that measure whether upward or downward movement has dominated the last N bars. It compares each bar’s extreme with the opposite extreme of the prior bar, sums that over the window and divides by the summed true range. The rule that matters most is that the signal is the crossover of the two lines, not their distance apart. The main way it goes wrong is whipsaw: in a sideways market the lines cross back and forth with no follow-through.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| VM+ and VM− | VM+ = |today’s high − yesterday’s low|; VM− = |today’s low − yesterday’s high| | Measures reach beyond the prior bar’s opposite extreme | Built from raw highs and lows, so a single wide-range bar moves both |
| True range sum | The same N-bar sum of true range sits under both lines | It scales movement to how volatile the market was | A quiet, low-range market squeezes both lines together |
| VI+ and VI− | Each is a sum of VM divided by the sum of true range | Both hover around 1.0; there is no overbought or oversold level | The gap is not a momentum reading as a MACD histogram is |
| Crossover | VI+ rises above VI− (bullish) or falls below it (bearish) | Upward movement has dominated the window | It lags by construction; in the chapter’s series the cross comes on bar 25, well after the low |
| Lookback (default 14) | The number of bars summed | A longer window is slower and cleaner | Shortening it, for example to 7, multiplies false crossovers |
| Filter | A trend-strength tool such as ADX, or a volatility stop | Take crossovers only when the trend is strong enough | On random-walk data the bare crossover won 52.1% against 52.0% for random entry |
Second outcome. Mirror the same bars (a steady decline with the same ranges) and the two lines swap: VI+ becomes 0.556 and VI− becomes 1.444, a bearish reading. In a choppy series the two sums come out close to each other, so the lines sit near each other and cross repeatedly. A crossover there carries little information, which is why a trend-strength filter is paired with it.
In plain words: watch which line is on top, treat the crossover as a late confirmation, and filter out sideways markets. Education, not advice.
The Vortex Indicator is a recent tool built from much older parts. Its true-range denominator and its directional idea come from the late 1970s, and its own form was published in 2010. Because it is so new, its history is short, and the main lesson from it is how a classic idea gets reshaped and then tested against the original.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder publishes New Concepts in Technical Trading Systems, introducing true range and the Directional Movement system | The true-range denominator and the +DI and −DI idea that Vortex builds on |
| 1978 to 2009 | The window of 38 futures contracts used in the original article to compare Vortex with Wilder’s system, with the 14-period setting | A comparison made on futures, where trend-following has long been used |
| 1992 to 2009 | The window of 101 NASDAQ stocks used in the same article | On these stocks the older directional system did better, so the result was mixed |
| January 2010 | Etienne Botes and Douglas Siepman publish The Vortex Indicator, inspired in part by Viktor Schauberger’s study of water flow and by Wilder’s directional movement | VM+ and VM− measured against the prior bar’s opposite extreme, with the crossover as the signal |
| After 2010 | Charting platforms add the study, and software vendors suggest extras such as trailing stops | The version most readers meet today, usually set to 14 bars |
The Vortex Indicator was introduced by Etienne Botes and Douglas Siepman in the January 2010 issue of a trading magazine. Both were South African technical analysts working independently of the major indicator houses of the era, and their stated inspiration was unusually literal: vortex motion observed in flowing water, the way a current spirals and reverses around an obstacle like a bridge piling or a rock.
Their pitch was narrow and specific: not a new oscillator family, but a cleaner, less-lagged way of answering one question the Directional Movement Index was already trying to answer: has the balance of upward and downward price movement just flipped? Where ADX’s +DI/-DI pair relies on directional movement measured strictly from prior highs and lows, Vortex measures movement relative to the prior bar’s full range, which Botes and Siepman argued produced a faster, cleaner-looking crossover.
Vortex starts from two raw per-bar quantities, each comparing today’s extreme to yesterday’s opposite extreme, then sums each one over a lookback period (14 bars by default) and divides by the summed true range over the same window.
Unlike RSI or Stochastics, VI+ and VI− are not bounded to a 0–100 range: both oscillate loosely around 1.0, and what matters is their position relative to each other, not relative to any fixed overbought or oversold line. When VI+ sits above VI−, upward price movement has dominated the trailing 14 bars; when VI− sits above VI+, downward movement has dominated.
The signal is the crossover itself, not the gap between the two lines. A wide gap simply confirms a trend already well underway; a narrow, repeatedly-crossing gap is the indicator’s version of a choppy, directionless market, and is exactly the condition under which a crossover-only system gets whipsawed.
Because both lines are 14-bar rolling sums, Vortex carries real lag by construction — it will never catch the first bar of a reversal, only confirm that one has been underway for a few bars already.
Crude oil’s collapse into a negative front-month contract price on April 20, 2020, followed by a slow, grinding recovery through that summer, is a well-documented real episode with the shape a Vortex crossover is built to catch: a violent, sustained directional move (where VI− would have dominated for weeks) followed by a drawn-out basing period and an eventual recovery leg (where VI+ would have reasserted itself only after the bottoming process had largely finished).
That shape (sustained one-directional move, consolidation, lagged confirmation of the turn) is precisely what this chapter’s own illustrative chart below reconstructs on a synthetic 30-bar series, with the real VI+/VI− values computed from the actual candles shown rather than from crude oil’s real prices.
Vortex shows up most often in futures and commodity trend-following systems, where it’s typically paired with ADX (to confirm a trend is strong enough to trade) or with a volatility-based stop like a Chandelier Exit, rather than traded on its own crossovers in isolation.
Because the signal already lags by construction, professional trend-followers tend to treat a Vortex crossover as a confirmation layer on a position thesis built from other tools, not as a standalone entry trigger, consistent with the indicator’s own backtest record (see the Field Dossier below), which shows a classic low-win-rate, let-the-winners-run trend-following profile rather than a high-accuracy signal.
12,690 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
The Vortex Indicator is a free built-in study on TradingView, StockCharts, and most other modern charting platforms, usually listed under its own name in the indicator search.
Pick a futures market with a well-documented sustained move (crude oil’s April 2020 collapse and recovery is one dated, public example) and walk the Vortex Indicator across it bar by bar.
The Vortex Indicator is two sums divided by a third, recomputed as the window slides. This guide fixes the vocabulary, builds both lines from raw highs, lows and closes, shows the crossover arriving after the price high, and then tests how the window length and a sideways market change the answer. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| VM+ (upward movement) | |High of this bar − Low of the previous bar| | Large when this bar’s high reaches far above where the last bar’s low was |
| VM− (downward movement) | |Low of this bar − High of the previous bar| | Large when this bar’s low reaches far below where the last bar’s high was |
| True range (TR) | The largest of High − Low, |High − previous Close|, |Low − previous Close| | The common denominator; it includes gaps |
| Window N | The number of bars summed | The original article used 21 and suggested 13, 21 or 34; many platforms default to 14 |
| VI+ | Sum of VM+ over N bars ÷ sum of TR over N bars | Above VI− means upward movement dominated the window |
| VI− | Sum of VM− over N bars ÷ sum of TR over N bars | Above VI+ means downward movement dominated |
| Crossover | The bar on which the order of VI+ and VI− reverses | The signal event; the gap between the lines is not the signal |
| Rolling sum | New sum = old sum + newest value − value that dropped out | Lets the window update without re-adding N values |
| Warm-up | N + 1 bars are needed before the first value | The first bar has no previous bar to compare with |
| Whipsaw | Repeated crossovers with no follow-through | Typical in sideways markets; paired with a trend-strength check |
Mechanism one: from raw bars to the two lines. Bar 0 (high 100, low 97, close 99) is only a reference. Each later bar gives VM+, VM− and TR, using the previous bar’s values. Bar 1, for example: VM+ = |102 − 97| = 5, VM− = |98 − 100| = 2, TR = max(4, |102 − 99|, |98 − 99|) = 4.
| Bar | High | Low | Close | VM+ | VM− | TR |
|---|---|---|---|---|---|---|
| Bar 1 | 102 | 98 | 101 | 5 | 2 | 4 |
| Bar 2 | 104 | 100 | 103 | 6 | 2 | 4 |
| Bar 3 | 106 | 102 | 105 | 6 | 2 | 4 |
| Bar 4 | 107 | 103 | 104 | 5 | 3 | 4 |
| Bar 5 | 108 | 104 | 107 | 5 | 3 | 4 |
| Bar 6 | 107 | 103 | 104 | 3 | 5 | 4 |
| Bar 7 | 105 | 100 | 101 | 2 | 7 | 5 |
| Bar 8 | 102 | 97 | 98 | 2 | 8 | 5 |
| Bar 9 | 101 | 96 | 100 | 4 | 6 | 5 |
| Bar 10 | 103 | 98 | 102 | 7 | 3 | 5 |
| Window ends at | VM+ sum | VM− sum | TR sum | VI+ | VI− | Order |
|---|---|---|---|---|---|---|
| Bar 5 | 27 | 12 | 20 | 1.350 | 0.600 | VI+ on top |
| Bar 6 | 25 | 15 | 20 | 1.250 | 0.750 | VI+ on top |
| Bar 7 | 21 | 20 | 21 | 1.000 | 0.952 | VI+ on top |
| Bar 8 | 17 | 26 | 22 | 0.773 | 1.182 | VI− on top |
| Bar 9 | 16 | 29 | 23 | 0.696 | 1.261 | VI− on top |
| Bar 10 | 18 | 29 | 24 | 0.750 | 1.208 | VI− on top |
Read across the rows. The price high is on bar 5 (high 108), yet VI+ is still on top at bars 5, 6 and 7 because the window still holds the strong early bars. The lines reverse at bar 8, 3 bars after the high, and the gap then widens to 0.458 by bar 10. The crossover is a confirmation that arrives after the turn, and the delay is part of what the window length buys.
Mechanism two: window length and the sideways case. Using the same ten bars, a shorter window reacts sooner and a longer window later.
| Window N | Bars before first value | First bar with VI− on top | Bars after the price high |
|---|---|---|---|
| 3 | 4 bars | Bar 7 | 2 |
| 4 | 5 bars | Bar 7 | 2 |
| 5 | 6 bars | Bar 8 | 3 |
| 6 | 7 bars | Bar 8 | 3 |
A sideways series changes the picture. Nine alternating bars after a reference bar, between 98 and 101 (highs 101 and 100, lows 99 and 98) give these N = 5 values.
| Window ends at | VI+ | VI− | Difference |
|---|---|---|---|
| Bar 5 | 1.100 | 0.900 | 0.200 |
| Bar 6 | 0.900 | 1.100 | −0.200 |
| Bar 7 | 1.100 | 0.900 | 0.200 |
| Bar 8 | 0.900 | 1.100 | −0.200 |
| Bar 9 | 1.100 | 0.900 | 0.200 |
The two lines stay within about 0.20 of each other and change order 4 times in five windows, with no trend behind the changes. That is a whipsaw in numbers. In a trend the difference grows with each bar; here it hovers near zero, which is why a separate trend-strength filter is paired with the crossover.
| Situation | What goes wrong | What to check |
|---|---|---|
| Flat prices, zero true range | Sum of TR is zero and the ratio is undefined | Skip the bar and flag the gap in the series |
| A large gap | TR includes the gap, so both lines shrink together and the crossover is muted | Compare TR with High − Low on the gap bar |
| First N bars of a chart | There is no full window, so the lines are missing or partial | Count N + 1 bars before trusting a value |
| Different N on two platforms | Crossovers land on different bars | Match the window before comparing signals |
| Near-equal lines | A tiny difference flips the order | Require the order to hold, not just to change |
| Sideways market | Repeated crossovers without follow-through | Check a trend-strength reading before acting |
In plain words: each bar contributes an upward reach, a downward reach and a true range; the window sums them, and the lines swap order a few bars after a turn. Education, not advice.
This chapter set out to teach the Vortex Indicator, a pair of lines, VI+ and VI−, that show whether upward or downward movement has dominated the last N bars. Each line is a sum of movement divided by the summed true range. The idea everything hangs on is that the signal is the crossover of the two lines, which always arrives after the turn.
| Question | Short answer | Where it was taught |
|---|---|---|
| Over three bars VM+ sums to 10.0, VM− to 6.5 and true range to 8.5. What are VI+ and VI−? | VI+ = 10.0 ÷ 8.5 = 1.176 and VI− = 6.5 ÷ 8.5 = 0.765. Upward movement dominated. | Cypher Guide: VM Sums, the Window Roll and the Crossover Delay Worked Out |
| The five-bar example is mirrored into a steady decline. What are the new readings? | VI+ becomes 0.556 and VI− becomes 1.444, a bearish reading. | Streamline View: The Vortex Indicator |
| Why does the crossover come after the price high? | The window still holds the strong early bars. In the worked example the high was on bar 5 and the lines reversed at bar 8. | Cypher Guide: VM Sums, the Window Roll and the Crossover Delay Worked Out |
| Is the signal the crossover or the gap between the lines? | The crossover. A wide gap only confirms a trend already under way. | Reading the Vortex Indicator |
| Why is a filter paired with the crossover? | In a sideways market the two lines sit close together and cross back and forth with no follow-through. | Common Mistakes |
A trailing stop that hangs a fixed multiple of ATR below the highest high reached since the trade began, named for the way a chandelier hangs from a ceiling rather than from the floor.
The Chandelier Exit is a trailing stop that hangs a multiple of Average True Range (ATR) below the highest high reached since the trade began. The usual long-side version uses a 22-bar highest high and 3 times the 22-bar ATR. The rule that matters most is that the stop follows the best price reached, not the entry price, and its distance adapts to volatility. The main way it goes wrong is a mismatched multiplier: too tight for a volatile market and normal pullbacks stop the trade out, too loose and open profit is given back.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Anchor | The highest high over the last N bars (long side); the lowest low for the short side | A rising line means a new N-bar high was set recently | When an old high rolls out of the window the anchor can drop |
| Distance | ATR(N) times a multiplier, subtracted from the anchor | Wider in volatile markets, tighter in calm ones | A stop line that drops while price is flat usually means ATR expanded |
| Lookback (22) | About one month of daily bars | Sets how far back the high is measured | A shorter window follows price more closely and exits more often |
| Multiplier (2 or 3) | 2 is tighter; 3 is looser | 2 keeps more profit but exits on normal pullbacks; 3 rides out more noise | One multiplier for every market and timeframe rarely fits |
| Ratchet | For a held long, the stop only moves up | The trader keeps the higher of the old stop and the new line | After a strong run, sideways chop can leave the stop close to price |
| Re-entry filter | A close back above the long-side line after price fell below it | A secondary use as a trend-resumption signal | It needs its own confirmation: in this chapter’s test the re-entry beat random entry by +2.4 points (52.4% against 50.1%) on simulated data |
Second outcome. With the multiplier at 2 the stop sits at 115, only 5 points under the high, so a routine pullback of 6 points exits the trade where the multiplier of 3 would still hold. The trade-off is the whole decision: a tighter stop keeps more profit and gets stopped more often, a looser stop does the reverse.
In plain words: hang the stop from the highest high, size the distance with ATR, and let it only move in the trade’s favour. Education, not advice.
The Chandelier Exit joins two older ideas: measure volatility with true range, and let a trend-following stop trail the best price reached. The thread runs from the 1978 definition of ATR, through rule-based futures trading in the 1980s and a 1992 book on computer-tested trading, to a 2002 book that brought the stop to a wide audience. The idea is older than its popular name.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder publishes New Concepts in Technical Trading Systems, defining true range and Average True Range | The volatility measure that sets the distance of the stop |
| 1983 | Richard Dennis and William Eckhardt begin training the group known as the Turtles, whose rules size positions and place stops using ATR | A well-known example of volatility-based stops inside a rule-based trend-following system |
| 1992 | Chuck LeBeau and David W. Lucas publish Technical Traders Guide to Computer Analysis of the Futures Market | LeBeau’s tested, rule-based approach to futures trading appears in print |
| 2002 | Alexander Elder features the technique in Come Into My Trading Room and credits LeBeau as its originator | The name and the audience: most traders meet the stop through this book |
| Today | The study is a built-in overlay on major charting platforms, with 22 bars and 3 times ATR as the usual defaults | The settings most examples use, which are conventions and not tuned to any one market |
The Chandelier Exit was developed by Chuck LeBeau, a veteran commodity trading advisor and systems developer, as part of his own trend-following work. LeBeau’s core insight was that most trailing stops of the era were anchored to the entry price or to a moving average of price, both of which can sit far below where a strongly trending position has since traveled, giving back an uncomfortable amount of open profit before triggering.
LeBeau anchored his stop to the highest high reached since entry instead, offset by a multiple of Average True Range so the stop’s distance automatically widens in volatile conditions and tightens in calm ones. The technique reached a wide audience primarily through Alexander Elder’s trading books, including Come Into My Trading Room, where Elder featured it prominently and credited LeBeau as its originator.
The long-side version anchors to the highest high; the short-side version (not charted in this chapter) mirrors it off the lowest low.
Two separate inputs set where the line sits: the lookback window’s highest high (the anchor point) and that same window’s ATR (the distance below it). A rising stop line simply means price has made a new N-bar high recently; a stop line that suddenly drops even while price is flat or falling usually means ATR has expanded: volatility itself is doing the work, not a new price extreme.
Because the multiplier (commonly 2 for a tighter stop or 3 for a looser one) is a direct lever on how much open profit the trade is willing to give back before exiting, the choice of multiplier is really a statement about trading style: 2x keeps more profit but exits more often on normal pullbacks, 3x rides out more noise but gives back more before confirming the trend has actually turned.
The same construction that makes it an exit also makes it usable as a trend filter in the other direction: this chapter treats a fresh close back above the long-side stop, after price had fallen below it, as a trend-resumption signal, a secondary, less common use beyond its original role as a stop-loss.
This chapter’s own 30-bar illustrative series (charted below) shows the construction cleanly: price declines roughly 30%, bases in a range for about a dozen bars, and then breaks out. Watch what happens to the gold stop line in that basing stretch — it falls sharply even while price is barely moving, because the 22-bar rolling high is rolling off its old pre-decline peak at the same time ATR is still elevated from the capitulation bars that preceded it.
That double effect (the anchor dropping and the ATR term staying wide at the same time) is what lets price finally close back above its own Chandelier stop on bar 25, several bars into the recovery leg, rather than requiring price to fully reclaim its pre-decline high.
Chandelier-style trailing stops are a staple of discretionary and systematic trend-following alike, precisely because the ATR term adapts the stop to current conditions without the trader having to manually widen or tighten it as volatility regimes change.
Professional trend-following systems rarely use it as a standalone entry signal the way this chapter’s Monte Carlo box tests it. Its native job is protecting and trailing an already-open position. Where it is tested inside a full system (as in the Field Dossier’s cited study, where it serves as the exit), it is almost always paired with a separate entry trigger, with the Chandelier distance tuned independently for that specific system rather than left at the textbook 22/3 default.
13,734 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Chandelier Exit is a free built-in overlay study on TradingView, StockCharts, and most other charting platforms, plotted directly on the price panel rather than in a separate pane.
The Chandelier Exit sits a multiple of ATR below the highest high of the window.
Pick an instrument with a clean, well-documented trending stretch and walk the Chandelier Exit across it bar by bar, the way this chapter’s illustrative chart does.
The Chandelier Exit is three numbers combined with one rule: a highest high, an average true range, a multiplier, and a ratchet that lets the stop rise but never fall. This guide fixes the vocabulary, builds the stop bar by bar from raw prices with a short window, tests four multipliers on the same path, and checks the Streamline View arithmetic across multipliers. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Highest high (HH) | The largest high over the last N bars | The anchor of the stop; it rises with new highs and can fall only when an old high ages out of the window |
| True range (TR) | The largest of High − Low, |High − previous Close|, |Low − previous Close| | One bar’s full movement including any gap |
| ATR | Average true range; seed = mean of the first N TR values, then ATR = (previous ATR × (N − 1) + TR) ÷ N | The volatility yardstick; Wilder smoothing reacts to new values slowly |
| Multiplier (m) | How many ATRs below the highest high the stop hangs | Larger m gives more room and a later exit |
| Raw line | HH − m × ATR on each bar | Can fall when ATR rises or the highest high ages out |
| Ratchet | Stop = the higher of the raw line and the previous stop, while the trade is held | The stop only moves in the trade’s favour |
| Open run | Highest high minus entry price | The profit available before any pullback |
| Protected share | (Stop − entry) ÷ open run | The fraction of the open run the stop would lock in |
| Gap through | A bar that opens beyond the stop | The fill is the open, not the stop level; the loss is larger than planned |
| Warm-up | N + 1 bars before the first ATR | TR needs a previous close |
Mechanism one: the stop built from raw bars. To keep every number checkable, N = 5 and m = 3 replace the usual 22 and 3, and a long position is assumed to open at the close of bar 5 (106.5). The ATR seed is the mean of the true ranges of bars 1 to 5: (2.0 + 3.0 + 2.0 + 3.0 + 2.0) ÷ 5 = 2.40. Each later bar updates it by Wilder smoothing.
| Bar | High | TR | ATR | HH(5) | Raw line | Held stop | Close | Status |
|---|---|---|---|---|---|---|---|---|
| Bar 5 | 107.0 | 2.0 | 2.400 | 107.0 | 99.80 | 99.80 | 106.5 | hold |
| Bar 6 | 109.0 | 3.0 | 2.520 | 109.0 | 101.44 | 101.44 | 108.5 | hold |
| Bar 7 | 111.0 | 3.0 | 2.616 | 111.0 | 103.15 | 103.15 | 110.5 | hold |
| Bar 8 | 110.5 | 3.5 | 2.793 | 111.0 | 102.62 | 103.15 | 108.0 | hold |
| Bar 9 | 109.0 | 4.0 | 3.034 | 111.0 | 101.90 | 103.15 | 106.0 | hold |
| Bar 10 | 107.0 | 4.0 | 3.227 | 111.0 | 101.32 | 103.15 | 104.0 | hold |
| Bar 11 | 104.0 | 4.0 | 3.382 | 111.0 | 100.85 | 103.15 | 101.0 | exit |
Read across the rows. The highest high reaches 111.0 on bar 7 and stays in the window through bar 11, so after bar 7 the raw line moves only with ATR. ATR climbs from 2.40 to 3.38 as ranges widen in the pullback, which lowers the raw line, but the ratchet keeps the stop at its highest value. The close falls below the held stop on bar 11, and the position would exit at about 103.15.
The multiplier changes the exit bar and the result on this one path. A multiplier of 1.5 exits first; 4 exits last.
| Multiplier | Exit bar | Assumed exit price | Result vs entry 106.5 |
|---|---|---|---|
| 1.5 | Bar 9 | 107.08 | 0.58 |
| 2.0 | Bar 10 | 105.77 | −0.73 |
| 3.0 | Bar 11 | 103.15 | −3.35 |
| 4.0 | Bar 12 | 100.54 | −5.96 |
This is one path and not a general ranking: on a path that pulled back and then continued higher, the tight settings would have exited and missed the rest, and the wide setting would have stayed. The trade-off is between exits that come early and give up little, and exits that come late and give up more, as in the Streamline View.
Mechanism two: how the multiplier splits the open run. Using the Streamline View values (entry 100, highest high 120, ATR 2.5), the stop distance is m × ATR and the protected share follows.
| Multiplier | Stop | Pullback from high that triggers it | Locked-in profit | Protected share of the 20-point run |
|---|---|---|---|---|
| 1 | 117.5 | 2.5 | 17.5 | 87.5% |
| 2 | 115.0 | 5.0 | 15.0 | 75.0% |
| 3 | 112.5 | 7.5 | 12.5 | 62.5% |
| 4 | 110.0 | 10.0 | 10.0 | 50.0% |
Read across the multiplier 3 row: the stop is 112.5, a 7.5 point pullback triggers it, and 12.5 of the 20 points (62.5%) are protected, matching the 63% in the Streamline View after rounding. When ATR widens from 2.5 to 4 with a new high of 124, the raw line is 124 − 12 = 112 but the held stop stays at the earlier 116.5. For the initial stop: with entry 100, a highest high of 102, ATR 2.5 and m = 3, the stop is 94.5, so risk is 5.5 per share and a risk budget of 110 would allow 20 shares.
| Situation | What goes wrong | What to check |
|---|---|---|
| Gap through the stop | The fill is at the open, below the stop level | Allow for gap risk when sizing; the stop is not a guaranteed price |
| ATR spikes after one wide bar | The raw line drops sharply | Rely on the ratchet and check whether the spike is a gap |
| Old high leaves the window | The raw line falls even with no new volatility | Note when the highest high will age out |
| Window too short for the market | The stop trails too close and exits on normal noise | Test N and m on the market’s own history |
| Short positions | The formula mirrors: lowest low plus m × ATR | Mirror the ratchet so the stop only moves down |
| Re-entry after an exit | The ratchet must reset to a fresh raw line | Start a new stop at the next entry |
In plain words: the stop is a highest high minus a few ATRs, ATR is a slow average of true range, and the ratchet makes sure the stop never gives back ground. Education, not advice.
This chapter set out to teach the Chandelier Exit, a trailing stop that hangs a multiple of Average True Range below the highest high reached since the trade began. The usual long-side version uses a 22-bar window and 3 times the 22-bar ATR. The idea everything hangs on is that the stop follows the best price reached, adapts its distance to volatility, and only ever moves in the trade’s favour.
| Question | Short answer | Where it was taught |
|---|---|---|
| The highest high is 120, ATR is 2.5 and the multiplier is 3. Where is the stop, and how much of the 20-point run does it protect? | At 112.5, which protects 12.5 of 20 points, or 62.5%. | Streamline View: The Chandelier Exit |
| After a new high of 124 the stop is 116.5. ATR then widens to 4. Where is the stop? | Still 116.5. The raw line (124 − 12 = 112) is lower, and a held position keeps the higher value. | Streamline View: The Chandelier Exit |
| Entry is 100, the highest high is 102, ATR is 2.5, the multiplier is 3 and the risk budget is 110. What is the share count? | The stop is 94.5, risk is 5.5 per share, and 110 ÷ 5.5 = 20 shares. | Cypher Guide: ATR Recursion, the Ratchet and Multiplier Sensitivity Worked Out |
| Why did the stop line fall hard in the basing stretch of the 30-bar series? | The rolling 22-bar high was dropping off its old peak while ATR was still elevated, so price closed back above the stop on bar 25. | A Real, Dated Example |
| Why does a multiplier of 2 exit on a 6-point pullback when 3 does not? | With 2 the stop is 115, only 5 points under the high of 120. With 3 it is 112.5, 7.5 points under. | Streamline View: The Chandelier Exit |
A single momentum line built by smoothing and weighting four separate rate-of-change readings (short to long) into one composite meant to reflect several price cycles at once rather than just one.
Know Sure Thing (KST) is a momentum line built from four rate-of-change readings of different lengths, each smoothed and then weighted so the longer cycles count for more. It is read mainly through its crossover with a 9-period signal line and through zero-line crosses. The rule that matters most is that KST is deliberately slow: it is a timing tool for intermediate trend changes, not a fast trigger. The main way it goes wrong is expecting it to turn as quickly as a short RSI, or applying its default settings to a market with a very different cycle structure.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Rate of change (ROC) | Today’s price compared with the price some bars ago, as a percent | Positive means price is above where it was; the size shows speed | It reflects only the one cycle length it was calculated over |
| Four cycles | ROC over 10, 15, 20 and 30 bars, smoothed by 10, 10, 10 and 15-bar averages | Combines short and long cycles in one line | Four smoothing passes make the math harder to see at a glance |
| Weights 1, 2, 3, 4 | The longest cycle counts four times the shortest | The line leans toward the intermediate and longer trend | That lean is by design and also the source of the lag |
| Signal line | A 9-period average of KST | KST crossing above it is bullish; below it is bearish | Every crossover is not equally meaningful; check the slope |
| Zero line | The sign of the composite | A cross from negative to positive marks a shift in multi-timeframe momentum | It confirms a shift that has already been under way |
| Lag | In the chapter’s series the price low is near bars 11 to 13, KST bottoms near bar 20 and the crossover fires on bar 25 | Use it to corroborate a trend, not to catch a low | On random-walk data the crossover won 51.3% against 51.6% for random entry; it needs at least 45 bars of history on the daily settings |
Second outcome. If the longest smoothed term turned to -1.0% while the other three stayed the same, KST would be 16 and the signal line 29.3. The composite is still positive but now sits 13.3 below its signal line, a bearish crossover, and the longest, most heavily weighted cycle produced it.
In plain words: KST blends four cycles with the longer ones counting more, so it turns late and smoothly. Use it to confirm an intermediate trend, and read its slope as well as its crossovers. Education, not advice.
Know Sure Thing grew out of one analyst’s work on market cycles and the idea that several rate-of-change readings can be combined into a single momentum line. The record is short and well documented: a textbook in the early 1990s, two magazine articles in 1992, and later editions and platform versions that spread it. Because the defaults come from one author’s work on equity indices, they are best read as a starting point.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1991 | The third edition of Martin Pring’s Technical Analysis Explained is published | The textbook setting of Pring’s cycle-based approach to momentum, in which different cycle lengths are read together |
| August 1992 | Pring publishes his first magazine article on his rate-of-change momentum methods | The basis for KST: rate of change as a building block that can be stacked |
| September 1992 | A second article by Pring, Summed Rate of Change (KST), introduces the indicator | The four-term weighted sum, with the longer cycle given the largest weight |
| 2014 | The fifth edition of Technical Analysis Explained is published | The method remains in a standard textbook more than two decades after the articles |
| Today | KST is a built-in study on major charting platforms, with a 9-period signal line and settings that vary by platform | The 10, 15, 20, 30 daily set is common, but platforms differ, so settings should be checked |
Know Sure Thing was developed by Martin J. Pring, a technical analyst and prolific author, and introduced in a 1992 trading magazine article, with the method also covered in his book Technical Analysis Explained. Pring had spent years writing about market cycles at different timeframes, and KST grew directly out of a specific frustration: a single rate-of-change or RSI reading reflects only the one cycle length it was calculated over, and can flash a clean-looking signal that completely ignores what a longer or shorter cycle in the same price series is simultaneously doing.
KST’s answer was to stop picking one cycle length and instead combine four: rate-of-change over 10, 15, 20, and 30 bars, each first smoothed with its own moving average, then summed with weights of 1, 2, 3, and 4 respectively, so the longer, generally more reliable cycles count for more in the final composite than the shortest, noisiest one.
Each of the four rate-of-change terms is smoothed before it is weighted and summed; a 9-period moving average of the resulting KST line becomes its own signal line.
Like MACD, KST is read primarily through its crossover against its own signal line, and through zero-line crosses that mark a shift in overall multi-timeframe momentum from negative to positive or back. Because it sums four already-smoothed terms, KST itself is considerably smoother, and slower to turn, than any single one of its four ingredients would be on its own.
The relative size of the four weights means KST leans toward reflecting intermediate-to-longer cycles more than short-term noise, which is by design: Pring built it as a timing tool for intermediate trend changes, not a short-term entry trigger.
A steep KST slope (rather than just its sign) is itself informative: Pring’s own writing treats the rate at which KST is rising or falling as a read on whether multi-timeframe momentum is accelerating or merely drifting.
This chapter’s own 30-bar illustrative series shows KST’s defining tradeoff clearly: the actual price low lands around bar 11–13, but KST itself doesn’t bottom until roughly bar 20, and its bullish crossover against the signal line doesn’t fire until bar 25 (see the panel below), a direct consequence of summing a 30-bar rate-of-change term that itself gets another 15-bar smoothing pass.
That lag is the price of KST’s multi-timeframe construction: it is deliberately built to filter out the kind of single-cycle noise that would make a faster oscillator flip back and forth repeatedly through the same capitulation stretch.
KST shows up most often as an intermediate-trend confirmation tool, often plotted alongside a slower moving average on weekly or monthly charts, where its deliberate smoothness is an asset rather than a drawback.
Because it already blends four cycle lengths, professional and serious retail technicians tend to use KST to corroborate a trend thesis built from price structure and other tools, rather than as a fast standalone timing signal, consistent with its own backtest record (see the Field Dossier below), where results varied considerably between a simple default-settings approach and a more deliberately tuned rule set.
7,943 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
KST is a free built-in study on most major charting platforms, including TradingView and StockCharts, usually found by searching “KST” or “Know Sure Thing” in the indicator list.
Rate of change is today’s price compared with the price some bars ago, as a percent.
Pick an index with a well-documented sustained move and walk KST across it bar by bar, the way this chapter’s illustrative chart does on its own synthetic series.
Know Sure Thing looks like one smooth line, but it is four averaged rate-of-change series, a weight on each, and a nine-bar signal average. This guide fixes the vocabulary, counts the bars needed before the first value and the delay built into the settings, then works the signal-line recursion for a turn. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| Rate of change, ROC(L) | (Price now ÷ price L bars ago − 1) × 100 | Four lengths are used: 10, 15, 20 and 30 on the daily set |
| Smoothed ROC | A simple average of the last n values of a ROC series | Daily smoothing lengths are 10, 10, 10 and 15 |
| Weight | The multiplier applied to each smoothed term: 1, 2, 3, 4 | Makes the longest cycle count four times the shortest |
| KST | 1 × term 1 + 2 × term 2 + 3 × term 3 + 4 × term 4 | Positive when the weighted cycles are rising on balance |
| Signal line | A 9-bar simple average of KST | A crossover of KST and signal is the usual timing event |
| Zero line | The level KST = 0 | A cross marks a change in the weighted momentum sign |
| Contribution share | Weight × term ÷ KST | Shows which cycle is driving the reading |
| Warm-up | Bars needed before the first valid value | Count L plus n bars for each term; the longest sets the delay |
| Lag | Average delay of an indicator behind price | About half the ROC length plus (n − 1) ÷ 2 for each term; a rough rule |
| Slope | Change in KST from one bar to the next | Read with the crossover: a line still rising confirms the cross less strongly than a line that has turned |
Mechanism one: bars needed and delay built in. With the first price at bar 1, ROC(L) first exists at bar L + 1, and an average of n ROC values first exists at bar L + n. The longest term, ROC(30) with a 15-bar average, therefore first exists at bar 45, so KST needs 45 bars. The 9-bar signal average then needs eight more KST values, so it first exists at bar 53.
| Term | ROC | Average | Weight | First valid bar | Approximate lag |
|---|---|---|---|---|---|
| Term 1 | ROC(10) | SMA(10) | 1 | Bar 20 | 9.5 bars |
| Term 2 | ROC(15) | SMA(10) | 2 | Bar 25 | 12.0 bars |
| Term 3 | ROC(20) | SMA(10) | 3 | Bar 30 | 14.5 bars |
| Term 4 | ROC(30) | SMA(15) | 4 | Bar 45 | 22.0 bars |
Read across the formula lines. The weighting puts half of the 40 points of KST on the longest cycle, so the line is slow in two ways: its largest weight sits on the term with the largest delay, and the 9-bar signal adds more. A change of one point in the smoothed 30-bar term moves KST by 4, while the same change in the 10-bar term moves it by 1. For KST to reach zero with terms 2, 3 and 4 held, the longest term would have to fall to −5.0, because 2 + 6 + 12 + 4x = 0 gives x = −5. The Streamline View used −1.0, which leaves KST at 16.
Mechanism two: the signal line after a turn. Start with the last nine KST values from the Streamline View, 22, 25, 28, 30, 33, 35, 37, 38 and 40, where the signal is 288 ÷ 9 = 32. Suppose the longest term turns to −1.0 and KST drops to 16, then stays at 16. Each new bar drops the oldest value from the sum and adds the newest.
| Bar | KST | Signal | KST minus signal |
|---|---|---|---|
| Turn bar | 16 | 29.33 | −13.33 |
| Bar +1 | 16 | 28.67 | −12.67 |
| Bar +2 | 16 | 27.67 | −11.67 |
| Bar +3 | 16 | 26.33 | −10.33 |
| Bar +4 | 16 | 24.78 | −8.78 |
| Bar +5 | 16 | 22.89 | −6.89 |
| Bar +6 | 16 | 20.78 | −4.78 |
| Bar +7 | 16 | 18.44 | −2.44 |
| Bar +8 | 16 | 16.00 | 0.00 |
Read down the table. On the turn bar the signal is 29.33, which is the value in the Streamline View, and KST sits 13.33 below it. The gap closes each bar by one ninth of the difference between 16 and the value that drops out of the window, so it narrows slowly at first (0.67 on the first bar) and fastest at the end (2.44 on the eighth), when the largest old values leave, and it reaches zero after eight further bars at 16. A bearish crossover therefore appears at the moment KST falls below its slow average, and the signal keeps drifting down for another eight bars. This is the same property as any moving average: it lags a turn and then catches up.
| Situation | What goes wrong | What to check |
|---|---|---|
| Fewer than 45 bars on the chart | KST is blank or partial | Count the warm-up for the longest term |
| Weekly or monthly defaults differ | The same name produces different numbers | Match lengths and smoothing before comparing |
| Price at or near zero in ROC base | Ratio breaks down when the base price is zero | Use a different change measure for such series |
| Sideways market | KST hugs zero and crosses its signal repeatedly | Look for a defined trend before using crossovers |
| Platform uses an exponential average | Values differ from the simple-average version here | Check the smoothing type in the settings |
| Crossover with line still rising | Both lines are positive and the cross is shallow | Read slope and the zero line together |
In plain words: KST needs 45 bars to start, carries a delay of roughly 16 bars through its weights, and its signal line drifts for nine bars after any turn. Education, not advice.
This chapter set out to teach Know Sure Thing (KST), a momentum line built from four smoothed rate-of-change readings of different lengths. The longer cycles are given larger weights, and the result is read through its crossover with a 9-bar signal line and through zero-line crosses. The idea everything hangs on is that KST is slow by design, a tool for confirming intermediate trend changes, not a fast trigger.
| Question | Short answer | Where it was taught |
|---|---|---|
| Smoothed terms of 2.0, 3.0, 4.0 and 5.0 are weighted 1 to 4. What is KST? | 2.0 × 1 + 3.0 × 2 + 4.0 × 3 + 5.0 × 4 = 40. | Streamline View: Know Sure Thing (KST) |
| Why does the 30-bar term dominate the delay? | It carries the largest weight (half of the 40 points) and the largest lag of the four terms. | Cypher Guide: Warm-Up Bars, Built-In Lag and the Signal Line After a Turn |
| How many bars are needed before the first KST value, and before the first signal value? | 45 bars for KST and 53 bars for the signal line. | Cypher Guide: Warm-Up Bars, Built-In Lag and the Signal Line After a Turn |
| Terms 1 to 3 give 2 + 6 + 12 = 20. What value of the longest term gives KST of zero? | 2 + 6 + 12 + 4x = 0 gives x = −5.0. | Cypher Guide: Warm-Up Bars, Built-In Lag and the Signal Line After a Turn |
| Why did KST cross only on bar 25 when the price low was near bars 11 to 13? | It sums a 30-bar rate of change that is smoothed over a further 15 bars, so it filters noise at the cost of delay. | A Real, Dated Example |
Not a buy or sell signal at all: a single number from 0 to 100 that answers one narrower question: is this market currently trending, or is it just chopping sideways?
The Choppiness Index (CHOP) is a single number from 0 to 100 that says whether the market has recently covered ground efficiently in one direction or wandered back and forth. It compares the sum of every bar’s true range with the net high-to-low range of the same window, compressed with a logarithm. The rule that matters most is that CHOP gives no direction: a low reading means trending, up or down. The main way it goes wrong is being read as a buy signal, or used alone without a separate directional tool.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| Sum of true ranges | Total ground covered, bar by bar, over N bars | The numerator: a larger sum means more travel | A wide-range bar raises it whatever the direction |
| Net range | Highest high minus lowest low over N bars | The denominator: how far price actually got | The sum can never be smaller than the net range |
| CHOP formula | 100 × log10(sum of TR / net range) / log10(N), with N typically 14 | Low means efficient travel; high means much travel and little progress | The log scale puts the result between 0 and 100 |
| Thresholds | Above about 61.8 is choppy; below about 38.2 is trending | The band between is a transition | They are Fibonacci-style conventions; 40 and 60 are also used, and the right levels are worth testing |
| No direction | CHOP read “trending” on the way down in the chapter’s series (under 15 in bars 5 to 12) | Pair it with a separate directional tool | A low reading in a downtrend looks the same as in an uptrend |
| Filter use | Only take a breakout or trend system’s signals when CHOP is low | Stand aside when it reads choppy | On random-walk data a 20-bar breakout filtered by CHOP below 38.2 won 52.0% against 55.1% for random entry, since trendiness is not direction |
Second outcome. If the choppy window’s net range doubled to 20 with the same travel of 70, the ratio would fall to 3.5 and CHOP to 47.5, still above 38.2 but no longer deep in the choppy zone. A high reading does not predict a breakout: a choppy regime can last a long time.
In plain words: CHOP tells you whether the market has been trending or chopping, not which way to trade. Use it to filter a directional system, and test the thresholds before trusting them. Education, not advice.
The Choppiness Index belongs to a family of measures that ask how efficiently a price series covers ground. Its own record is thin: a trader named E.W. Dreiss is credited with it in the early 1990s, and the details of its development are not well documented. Its parts are better dated, and they explain what the number is and is not.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1951 | H. E. Hurst publishes his study of long-term reservoir storage on the Nile, finding records that persist more than pure chance would give | An early measure of whether a series trends or wanders, later called the Hurst exponent |
| 1975 | Benoit Mandelbrot introduces the word fractal | The vocabulary of how a path fills the space available to it, the idea CHOP is said to draw on |
| 1978 | J. Welles Wilder publishes New Concepts in Technical Trading Systems, defining true range | The per-bar measure of travel that CHOP sums over its window |
| Early 1990s | E. W. Dreiss, an Australian commodity trader, is credited with the Choppiness Index | A ratio of total travel to net range, put on a 0 to 100 scale |
| 1995 | Perry Kaufman publishes Smarter Trading, which uses an efficiency ratio of net change to total movement | A close relative of CHOP, showing the same idea reached from another direction |
The Choppiness Index was developed in the early 1990s by E.W. Dreiss, an Australian commodity trader, reportedly drawing on fractal ideas about how price fills the space available to it over a given window. Dreiss’s core observation was that a trending market and a choppy market can cover the exact same net distance (the same high-to-low range) while taking wildly different amounts of total back-and-forth travel to get there.
Unlike every other indicator in this chapter and the three before it, CHOP was never built to say which direction to trade. It was built to say whether the current conditions favor trading a direction at all, a regime classifier meant to sit alongside a separate directional system, not to replace one.
CHOP compares the sum of every bar’s true range over the window against that same window’s net high-low range, then compresses the ratio onto a 0–100 scale with a logarithm.
A low CHOP reading means the market covered its net distance efficiently: most of the total true-range travel over the window went toward the same net move, the signature of a genuine trend. A high CHOP reading means the market covered a great deal of ground without going anywhere net: lots of back-and-forth true range, little net high-low progress, the signature of a range-bound chop.
The 38.2 and 61.8 threshold levels borrowed from Fibonacci ratios are a convention, not a law — some traders use round numbers like 40 and 60 instead, and the right threshold for a given market and timeframe is itself something worth testing rather than assuming.
Because CHOP says nothing about direction, a low (trending) reading during a downtrend looks identical to a low reading during an uptrend. It has to be paired with a separate directional tool to be actionable at all.
This chapter’s own 30-bar illustrative series makes the regime distinction directly visible. During the steepest, most one-directional stretch of the decline (roughly bars 5–12), CHOP drops to its lowest readings in the whole window (under 15 at its minimum), correctly flagging genuine trending behavior even though the trend happens to be downward.
Once price finishes its initial bounce and enters a choppier, more range-bound stretch later in the window (roughly bars 20–29), CHOP climbs back above 38 and briefly tops 50, correctly flagging that the earlier trending efficiency has broken down, well before any single candle pattern would have made that obvious.
CHOP’s most common professional use is as a pre-filter on a breakout or trend-following system: only take the system’s signals when CHOP confirms the market is actually in a trending regime, and stand aside (or widen expectations for false breakouts) when it reads choppy.
Because it’s purely a regime read, serious users typically pair it with a volatility-based position-sizing or stop rule as well: a market reading as “choppy” on CHOP often also has wide, unpredictable intrabar swings that call for a looser stop than a cleanly trending one would.
12,435 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
The Choppiness Index is a free built-in study on TradingView, StockCharts, and most other charting platforms, usually plotted in its own pane below price on a 0–100 scale.
The Choppiness Index compares the sum of true ranges with the total range of the window.
Pick an index with both a clear trending stretch and a clear choppy stretch and walk the Choppiness Index across both, the way this chapter’s illustrative chart does.
The Choppiness Index is a logarithm of one ratio: the distance price travelled bar by bar divided by the net range it covered. This guide fixes the vocabulary, builds the ratio from raw bars for a trending and a choppy window, shows how the logarithm and the window length shape the 0 to 100 scale, and converts the 38.2 and 61.8 thresholds back into efficiency. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| True range (TR) | The largest of High − Low, |High − previous Close|, |Low − previous Close| | One bar’s full travel, including any gap from the prior close |
| Sum of TR | Total of the N true ranges in the window | The distance price travelled |
| Net range | Highest high minus lowest low over the same N bars | The ground price actually covered |
| Travel ratio | Sum of TR ÷ net range | 1 when price went straight; larger when it doubled back |
| CHOP | 100 × log10(travel ratio) ÷ log10(N) | A 0 to 100 scale with no direction |
| Window N | The number of bars | Fixes the maximum travel ratio at N, which maps to 100 |
| Trending zone | CHOP below 38.2 | Price covered ground efficiently, up or down |
| Choppy zone | CHOP above 61.8 | Price travelled much more than it progressed |
| Efficiency | Net range ÷ sum of TR, which is 1 ÷ travel ratio | The share of the distance travelled that became progress |
| Threshold | A level chosen by convention | 38.2 and 61.8 are borrowed from Fibonacci ratios; 40 and 60 are also used |
Mechanism one: the ratio from raw bars. A window of N = 5 bars is used so each term can be checked by eye, with a prior close of 100 in both cases. The trending window rises in steps of 1.5. The choppy window alternates between a high of 102 and a low of 98.5.
Read across the two results. The trending window covered a net range of 8.0 and the choppy one only 3.5, and the trending window travelled only 1.25 times its net range while the choppy window travelled 4.29 times, so CHOP is 13.9 against 90.4. The index measures the doubling back, not the direction: if the trending window had fallen in the same steps, the number would be the same.
Mechanism two: the logarithm, the window and the thresholds. For N = 14 the table below converts travel ratios to CHOP. The ratios 2.74 and 5.11 are 140.382 and 140.618, the ratios that produce the two thresholds.
| Travel ratio | Efficiency | CHOP (N = 14) | Zone |
|---|---|---|---|
| 1.00 | 100.0% | 0.0 | trending |
| 1.60 | 62.5% | 17.8 | trending |
| 2.00 | 50.0% | 26.3 | trending |
| 2.74 | 36.5% | 38.2 | trending |
| 3.50 | 28.6% | 47.5 | between |
| 5.11 | 19.6% | 61.8 | choppy |
| 7.00 | 14.3% | 73.7 | choppy |
| 14.00 | 7.1% | 100.0 | choppy |
Read the thresholds as efficiency. A reading of 38.2 corresponds to about 36.5% of the distance travelled becoming progress; a reading of 61.8 corresponds to about 19.6%. The logarithm spreads equal doublings of the ratio evenly, so a ratio change from 1 to 2 moves CHOP as much as a change from 7 to 14. The window length matters: the same ratio of 3.5 reads 64.4 with N = 7 and 37.6 with N = 28, so the zone label depends on the setting as well as on the market. Doubling the net range in the Streamline View example (70 of travel, range 10 to 20) lowers the ratio from 7 to 3.5 and CHOP from 73.7 to 47.5, as stated there.
| Situation | What goes wrong | What to check |
|---|---|---|
| Highest high equals lowest low | Net range is zero, so the ratio is undefined | Skip the window and note it |
| First bar gaps from a prior close outside the window | The first TR is larger than the window range, and CHOP can exceed 100 | Treat readings above 100 as a gap artifact |
| One very wide bar in a window | The ratio is near 1 and CHOP reads trending after a single event | Look at the bars behind the number |
| Very short N | The scale is coarse and jumpy | Use a window long enough to hold several swings |
| High reading read as a breakout signal | A choppy regime can last a long time | CHOP describes the past N bars only |
| Thresholds copied from another market | The 38.2 and 61.8 levels may not fit | Test the levels on the market at hand |
In plain words: CHOP compares the distance travelled with the ground covered, squeezes the ratio through a logarithm, and says nothing about direction. Education, not advice.
This chapter set out to teach the Choppiness Index (CHOP), a single number from 0 to 100 that says whether the market has recently covered ground efficiently or wandered back and forth. It compares the sum of every bar’s true range with the net high-to-low range of the window, compressed with a logarithm. The idea everything hangs on is that CHOP describes the regime and never the direction.
| Question | Short answer | Where it was taught |
|---|---|---|
| A 14-bar window has a true-range sum of 70 and a net range of 10. What is CHOP, and which zone is it in? | The ratio is 7, so CHOP = 100 × log10(7) ÷ log10(14) = 73.7, which is choppy (above 61.8). | Streamline View: The Choppiness Index |
| A 5-bar window has a travel sum of 10.0 and a net range of 8.0. What is CHOP, and would a falling window change it? | The ratio is 1.25 and CHOP is 13.9. A falling window in the same steps gives the same number. | Cypher Guide: Travel Ratio, the Logarithm and Thresholds as Efficiency |
| A 10-bar window has a travel sum of 36 and a net range of 12. What is CHOP? | The ratio is 3 and CHOP = 100 × log10(3) ÷ log10(10) = 47.7, between 38.2 and 61.8. | Cypher Guide: Travel Ratio, the Logarithm and Thresholds as Efficiency |
| Is a low CHOP reading during a sharp decline a bullish signal? | No. It only confirms trending efficiency, in either direction. | Common Mistakes |
| What does a reading of 38.2 mean in terms of efficiency? | About 36.5% of the distance travelled became progress (1 ÷ 140.382). | Cypher Guide: Travel Ratio, the Logarithm and Thresholds as Efficiency |
A composite of three separate short-term stress readings: a fast 3-period RSI, an RSI of the current up/down streak length, and a 100-day percentile rank of the day’s move, averaged into one 0–100 mean-reversion gauge.
Connors RSI is the average of three short-term stretch readings, each on a 0 to 100 scale: a 3-period RSI of the close, a 2-period RSI of the up or down streak length, and the percentile rank of the day’s 1-day return among the last 100. Readings below 10 are read as deeply oversold and above 90 as deeply overbought. The rule that matters most is that it is a mean-reversion tool, so it needs a defined, mechanical exit. The main way it goes wrong is buying every sub-10 reading in a sustained downtrend, because the indicator says nothing about the larger trend.
| Idea | What it means | How to read it | Limit or trap |
|---|---|---|---|
| RSI(Close, 3) | A very short RSI of closing prices | Low means the last few closes were mostly down | Reaches extremes far more often than the textbook 14-period RSI |
| RSI(Streak, 2) | RSI of the count of consecutive up or down closes | A long down streak pushes it toward 0 | An unchanged close resets the streak to zero and can move the reading |
| PercentRank(100) | Where today’s 1-day return ranks among the last 100 | A low rank means an unusually weak day | Needs at least 100 bars of history to mean anything |
| Composite | The simple average of the three, scaled 0 to 100 | Below 10 oversold, above 90 overbought; agreement among the three is more significant | It whipsawed in the chapter’s series: below 10 on bar 6, above 70 on bar 8, below 10 again on bar 12 |
| Mean reversion | Extremes are expected to snap back | Pair the signal with a fixed holding period or a reading back above mid-range | Holding a trade indefinitely defeats the research design |
| Trend blindness | It says nothing about the prevailing larger trend | Add a trend filter of your own | It can read oversold repeatedly in a downtrend; on random-walk data buying the first close below 10 won 52.2% against 51.1% for random entry |
Second outcome. If RSI(Close,3) were 3, RSI(Streak,2) 38 and PercentRank 6, the composite would be (3 + 38 + 6) / 3 = 15.7, above 10 and driven mostly by the streak term. One component reading differently from the other two weakens the case, which is why some practitioners watch for agreement. Neither case says where the larger trend is heading.
In plain words: three fast readings are averaged to flag a short-term stretch, which is then paired with a defined exit and a trend check of the user’s own. Education, not advice.
Connors RSI is a recent composite built from a much older oscillator. It starts with Wilder’s RSI from 1978, passes through the short-lookback RSI(2) research of the late 2000s, and was packaged as a three-part indicator in 2012. Its history is short, and its published evidence comes largely from the same research firm that created it.
| Year | What happened | What it added to the topic |
|---|---|---|
| 1978 | J. Welles Wilder introduces the Relative Strength Index in New Concepts in Technical Trading Systems, with a default length of 14 | The oscillator that two of the three Connors components are built on |
| About 2008 | Larry Connors and Cesar Alvarez publish Short Term Trading Strategies That Work, presenting backtests of a 2-period RSI for short-term mean reversion | The case for very short lookbacks and for readings below 10 and above 90 as extremes |
| 2012 | Connors Research publishes a paper introducing ConnorsRSI, with default settings of 3, 2 and 100 | Three measures of stretch averaged into one line: price momentum, streak length and percentile rank |
| 2001 to 2012 | The research firm’s own bucket study covers about 6,000 liquid U.S. stocks from January 2001 to July 2012 | A published test in which the lowest readings were followed by higher 5-day returns than the highest readings |
| Today | The study is built into major charting platforms, usually with the 3, 2, 100 defaults | The version most users meet, often applied well beyond the stocks first tested |
Connors RSI was built by Larry Connors and Connors Research as a successor to the short-term RSI(2) mean-reversion ideas Connors had already published with Cesar Alvarez in Short-Term Trading Strategies That Work (around 2008). That earlier work argued that a very short RSI lookback (2 or 3 periods instead of the textbook 14) identifies genuinely extreme, statistically unusual short-term stretches that tend to snap back, more often than the slower 14-period version ever gets stretched enough to flag.
Connors RSI’s contribution was combining three different ways of measuring that short-term stretch into one composite, rather than relying on a single short RSI reading alone, the idea being that an extreme in all three measures at once is a more reliable signal than an extreme in any one of them in isolation.
All three component readings are themselves scaled 0–100, so the final composite is a straightforward average.
Because it averages three fast-moving, short-lookback components, Connors RSI is considerably more volatile and prone to rapid whipsaws between extremes than a standard 14-period RSI, regularly touching both single digits and the 90s within the same week on an actively moving instrument.
The conventional reading is a mean-reversion one: a drop below 10 flags a short-term oversold extreme worth watching for a bounce; a rise above 90 flags a short-term overbought extreme worth watching for a pullback. Unlike a trend indicator, Connors RSI says nothing at all about the prevailing larger trend: it can and does read deeply oversold repeatedly through a sustained downtrend, with each reading simply confirming the next leg down is itself short-term stretched.
Because the streak-RSI component resets whenever a down streak turns into an up streak (or vice versa) with a single unchanged close, one unusual flat day can shift the composite’s reading meaningfully even when price itself barely moved.
This chapter’s own 30-bar illustrative series shows Connors RSI’s characteristic whipsaw clearly: it first drops below 10 on bar 6, pops back above 70 just two bars later on bar 8 as a sharp one-bar bounce resets the streak and the percentile-rank terms, then drops below 10 again on bar 12, one bar before the series’ actual capitulation low.
Both sub-10 readings land inside the decline rather than at its exact bottom: a market that is falling hard typically stays short-term oversold on a composite like this for several bars running, not just the one bar at the true low, which is exactly why Connors’ own original research paired this kind of signal with a defined, mechanical exit rather than treating a single oversold reading as a standalone buy-and-hold call.
Connors RSI is used almost exclusively as a short-term mean-reversion timing tool on liquid instruments, typically on daily bars, and typically paired with a defined, mechanical exit (a fixed holding period or a reading back above some mid-range level) rather than a discretionary one.
Because its three components can each be stretched for different reasons, some practitioners watch for agreement between them: a sub-10 composite reading driven by all three components being extreme is read as more significant than the same composite reading driven mostly by just one of the three.
3,351 simulated entries across 1,200 independent 260-bar geometric Brownian motion price paths (≈8% annualized drift, 22% annualized volatility, roughly equity-index-like), using this chapter's exact textbook entry rule and a fixed 10-bar exit.
Connors RSI is a free built-in study on TradingView and most other modern charting platforms, usually found by searching “Connors RSI” or “CRSI” in the indicator list.
Pick a liquid, actively traded instrument with a well-documented sharp move and walk Connors RSI across it bar by bar, the way this chapter’s illustrative chart does.
Connors RSI is an average of three numbers, each of which is itself a small calculation. This guide fixes the vocabulary, builds all three components from a closing-price series with a short lookback, shows how a single change in the last close moves the composite, and then tests how much one component can carry the average. All figures are hypothetical.
| Term | Plain meaning | How it is used or read |
|---|---|---|
| RSI(Close, 3) | Wilder RSI of the close with n = 3; seed average gain and loss are plain means of the first 3 changes, then avg = (previous × 2 + new) ÷ 3 | Fast oscillator; RSI = 100 − 100 ÷ (1 + average gain ÷ average loss) |
| Streak | Consecutive closes up count as +1, +2, +3 and so on; consecutive closes down as −1, −2, −3; an unchanged close resets to 0 | Turns a run of days into a number |
| RSI(Streak, 2) | Wilder RSI with n = 2 applied to the streak series | Low when a run of down closes is long and recent |
| 1-day ROC | (Close ÷ previous close − 1) × 100 | The size of today’s move |
| PercentRank | Share of the previous L returns that are lower than today’s, times 100 | L = 100 in the standard form; a low value means an unusually weak day |
| Connors RSI | (RSI(Close,3) + RSI(Streak,2) + PercentRank) ÷ 3 | A 0 to 100 composite; below 10 and above 90 are the usual stretch levels |
| Component weight | Each part counts one third | One point in a component moves the composite by 0.33 |
| Granularity | The size of one PercentRank step, 100 ÷ L | 1 point at L = 100; 16.7 points at L = 6 as used below |
| Warm-up | Bars needed before the first full value | Enough to seed the RSIs and to fill the percent-rank lookback |
| Exit rule | A defined way out, such as a fixed holding period or a mid-range reading | Part of the method, since a bare stretch reading is only half of it |
Mechanism one: all three components from closes. The series is eleven closes, 100, 101, 102, 101, 100, 99, 98, 98, 97, 95, 94. The percent-rank lookback is shortened to L = 6 so the count can be done by eye. The first full composite appears on day 7, after the RSIs are seeded and six prior returns exist.
| Day | Close | Streak | RSI(3) | RSI(2) of streak | 1-day ROC | PercentRank (L = 6) | Connors RSI |
|---|---|---|---|---|---|---|---|
| Day 7 | 98 | 0 | 19.8 | 79.3 | 0.00% | 66.7 | 55.2 |
| Day 8 | 97 | −1 | 11.3 | 57.0 | −1.02% | 0.0 | 22.8 |
| Day 9 | 95 | −2 | 4.9 | 36.5 | −2.06% | 0.0 | 13.8 |
| Day 10 | 94 | −3 | 3.5 | 21.2 | −1.05% | 16.7 | 13.8 |
Read across the rows. On day 10 all three parts are low together: RSI(3) is 3.5, the streak RSI is 21.2, and the day’s return of −1.05% is lower than only one of the last six returns, giving a rank of 16.7. The composite is 13.8. Sensitivity: if the last close had been 96 instead of 94, the streak would be +1, RSI(3) would be 33.1, the streak RSI 79.9, the rank 100.0 and the composite 71.0. A two-point change in the final close moves the composite by 57.2 points.
A note on the Streamline View. Its nine closes (100, 101, 102, 103, 102, 101, 100, 100, 101) are used there to show the streak counts +1, +2, +3, −1, −2, −3, 0, +1. Run through the same Wilder method, those nine closes alone give an RSI(3) of 59.8 and a streak RSI(2) of 80.4 on the last day, so the component readings of 12, 6 and 3 in that example are stand-alone values, not outputs of that short series. The composite arithmetic there, (12 + 6 + 3) ÷ 3 = 7, is unaffected.
Mechanism two: how much one component can carry. Because each part has weight one third, many different mixes give the same composite. A composite of 7 is reached by (12, 6, 3), but also by (21, 0, 0) or by (0, 0, 21). The second outcome in the Streamline View, (3, 38, 6), gives 15.7 because the streak term alone contributes 12.7 of it.
| Components (RSI3, streak RSI, rank) | Composite | Spread max minus min | Zone |
|---|---|---|---|
| (12, 6, 3) | 7.0 | 9 | below 10 |
| (21, 0, 0) | 7.0 | 21 | below 10 |
| (3, 38, 6) | 15.7 | 35 | between |
| (5, 5, 5) | 5.0 | 0 | below 10 |
| (30, 30, 30) | 30.0 | 0 | between |
The spread column shows agreement. A composite of 7 with a spread of 21 is one extreme component and two near zero; a composite of 5.0 with a spread of 0 has all three in agreement. Some practitioners insist on agreement, others read the composite alone, and the choice should be stated.
| Situation | What goes wrong | What to check |
|---|---|---|
| Average loss equals zero | RS is infinite and the RSI formula divides by zero; the usual convention is 100 | Apply the convention consistently and mark the bar |
| Unchanged close | The streak resets to 0, which can lift the streak RSI abruptly | Check the streak on flat days |
| Ties in percent rank | Equal returns are not counted as lower | State the tie rule used |
| Short lookback | Rank jumps in large steps | Use L = 100 for real work and say so |
| Sustained downtrend | Repeated sub-10 readings while price keeps falling | Pair the signal with a trend check and a defined exit |
| Warm-up ignored | The first values reflect the seeds | Wait until the lookback is full |
In plain words: three fast readings are each worked out from closes and averaged, a small change in the last close can move the average a great deal, and the same composite can come from very different mixes. Education, not advice.
This chapter set out to teach Connors RSI, the average of three short-term stretch readings: a 3-period RSI of the close, a 2-period RSI of the up or down streak, and the percentile rank of the day’s return among the last 100. Readings below 10 are read as deeply oversold and above 90 as deeply overbought. The idea everything hangs on is that it is a mean-reversion gauge that needs a defined exit and a trend check of the reader’s own.
| Question | Short answer | Where it was taught |
|---|---|---|
| The three components read 12, 6 and 3. What is Connors RSI? | (12 + 6 + 3) ÷ 3 = 7, deep below 10. | Streamline View: Connors RSI |
| The components read 3, 38 and 6. What is the composite, and what drives it? | (3 + 38 + 6) ÷ 3 = 15.7, driven mostly by the streak term at 12.7. | Streamline View: Connors RSI |
| On day 10 the parts are 3.5, 21.2 and 16.7. What is the composite? | (3.5 + 21.2 + 16.7) ÷ 3 = 13.8. | Cypher Guide: Three Components from Closes and How the Average Moves |
| Why did the reading go below 10 twice, with a jump above 70 between? | A market falling hard stays short-term oversold for several bars, and a one-bar bounce resets the streak and rank terms. | A Real, Dated Example |
| Why does the percent rank move in steps of 16.7 in the worked series? | The lookback was shortened to 6, and 100 ÷ 6 = 16.7. With a lookback of 100 the steps are 1 point. | Cypher Guide: Three Components from Closes and How the Average Moves |