Bear Rhythm

Overview › Stock breadth

McClellan Oscillator today

The momentum of rising against falling stocks: a fast average minus a slow one. Updated after every US market close: the McClellan Oscillator and Summation Index, with its exact rule and its record since 2017.

NowNeutralsince Oct 2, 2026
Reading, Oct 16, 2026Oscillator at −3.
Live sinceOct 16, 2026readings after this day are the live record
Backtest fromDec 12, 20172,223 trading days

What it means now

McClellan Oscillator is neutral today. Oscillator at −3. It was also neutral a week ago (3.12; now -2.64). On days in this state since 2017, SPY returned +3.0% on average over the next three months, against +3.7% from any day. A description of the past, not a forecast.

The past year. Top: SPY, shaded where the rule was bearish (red) or bullish (green). Bottom: the indicator.
McClellan Oscillator, past yearMcClellan Oscillator, past year, Oct 16, 2025 to Oct 16, 2026. Top: SPY, with the 58 bearish days shaded red and the 37 bullish days shaded green. Bottom: McClellan Oscillator −2.64 at the end.SPY (log scale)Jan 2026Apr 2026Jul 2026−50.00.0050.0+20-20McClellan Oscillator

What is the McClellan Oscillator?

Created by Sherman and Marian McClellan in 1969, the oscillator compares a fast and a slow average of daily breadth. Above zero, more stocks have been rising lately than over the longer run; below zero, breadth is weakening.

How it is calculated

  1. Each day: (rising stocks minus falling stocks) divided by (rising plus falling), times 1,000.
  2. The oscillator is the 19-day exponential average of that number (weight 0.10) minus its 39-day exponential average (weight 0.05).
  3. Bullish above +20, bearish below -20, neutral between.

A standard setting, fixed before testing, not the best of the variants below. A state is decided from a day’s closing prices and published after that close.

How reliable has it been? Its record since Dec 12, 2017

Holding SPY, but T-bills while McClellan Oscillator was bearish, would have returned 4.3% a year with a worst fall of −28.8%, against 14.4% a year and −33.7% for SPY held throughout. Of its bearish signals with three months of history after them, 54 of 169 (32%) were followed by a fall of 5% or more in SPY within three months, against 34% of all 2,160 days (neighbouring days overlap, so days are not independent events). After its 163 bullish signals SPY returned +3.9% on average over three months, against +3.7% from any day. It turned bearish ahead of 5 of the 5 declines of 10% or more in this period.

The whole history. Shading as above.
McClellan Oscillator since 2017McClellan Oscillator since 2017, Dec 12, 2017 to Oct 16, 2026. Top: SPY, with the 609 bearish days shaded red and the 624 bullish days shaded green. Bottom: McClellan Oscillator −2.64 at the end.SPY (log scale)201820192020202120222023202420252026−1000.00100+20-20McClellan Oscillator
The full record and research: every state, decline, signal, variant and setting tested

SPY after each state

SPY after each state
FromDaysSPY, next month (avg)SPY, next 3 months (avg)
Bearish days609+1.7%+4.6%
Neutral days990+1.0%+3.0%
Bullish days624+1.2%+3.9%
All days2,223+1.3%+3.7%

Averages over every day in that state; the periods overlap, so treat them as a description, not a forecast.

Every decline of 10% or more

SPY declines of 10% or more
HighLowFallBearish by the highDays bearish on the way downA month after the low
Jan 26, 2018Feb 8, 2018−10.1%Yes80%Bullish
Sep 20, 2018Dec 24, 2018−19.3%Yes50%Bullish
Feb 19, 2020Mar 23, 2020−33.7%Yes88%Bullish
Jan 3, 2022Oct 12, 2022−24.5%Yes32%Bullish
Feb 19, 2025Apr 8, 2025−18.8%Yes57%Bullish

“Bearish by the high”: bearish at some point from a month before SPY’s high to a week after it.

Every signal (337), newest first
Every signal and what SPY did next
DateTurnedSPY 1 month later3 months6 monthsLowest close within 3 months
Sep 23, 2026Bearish––––
Sep 8, 2026Bearish+1.7%–––
Aug 28, 2026Bearish−0.4%–––
Aug 20, 2026Bearish+1.7%–––
Aug 4, 2026Bullish−0.8%–––
Jul 22, 2026Bearish+2.0%–––
Jul 20, 2026Bearish+3.4%+3.1%–−1.7%
Jun 26, 2026Bullish+1.6%+6.1%–+0.1%
Jun 12, 2026Bullish+2.0%+2.8%–−1.5%
Jun 3, 2026Bearish−0.1%+1.7%–−3.8%
May 12, 2026Bearish−0.1%+4.9%–−1.7%
Apr 1, 2026Bullish+10.0%+14.0%+17.2%+0.1%
Mar 27, 2026Bearish+12.2%+17.2%+21.3%−0.3%
Mar 5, 2026Bearish−3.0%+11.4%+14.1%−7.0%
Feb 26, 2026Bullish−7.8%+9.8%+12.5%−8.1%
Jan 22, 2026Bullish−1.0%+3.1%+7.8%−8.0%
Jan 15, 2026Bullish−1.4%+2.9%+7.8%−8.5%
Dec 30, 2025Bearish+0.7%−4.4%+9.0%−7.8%
Dec 9, 2025Bullish+1.9%−2.2%+8.6%−2.2%
Nov 25, 2025Bullish+2.6%+1.9%+12.7%−0.5%
Nov 17, 2025Bearish+0.9%+3.1%+12.0%−2.0%
Nov 6, 2025Bearish+2.0%+3.8%+10.9%−2.7%
Nov 4, 2025Bearish+1.4%+0.6%+9.0%−3.4%
Oct 30, 2025Bearish+0.1%+2.6%+6.2%−4.0%
Oct 24, 2025Bullish−1.3%+3.0%+5.7%−3.7%
Oct 21, 2025Bullish−1.3%+2.9%+6.1%−2.8%
Oct 9, 2025Bearish−0.0%+3.7%+2.8%−2.8%
Sep 24, 2025Bearish+1.6%+4.4%−1.9%−1.3%
Aug 22, 2025Bullish+3.1%+1.4%+7.1%−0.8%
Aug 13, 2025Bullish+1.9%+6.2%+6.2%−1.4%
Jul 29, 2025Bearish+1.8%+8.2%+10.1%−2.1%
Jul 23, 2025Bullish+0.2%+6.1%+9.3%−2.0%
Jul 15, 2025Bearish+3.7%+6.9%+12.1%−0.1%
Jul 1, 2025Bullish+2.3%+8.2%+11.9%+0.4%
Jun 17, 2025Bearish+5.3%+10.6%+14.3%−0.2%
Jun 13, 2025Bearish+4.9%+11.0%+14.9%−0.2%
Jun 9, 2025Bullish+4.7%+8.8%+14.7%−0.6%
May 30, 2025Bearish+5.1%+9.8%+16.6%+0.6%
May 28, 2025Bearish+4.9%+10.3%+15.5%+0.3%
May 22, 2025Bearish+4.4%+11.0%+12.6%−0.7%
Apr 22, 2025Bullish+10.5%+20.6%+28.0%+1.5%
Apr 17, 2025Bullish+13.0%+19.8%+26.9%−2.4%
Apr 3, 2025Bearish+5.0%+16.0%+25.4%−7.5%
Mar 28, 2025Bearish−0.2%+11.5%+20.1%−10.7%
Mar 24, 2025Bullish−6.7%+6.0%+16.2%−13.5%
Mar 19, 2025Bullish−6.9%+5.7%+17.5%−12.2%
Mar 17, 2025Bullish−4.9%+6.6%+17.1%−12.2%
Mar 3, 2025Bearish−3.6%+1.8%+10.3%−14.7%
Feb 21, 2025Bearish−4.0%−2.5%+8.2%−17.0%
Feb 5, 2025Bullish−4.7%−6.8%+5.3%−17.6%
Jan 15, 2025Bullish+2.9%−11.1%+6.5%−16.0%
Jan 10, 2025Bearish+4.3%−7.7%+7.8%−14.2%
Dec 27, 2024Bearish+1.7%−5.4%+4.9%−7.3%
Dec 12, 2024Bearish−1.6%−6.9%−0.5%−8.5%
Dec 10, 2024Bearish−3.2%−6.3%−0.3%−8.2%
Nov 22, 2024Bullish+1.3%−1.4%−0.3%−2.2%
Nov 14, 2024Bearish+2.3%+3.6%+0.6%−1.8%
Nov 6, 2024Bullish+2.8%+2.7%−0.7%−1.5%
Oct 31, 2024Bearish+6.2%+6.2%−1.1%+0.2%
Oct 23, 2024Bearish+2.7%+4.0%−4.1%−1.6%
Oct 16, 2024Bullish+1.9%+3.0%−11.2%−2.3%
Oct 10, 2024Bearish+3.8%+1.2%−5.8%−1.3%
Oct 7, 2024Bearish+1.6%+4.0%−2.8%+0.1%
Oct 3, 2024Bearish+0.6%+4.6%−10.6%−0.0%
Sep 13, 2024Bullish+4.3%+7.9%+0.5%−0.1%
Sep 5, 2024Bearish+4.6%+10.9%+2.7%−1.7%
Aug 30, 2024Bullish+1.2%+7.2%+4.1%−4.1%
Aug 23, 2024Bullish+1.9%+5.9%+6.4%−3.9%
Aug 21, 2024Bullish+1.7%+5.6%+7.2%−3.6%
Aug 15, 2024Bullish+1.8%+8.3%+11.3%−2.3%
Aug 2, 2024Bearish+3.6%+7.0%+13.6%−2.9%
Jul 30, 2024Bullish+3.0%+7.5%+12.3%−4.5%
Jul 26, 2024Bullish+3.0%+6.7%+11.7%−5.0%
Jul 22, 2024Bullish+0.7%+5.7%+10.0%−6.7%
Jul 10, 2024Bullish−5.5%+2.4%+5.7%−7.8%
Jun 25, 2024Bearish−1.2%+5.2%+9.9%−5.0%
Jun 13, 2024Bearish+4.5%+3.9%+12.1%−4.3%
Jun 6, 2024Bearish+4.3%+1.4%+14.2%−2.9%
Jun 4, 2024Bearish+5.3%+4.6%+15.0%−1.8%
May 28, 2024Bearish+3.5%+6.3%+13.5%−2.0%
May 23, 2024Bearish+3.9%+7.2%+13.6%−1.3%
May 2, 2024Bullish+4.5%+5.9%+13.3%+1.2%
Apr 29, 2024Bullish+3.1%+6.6%+14.6%−1.9%
Apr 10, 2024Bearish+1.2%+8.6%+13.0%−3.7%
Apr 4, 2024Bearish−0.3%+8.5%+11.4%−3.5%
Apr 2, 2024Bearish−3.6%+6.2%+10.3%−4.6%
Mar 27, 2024Bullish−2.8%+4.8%+10.1%−5.4%
Mar 20, 2024Bullish−4.9%+5.1%+10.1%−4.9%
Mar 18, 2024Bearish−2.4%+6.7%+10.1%−3.5%
Mar 14, 2024Bearish−1.7%+5.7%+9.8%−3.5%
Feb 15, 2024Bullish+2.5%+5.6%+11.1%−1.1%
Feb 12, 2024Bullish+3.0%+4.3%+8.9%−1.4%
Feb 2, 2024Bearish+2.6%+3.8%+5.3%−0.4%
Jan 31, 2024Bearish+6.2%+3.9%+13.2%+1.3%
Jan 29, 2024Bullish+3.1%+4.2%+11.0%−1.7%
Jan 24, 2024Bearish+4.6%+4.5%+11.6%−0.5%
Jan 9, 2024Bearish+5.2%+8.8%+18.2%−0.3%
Jan 3, 2024Bearish+5.5%+9.8%+19.1%−0.3%
Dec 21, 2023Bullish+2.7%+10.3%+16.0%−1.1%
Nov 10, 2023Bullish+5.3%+12.6%+19.6%−0.1%
Nov 2, 2023Bullish+6.0%+14.8%+20.8%+0.7%
Oct 19, 2023Bearish+5.7%+13.8%+18.0%−3.7%
Oct 16, 2023Bullish+2.9%+8.8%+15.6%−5.8%
Oct 10, 2023Bullish+0.6%+10.1%+20.1%−5.5%
Oct 2, 2023Bearish−2.1%+11.1%+22.4%−3.9%
Sep 19, 2023Bearish−2.8%+7.0%+18.4%−7.2%
Sep 13, 2023Bearish−2.5%+4.3%+16.2%−7.7%
Sep 7, 2023Bearish−3.1%+2.6%+15.9%−7.4%
Sep 1, 2023Bullish−6.2%+2.1%+13.3%−8.7%
Aug 29, 2023Bullish−4.3%+1.6%+14.0%−8.2%
Aug 8, 2023Bearish−0.9%−2.6%+11.8%−8.2%
Aug 2, 2023Bearish+0.0%−6.8%+9.5%−8.4%
Jul 31, 2023Bullish−1.9%−10.0%+8.1%−10.0%
Jul 26, 2023Bullish−4.1%−6.7%+8.0%−7.4%
Jul 11, 2023Bullish+0.7%−1.9%+7.9%−4.4%
Jul 6, 2023Bearish+1.6%−3.1%+7.1%−3.8%
Jun 29, 2023Bullish+4.5%−1.8%+9.6%−2.4%
Jun 22, 2023Bearish+4.1%−0.8%+8.1%−1.2%
Jun 6, 2023Bullish+2.8%+4.6%+7.5%−0.3%
Jun 2, 2023Bullish+3.9%+5.8%+8.1%−0.3%
May 31, 2023Bearish+6.5%+8.3%+9.6%+1.0%
May 25, 2023Bearish+5.6%+6.5%+10.6%+0.8%
May 22, 2023Bullish+4.6%+5.0%+9.3%−1.8%
May 18, 2023Bullish+4.7%+4.5%+8.2%−1.9%
May 16, 2023Bearish+7.9%+7.6%+10.2%+0.2%
May 2, 2023Bearish+2.7%+10.0%+2.5%−1.4%
Apr 25, 2023Bearish+1.2%+12.6%+5.1%−0.4%
Apr 17, 2023Bullish−0.9%+10.1%+6.1%−2.3%
Apr 10, 2023Bullish+0.3%+8.4%+6.3%−1.3%
Mar 29, 2023Bullish+3.6%+9.6%+7.6%+0.6%
Mar 22, 2023Bearish+5.1%+11.7%+10.8%+0.3%
Mar 6, 2023Bearish+1.4%+6.0%+11.9%−4.7%
Feb 16, 2023Bearish−3.2%+3.1%+7.7%−5.6%
Feb 9, 2023Bearish−5.3%+1.6%+10.3%−5.3%
Jan 31, 2023Bullish−2.1%+1.5%+11.6%−5.2%
Jan 20, 2023Bullish+0.8%+4.5%+15.6%−2.7%
Jan 6, 2023Bullish+7.0%+6.0%+14.9%−0.7%
Jan 4, 2023Bullish+7.5%+6.6%+15.1%−1.1%
Dec 28, 2022Bearish+6.4%+7.6%+18.6%+0.7%
Dec 22, 2022Bearish+5.2%+4.5%+15.4%−1.1%
Dec 15, 2022Bearish+0.9%+1.9%+13.6%−2.9%
Dec 9, 2022Bearish+1.0%+0.1%+12.0%−3.8%
Dec 6, 2022Bearish−1.0%−0.1%+9.9%−3.9%
Nov 30, 2022Bullish−5.8%−0.4%+5.9%−7.2%
Nov 22, 2022Bullish−4.4%−0.4%+4.6%−5.4%
Nov 10, 2022Bullish+1.1%+5.1%+5.5%−4.1%
Oct 21, 2022Bullish+5.4%+7.4%+9.4%−0.9%
Oct 17, 2022Bullish+8.6%+7.2%+13.9%−0.4%
Oct 7, 2022Bearish+4.7%+7.4%+13.9%−1.7%
Oct 4, 2022Bullish−0.8%+2.0%+8.8%−5.7%
Sep 20, 2022Bearish−4.1%−0.6%+3.0%−7.2%
Sep 15, 2022Bearish−7.9%+2.8%+1.2%−8.2%
Sep 12, 2022Bullish−12.6%−3.9%−3.8%−12.9%
Aug 26, 2022Bearish−10.0%−0.3%−1.4%−11.7%
Aug 22, 2022Bearish−8.3%−3.8%−2.7%−13.4%
Aug 18, 2022Bullish−8.8%−7.2%−4.0%−16.3%
Jul 19, 2022Bullish+8.8%−6.1%+0.7%−8.7%
Jul 14, 2022Bearish+13.0%−5.3%+6.0%−5.3%
Jul 7, 2022Bullish+6.3%−2.7%−1.6%−7.8%
Jun 24, 2022Bullish+0.2%−5.3%−1.5%−5.3%
Jun 10, 2022Bearish−2.4%+5.9%+1.7%−5.9%
May 25, 2022Bullish−1.8%+6.0%+2.1%−7.7%
May 17, 2022Bullish−10.2%+4.9%−1.6%−10.2%
May 6, 2022Bearish+1.1%+0.8%−7.7%−10.9%
May 4, 2022Bullish−4.3%−3.1%−11.9%−14.5%
Apr 22, 2022Bearish−6.8%−6.8%−11.4%−13.9%
Apr 20, 2022Bullish−12.4%−9.9%−16.4%−17.6%
Apr 7, 2022Bearish−11.3%−14.0%−18.5%−18.3%
Apr 1, 2022Bullish−8.1%−15.3%−18.4%−19.0%
Mar 16, 2022Bullish+0.8%−12.7%−9.8%−13.9%
Mar 7, 2022Bearish+7.9%−1.5%−6.1%−6.9%
Mar 2, 2022Bullish+3.5%−6.2%−9.1%−10.8%
Feb 22, 2022Bearish+3.6%−7.3%−3.3%−9.1%
Feb 15, 2022Bullish−1.1%−8.2%−3.7%−11.8%
Feb 8, 2022Bullish−5.6%−11.2%−6.2%−11.4%
Feb 1, 2022Bullish−3.8%−7.8%−7.8%−8.8%
Jan 18, 2022Bearish−2.2%−2.2%−12.9%−8.8%
Dec 23, 2021Bullish−7.7%−3.5%−16.8%−11.5%
Dec 13, 2021Bearish+1.3%−8.3%−19.3%−10.5%
Nov 17, 2021Bearish−1.4%−6.3%−16.3%−7.6%
Nov 1, 2021Bullish−2.1%−1.2%−8.9%−5.9%
Oct 14, 2021Bullish+5.6%+5.4%−0.4%+0.8%
Oct 7, 2021Bullish+6.8%+7.1%+3.0%−1.1%
Sep 27, 2021Bullish+3.0%+8.2%+3.7%−3.2%
Sep 23, 2021Bullish+2.2%+5.9%+2.3%−3.3%
Sep 20, 2021Bearish+3.8%+6.3%+3.1%−1.2%
Sep 14, 2021Bearish−1.7%+5.4%−3.4%−3.2%
Sep 10, 2021Bearish−2.1%+5.0%−5.1%−3.5%
Aug 27, 2021Bullish−3.4%+2.3%−2.4%−4.5%
Aug 24, 2021Bullish−0.7%+4.7%−5.2%−4.0%
Aug 17, 2021Bearish+0.7%+5.6%+1.1%−3.2%
Aug 11, 2021Bullish+0.4%+5.7%+3.8%−3.1%
Jul 13, 2021Bearish+1.9%+0.1%+7.6%−2.4%
Jul 6, 2021Bearish+1.4%−0.7%+11.1%−1.8%
Jun 17, 2021Bearish+1.0%+6.3%+12.3%−1.3%
Jun 11, 2021Bullish+3.0%+5.3%+10.6%−1.9%
Jun 4, 2021Bullish+2.8%+7.6%+8.9%−1.5%
May 27, 2021Bullish+2.3%+6.8%+12.7%−0.7%
May 19, 2021Bearish+1.3%+7.2%+15.0%+1.0%
May 11, 2021Bearish+2.3%+7.2%+14.0%−2.1%
Apr 26, 2021Bullish+0.2%+6.0%+9.2%−2.9%
Apr 20, 2021Bearish−0.3%+4.9%+9.2%−1.6%
Apr 5, 2021Bullish+2.3%+7.1%+7.6%−0.2%
Mar 29, 2021Bearish+5.5%+8.4%+12.6%−0.3%
Mar 22, 2021Bearish+6.0%+7.6%+11.3%−1.3%
Mar 18, 2021Bearish+6.4%+8.1%+15.0%−0.7%
Mar 11, 2021Bullish+4.9%+8.0%+14.8%−1.2%
Mar 2, 2021Bearish+2.9%+8.9%+17.8%−2.5%
Feb 25, 2021Bearish+3.9%+10.0%+18.2%−1.5%
Feb 23, 2021Bearish+0.3%+8.5%+16.2%−2.8%
Feb 18, 2021Bearish+0.0%+5.5%+13.1%−3.6%
Feb 4, 2021Bullish−1.2%+8.9%+15.1%−2.5%
Jan 26, 2021Bearish−0.4%+9.1%+15.1%−3.6%
Jan 14, 2021Bullish+3.7%+10.6%+14.7%−2.2%
Jan 12, 2021Bullish+3.2%+9.0%+15.9%−2.3%
Jan 7, 2021Bullish+3.0%+8.9%+15.6%−2.4%
Jan 4, 2021Bearish+3.5%+10.5%+18.2%+0.3%
Dec 29, 2020Bearish−0.4%+7.0%+16.0%−0.7%
Dec 3, 2020Bullish+1.7%+4.5%+16.0%−0.6%
Nov 23, 2020Bullish+3.3%+7.4%+18.1%+1.3%
Nov 19, 2020Bullish+3.3%+8.8%+18.0%−0.7%
Nov 13, 2020Bullish+3.2%+10.0%+15.9%−0.8%
Nov 9, 2020Bullish+3.5%+10.5%+15.2%−0.4%
Nov 5, 2020Bullish+5.4%+12.0%+20.2%−0.0%
Oct 26, 2020Bearish+7.0%+10.8%+23.9%−3.8%
Oct 1, 2020Bullish−3.1%+11.4%+21.5%−3.1%
Sep 21, 2020Bearish+5.0%+13.4%+20.0%−1.3%
Sep 3, 2020Bearish−1.2%+6.6%+11.4%−6.2%
Aug 31, 2020Bearish−3.7%+4.1%+10.1%−7.3%
Aug 19, 2020Bearish−1.6%+7.4%+16.6%−3.9%
Aug 7, 2020Bullish−0.4%+5.1%+17.7%−3.2%
Jul 31, 2020Bearish+7.0%+1.5%+16.2%−0.8%
Jul 28, 2020Bearish+8.2%+6.1%+17.5%+0.9%
Jul 24, 2020Bearish+6.9%+7.8%+20.8%+0.1%
Jul 15, 2020Bullish+4.7%+9.2%+19.0%−0.3%
Jul 13, 2020Bearish+5.7%+10.6%+21.3%+1.3%
Jul 9, 2020Bearish+6.4%+8.8%+21.6%+0.1%
Jul 7, 2020Bearish+5.8%+8.7%+19.3%+0.2%
Jun 24, 2020Bearish+5.5%+6.5%+21.8%−1.3%
Jun 16, 2020Bullish+3.0%+9.2%+17.5%−3.7%
Jun 11, 2020Bearish+5.2%+11.6%+23.1%+0.3%
May 20, 2020Bullish+4.4%+14.1%+22.5%−0.7%
May 18, 2020Bullish+5.6%+15.1%+22.4%−1.0%
May 13, 2020Bearish+8.0%+20.4%+26.8%+1.2%
May 7, 2020Bullish+12.3%+16.7%+20.4%−2.1%
Apr 22, 2020Bullish+5.7%+17.6%+24.1%−0.0%
Apr 6, 2020Bullish+7.3%+19.0%+29.4%+0.1%
Apr 2, 2020Bullish+12.6%+24.5%+35.0%−1.4%
Mar 25, 2020Bullish+14.7%+23.8%+31.8%−0.3%
Feb 24, 2020Bearish−24.1%−7.8%+6.4%−30.4%
Feb 12, 2020Bullish−20.2%−16.0%+1.1%−33.5%
Feb 7, 2020Bearish−13.2%−11.4%+1.8%−32.5%
Jan 24, 2020Bearish−4.9%−13.4%−1.4%−31.8%
Jan 16, 2020Bullish+1.8%−12.8%−1.7%−32.2%
Jan 10, 2020Bearish+2.9%−14.8%−2.3%−31.1%
Jan 7, 2020Bearish+3.5%−17.3%−1.0%−30.5%
Dec 16, 2019Bullish+4.1%−24.5%−1.4%−24.6%
Dec 12, 2019Bullish+3.8%−24.0%−2.1%−24.0%
Dec 2, 2019Bearish+4.8%+0.9%+1.3%−4.5%
Nov 27, 2019Bullish+2.3%−1.5%−2.1%−5.6%
Nov 21, 2019Bearish+4.0%+1.3%−2.5%−0.2%
Nov 1, 2019Bullish+1.1%+8.0%−5.5%+0.3%
Oct 15, 2019Bullish+3.4%+10.3%−5.6%−0.3%
Sep 26, 2019Bearish+1.5%+9.3%−13.7%−3.0%
Sep 24, 2019Bearish+1.4%+9.1%−15.7%−2.6%
Sep 4, 2019Bullish−0.7%+5.8%+3.9%−1.6%
Aug 29, 2019Bullish+1.9%+8.3%+6.7%−1.1%
Aug 27, 2019Bearish+4.0%+9.7%+4.7%+0.7%
Aug 23, 2019Bearish+4.4%+9.4%+10.8%+0.7%
Aug 21, 2019Bullish+2.5%+7.2%+15.1%−2.6%
Aug 19, 2019Bullish+3.0%+7.2%+16.8%−2.6%
Aug 9, 2019Bearish+2.2%+6.2%+15.9%−2.6%
Aug 1, 2019Bearish−0.8%+3.6%+10.2%−3.7%
Jul 19, 2019Bearish−1.6%+1.2%+12.8%−4.5%
Jun 28, 2019Bullish+2.6%+1.3%+11.2%−3.1%
Jun 18, 2019Bullish+2.7%+3.4%+10.3%−2.5%
Jun 13, 2019Bullish+4.4%+4.6%+9.6%−1.5%
Jun 10, 2019Bullish+3.8%+3.7%+10.0%−1.3%
May 22, 2019Bearish+3.4%+2.9%+10.2%−3.9%
May 17, 2019Bearish+2.3%+1.5%+9.3%−3.9%
May 7, 2019Bearish−1.1%+0.4%+7.8%−4.6%
May 1, 2019Bearish−5.7%+2.4%+4.9%−5.9%
Apr 22, 2019Bearish−1.3%+3.1%+3.6%−5.4%
Apr 12, 2019Bullish−2.3%+4.2%+3.1%−5.4%
Apr 3, 2019Bullish+2.7%+4.8%+1.5%−4.1%
Apr 1, 2019Bullish+2.1%+3.9%+4.8%−3.9%
Mar 27, 2019Bearish+4.9%+4.4%+7.4%−1.8%
Mar 22, 2019Bearish+4.9%+5.8%+7.8%−1.7%
Mar 20, 2019Bearish+3.0%+4.1%+7.5%−2.5%
Mar 14, 2019Bearish+3.7%+3.4%+8.2%−1.9%
Mar 5, 2019Bearish+3.1%+1.0%+5.2%−1.6%
Feb 11, 2019Bullish+4.0%+4.2%+7.5%+1.3%
Jan 4, 2019Bullish+8.2%+14.8%+18.7%+0.8%
Jan 2, 2019Bullish+7.9%+15.0%+20.5%−2.4%
Dec 13, 2018Bearish−1.3%+7.5%+10.2%−11.2%
Dec 7, 2018Bearish−1.5%+6.7%+10.7%−10.6%
Nov 28, 2018Bullish−8.4%+2.4%+1.0%−14.1%
Nov 26, 2018Bullish−6.7%+4.8%+5.4%−11.9%
Nov 20, 2018Bearish−8.3%+6.5%+8.2%−10.7%
Nov 16, 2018Bullish−8.2%+2.0%+5.4%−13.9%
Nov 1, 2018Bullish+2.1%+0.4%+6.4%−13.8%
Oct 18, 2018Bearish−1.0%−4.3%+7.1%−14.7%
Oct 1, 2018Bearish−8.2%−13.7%−0.8%−19.2%
Sep 26, 2018Bearish−6.8%−13.9%−1.5%−18.7%
Sep 17, 2018Bearish−2.7%−11.3%−1.2%−11.3%
Sep 6, 2018Bearish+0.3%−5.9%−2.4%−8.2%
Aug 29, 2018Bullish+0.2%−5.4%−3.1%−9.3%
Aug 24, 2018Bullish+1.6%−8.0%−1.9%−8.0%
Aug 20, 2018Bullish+1.9%−3.7%−1.9%−7.2%
Aug 15, 2018Bearish+3.2%−3.0%−0.5%−5.9%
Aug 13, 2018Bearish+2.5%−1.1%−1.5%−6.0%
Aug 1, 2018Bearish+3.4%−4.2%−2.8%−5.6%
Jul 27, 2018Bearish+3.0%−3.6%−5.4%−5.3%
Jul 24, 2018Bearish+1.6%−1.9%−5.4%−2.9%
Jul 6, 2018Bullish+3.3%+5.6%−6.7%+0.5%
Jun 25, 2018Bearish+4.8%+7.9%−12.6%−0.6%
Jun 21, 2018Bearish+2.2%+7.1%−9.5%−1.8%
Jun 4, 2018Bullish−1.0%+6.1%+1.2%−1.6%
May 16, 2018Bullish+2.3%+4.0%+0.8%−1.2%
May 7, 2018Bullish+3.9%+7.1%+2.8%+0.0%
May 3, 2018Bearish+4.7%+8.0%+4.0%+1.3%
Apr 30, 2018Bearish+3.1%+6.3%+1.2%−0.7%
Apr 16, 2018Bullish+1.4%+5.0%+4.2%−1.8%
Apr 12, 2018Bullish+2.6%+5.5%+5.6%−1.2%
Apr 10, 2018Bullish+1.6%+5.7%+9.5%−1.0%
Apr 5, 2018Bullish+0.1%+3.3%+10.8%−2.2%
Apr 2, 2018Bearish+2.9%+5.8%+13.9%+0.9%
Mar 22, 2018Bearish+1.1%+4.5%+11.8%−2.4%
Mar 5, 2018Bullish−2.8%+1.4%+7.6%−5.0%
Feb 28, 2018Bearish−2.7%+0.8%+7.6%−4.8%
Feb 23, 2018Bullish−3.1%−0.3%+4.9%−5.9%
Feb 15, 2018Bullish−0.5%+0.0%+4.9%−5.3%
Jan 30, 2018Bearish−5.0%−5.6%+0.7%−8.6%
Jan 19, 2018Bullish−3.2%−4.5%+0.6%−8.1%
Jan 17, 2018Bullish−2.4%−2.9%+1.4%−7.9%
Jan 11, 2018Bullish−3.9%−3.6%+2.1%−6.7%
Dec 14, 2017Bearish+5.8%+2.7%+5.5%−2.5%

Variants tested

The same measures for other common settings, so the result can be checked for luck: a rule that only works with one exact number is fragile. The highlighted row is the published rule.

Every variant tested
VariantSPY or T-bills, a yearWorst fallDays bearishBearish signalsFollowed by a 5% fallBullish signalsSPY 3 months after
Band of 03.9%−22.7%49%21035% (72 of 204)210+3.4%
Band of 20 (this site's rule)4.3%−28.8%27%17432% (54 of 169)163+3.9%
Band of 4011.2%−29.7%13%12331% (37 of 119)98+4.9%
Band of 6013.3%−28.2%5%5135% (18 of 51)40+5.3%
SPY held throughout14.4%−33.7%––34% (any day)–+3.7% (any day)

“SPY or T-bills”: SPY, switching to T-bills (BIL) at the next close after the rule turns bearish and back after it stops, 0.10% per switch, interest and dividends included. Hypothetical: no costs beyond that, no taxes.

Overlap with the other indicators

It agreed most often with Stocks above their 20-day average (66% of days in the same state). An indicator that almost always agrees with another adds little to the score.

Agreement with every indicator

Research: what worked and what did not

The same test run many ways: the published rule year by year, every variant year by year, and grids over its settings. Return numbers are SPY-or-T-bills against SPY over the same days, in points; green means better than holding SPY, red worse.

Year by year

The rule year by year
YearSPYSPY or T-billsDifference, pointsSPY’s worst fallDays bearishDays bullishBearish signals
2017*0.5%−0.3%−0.8 difference in 2017−0.5%8%0%1
2018−4.6%1.5%+6.1 difference in 2018−19.3%30%25%21
201931.2%18.2%−13.0 difference in 2019−6.6%23%37%19
202018.4%24.3%+5.9 difference in 2020−33.7%28%30%20
202128.7%5.7%−23.0 difference in 2021−5.1%26%23%21
2022−18.2%−23.1%−4.9 difference in 2022−24.5%29%35%18
202326.2%15.9%−10.3 difference in 2023−10.0%30%39%18
202424.9%−1.6%−26.5 difference in 2024−8.4%34%24%27
202517.7%−2.6%−20.3 difference in 2025−18.8%24%26%19
2026*12.8%8.3%−4.5 difference in 2026−8.9%25%11%10

* Part of a year: Dec 12 to the end of 2017, and 2026 to Oct 16.

Every variant, year by year

Does a setting win steadily, or in one lucky year? Each square is that year’s difference from SPY.

Every variant: its difference from SPY each year, in points
Variant2017*201820192020202120222023202420252026*A year, whole period
Band of 0−1.3 Band of 0, 2017+2.4 Band of 0, 2018−12.8 Band of 0, 2019−2.3 Band of 0, 2020−23.3 Band of 0, 2021−2.1 Band of 0, 2022−7.1 Band of 0, 2023−29.3 Band of 0, 2024−13.8 Band of 0, 2025−6.8 Band of 0, 2026−10.5 Band of 0, a year over the whole period
Band of 20 (this site's rule)−0.8 Band of 20 (this site's rule), 2017, the site's rule+6.1 Band of 20 (this site's rule), 2018, the site's rule−13.0 Band of 20 (this site's rule), 2019, the site's rule+5.9 Band of 20 (this site's rule), 2020, the site's rule−23.0 Band of 20 (this site's rule), 2021, the site's rule−4.9 Band of 20 (this site's rule), 2022, the site's rule−10.3 Band of 20 (this site's rule), 2023, the site's rule−26.5 Band of 20 (this site's rule), 2024, the site's rule−20.3 Band of 20 (this site's rule), 2025, the site's rule−4.5 Band of 20 (this site's rule), 2026, the site's rule−10.1 Band of 20 (this site's rule), a year over the whole period, the site's rule
Band of 40+0.0 Band of 40, 2017+9.6 Band of 40, 2018−9.8 Band of 40, 2019+19.6 Band of 40, 2020−16.3 Band of 40, 2021−5.2 Band of 40, 2022−8.4 Band of 40, 2023−14.3 Band of 40, 2024−2.0 Band of 40, 2025−1.9 Band of 40, 2026−3.2 Band of 40, a year over the whole period
Band of 60+0.0 Band of 60, 2017+0.7 Band of 60, 2018−8.1 Band of 60, 2019+34.6 Band of 60, 2020−7.5 Band of 60, 2021−5.3 Band of 60, 2022−4.8 Band of 60, 2023−5.0 Band of 60, 2024−7.8 Band of 60, 2025−1.5 Band of 60, 2026−1.1 Band of 60, a year over the whole period
Colour: points of return that year against SPY.8 or more3 to 80.5 to 3−0.5 to 0.5−3 to −0.5−10 to −3below −10 the site’s rule

The settings, tested on a grid

The neutral band and waiting: return against SPY

Each square: how much more (green) or less (red) a year SPY-or-T-bills returned than SPY. Rows: bullish above +band, bearish below -band. Columns: how many trading days in a row a new state must hold before it counts (the usual way to cut false signals; the site's rule does not wait).

The neutral band and waiting: return against SPY: points of return a year against SPY
Wait →
Band (+/-) ↓No wait2 days3 days5 days10 daysAverage
0−10.5 Band (+/-) 0, wait No wait−7.9 Band (+/-) 0, wait 2 days−7.4 Band (+/-) 0, wait 3 days−10.5 Band (+/-) 0, wait 5 days−8.7 Band (+/-) 0, wait 10 days−9.0
10−8.9 Band (+/-) 10, wait No wait−5.4 Band (+/-) 10, wait 2 days−8.2 Band (+/-) 10, wait 3 days−7.8 Band (+/-) 10, wait 5 days−4.6 Band (+/-) 10, wait 10 days−7.0
20−10.1 Band (+/-) 20, wait No wait, the site's rule−5.7 Band (+/-) 20, wait 2 days−6.4 Band (+/-) 20, wait 3 days−6.5 Band (+/-) 20, wait 5 days−2.7 Band (+/-) 20, wait 10 days−6.3
30−6.2 Band (+/-) 30, wait No wait−4.2 Band (+/-) 30, wait 2 days−4.7 Band (+/-) 30, wait 3 days−3.7 Band (+/-) 30, wait 5 days+0.3 Band (+/-) 30, wait 10 days−3.7
40−3.2 Band (+/-) 40, wait No wait−3.2 Band (+/-) 40, wait 2 days−2.9 Band (+/-) 40, wait 3 days−2.4 Band (+/-) 40, wait 5 days−2.4 Band (+/-) 40, wait 10 days−2.8
60−1.1 Band (+/-) 60, wait No wait+1.1 Band (+/-) 60, wait 2 days−1.1 Band (+/-) 60, wait 3 days−0.7 Band (+/-) 60, wait 5 days+0.0 Band (+/-) 60, wait 10 days−0.4
80+1.9 Band (+/-) 80, wait No wait+2.0 Band (+/-) 80, wait 2 days+0.9 Band (+/-) 80, wait 3 days+0.1 Band (+/-) 80, wait 5 days+0.0 Band (+/-) 80, wait 10 days+1.0
Average−5.5−3.3−4.2−4.5−2.6
Colour: points of return a year against SPY.3 or more1.5 to 30.3 to 1.5−0.3 to 0.3−1.5 to −0.3−3 to −1.5below −3 the site’s rule

The neutral band and waiting: how much smaller the worst fall was

Each square: SPY's worst fall minus the strategy's, in points (green: it fell less). Rows: bullish above +band, bearish below -band. Columns: how many trading days in a row a new state must hold before it counts (the usual way to cut false signals; the site's rule does not wait).

The neutral band and waiting: how much smaller the worst fall was: points smaller worst fall than SPY's
Wait →
Band (+/-) ↓No wait2 days3 days5 days10 daysAverage
0+11.0 Band (+/-) 0, wait No wait+12.2 Band (+/-) 0, wait 2 days+12.2 Band (+/-) 0, wait 3 days+10.3 Band (+/-) 0, wait 5 days+4.1 Band (+/-) 0, wait 10 days+10.0
10+14.6 Band (+/-) 10, wait No wait+15.2 Band (+/-) 10, wait 2 days+10.9 Band (+/-) 10, wait 3 days+11.1 Band (+/-) 10, wait 5 days+8.3 Band (+/-) 10, wait 10 days+12.0
20+4.9 Band (+/-) 20, wait No wait, the site's rule+12.4 Band (+/-) 20, wait 2 days+9.7 Band (+/-) 20, wait 3 days+13.0 Band (+/-) 20, wait 5 days+9.9 Band (+/-) 20, wait 10 days+10.0
30+5.0 Band (+/-) 30, wait No wait+8.8 Band (+/-) 30, wait 2 days+9.0 Band (+/-) 30, wait 3 days+8.6 Band (+/-) 30, wait 5 days+11.6 Band (+/-) 30, wait 10 days+8.6
40+4.0 Band (+/-) 40, wait No wait+1.5 Band (+/-) 40, wait 2 days+7.0 Band (+/-) 40, wait 3 days+6.9 Band (+/-) 40, wait 5 days+9.2 Band (+/-) 40, wait 10 days+5.7
60+5.5 Band (+/-) 60, wait No wait+4.9 Band (+/-) 60, wait 2 days−1.8 Band (+/-) 60, wait 3 days+3.9 Band (+/-) 60, wait 5 days+0.0 Band (+/-) 60, wait 10 days+2.5
80+8.3 Band (+/-) 80, wait No wait+8.6 Band (+/-) 80, wait 2 days+4.9 Band (+/-) 80, wait 3 days+0.0 Band (+/-) 80, wait 5 days+0.0 Band (+/-) 80, wait 10 days+4.4
Average+7.6+9.1+7.4+7.7+6.1
Colour: points smaller worst fall than SPY's.10 or more5 to 101 to 5−1 to 1−5 to −1−10 to −5below −10 the site’s rule

The neutral band and waiting: SPY after the bullish days

Each square: SPY's average return over the next 63 trading days from the bullish days, minus its average from every day, in points (green: bullish days were followed by better than usual returns). Rows: bullish above +band, bearish below -band. Columns: how many trading days in a row a new state must hold before it counts (the usual way to cut false signals; the site's rule does not wait).

The neutral band and waiting: SPY after the bullish days: points of SPY return over the next 63 days, bullish days against all days
Wait →
Band (+/-) ↓No wait2 days3 days5 days10 daysAverage
0−0.1 Band (+/-) 0, wait No wait−0.1 Band (+/-) 0, wait 2 days−0.2 Band (+/-) 0, wait 3 days−0.2 Band (+/-) 0, wait 5 days−0.7 Band (+/-) 0, wait 10 days−0.3
10−0.0 Band (+/-) 10, wait No wait+0.0 Band (+/-) 10, wait 2 days+0.1 Band (+/-) 10, wait 3 days+0.0 Band (+/-) 10, wait 5 days−0.7 Band (+/-) 10, wait 10 days−0.1
20+0.2 Band (+/-) 20, wait No wait, the site's rule+0.2 Band (+/-) 20, wait 2 days+0.4 Band (+/-) 20, wait 3 days+0.3 Band (+/-) 20, wait 5 days+1.0 Band (+/-) 20, wait 10 days+0.4
30+0.8 Band (+/-) 30, wait No wait+0.5 Band (+/-) 30, wait 2 days+0.3 Band (+/-) 30, wait 3 days+1.1 Band (+/-) 30, wait 5 days+0.7 Band (+/-) 30, wait 10 days+0.7
40+1.1 Band (+/-) 40, wait No wait+1.1 Band (+/-) 40, wait 2 days+1.1 Band (+/-) 40, wait 3 days+1.8 Band (+/-) 40, wait 5 days+1.1 Band (+/-) 40, wait 10 days+1.3
60+2.7 Band (+/-) 60, wait No wait+3.1 Band (+/-) 60, wait 2 days+3.7 Band (+/-) 60, wait 3 days+6.6 Band (+/-) 60, wait 5 days+4.0 Band (+/-) 60, wait 10 days+4.0
80+6.0 Band (+/-) 80, wait No wait+6.4 Band (+/-) 80, wait 2 days+7.9 Band (+/-) 80, wait 3 days+7.7 Band (+/-) 80, wait 5 days– Band (+/-) 80, wait 10 days+7.0
Average+1.5+1.6+1.9+2.5+0.9
Colour: points of SPY return over the next 63 days, bullish days against all days.3 or more1.5 to 30.5 to 1.5−0.5 to 0.5−1.5 to −0.5−3 to −1.5below −3 the site’s rule

The two halves of the history

The best settings found over the whole period, and how each did in 2017–2021 and in 2022–2026 on its own. A setting that only works in one half is fitted to the past.

The best settings, and how each did in each half
SettingWhole period, a year2017–20212022–2026Worst fall smaller byAhead in both halves
The site's rule, but band of 80, waiting 2 days+2.0 whole period+6.0 2017 to 2021−1.1 2022 to 2026+8.6 worst fallNo
The site's rule, but band of 80+1.9 whole period+4.4 2017 to 2021−0.1 2022 to 2026+8.3 worst fallNo
The site's rule, but band of 60, waiting 2 days+1.1 whole period+5.3 2017 to 2021−2.1 2022 to 2026+4.9 worst fallNo
The site's rule, but band of 80, waiting 3 days+0.9 whole period+3.7 2017 to 2021−1.4 2022 to 2026+4.9 worst fallNo
The site's rule, but band of 30, waiting 10 days+0.3 whole period−1.3 2017 to 2021+1.7 2022 to 2026+11.6 worst fallNo
The site's rule, but band of 80, waiting 5 days+0.1 whole period+0.0 2017 to 2021+0.1 2022 to 2026+0.0 worst fallNo
The site’s rule−10.1 whole period, the site's rule−5.6 2017 to 2021, the site's rule−13.5 2022 to 2026, the site's rule+4.9 worst fall, the site's ruleNo
Colour: points of return a year against SPY.3 or more1.5 to 30.3 to 1.5−0.3 to 0.3−1.5 to −0.3−3 to −1.5below −3 the site’s rule

Summary: the settings that helped the most

The site keeps the rule it published, so its live record stays honest. The heat maps show which ingredients mattered across many settings; any one best square is partly luck, because the history holds only a handful of real declines.

Live record

The rule went live after the close of Oct 16, 2026. Every reading since was made by the daily run after that day’s close and is kept exactly as made; the newest few are corrected only if late price data changes them.

No live readings yet: the first comes after the next trading day.

From the same author

Bull Rhythm: momentum strategies, tracked live every trading day

Eight model stock portfolios built on 12-1 momentum, one of the most researched return factors in finance, run by fixed rules and measured against the S&P 500.

  • Every holding and every trade published, with the reason in plain words
  • The live record since go-live, next to a backtest since 2017
  • The Bull Rhythm Weekly by email every Friday
See the strategies on Bull Rhythm →