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 | 1994-05-05 | 1999-03-15 | 1,227 | $1.59 | $5.31 | +234.2% | +189.6% | +44.6% |
| Drawdown | 1999-03-15 | 2000-06-19 | 321 | $5.31 | $2.50 | -52.9% | +13.7% | -66.6% |
| Rally | 2000-06-19 | 2000-07-17 | 20 | $2.50 | $3.08 | +23.1% | +1.6% | +21.4% |
| Drawdown | 2000-07-17 | 2000-12-27 | 115 | $3.08 | $2.34 | -23.8% | -12.0% | -11.8% |
| Rally | 2000-12-27 | 2003-09-22 | 685 | $2.34 | $8.31 | +254.3% | -23.0% | +277.4% |
| Drawdown | 2003-09-22 | 2004-01-02 | 72 | $8.31 | $6.57 | -20.9% | +8.4% | -29.3% |
| Rally | 2004-01-02 | 2004-04-19 | 74 | $6.57 | $7.90 | +20.3% | +2.5% | +17.9% |
| Drawdown | 2004-04-19 | 2004-06-25 | 48 | $7.90 | $5.96 | -24.6% | -0.1% | -24.5% |
| Rally | 2004-06-25 | 2008-05-28 | 988 | $5.96 | $7.51 | +26.0% | +22.6% | +3.4% |
| Drawdown | 2008-05-28 | 2008-10-07 | 93 | $7.51 | $4.82 | -35.8% | -28.4% | -7.5% |
| Rally | 2008-10-07 | 2008-10-31 | 19 | $4.82 | $6.83 | +41.6% | -2.8% | +44.4% |
| Drawdown | 2008-10-31 | 2009-03-03 | 83 | $6.83 | $4.77 | -30.1% | -28.1% | -2.0% |
| Rally | 2009-03-03 | 2010-03-09 | 257 | $4.77 | $10.80 | +126.4% | +63.8% | +62.6% |
| Drawdown | 2010-03-09 | 2010-06-14 | 68 | $10.80 | $6.20 | -42.6% | -4.5% | -38.1% |
| Rally | 2010-06-14 | 2010-12-16 | 131 | $6.20 | $9.38 | +51.3% | +14.1% | +37.2% |
| Drawdown | 2010-12-16 | 2011-08-08 | 162 | $9.38 | $7.13 | -24.0% | -9.9% | -14.1% |
| Rally | 2011-08-08 | 2013-11-08 | 569 | $7.13 | $13.76 | +92.9% | +58.2% | +34.8% |
| Drawdown | 2013-11-08 | 2014-01-29 | 55 | $13.76 | $10.83 | -21.3% | +0.2% | -21.5% |
| Rally | 2014-01-29 | 2016-12-20 | 731 | $10.83 | $21.48 | +98.2% | +28.0% | +70.2% |
| Drawdown | 2016-12-20 | 2017-05-31 | 111 | $21.48 | $16.10 | -25.0% | +6.2% | -31.2% |
| Rally | 2017-05-31 | 2018-06-22 | 269 | $16.10 | $25.28 | +57.0% | +14.2% | +42.7% |
| Drawdown | 2018-06-22 | 2018-12-24 | 128 | $25.28 | $17.59 | -30.4% | -14.7% | -15.8% |
| Rally | 2018-12-24 | 2019-12-20 | 251 | $17.59 | $27.18 | +54.6% | +37.0% | +17.5% |
| Drawdown | 2019-12-20 | 2020-03-16 | 58 | $27.18 | $13.73 | -49.5% | -25.9% | -23.6% |
| Rally | 2020-03-16 | 2020-03-17 | 2 | $13.73 | $17.67 | +28.7% | +6.0% | +22.7% |
| Drawdown | 2020-03-17 | 2020-04-15 | 21 | $17.67 | $12.66 | -28.3% | +10.0% | -38.4% |
| Rally | 2020-04-15 | 2020-04-29 | 11 | $12.66 | $15.54 | +22.7% | +5.6% | +17.1% |
| Drawdown | 2020-04-29 | 2020-05-14 | 12 | $15.54 | $11.42 | -26.5% | -3.0% | -23.5% |
| Rally | 2020-05-14 | 2020-06-08 | 17 | $11.42 | $16.97 | +48.6% | +13.3% | +35.2% |
| Drawdown | 2020-06-08 | 2020-09-23 | 76 | $16.97 | $11.73 | -30.9% | +0.1% | -31.0% |
| Rally | 2020-09-23 | 2022-08-18 | 480 | $11.73 | $24.94 | +112.7% | +32.3% | +80.3% |
| Drawdown | 2022-08-18 | 2023-05-12 | 185 | $24.94 | $15.03 | -39.7% | -3.7% | -36.0% |
| Rally | 2023-05-12 | 2023-12-26 | 157 | $15.03 | $21.50 | +43.1% | +15.8% | +27.3% |
| Drawdown | 2023-12-26 | 2024-04-17 | 78 | $21.50 | $16.82 | -21.7% | +5.2% | -26.9% |
| Rally | 2024-04-17 | 2024-11-06 | 142 | $16.82 | $27.72 | +64.7% | +18.1% | +46.7% |
| Drawdown | 2024-11-06 | 2025-04-04 | 102 | $27.72 | $19.47 | -29.7% | -14.4% | -15.3% |
| Rally Ongoing | 2025-04-04 | 2026-11-05 | 400 | $19.47 | $35.96 | +84.7% | +44.9% | +39.8% |
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.