S&P 500 with a trend filter: drawdowns, whipsaws and 2022

Computed by the MarketHeist portfolio engine · Published 2026-10-11 · Updated 2026-10-10 · Data through Sep 2026
S&P 500 with the 10-month trend filter, Mar 1986–Sep 2026 (40.6 years): the worst drawdown went from -50.8% to -26.4% and the annual return from 11.0% to 8.5%, with the filter in cash in 22% of months. The 6- and 12-month windows are shown beside it. Data through Sep 2026.

The portfolio

100% SPY; rebalanced none. See S&P 500 (100%) in the portfolio app.

This is the 10-month rule on the S&P 500 itself (SPY, extended back with VFINX from Feb 1985). The trend-timing strategy page applies the same rule to the total US market (VTI) over its own, shorter window, so its numbers differ.

What the filter did here

Here the filter traded some return for markedly shallower drawdowns.

Growth of $10,000

Growth of $10,000 in S&P 500, plain versus 10-month trend filter, Mar 1986 to Sep 2026 (log scale)$10,000 grew to $699,231 for the plain portfolio and $269,837 with the 10-month trend filter from Mar 1986 to Sep 2026. Log scale. The filter was out of the market in 22% of months. Filter out of the market: 1986-10; 1987-01; 1987-11 to 1988-06; 1990-02 to 1990-03; 1990-05; 1990-09 to 1990-12; 1991-12; 1994-04 to 1994-07; 1994-12; 1998-09 to 1998-10; 1999-10; 2000-10 to 2002-03; 2002-05 to 2003-04; 2004-09; 2008-01 to 2009-06; 2010-07; 2010-09; 2011-09 to 2012-01; 2015-09 to 2015-10; 2016-02 to 2016-03; 2018-11; 2019-01 to 2019-02; 2019-06; 2020-03 to 2020-05; 2022-03; 2022-05 to 2022-11; 2023-01; 2023-11; 2025-04 to 2025-05; 2026-04.$10k$20k$50k$100k$200k$500k1986199219982004201020162022Plain10-month filterFilter out of the market
Log scale, Mar 1986–Sep 2026. Shaded bands are the months the 10-month filter was out of the market, in cash earning 0%.

Drawdowns

Drawdown (underwater curve) of S&P 500, plain versus 10-month trend filter, Mar 1986 to Sep 2026Worst month-end decline from a prior peak: -50.8% for the plain portfolio and -26.4% with the 10-month trend filter, Mar 1986 to Sep 2026. Filter out of the market: 1986-10; 1987-01; 1987-11 to 1988-06; 1990-02 to 1990-03; 1990-05; 1990-09 to 1990-12; 1991-12; 1994-04 to 1994-07; 1994-12; 1998-09 to 1998-10; 1999-10; 2000-10 to 2002-03; 2002-05 to 2003-04; 2004-09; 2008-01 to 2009-06; 2010-07; 2010-09; 2011-09 to 2012-01; 2015-09 to 2015-10; 2016-02 to 2016-03; 2018-11; 2019-01 to 2019-02; 2019-06; 2020-03 to 2020-05; 2022-03; 2022-05 to 2022-11; 2023-01; 2023-11; 2025-04 to 2025-05; 2026-04.-50%-40%-30%-20%-10%0%1986199219982004201020162022Plain10-month filterFilter out of the market
Decline from the prior peak at month-end, the "underwater" curve. Shaded bands are the months the 10-month filter was out of the market.

Plain versus filtered, side by side

Plain10-month filter6-month filter12-month filter
Growth of $10,000$699,231$269,837$208,245$436,272
CAGR11.0%8.5%7.8%9.8%
Volatility (annualized)15.2%11.5%11.0%11.7%
Sharpe ratio (risk-free 0%)0.770.770.740.86
Max drawdown-50.8%Oct 2007 → Feb 2009; recovered Mar 2012-26.4%Aug 1987 → Aug 1988; recovered Jul 1989-27.5%Jun 1986 → Mar 1988; recovered Dec 1989-26.4%Aug 1987 → Aug 1988; recovered Jul 1989
Worst calendar year2008 (-36.8%)2022 (-21.0%)1990 (-18.1%)1990 (-14.9%)
2022 calendar year-18.2%-21.0%-10.7%-13.0%
Months in cash0%22%106 of 487 months25%124 of 487 months20%99 of 487 months
Switches per yearnone1.560 in 40.6 years2.290 in 40.6 years1.144 in 40.6 years
Longest time out of the marketn/a18 monthsOct 2000–Mar 200214 monthsOct 2000–Nov 200130 monthsNov 2000–Apr 2003
Plain portfolio's return while the filter was outn/a159.1%gains it gave up235.8%gains it gave up60.3%gains it gave up
Quick reversals (out for 3 months or less, then back in, while the plain portfolio rose)n/a22sat out 336.6% combined33sat out 521.4% combined16sat out 174.7% combined

All columns cover Mar 1986–Sep 2026, the months for which the 6-, 10- and 12-month filters all have data, so they are directly comparable. Sharpe uses a risk-free rate of 0%, which flatters the columns that sit in cash. The worst calendar year counts full years only.

The S&P 500's major declines and the year after

Compounded return overPlain10-month filter6-month filter12-month filter
1987 crash (S&P 500 -29.8%)Sep 1987–Nov 1987-29.8%-23.5%-23.5%-23.5%
The next 12 monthsDec 1987–Nov 198822.9%1.6%0.6%1.6%
1998 LTCM sell-off (S&P 500 -15.3%)Jul 1998–Aug 1998-15.3%-15.3%-15.3%-15.3%
The next 12 monthsSep 1998–Aug 199939.3%21.1%21.1%21.1%
2000–02 dot-com bear (S&P 500 -44.7%)Sep 2000–Sep 2002-44.7%-11.0%-10.1%-5.9%
The next 12 monthsOct 2002–Sep 200324.2%9.6%3.4%9.6%
2007–09 financial crisis (S&P 500 -50.8%)Nov 2007–Feb 2009-50.8%-5.0%-11.9%-5.0%
The next 12 monthsMar 2009–Feb 201053.3%21.7%28.7%13.2%
2020 COVID crash (S&P 500 -19.4%)Jan 2020–Mar 2020-19.4%-8.0%-8.0%-8.0%
The next 12 monthsApr 2020–Mar 202156.2%32.3%32.3%32.3%
2022 inflation bear (S&P 500 -23.9%)Jan 2022–Sep 2022-23.9%-16.1%-5.3%-13.0%
The next 12 monthsOct 2022–Sep 202321.6%0.2%0.2%2.5%

The decline windows are computed, not chosen: every peak-to-trough fall of at least 15% (month-end) in the S&P 500. Each row compounds the portfolio's monthly returns from the month after the S&P 500's peak through its trough.

S&P 500's own deepest drawdowns

S&P 500's deepest drawdowns (peak → trough)Plain10-month filter, same months10-month filter, next 12 monthsPlain, next 12 months
Oct 2007–Feb 2009recovered Mar 2012-50.8%-5.0%21.7%53.3%
Aug 2000–Sep 2002recovered Nov 2006-44.7%-11.0%9.6%24.2%
Aug 1987–Nov 1987recovered May 1989-29.8%-23.5%1.6%22.9%

The three deepest declines of the plain portfolio inside the comparison window. A bond-heavy portfolio's deepest decline is usually 2022, an equity-heavy one's 2008; the filter behaves differently in each.

Cash that earns interest

The builder's filter earns nothing while it is out of the market. If the cash had been in short Treasuries instead, the 10-month filter's numbers over the same months would have been:

10-month filter, cash at 0%10-month filter, cash in short Treasuries
Growth of $10,000$269,837$357,276
CAGR8.5%9.2%
Max drawdown-26.4%-26.4%
Sharpe ratio (risk-free 0%)0.770.83

With cash in short Treasuries the filtered portfolio earned 9.2% a year against 11.0% for the plain portfolio.

Short Treasuries = BIL, extended with SHV (from Feb 2007) and the Vanguard Short-Term Treasury fund VFISX (1–3 year Treasuries, from Nov 1991). Before 2007 that is more duration than T-bills. 17 of the 106 out-of-market months fall before Nov 1991, before our short-Treasury series begins; they earn 0% in this column too. Not available in the builder; computed for this page only.

Why these three windows

10 months is the window Mebane Faber published in 2007 and the monthly equivalent of the 200-day moving average. 6 and 12 months bracket it. We fixed these three before computing any page and use the same three for every portfolio; we did not search for the window that looks best on each one. Choosing the best of many windows after the fact makes any filter look better than it would have been in real time.

Windows of 8, 9, 11 and 12 months keep 107% of the 10-month filter's Sharpe ratio (robust).

Try it in the builder

Open S&P 500 (100%) in the portfolio app and apply the same filter:

  1. Customize
  2. Add Overlay
  3. Set Trend length to 10 months (the default)
  4. Add overlay

You should see what this page shows. Without the overlay the builder reports Feb 1985–Sep 2026: $10,000 grew to $860,978, max drawdown -50.8%, CAGR 11.3%. With the 10-month overlay its figures start Jan 1986 (the tables above start 2 months later, Mar 1986, so that the 12-month column covers the same months): $10,000 grew to $291,551, max drawdown -26.4%, CAGR 8.6%.

Frequently asked questions

Does a trend filter help S&P 500?
The 10-month filter cut the worst drawdown from -50.8% (Oct 2007–Feb 2009) to -26.4% (Aug 1987–Aug 1988). It gave up 2.6 points a year (11.0% versus 8.5%). The Sharpe ratio was 0.77 both with and without the filter. Here the filter traded some return for markedly shallower drawdowns.
How often does a 10-month trend filter trade S&P 500?
It was in cash in 22% of months and switched 60 times (about 1.5 a year); the longest stretch out was 18 months (Oct 2000–Mar 2002). 22 exits were reversed within three months while the portfolio rose; together those sat out a gain of 336.6%. The 6-month window switched 2.2 times a year (CAGR 7.8%, max drawdown -27.5%); the 12-month window 1.1 (9.8%, -26.4%). The result depends noticeably on the window length.
What did S&P 500 with a trend filter do in 2022?
In calendar 2022 S&P 500 returned -18.2% without a filter, -21.0% with the 10-month filter, -10.7% with the 6-month and -13.0% with the 12-month filter. Over the S&P 500's 2022 inflation bear (Jan 2022–Sep 2022, -23.9%) the plain portfolio returned -23.9% and the 10-month filtered one -16.1%; in the 12 months after the trough, 21.6% versus 0.2%.

Caveats

Methodology

Source
Yahoo Finance via MarketHeist, monthly adjusted close (dividends reinvested), to the last complete calendar month. Holdings before their ETF's launch use proxy funds, spliced on returns; see each holding's fund-history page.
The filter
The filter looks at the whole portfolio's own value at each month-end. If it is above its average of the last N month-ends the portfolio is held for the next month, otherwise it sits in cash (earning 0%). N is 10 for the headline column, 6 and 12 for the sensitivity columns. It is the same rule the builder's Add Overlay applies, and the same function (the portfolio engine's trend-filter overlay) computes every number here. The same rule on a single fund is on the trend-timing strategy page.
Comparison window
The filter needs N months of history for its average, plus one month for the next-month execution, so each filtered series starts N+1 months after the plain portfolio. Every column here is cut to Mar 1986–Sep 2026, the months all three filters have, and measured with the same engine functions the app uses after an overlay. The builder's own numbers start earlier for shorter windows (10 months: Jan 1986).
Columns
Plain: the portfolio as simulated by the portfolio engine (none rebalancing), cut to the comparison window. Filtered: the same monthly returns while in the market, 0 while out. Growth of $10,000, CAGR, volatility, Sharpe (risk-free 0%) and drawdowns are computed on the cut series, month-end.
Activity
Months in cash, switches (changes between in and out), out-of-market stretches and the plain portfolio's return while out are computed from an independent recomputation of the signal that is checked against the engine month by month before a page is published.
Treasury cash
A page-only variant that replaces each out-of-market month's 0% with the return of short Treasuries (BIL, extended with SHV and VFISX).
Window stability
Windows of 8, 9, 11 and 12 months keep 107% of the 10-month filter's Sharpe ratio (robust).
Generated
2026-10-10; data through Sep 2026. Reproduce hash of the 10-month-filtered portfolio over its own window (Jan 1986–Sep 2026): 25f966ac80e97b5e
Related
All trend-filtered portfolios · S&P 500 (100%) in the portfolio app

All trend-filtered portfolios →

Historical simulation, not investment advice.