The Test Bench › Moving averages › Study 020
Which moving-average rule did best, on return and on the deepest fall? We backtested the golden cross, the 200-day average and the 9/21 EMA under the same conditions on 483 current S&P 500 stocks, 2006 to September 2026.
STUDY 020We backtested three trend rules on 483 current S&P 500 stocks, each on its own with a $10,000 account, 2006 to September 2026: own the stock while the faster line is above the slower one, sell at the next day’s open when it drops below, and buy back at the next open when it crosses back, at a fixed cost of 0.02% on each buy and sale.
Buying and holding finished higher on most stocks: a median total return per stock of +361%, against +68% to +137% for the rules, each stock over its own years in the data; in a secondary check on the 368 stocks with data for the whole period, 13 November 2006 to 29 September 2026, +368% against +55% to +128%. These are medians of separate single-stock accounts; a portfolio of the same stocks would behave differently.
In this test, the golden cross came first of the three rules, the 200-day average second and the 9/21 EMA last; the lead over the 200-day average was narrow (253 of 483 stocks). The ranking describes this test and carries no test of statistical significance. The rules were invested 58% to 65% of the time, and their deepest falls were smaller, a median −51% to −53% against −66%.
On single stocks the rules cut the deepest fall modestly, at a large cost in return; on the S&P 500 index, the 200-day average and the 9/21 EMA cut it by half or more.
What each signal did on its own: the golden cross, the 200-day average and the 9/21 EMA. Each rule explained, with worked examples: the golden cross, the 200-day average and the 9/21 EMA. The whole series: moving average trading explained.
A historical backtest under stated assumptions: long positions only, one stock at a time, trades at the next day’s open, a fixed cost on each buy and sale. It describes what happened in the past.
| Rule | In the stock while | Out when |
|---|---|---|
| Golden cross | The 50-day average is above the 200-day | It crosses back below |
| 200-day average | The close is above the 200-day average | It crosses back below |
| 9/21 EMA | The 9-day EMA is above the 21-day EMA | It crosses back below |
| Buy and hold | Always, from the first day | Never sold |
| Part | Setting |
|---|---|
| Execution | Buys and sales at the next day’s open after the signal close; fills at the signal close as a check |
| Position | $10,000, all cash on each buy, whole shares, long only; idle cash earns nothing |
| Cost | 0.02% on each buy and each sale; 0% and 0.04% as checks. Real spreads, slippage and taxes can cost more |
| Stop | None: each rule’s own exit is its stop |
The chart at the top of the page shows the typical account for each rule, from $10,000 in 2006: the median across the 368 stocks with data from 2006, so every year has the same stocks behind it. The golden cross’s typical account ended at $22,838; buying and holding ended at $46,813. At the low of the 2008–09 sell-off, buying and holding was down to $5,498, while the rules stood at $8,755 (the golden cross), $8,689 (the 200-day average) and $7,618 (the 9/21 EMA).
The rules step aside when a stock’s trend turns down, so the share of stocks held rises and falls with the market. The golden cross held a position in 64% of the stocks in a typical week: an average over weeks across the 368 stocks, where the time in the market quoted above is the median of each stock’s own share.
Each pair of rules was compared stock by stock. The golden cross finished ahead of the 200-day average on 253 of 483 stocks, with a median gap of +5.8 percentage points of total return per stock. The golden cross finished ahead of the 9/21 EMA on 304 of 483 stocks, with a median gap of +36.9 percentage points of total return per stock. The 200-day average finished ahead of the 9/21 EMA on 296 of 483 stocks, with a median gap of +24.9 percentage points of total return per stock. These counts describe the tested stocks and carry no test of statistical significance.
A secondary check named in our study record before the backtest was run: “the deep-history stocks (data from 2006) alone”. 115 of the 483 stocks have data only from a later year (the latest from August 2024), so the medians above pool shorter and longer windows. Each comparison of two rules, or of a rule with buying and holding, is made within one stock over that stock’s own years, so it is like for like. The record named the stocks, not the dates: we fixed the dates after the first results, so that this table and the chart use the same window. It runs from 13 November 2006, when the last of the 368 stocks starts trading (most start on 22 September 2006, the start of the series’ window), to 29 September 2026, the last day all of them have. Read it as a follow-up check on comparability; only the choice of stocks was fixed in advance. On the 368 stocks with data from 2006, the order of the rules and the lead of buying and holding were the same:
| Rule, 368 stocks from 2006 | Median total return per stock | Deepest fall | Beat buy and hold on (stocks) |
|---|---|---|---|
| Golden cross | +128% | −53% | 66 of 368 |
| 200-day average | +106% | −52% | 57 of 368 |
| 9/21 EMA | +55% | −54% | 43 of 368 |
| Buy and hold | +368% | −68% | — |
On these stocks, the golden cross finished ahead of the 200-day average on 201 of 368, the golden cross finished ahead of the 9/21 EMA on 243 of 368 and the 200-day average finished ahead of the 9/21 EMA on 232 of 368.
Every rule’s median deepest fall was smaller than buying and holding’s, but still large, and it came with a lower median return and time out of the market. On a rough measure of our own, the annualised return divided by the deepest fall, the median was 0.10 for the golden cross, 0.09 for the 200-day average and 0.06 for the 9/21 EMA, against 0.14 for buying and holding. The annualised return expresses a stock’s total return as an equivalent yearly rate; it is not the return earned in each year. For each stock, it is (1 + total return) ^ (252 / trading days) − 1, with that stock’s own number of trading days, and it is divided by the size of the deepest fall (a 53% fall counts as 0.53); the figures are the medians of those per-stock ratios. The ratio carries none of the properties of a standard risk statistic such as the Sharpe ratio.
The same rules on SPY, the S&P 500 ETF, over 2006 to September 2026, beside Mebane Faber’s own monthly rule (hold while the month-end close is above its 10-month average), computed from the same SPY prices outside the app. Faber’s rule is a separate benchmark that checks once a month. We trade it at the next day’s open, as the daily rules; his own convention, a trade at the month-end close that makes the signal, is shown as a check.
Buying and holding SPY returned 9.1% a year with a deepest fall of −56%. Faber’s monthly rule, traded at the next day’s open at 0.02% on each switch, returned 6.8% a year with a deepest fall of −24%, invested 77% of the months; traded at the month-end close that makes the signal, as in his paper, 7.3% a year and −23%, a fill a real order may not get. Buying and holding SPY over the rule’s own span, July 2007 to September 2026 (it starts once ten month-ends are known) and read on the same month-end closes, returned 8.8% a year with a deepest month-end fall of −52%; the figures above start earlier and read every day’s close. Over 1901 to 2012 Faber reports 10.2% a year against 9.3%, and a worst fall of −50% against −84%, before costs and taxes. His figures are total returns with dividends, and his cash earns the 90-day Treasury bill rate; ours exclude dividends and our cash earns nothing, so his figures are context rather than a like-for-like comparison. In our later window the smaller fall held, and the return trailed buying and holding. The golden cross rule on SPY returned 7.8% a year with a deepest fall of −34%, behind buying and holding on return; Arthur Hill’s 1991–2015 test at StockCharts (June 2016) found 8.48% a year against 7.55% for buying and holding the index.
A trend rule sells after a fall has started and buys after a rise has started, so it gives up the first part of every move in both directions. Most trades lost (on the median stock, 25% to 46% of a rule’s closed trades made money), and a few long winners paid for them: the golden cross’s average win was +33.6% against an average loss of −11.4%.
On SPY the rules cut the deepest fall far more than on single stocks (the golden cross −34%, the 200-day average −22% and the 9/21 EMA −24%, against −56%). One possible explanation: an index falls over weeks, so a rule has time to step aside, while a single stock can drop most of the way in a few days on its own news, before the rule sells at the next open. The test does not isolate it.
The rules sat in cash 35% to 42% of the time, earning nothing here; a real account would earn interest on that cash, which this test leaves out.
The rules, the cost, the stocks and what would count as one rule finishing ahead of another were set on 15 October 2026 in our internal study record, before any backtest was run. Each pair of rules is compared stock by stock: one rule is ahead when it finished higher on most stocks with a positive median gap at 0.02%, at 0.04% and with signal-close fills. It ranks the rules within this test and carries no test of statistical significance. The deepest fall was named in advance as a main measure beside the return.
The 483 stocks are today’s S&P 500 companies, one share class each, that passed the data screens of our moving-average and RSI event studies, on the same daily bars, 2006 to September 2026. Each stock is tested over its own years in the data: 368 from 2006, and 115 from a later listing or data start; all run to the end of September 2026. Buying and holding the same stock, over the same years with the same cost, is the reference.
Survivorship bias. This is not the historical index. It is today’s S&P 500 members projected backwards, so companies that failed or left the index after a deep fall are missing. How the bias works and how to avoid it: survivorship bias in backtesting.
In the strategy builder, buy when SMA50 is above SMA200 and sell when SMA50 is below SMA200, with orders at the next open. For the other rules use Close against SMA200, or two custom EMAs with periods 9 and 21. Set the cost to 0.02% on each buy and sale, add Buy and hold to the run, and backtest on daily bars.
| Rule | Median total return per stock, 2006 to September 2026 | Time in the market | Deepest fall | Beat buy and hold on (stocks) |
|---|---|---|---|---|
| Golden cross | +137% | 65% | −53% | 81 of 483 |
| 200-day average | +118% | 64% | −51% | 74 of 483 |
| 9/21 EMA | +68% | 58% | −52% | 62 of 483 |
| Buy and hold (reference) | +361% | 100% | −66% | — |
| Rule | Trades (median) | Win rate | Average win | Average loss | At 0% | At 0.02% | At 0.04% | Signal-close fills, 0.02% |
|---|---|---|---|---|---|---|---|---|
| Golden cross | 14 | 46% | +33.6% | −11.4% | +139% | +137% | +136% | +133% |
| 200-day average | 78 | 25% | +14.5% | −2.6% | +125% | +118% | +110% | +99% |
| 9/21 EMA | 110 | 36% | +9.8% | −4.0% | +75% | +68% | +61% | +67% |
| Comparison | At 0.02% | At 0.04% | Signal-close fills, 0.02% |
|---|---|---|---|
| Golden cross ahead of the 200-day average | 253 of 483 · +5.8 points | 260 of 483 · +8.8 points | 266 of 483 · +13.1 points |
| Golden cross ahead of the 9/21 EMA | 304 of 483 · +36.9 points | 310 of 483 · +40.5 points | 305 of 483 · +36.4 points |
| 200-day average ahead of the 9/21 EMA | 296 of 483 · +24.9 points | 297 of 483 · +24.7 points | 296 of 483 · +22.8 points |
| SPY | Annualised return | Deepest fall | Time in the market | Trades |
|---|---|---|---|---|
| Golden cross | 7.8% a year | −34% | 77% | 9 |
| 200-day average | 7.0% a year | −22% | 77% | 62 |
| 9/21 EMA | 5.5% a year | −24% | 68% | 102 |
| Faber’s monthly rule, next-open fills (outside the app) | 6.8% a year | −24% | 77% | 33 switches |
| Faber’s monthly rule, month-end close fills (his convention; a check) | 7.3% a year | −23% | 77% | 33 switches |
| Buy and hold | 9.1% a year | −56% | 100% | 1 (the first buy) |
Using this research. The analysis, tables and figures on this page are GU Analyser Ltd’s own work, published under a Creative Commons BY-NC 4.0 licence. You are welcome to quote it, cite it and build on it, with credit and a link. Suggested credit: GU Analyser, The Test Bench, Study 020, linking to guanalyser.com/test-bench/moving-average-crossover-backtest/. For commercial use, ask us at hello@guanalyser.com.
Rebuild the test
Build the rule on the strategy canvas: buy while the fast average is above the slow one, sell when it drops below, with orders at the next open, and backtest it on daily bars at your own cost.
Create a free account and run your own tests → or read how the SMA is calculated →The method: how a backtest is built