Stock Regimes
Major swings and moving-average trends across the full price history, with each period compared to the S&P 500.
Price history
Green bands are rallies and red bands are drawdowns. A swing is confirmed when price reverses by at least 20%.
Versus the S&P 500
Both series are rebased to 100 at the first date they share in this window. Returns are price returns from adjusted closes, not dividend total return.
Regimes
| Direction | Start | End | Trading days | Start price | End price | Stock | S&P 500 | Excess |
|---|---|---|---|---|---|---|---|---|
| Rally | 2002-01-22 | 2004-06-15 | 2 | $1.12 | $3.27 | +192.0% | +1.1% | +190.8% |
| Drawdown | 2004-06-15 | 2009-07-14 | 8 | $3.27 | $0.82 | -75.0% | -20.0% | -55.0% |
| Rally | 2009-07-14 | 2011-06-27 | 13 | $0.82 | $4.21 | +415.0% | +41.3% | +373.7% |
| Drawdown | 2011-06-27 | 2011-08-05 | 4 | $4.21 | $3.26 | -22.6% | -6.3% | -16.3% |
| Rally | 2011-08-05 | 2015-10-30 | 21 | $3.26 | $14.45 | +343.0% | +73.4% | +269.6% |
| Drawdown | 2015-10-30 | 2016-10-20 | 3 | $14.45 | $10.21 | -29.3% | +3.0% | -32.3% |
| Rally | 2016-10-20 | 2018-05-23 | 45 | $10.21 | $16.75 | +64.1% | +27.6% | +36.4% |
| Drawdown | 2018-05-23 | 2019-02-20 | 23 | $16.75 | $11.34 | -32.3% | +1.9% | -34.2% |
| Rally | 2019-02-20 | 2020-10-02 | 40 | $11.34 | $50.49 | +345.3% | +20.2% | +325.1% |
| Drawdown | 2020-10-02 | 2021-12-16 | 18 | $50.49 | $11.85 | -76.5% | +39.4% | -116.0% |
| Rally | 2021-12-16 | 2022-03-22 | 12 | $11.85 | $17.08 | +44.2% | -3.4% | +47.6% |
| Drawdown | 2022-03-22 | 2022-09-01 | 12 | $17.08 | $8.29 | -51.4% | -12.1% | -39.4% |
| Rally | 2022-09-01 | 2022-10-03 | 7 | $8.29 | $12.87 | +55.1% | -7.3% | +62.4% |
| Drawdown | 2022-10-03 | 2023-09-06 | 13 | $12.87 | $7.71 | -40.0% | +21.4% | -61.4% |
| Rally | 2023-09-06 | 2025-09-16 | 41 | $7.71 | $27.90 | +261.7% | +48.0% | +213.8% |
| Drawdown | 2025-09-16 | 2026-05-21 | 17 | $27.90 | $21.28 | -23.7% | +12.7% | -36.4% |
| Rally Ongoing | 2026-05-21 | 2026-11-06 | 118 | $21.28 | $32.70 | +53.7% | -0.9% | +54.6% |
Stock returns use adjusted closes. S&P 500 is the GSPC index price return over the same dates. Excess is the stock return minus the S&P 500 return.