Overview › Size and valuation
Small caps vs large caps today
Smaller companies against the 500 largest: an appetite for risk, or a retreat to size. Updated after every US market close: small-cap against large-cap stocks, with its exact rule and its record since 2017.
What it means now
Small against large companies is bearish today. Small against large 4.8% below its 50-day average. It was also bearish a week ago (-2.9%; now -4.8%). On days in this state since 2017, SPY returned +4.1% on average over the next three months, against +3.7% from any day. Bearish signals were followed by a fall of 5% or more within three months 35% of the time (25 of 71), against 34% of all days. A description of the past, not a forecast.
- SPY
- Bearish
- Bullish
- Small / large against its average, %
What does small caps against large caps show?
Small companies tend to lead when investors are confident and lag when they look for safety in the largest, best-financed ones.
How it is calculated
- Give equal amounts to every US company worth $300 million to $2 billion (over $5 a share), and equal amounts to the 500 largest; compare the two.
- Bullish when small companies' value against the large is above its 50-day average, bearish when it is more than 0.5% below it, 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 Nov 27, 2017
Holding SPY, but T-bills while Small against large companies was bearish, would have returned 12.6% a year with a worst fall of −16.7%, against 14.6% a year and −33.7% for SPY held throughout. Of its bearish signals with three months of history after them, 25 of 71 (35%) were followed by a fall of 5% or more in SPY within three months, against 34% of all 2,171 days (neighbouring days overlap, so days are not independent events). After its 64 bullish signals SPY returned +4.1% 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.
- SPY
- Bearish
- Bullish
- Small / large against its average, %
The full record and research: every state, decline, signal, variant and setting tested
SPY after each state
| From | Days | SPY, next month (avg) | SPY, next 3 months (avg) |
|---|---|---|---|
| Bearish days | 871 | +0.2% | +4.1% |
| Neutral days | 142 | +0.8% | +3.0% |
| Bullish days | 1,221 | +2.0% | +3.5% |
| All days | 2,234 | +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
| High | Low | Fall | Bearish by the high | Days bearish on the way down | A month after the low |
|---|---|---|---|---|---|
| Jan 26, 2018 | Feb 8, 2018 | −10.1% | Yes | 90% | Bullish |
| Sep 20, 2018 | Dec 24, 2018 | −19.3% | Yes | 98% | Neutral |
| Feb 19, 2020 | Mar 23, 2020 | −33.7% | Yes | 100% | Bearish |
| Jan 3, 2022 | Oct 12, 2022 | −24.5% | Yes | 28% | Bearish |
| Feb 19, 2025 | Apr 8, 2025 | −18.8% | Yes | 100% | Bullish |
“Bearish by the high”: bearish at some point from a month before SPY’s high to a week after it.
Every signal (136), newest first
| Date | Turned | SPY 1 month later | 3 months | 6 months | Lowest close within 3 months |
|---|---|---|---|---|---|
| Sep 23, 2026 | Bearish | – | – | – | – |
| Sep 22, 2026 | Bullish | – | – | – | – |
| Jun 4, 2026 | Bullish | −1.0% | +2.4% | – | −4.2% |
| Mar 23, 2026 | Bullish | +8.5% | +12.2% | +18.6% | −3.6% |
| Mar 13, 2026 | Bearish | +5.1% | +12.3% | +15.5% | −4.3% |
| Mar 9, 2026 | Bearish | −0.1% | +9.3% | +13.5% | −6.6% |
| Mar 4, 2026 | Bullish | −4.0% | +10.4% | +12.3% | −7.5% |
| Feb 11, 2026 | Bearish | −4.3% | +7.6% | +13.0% | −8.4% |
| Nov 21, 2025 | Bullish | +4.7% | +5.5% | +14.5% | +1.5% |
| Nov 17, 2025 | Bearish | +0.9% | +3.1% | +12.0% | −2.0% |
| Nov 11, 2025 | Bullish | +0.9% | +0.0% | +10.2% | −4.5% |
| Nov 5, 2025 | Bullish | +1.2% | +2.2% | +9.5% | −3.7% |
| Aug 4, 2025 | Bullish | +2.0% | +8.4% | +9.9% | −0.5% |
| May 8, 2025 | Bullish | +6.1% | +13.1% | +19.3% | −0.1% |
| Jan 16, 2025 | Bearish | +3.4% | −10.8% | +6.9% | −15.8% |
| Jan 10, 2025 | Bearish | +4.3% | −7.7% | +7.8% | −14.2% |
| Oct 15, 2024 | Bullish | +3.0% | +2.4% | −8.6% | −1.9% |
| Sep 20, 2024 | Bearish | +2.7% | +3.1% | +1.9% | −0.1% |
| Sep 19, 2024 | Bullish | +2.7% | +3.0% | +1.5% | −0.3% |
| Sep 16, 2024 | Bearish | +3.3% | +7.7% | +1.4% | −0.3% |
| Sep 3, 2024 | Bearish | +3.4% | +9.7% | +4.4% | −2.1% |
| Aug 23, 2024 | Bullish | +1.9% | +5.9% | +6.4% | −3.9% |
| Aug 22, 2024 | Bearish | +2.7% | +6.5% | +7.5% | −2.9% |
| Aug 19, 2024 | Bullish | +0.3% | +5.0% | +9.8% | −3.4% |
| Aug 9, 2024 | Bearish | +3.0% | +12.1% | +14.3% | +0.1% |
| Jul 11, 2024 | Bullish | −4.2% | +4.0% | +5.0% | −7.0% |
| Jul 1, 2024 | Bearish | +1.0% | +5.5% | +8.6% | −5.1% |
| Jun 14, 2024 | Bearish | +2.9% | +4.0% | +12.0% | −4.4% |
| Jun 12, 2024 | Bullish | +4.1% | +3.6% | +12.9% | −4.1% |
| May 1, 2024 | Bullish | +5.4% | +8.9% | +16.7% | +0.9% |
| Apr 1, 2024 | Bearish | −3.9% | +4.8% | +10.6% | −5.2% |
| Feb 20, 2024 | Bearish | +5.1% | +7.0% | +13.2% | −0.0% |
| Feb 15, 2024 | Bullish | +2.5% | +5.6% | +11.1% | −1.1% |
| Feb 13, 2024 | Bearish | +4.2% | +6.2% | +10.8% | +0.5% |
| Feb 12, 2024 | Bullish | +3.0% | +4.3% | +8.9% | −1.4% |
| Feb 2, 2024 | Bearish | +2.6% | +3.8% | +5.3% | −0.4% |
| Dec 1, 2023 | Bullish | +2.5% | +10.9% | +15.9% | −0.9% |
| Nov 29, 2023 | Bullish | +5.0% | +13.3% | +16.8% | +0.0% |
| Nov 24, 2023 | Bullish | +4.9% | +11.8% | +17.2% | −0.2% |
| Nov 21, 2023 | Bearish | +4.7% | +12.5% | +16.9% | +0.3% |
| Nov 17, 2023 | Bullish | +5.8% | +10.7% | +18.7% | +0.6% |
| Nov 16, 2023 | Bearish | +5.3% | +10.8% | +18.6% | +0.1% |
| Nov 14, 2023 | Bullish | +5.2% | +12.3% | +18.7% | +0.2% |
| Nov 6, 2023 | Bearish | +4.4% | +14.8% | +19.6% | −0.4% |
| Sep 5, 2023 | Bearish | −5.1% | +2.0% | +14.3% | −8.3% |
| Sep 1, 2023 | Bullish | −6.2% | +2.1% | +13.3% | −8.7% |
| Jul 26, 2023 | Bullish | −4.1% | −6.7% | +8.0% | −7.4% |
| May 22, 2023 | Bullish | +4.6% | +5.0% | +9.3% | −1.8% |
| Mar 10, 2023 | Bearish | +6.6% | +11.8% | +17.1% | −0.1% |
| Jan 10, 2023 | Bullish | +4.2% | +4.9% | +16.0% | −1.3% |
| Jan 6, 2023 | Bearish | +7.0% | +6.0% | +14.9% | −0.7% |
| Nov 15, 2022 | Bearish | −2.2% | +2.9% | +6.1% | −5.0% |
| Nov 10, 2022 | Bearish | +1.1% | +5.1% | +5.5% | −4.1% |
| Jun 1, 2022 | Bullish | −6.5% | −3.1% | +0.4% | −10.5% |
| May 26, 2022 | Bearish | −5.7% | +0.4% | +0.1% | −9.5% |
| May 24, 2022 | Bearish | −0.5% | +5.5% | +2.4% | −6.9% |
| May 18, 2022 | Bullish | −6.2% | +9.7% | +1.8% | −6.4% |
| May 4, 2022 | Bearish | −4.3% | −3.1% | −11.9% | −14.5% |
| May 2, 2022 | Bullish | −1.2% | −1.1% | −6.0% | −11.5% |
| Apr 27, 2022 | Bearish | −2.9% | −2.3% | −7.7% | −12.1% |
| Apr 7, 2022 | Bearish | −11.3% | −14.0% | −18.5% | −18.3% |
| Mar 31, 2022 | Bullish | −8.2% | −15.2% | −20.2% | −18.8% |
| Mar 29, 2022 | Bullish | −7.3% | −17.2% | −19.0% | −20.6% |
| Feb 15, 2022 | Bullish | −1.1% | −8.2% | −3.7% | −11.8% |
| Nov 18, 2021 | Bearish | −2.8% | −7.2% | −16.5% | −7.9% |
| Nov 1, 2021 | Bullish | −2.1% | −1.2% | −8.9% | −5.9% |
| Oct 15, 2021 | Bearish | +4.8% | +4.6% | −1.1% | +0.3% |
| Sep 17, 2021 | Bullish | +1.3% | +5.7% | +1.4% | −2.9% |
| Sep 14, 2021 | Bearish | −1.7% | +5.4% | −3.4% | −3.2% |
| Sep 8, 2021 | Bearish | −2.4% | +4.2% | −4.6% | −4.6% |
| Sep 7, 2021 | Bullish | −3.4% | +2.0% | −7.2% | −4.7% |
| Jul 2, 2021 | Bearish | +1.7% | +0.4% | +10.3% | −2.0% |
| Jun 29, 2021 | Bearish | +3.0% | +1.7% | +12.3% | −0.6% |
| Jun 7, 2021 | Bullish | +3.2% | +7.7% | +8.1% | −1.4% |
| Jun 3, 2021 | Bullish | +3.9% | +8.2% | +8.3% | −0.6% |
| Mar 26, 2021 | Bearish | +5.4% | +8.1% | +12.8% | −0.3% |
| Mar 24, 2021 | Bearish | +7.5% | +9.4% | +13.7% | +0.6% |
| Nov 9, 2020 | Bullish | +3.5% | +10.5% | +15.2% | −0.4% |
| Nov 6, 2020 | Bearish | +5.7% | +11.9% | +19.2% | +0.9% |
| Oct 15, 2020 | Bullish | +3.1% | +8.6% | +20.4% | −6.0% |
| Oct 5, 2020 | Bullish | −1.1% | +9.8% | +20.6% | −3.9% |
| Sep 22, 2020 | Bearish | +3.8% | +11.8% | +18.2% | −2.3% |
| Sep 4, 2020 | Bullish | −1.8% | +8.4% | +14.0% | −5.4% |
| Sep 2, 2020 | Bearish | −6.3% | +3.0% | +8.1% | −9.4% |
| Aug 28, 2020 | Bullish | −4.8% | +4.2% | +11.2% | −7.6% |
| Aug 5, 2020 | Bullish | +4.0% | +1.6% | +17.3% | −2.5% |
| Jul 24, 2020 | Bearish | +6.9% | +7.8% | +20.8% | +0.1% |
| Jul 23, 2020 | Bullish | +5.1% | +6.6% | +19.5% | −0.6% |
| Jul 22, 2020 | Bearish | +3.5% | +5.5% | +18.5% | −1.8% |
| Jul 21, 2020 | Bullish | +3.8% | +5.7% | +19.1% | −1.3% |
| Jul 20, 2020 | Bearish | +4.4% | +7.5% | +17.7% | −1.1% |
| Jul 15, 2020 | Bullish | +4.7% | +9.2% | +19.0% | −0.3% |
| Jul 8, 2020 | Bearish | +5.7% | +6.4% | +19.1% | −0.6% |
| Apr 27, 2020 | Bullish | +5.7% | +13.1% | +21.5% | −1.9% |
| Jan 28, 2020 | Bearish | −9.0% | −12.1% | −0.7% | −31.4% |
| Jan 24, 2020 | Bearish | −4.9% | −13.4% | −1.4% | −31.8% |
| Jan 14, 2020 | Bullish | +2.9% | −14.7% | −0.7% | −31.5% |
| Oct 21, 2019 | Bullish | +4.0% | +11.0% | −5.9% | −0.3% |
| Oct 9, 2019 | Bearish | +5.8% | +12.7% | −3.4% | +0.7% |
| Oct 4, 2019 | Bearish | +4.4% | +10.5% | −9.0% | −2.0% |
| Oct 1, 2019 | Bearish | +3.7% | +10.3% | −15.1% | −1.8% |
| Sep 27, 2019 | Bullish | +2.7% | +9.8% | −10.4% | −2.5% |
| Sep 10, 2019 | Bullish | −1.8% | +5.8% | −7.1% | −2.9% |
| Aug 6, 2019 | Bearish | +3.5% | +7.3% | +16.8% | −1.4% |
| Jul 31, 2019 | Bullish | −1.6% | +2.4% | +11.2% | −4.6% |
| May 22, 2019 | Bearish | +3.4% | +2.9% | +10.2% | −3.9% |
| May 17, 2019 | Bearish | +2.3% | +1.5% | +9.3% | −3.9% |
| May 3, 2019 | Bullish | −4.6% | +0.0% | +4.1% | −6.6% |
| Apr 30, 2019 | Bearish | −5.1% | +2.8% | +4.1% | −6.6% |
| Apr 11, 2019 | Bearish | −2.6% | +4.8% | +2.7% | −4.7% |
| Apr 8, 2019 | Bearish | −0.4% | +3.4% | +2.5% | −4.9% |
| Mar 13, 2019 | Bearish | +2.9% | +3.0% | +7.7% | −2.0% |
| Mar 11, 2019 | Bullish | +3.6% | +4.2% | +8.1% | −1.0% |
| Feb 11, 2019 | Bullish | +4.0% | +4.2% | +7.5% | +1.3% |
| Jan 29, 2019 | Bearish | +5.8% | +12.1% | +15.2% | +1.6% |
| Jan 22, 2019 | Bearish | +5.5% | +11.9% | +15.2% | +0.2% |
| Jan 7, 2019 | Bullish | +7.2% | +14.0% | +17.9% | +0.9% |
| Nov 26, 2018 | Bearish | −6.7% | +4.8% | +5.4% | −11.9% |
| Sep 13, 2018 | Bearish | −4.7% | −8.3% | −1.5% | −9.1% |
| Aug 30, 2018 | Bullish | +0.9% | −5.2% | −2.9% | −8.9% |
| Aug 21, 2018 | Bullish | +2.5% | −5.6% | −1.5% | −7.4% |
| Aug 15, 2018 | Bearish | +3.2% | −3.0% | −0.5% | −5.9% |
| Jul 25, 2018 | Bearish | +0.6% | −3.2% | −5.4% | −3.7% |
| Mar 1, 2018 | Bullish | −3.4% | +1.6% | +9.8% | −3.4% |
| Feb 21, 2018 | Bullish | −2.0% | +1.4% | +6.9% | −4.3% |
| Feb 12, 2018 | Bearish | +3.8% | +3.3% | +7.2% | −2.6% |
| Feb 8, 2018 | Bullish | +8.1% | +6.0% | +11.6% | +0.3% |
| Jan 24, 2018 | Bearish | −3.0% | −6.5% | +1.1% | −9.0% |
| Jan 22, 2018 | Bearish | −4.5% | −5.3% | −0.0% | −8.9% |
| Jan 16, 2018 | Bearish | −2.7% | −2.1% | +2.1% | −7.0% |
| Jan 11, 2018 | Bullish | −3.9% | −3.6% | +2.1% | −6.7% |
| Jan 9, 2018 | Bearish | −6.2% | −3.5% | +1.7% | −6.2% |
| Dec 15, 2017 | Bullish | +4.7% | +2.1% | +4.3% | −3.3% |
| Dec 14, 2017 | Bearish | +5.8% | +2.7% | +5.5% | −2.5% |
| Dec 8, 2017 | Bearish | +3.8% | +4.8% | +6.0% | −2.5% |
| Dec 6, 2017 | Bearish | +4.6% | +6.5% | +6.6% | −1.6% |
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.
| Variant | SPY or T-bills, a year | Worst fall | Days bearish | Bearish signals | Followed by a 5% fall | Bullish signals | SPY 3 months after |
|---|---|---|---|---|---|---|---|
| 21-day average, 0.0% band | 7.8% | −19.8% | 48% | 123 | 33% (40 of 120) | 123 | +4.4% |
| 21-day average, 0.5% band | 10.3% | −20.6% | 36% | 119 | 34% (38 of 113) | 123 | +4.4% |
| 21-day average, 1.0% band | 11.7% | −22.1% | 24% | 107 | 36% (37 of 104) | 123 | +4.4% |
| 50-day average, 0.0% band | 12.3% | −16.7% | 45% | 65 | 35% (22 of 63) | 64 | +4.1% |
| 50-day average, 0.5% band (this site's rule) | 12.6% | −16.7% | 39% | 72 | 35% (25 of 71) | 64 | +4.1% |
| 50-day average, 1.0% band | 13.0% | −19.5% | 32% | 74 | 48% (34 of 71) | 64 | +4.1% |
| 100-day average, 0.0% band | 10.4% | −18.9% | 43% | 52 | 31% (16 of 51) | 51 | +4.0% |
| 100-day average, 0.5% band | 9.6% | −21.7% | 38% | 50 | 31% (15 of 49) | 51 | +4.0% |
| 100-day average, 1.0% band | 11.7% | −22.6% | 33% | 54 | 36% (19 of 53) | 51 | +4.0% |
| SPY held throughout | 14.6% | −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 Advance-decline line (66% of days in the same state). An indicator that almost always agrees with another adds little to the score.
Agreement with every indicator
| Indicator | Same state |
|---|---|
| Advance-decline line | 66% |
| New highs minus new lows | 58% |
| Sector breadth | 48% |
| Stocks above their 200-day average | 45% |
| Stocks beating SPY | 33% |
| McClellan Oscillator | 33% |
| Stocks above their 20-day average | 28% |
| Equal weight against SPY | 26% |
| Valuation | 20% |
| Hindenburg Omen | 20% |
| Up/down volume | 17% |
| 90% up and down days | 13% |
| Zweig breadth thrust | 11% |
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
| Year | SPY | SPY or T-bills | Difference, points | SPY’s worst fall | Days bearish | Days bullish | Bearish signals |
|---|---|---|---|---|---|---|---|
| 2017* | 3.1% | 1.5% | −1.5 difference in 2017 | −0.7% | 21% | 67% | 3 |
| 2018 | −4.6% | 13.0% | +17.6 difference in 2018 | −19.3% | 43% | 48% | 9 |
| 2019 | 31.2% | 4.5% | −26.8 difference in 2019 | −6.6% | 49% | 39% | 12 |
| 2020 | 18.4% | 20.0% | +1.6 difference in 2020 | −33.7% | 34% | 60% | 9 |
| 2021 | 28.7% | 7.6% | −21.2 difference in 2021 | −5.1% | 54% | 41% | 8 |
| 2022 | −18.2% | 4.0% | +22.1 difference in 2022 | −24.5% | 35% | 59% | 7 |
| 2023 | 26.2% | 14.4% | −11.8 difference in 2023 | −10.0% | 40% | 54% | 6 |
| 2024 | 24.9% | 10.0% | −14.9 difference in 2024 | −8.4% | 41% | 54% | 11 |
| 2025 | 17.7% | 22.5% | +4.8 difference in 2025 | −18.8% | 32% | 62% | 3 |
| 2026* | 12.8% | 15.8% | +3.0 difference in 2026 | −8.9% | 20% | 77% | 4 |
* Part of a year: Nov 27 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.
| Variant | 2017* | 2018 | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 | 2026* | A year, whole period |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 21-day average, 0.0% band | −3.5 21-day average, 0.0% band, 2017 | +17.0 21-day average, 0.0% band, 2018 | −20.5 21-day average, 0.0% band, 2019 | −7.8 21-day average, 0.0% band, 2020 | −24.6 21-day average, 0.0% band, 2021 | +4.1 21-day average, 0.0% band, 2022 | −7.5 21-day average, 0.0% band, 2023 | −29.5 21-day average, 0.0% band, 2024 | +4.6 21-day average, 0.0% band, 2025 | +0.5 21-day average, 0.0% band, 2026 | −6.9 21-day average, 0.0% band, a year over the whole period |
| 21-day average, 0.5% band | −1.1 21-day average, 0.5% band, 2017 | +26.1 21-day average, 0.5% band, 2018 | −24.2 21-day average, 0.5% band, 2019 | −4.6 21-day average, 0.5% band, 2020 | −22.5 21-day average, 0.5% band, 2021 | +3.3 21-day average, 0.5% band, 2022 | −11.1 21-day average, 0.5% band, 2023 | −23.4 21-day average, 0.5% band, 2024 | +14.6 21-day average, 0.5% band, 2025 | −0.9 21-day average, 0.5% band, 2026 | −4.4 21-day average, 0.5% band, a year over the whole period |
| 21-day average, 1.0% band | −1.0 21-day average, 1.0% band, 2017 | +14.2 21-day average, 1.0% band, 2018 | −16.6 21-day average, 1.0% band, 2019 | +3.5 21-day average, 1.0% band, 2020 | −17.1 21-day average, 1.0% band, 2021 | −0.2 21-day average, 1.0% band, 2022 | −0.9 21-day average, 1.0% band, 2023 | −20.1 21-day average, 1.0% band, 2024 | +6.9 21-day average, 1.0% band, 2025 | +1.4 21-day average, 1.0% band, 2026 | −3.0 21-day average, 1.0% band, a year over the whole period |
| 50-day average, 0.0% band | −2.6 50-day average, 0.0% band, 2017 | +20.5 50-day average, 0.0% band, 2018 | −25.6 50-day average, 0.0% band, 2019 | +10.1 50-day average, 0.0% band, 2020 | −19.6 50-day average, 0.0% band, 2021 | +9.5 50-day average, 0.0% band, 2022 | −13.3 50-day average, 0.0% band, 2023 | −18.1 50-day average, 0.0% band, 2024 | +3.9 50-day average, 0.0% band, 2025 | +8.4 50-day average, 0.0% band, 2026 | −2.4 50-day average, 0.0% band, a year over the whole period |
| 50-day average, 0.5% band (this site's rule) | −1.5 50-day average, 0.5% band (this site's rule), 2017, the site's rule | +17.6 50-day average, 0.5% band (this site's rule), 2018, the site's rule | −26.8 50-day average, 0.5% band (this site's rule), 2019, the site's rule | +1.6 50-day average, 0.5% band (this site's rule), 2020, the site's rule | −21.2 50-day average, 0.5% band (this site's rule), 2021, the site's rule | +22.1 50-day average, 0.5% band (this site's rule), 2022, the site's rule | −11.8 50-day average, 0.5% band (this site's rule), 2023, the site's rule | −14.9 50-day average, 0.5% band (this site's rule), 2024, the site's rule | +4.8 50-day average, 0.5% band (this site's rule), 2025, the site's rule | +3.0 50-day average, 0.5% band (this site's rule), 2026, the site's rule | −2.0 50-day average, 0.5% band (this site's rule), a year over the whole period, the site's rule |
| 50-day average, 1.0% band | +0.2 50-day average, 1.0% band, 2017 | +22.4 50-day average, 1.0% band, 2018 | −19.5 50-day average, 1.0% band, 2019 | +2.0 50-day average, 1.0% band, 2020 | −18.9 50-day average, 1.0% band, 2021 | +12.2 50-day average, 1.0% band, 2022 | −9.1 50-day average, 1.0% band, 2023 | −13.4 50-day average, 1.0% band, 2024 | +4.0 50-day average, 1.0% band, 2025 | −2.4 50-day average, 1.0% band, 2026 | −1.6 50-day average, 1.0% band, a year over the whole period |
| 100-day average, 0.0% band | – 100-day average, 0.0% band, 2017 | +15.4 100-day average, 0.0% band, 2018 | −28.2 100-day average, 0.0% band, 2019 | −8.7 100-day average, 0.0% band, 2020 | −18.8 100-day average, 0.0% band, 2021 | +22.1 100-day average, 0.0% band, 2022 | −21.4 100-day average, 0.0% band, 2023 | −15.1 100-day average, 0.0% band, 2024 | +2.6 100-day average, 0.0% band, 2025 | +3.2 100-day average, 0.0% band, 2026 | −4.6 100-day average, 0.0% band, a year over the whole period |
| 100-day average, 0.5% band | – 100-day average, 0.5% band, 2017 | +13.5 100-day average, 0.5% band, 2018 | −28.0 100-day average, 0.5% band, 2019 | −9.1 100-day average, 0.5% band, 2020 | −18.1 100-day average, 0.5% band, 2021 | +12.8 100-day average, 0.5% band, 2022 | −15.3 100-day average, 0.5% band, 2023 | −15.1 100-day average, 0.5% band, 2024 | +2.1 100-day average, 0.5% band, 2025 | +2.1 100-day average, 0.5% band, 2026 | −5.4 100-day average, 0.5% band, a year over the whole period |
| 100-day average, 1.0% band | – 100-day average, 1.0% band, 2017 | +14.2 100-day average, 1.0% band, 2018 | −24.6 100-day average, 1.0% band, 2019 | −7.3 100-day average, 1.0% band, 2020 | −9.9 100-day average, 1.0% band, 2021 | +11.9 100-day average, 1.0% band, 2022 | −16.2 100-day average, 1.0% band, 2023 | −8.0 100-day average, 1.0% band, 2024 | +0.9 100-day average, 1.0% band, 2025 | +2.2 100-day average, 1.0% band, 2026 | −3.4 100-day average, 1.0% band, a year over the whole period |
The settings, tested on a grid
Average length and band: return against SPY
Each square: how much more (green) or less (red) a year SPY-or-T-bills returned than SPY. Rows: the average small against large is compared with; columns: how far below it counts as bearish.
| Bearish when below by → | ||||||
|---|---|---|---|---|---|---|
| Average ↓ | 0% | 0.5% | 1% | 2% | 3% | Average |
| 21 days | −6.9 Average 21 days, bearish when below by 0% | −4.4 Average 21 days, bearish when below by 0.5% | −3.0 Average 21 days, bearish when below by 1% | +2.4 Average 21 days, bearish when below by 2% | +0.2 Average 21 days, bearish when below by 3% | −2.3 |
| 50 days | −2.4 Average 50 days, bearish when below by 0% | −2.0 Average 50 days, bearish when below by 0.5%, the site's rule | −1.6 Average 50 days, bearish when below by 1% | +0.3 Average 50 days, bearish when below by 2% | +2.1 Average 50 days, bearish when below by 3% | −0.7 |
| 100 days | −4.6 Average 100 days, bearish when below by 0% | −5.4 Average 100 days, bearish when below by 0.5% | −3.4 Average 100 days, bearish when below by 1% | −0.8 Average 100 days, bearish when below by 2% | +0.5 Average 100 days, bearish when below by 3% | −2.8 |
| 200 days | −4.7 Average 200 days, bearish when below by 0% | −5.0 Average 200 days, bearish when below by 0.5% | −3.3 Average 200 days, bearish when below by 1% | −1.1 Average 200 days, bearish when below by 2% | −3.8 Average 200 days, bearish when below by 3% | −3.6 |
| Average | −4.7 | −4.2 | −2.8 | +0.2 | −0.3 | |
Average length and band: how much smaller the worst fall was
Each square: SPY's worst fall minus the strategy's, in points (green: it fell less). Rows: the average small against large is compared with; columns: how far below it counts as bearish.
| Bearish when below by → | ||||||
|---|---|---|---|---|---|---|
| Average ↓ | 0% | 0.5% | 1% | 2% | 3% | Average |
| 21 days | +13.9 Average 21 days, bearish when below by 0% | +13.1 Average 21 days, bearish when below by 0.5% | +11.6 Average 21 days, bearish when below by 1% | +11.6 Average 21 days, bearish when below by 2% | +9.2 Average 21 days, bearish when below by 3% | +11.9 |
| 50 days | +17.0 Average 50 days, bearish when below by 0% | +17.0 Average 50 days, bearish when below by 0.5%, the site's rule | +14.2 Average 50 days, bearish when below by 1% | +8.0 Average 50 days, bearish when below by 2% | +11.6 Average 50 days, bearish when below by 3% | +13.6 |
| 100 days | +14.8 Average 100 days, bearish when below by 0% | +12.0 Average 100 days, bearish when below by 0.5% | +11.1 Average 100 days, bearish when below by 1% | +11.6 Average 100 days, bearish when below by 2% | +11.2 Average 100 days, bearish when below by 3% | +12.2 |
| 200 days | +17.0 Average 200 days, bearish when below by 0% | +14.5 Average 200 days, bearish when below by 0.5% | +16.7 Average 200 days, bearish when below by 1% | +17.0 Average 200 days, bearish when below by 2% | +12.0 Average 200 days, bearish when below by 3% | +15.4 |
| Average | +15.7 | +14.1 | +13.4 | +12.1 | +11.0 | |
Average length and band: 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: the average small against large is compared with; columns: how far below it counts as bearish.
| Bearish when below by → | ||||||
|---|---|---|---|---|---|---|
| Average ↓ | 0% | 0.5% | 1% | 2% | 3% | Average |
| 21 days | +0.2 Average 21 days, bearish when below by 0% | +0.2 Average 21 days, bearish when below by 0.5% | +0.2 Average 21 days, bearish when below by 1% | +0.2 Average 21 days, bearish when below by 2% | +0.2 Average 21 days, bearish when below by 3% | +0.2 |
| 50 days | −0.2 Average 50 days, bearish when below by 0% | −0.2 Average 50 days, bearish when below by 0.5%, the site's rule | −0.2 Average 50 days, bearish when below by 1% | −0.2 Average 50 days, bearish when below by 2% | −0.2 Average 50 days, bearish when below by 3% | −0.2 |
| 100 days | −0.7 Average 100 days, bearish when below by 0% | −0.7 Average 100 days, bearish when below by 0.5% | −0.7 Average 100 days, bearish when below by 1% | −0.7 Average 100 days, bearish when below by 2% | −0.7 Average 100 days, bearish when below by 3% | −0.7 |
| 200 days | −1.0 Average 200 days, bearish when below by 0% | −1.0 Average 200 days, bearish when below by 0.5% | −1.0 Average 200 days, bearish when below by 1% | −1.0 Average 200 days, bearish when below by 2% | −1.0 Average 200 days, bearish when below by 3% | −1.0 |
| Average | −0.4 | −0.4 | −0.4 | −0.4 | −0.4 | |
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.
| Setting | Whole period, a year | 2017–2021 | 2022–2026 | Worst fall smaller by | Ahead in both halves |
|---|---|---|---|---|---|
| The site's rule, but 21-day average, bearish 2% below | +2.4 whole period | +3.8 2017 to 2021 | +1.3 2022 to 2026 | +11.6 worst fall | Yes |
| The site's rule, but bearish 3% below | +2.1 whole period | −0.9 2017 to 2021 | +4.8 2022 to 2026 | +11.6 worst fall | No |
| The site's rule, but 100-day average, bearish 3% below | +0.5 whole period | +1.2 2017 to 2021 | +0.0 2022 to 2026 | +11.2 worst fall | Yes |
| The site's rule, but bearish 2% below | +0.3 whole period | +0.9 2017 to 2021 | +0.0 2022 to 2026 | +8.0 worst fall | Yes |
| The site's rule, but 21-day average, bearish 3% below | +0.2 whole period | +1.1 2017 to 2021 | −0.6 2022 to 2026 | +9.2 worst fall | No |
| The site's rule, but 100-day average, bearish 2% below | −0.8 whole period | −3.6 2017 to 2021 | +1.5 2022 to 2026 | +11.6 worst fall | No |
| The site’s rule | −2.0 whole period, the site's rule | −6.7 2017 to 2021, the site's rule | +2.0 2022 to 2026, the site's rule | +17.0 worst fall, the site's rule | No |
Summary: the settings that helped the most
- Best single setting tested: the site's rule, but 21-day average, bearish 2% below: +2.4 points a year over SPY (+3.8 in 2017–2021, +1.3 in 2022–2026), against −2.0 for the site’s rule. Found by looking at the results, so it is the most flattering number here, not a forecast.
- Average: 50 days did best on average (−0.7), 200 days worst (−3.6).
- Bearish when below by: 2% did best on average (+0.2), 0% worst (−4.7).
- Average (for the bullish days): 21 days did best on average (+0.2), 200 days worst (−1.0).
- Bearish when below by (for the bullish days): made little difference (averages within half a point).
- Choosing the best setting in advance: the setting with the best result in 2017–2021 (the site's rule, but 21-day average, bearish 2% below, +3.8) scored +1.3 in 2022–2026, against +2.0 for the site’s rule; 2 of the 20 settings tested beat the rule in those later years.
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.
Free · every Friday after the close
Know when the market’s underlying health changes
Every Friday, a two-minute report on market health, rising risk and the indicators that changed, without having to watch every chart yourself.
- The health score and the top-risk score, and how far each moved
- Every indicator that turned bullish or bearish, and why
- Whether breadth confirmed the S&P 500’s new highs
- The charts that matter, in under two minutes
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