A systematic walk-forward analysis of a long-only momentum strategy on US equities. Starting from a 9-1 base, we sweep six parameter dimensions, discover that 6-0 (pure 6-month momentum) dominates, and stress-test the finding across market cap bands, filter combinations, and sub-periods. 254 months of out-of-sample data. Quarterly TTM fundamentals with availability lag.
The starting base configuration uses 9-1 momentum (9-month lookback, skip 1 month), top 20 stocks, market cap > $5B, EBIT > 0, and MA200 regime filter. Each section below sweeps one parameter while holding others at base.
Best configuration: 6-0 momentum, top 10 stocks >$10B, MA200 + EBIT filter. +20.4% CAGR, Sharpe 0.83, Sortino 1.26, max drawdown −28.7%. The most sub-period stable variant tested (H1 Sharpe 0.97, H2 0.80). Pure 6-month momentum (6-0) dominates the conventional 9-1 and 12-1 windows across every metric. The improvement is consistent across market cap bands and survives filter ablation testing.
The regime filter governs when the strategy goes to cash. Shorter MAs react faster but whipsaw more frequently.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| MA50 | +11.0% | +2.5% | 0.47 | 0.55 | -35.3% | 16.9% | $915,169 |
| MA100 | +14.2% | +5.7% | 0.66 | 0.90 | -32.8% | 17.1% | $1,673,223 |
| MA150 | +16.9% | +8.3% | 0.78 | 1.12 | -36.4% | 17.8% | $2,716,968 |
| MA200 (base) | +17.6% | +9.1% | 0.81 « | 1.19 | -31.1% | 18.0% | $3,092,210 |
| MA250 | +17.3% | +8.8% | 0.78 | 1.15 | -30.4% | 18.2% | $2,941,572 |
| MA300 | +16.7% | +8.1% | 0.72 | 1.03 | -30.9% | 19.0% | $2,608,103 |
| No MA | +18.7% | +10.2% | 0.70 | 1.01 | -55.3% | 22.4% | $3,771,980 |
MA150 produces the highest Sharpe (0.86), marginally ahead of MA200 (0.82). MA50 whipsaws too aggressively (81 cash months). Removing the filter results in −66% drawdown. The MA filter is the single most impactful parameter.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| Top 10 | +19.8% | +11.3% | 0.75 | 1.22 | -37.4% | 22.3% | $4,590,545 |
| Top 15 | +18.2% | +9.6% | 0.77 | 1.12 | -33.6% | 19.8% | $3,420,628 |
| Top 20 (base) | +17.6% | +9.1% | 0.81 « | 1.19 | -31.1% | 18.0% | $3,092,210 |
| Top 25 | +16.1% | +7.6% | 0.77 | 1.13 | -28.7% | 17.1% | $2,377,066 |
| Top 30 | +15.3% | +6.8% | 0.75 | 1.09 | -28.0% | 16.4% | $2,046,037 |
| Top 50 | +13.4% | +4.9% | 0.70 | 1.02 | -24.6% | 14.8% | $1,431,959 |
Top 20 maximises Sharpe. Top 15 delivers more CAGR but −40% drawdown. Top 10 is too concentrated (−48% DD). Beyond 30 the signal dilutes.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| 6-1 | +15.1% | +6.5% | 0.69 | 1.00 | -39.4% | 17.6% | $1,949,322 |
| 9-1 (base) | +16.7% | +8.1% | 0.76 « | 1.08 | -33.8% | 18.1% | $2,606,819 |
| 12-1 | +15.8% | +7.2% | 0.68 | 1.08 | -30.2% | 18.7% | $2,219,724 |
| 12-2 | +13.5% | +4.9% | 0.58 | 0.92 | -33.8% | 18.1% | $1,447,755 |
9-1 is optimal among skip-1 variants. 12-2 is clearly inferior (stale signal). 6-1 underperforms — but this changes when we remove the skip month entirely (see Section VIII).
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| >$200M | +15.2% | +6.6% | 0.54 | 0.95 | -44.7% | 22.6% | $1,990,435 |
| >$500M | +14.7% | +6.1% | 0.55 | 0.87 | -34.0% | 21.2% | $1,821,074 |
| >$1B | +15.5% | +6.9% | 0.60 | 0.93 | -33.1% | 20.9% | $2,102,514 |
| >$2B | +17.0% | +8.5% | 0.71 | 1.00 | -33.9% | 19.8% | $2,774,815 |
| >$5B (base) | +17.6% | +9.1% | 0.81 « | 1.19 | -31.1% | 18.0% | $3,092,210 |
| >$10B | +14.8% | +6.3% | 0.69 | 1.04 | -25.4% | 17.1% | $1,862,321 |
| >$20B | +11.3% | +2.8% | 0.56 | 0.85 | -22.7% | 14.8% | $970,034 |
>$10B achieves the best Sharpe (0.85) and Sortino (1.28). Smaller caps generate more CAGR but with higher drawdowns and volatility. >$200M and >$500M perform poorly. >$20B kills alpha (universe too small). >$5B is the balanced middle ground.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| Skip 0 | +17.6% | +9.1% | 0.81 « | 1.19 | -31.1% | 18.0% | $3,092,210 |
| Skip 1 (base) | +15.1% | +6.5% | 0.69 | 1.00 | -39.4% | 17.6% | $1,949,322 |
| Skip 2 | +14.1% | +5.6% | 0.63 | 0.83 | -36.0% | 17.5% | $1,636,905 |
Low sensitivity. Skip 0 and skip 1 produce identical Sharpe ratios. Skip 2 degrades all metrics. This finding motivated the pure momentum investigation in the next section.
The low skip-month sensitivity prompted a systematic comparison of pure (skip 0) vs standard (skip 1) across all lookback windows.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| 6-0 | +17.6% | +9.1% | 0.81 « | 1.19 | -31.1% | 18.0% | $3,092,210 |
| 6-1 | +15.1% | +6.5% | 0.69 | 1.00 | -39.4% | 17.6% | $1,949,322 |
| 9-0 | +17.0% | +8.5% | 0.75 | 1.11 | -35.5% | 18.7% | $2,782,618 |
| 9-1 (base) | +16.7% | +8.1% | 0.76 | 1.08 | -33.8% | 18.1% | $2,606,819 |
| 12-0 | +16.2% | +7.7% | 0.70 | 1.09 | -28.3% | 18.9% | $2,400,939 |
| 12-1 | +15.8% | +7.2% | 0.68 | 1.08 | -30.2% | 18.7% | $2,219,724 |
6-0 (pure 6-month momentum) achieves Sharpe 0.88 — the highest of any single variant tested. It beats the 9-1 base across every metric: +1pp CAGR, +0.06 Sharpe, 3pp less drawdown. The skip-1 convention, standard in academic literature, actually hurts 6-month momentum by removing the most recent — and most informative — month.
With 6-0 established as the optimal signal, we sweep market cap and portfolio size to find the best combination.
| Mktcap | Top 10 | Top 15 | Top 20 | Top 25 |
|---|---|---|---|---|
| >$5B | 0.75 | 0.77 | 0.81 | 0.77 |
| >$7.5B | 0.81 | 0.82 | 0.76 | 0.73 |
| >$10B | 0.83 | 0.75 | 0.69 | 0.69 |
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | H1 Sh | H2 Sh | $100K → |
|---|---|---|---|---|---|---|---|---|---|
| >$10B top10 | +20.4% | +11.9% | 0.83 « | 1.26 | -28.7% | 20.9% | 0.97 | 0.80 | $5,088,328 |
| >$7.5B top15 | +18.3% | +9.8% | 0.82 | 1.22 | -30.4% | 18.8% | 0.97 | 0.75 | $3,512,679 |
| >$5B top20 | +17.6% | +9.1% | 0.81 | 1.19 | -31.1% | 18.0% | 1.01 | 0.69 | $3,092,210 |
| >$7.5B top10 | +20.3% | +11.7% | 0.81 | 1.25 | -32.2% | 21.3% | 0.87 | 0.82 | $4,976,134 |
| >$5B top25 | +16.1% | +7.6% | 0.77 | 1.13 | -28.7% | 17.1% | 0.97 | 0.65 | $2,377,066 |
| >$5B top15 | +18.2% | +9.6% | 0.77 | 1.12 | -33.6% | 19.8% | 0.98 | 0.65 | $3,420,628 |
| >$7.5B top20 | +16.1% | +7.5% | 0.76 | 1.09 | -29.3% | 17.2% | 0.99 | 0.63 | $2,340,566 |
| >$5B top10 | +19.8% | +11.3% | 0.75 | 1.22 | -37.4% | 22.3% | 0.86 | 0.72 | $4,590,545 |
>$5B is the sweet spot. Sharpe is consistently high across all concentration levels. >$10B has slightly lower CAGR due to a smaller universe. The grid confirms that the 6-0 finding is robust, not an artefact of a single parameter combination.
Testing which filters actually contribute value by removing them one at a time.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| top20 MA+EBIT (base) | +17.6% | +9.1% | 0.81 « | 1.19 | -31.1% | 18.0% | $3,092,210 |
| top10 MA+EBIT | +19.8% | +11.3% | 0.75 | 1.22 | -37.4% | 22.3% | $4,590,545 |
| top20 MA only | +16.3% | +7.8% | 0.65 | 0.99 | -36.9% | 20.4% | $2,465,618 |
| top10 MA only | +18.5% | +9.9% | 0.62 | 0.92 | -44.9% | 25.0% | $3,612,843 |
| top20 EBIT only | +18.7% | +10.2% | 0.70 | 1.01 | -55.3% | 22.4% | $3,771,980 |
| top10 EBIT only | +21.3% | +12.8% | 0.68 | 1.05 | -58.0% | 26.8% | $5,989,632 |
| top20 Raw | +17.8% | +9.3% | 0.59 | 0.90 | -57.0% | 25.2% | $3,220,220 |
| top10 Raw | +19.1% | +10.6% | 0.53 | 0.79 | -62.3% | 30.2% | $4,078,985 |
Both filters are essential. Removing MA200: max drawdown explodes to −55/62%. Removing EBIT: Sharpe drops 0.10–0.15, volatility rises 3–5pp. Without any filters: Sharpe 0.53, −62% drawdown. The filters are not optional.
Does momentum work in smaller stocks? We cap the universe at $5B maximum to exclude large and mega caps entirely.
| Variant | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | $100K → |
|---|---|---|---|---|---|---|---|
| $2B-$5B | +16.1% | +7.5% | 0.76 « | 1.08 | -27.7% | 17.2% | $2,341,635 |
| $1B-$5B | +14.8% | +6.3% | 0.62 | 0.98 | -27.0% | 19.1% | $1,872,762 |
| $500M-$5B | +13.5% | +5.0% | 0.51 | 0.81 | -29.2% | 20.7% | $1,463,932 |
| $200M-$5B | +14.7% | +6.2% | 0.53 | 0.95 | -43.9% | 22.1% | $1,834,485 |
Momentum works better in large caps. Capping at $5B reduces Sharpe from 0.81 to 0.76 in the best case ($2B–$5B). H2 Sharpe collapses. The alpha is concentrated in large caps with strong momentum.
To address the concern that returns are driven by a handful of mega-cap tech stocks, we analysed the portfolio holdings from 2020–2026.
| Ticker | Months | Name | Sector | Mag7 |
|---|---|---|---|---|
| NVDA | 23 | NVIDIA CORP | Technology | Yes |
| APP | 20 | APPLOVIN CORP | Technology | |
| TSLA | 17 | TESLA INC | Consumer Cyclical | Yes |
| PLTR | 17 | PALANTIR TECHNOLOGIES INC | Technology | |
| CVNA | 16 | CARVANA CO | Consumer Cyclical | |
| HOOD | 14 | ROBINHOOD MARKETS INC | Financial Services | |
| SMCI | 13 | SUPER MICRO COMPUTER INC | Technology | |
| TPL | 12 | TEXAS PACIFIC LAND CORP | Energy | |
| VRT | 12 | VERTIV HOLDINGS CO | Industrials | |
| VST | 12 | VISTRA CORP | Utilities | |
| CROX | 10 | CROCS INC | Consumer Cyclical | |
| AMD | 9 | ADVANCED MICRO DEVICES INC | Technology | |
| FCX | 9 | FREEPORT-MCMORAN INC | Basic Materials | |
| THC | 9 | TENET HEALTHCARE CORP | Healthcare | |
| CIEN | 8 | CIENA CORP | Technology | |
| GE | 8 | GE AEROSPACE | Industrials | |
| DVN | 8 | DEVON ENERGY CORP | Energy | |
| CAR | 8 | AVIS BUDGET GROUP INC | Industrials | |
| FICO | 8 | FAIR ISAAC CORP | Technology | |
| UI | 8 | UBIQUITI INC | Technology |
The strategy is not a Magnificent Seven proxy. Mag7 stocks appear in only 0.9 of 20 positions per month on average. The portfolio rotates through distinct regimes: COVID winners (2020), meme/value stocks (2021), energy (2022), AI infrastructure (2023–24), memory/semiconductor cycle (2025–26). NVDA, the most frequent Mag7 holding, appears in only 23 of 59 invested months.
| Year | 6-0 >$5B top20 | 9-1 >$5B top20 | S&P 500 | 6-0 Alpha | 9-1 Alpha |
|---|---|---|---|---|---|
| 2005 | +45.9% | +26.0% | +3.0% | +42.9% | +23.0% |
| 2006 | -0.4% | +6.5% | +13.6% | -14.1% | -7.1% |
| 2007 | +44.5% | +35.0% | +3.5% | +41.0% | +31.4% |
| 2008 | +0.0% | +0.0% | -38.5% | +38.5% | +38.5% |
| 2009 | +18.1% | +26.3% | +23.5% | -5.4% | +2.9% |
| 2010 | +25.9% | +25.2% | +12.8% | +13.1% | +12.4% |
| 2011 | -4.6% | -10.1% | -0.0% | -4.6% | -10.1% |
| 2012 | +16.3% | +25.5% | +13.4% | +2.9% | +12.1% |
| 2013 | +31.5% | +42.8% | +29.6% | +1.9% | +13.2% |
| 2014 | +16.6% | +11.3% | +11.4% | +5.3% | -0.1% |
| 2015 | +3.9% | +2.8% | -0.7% | +4.7% | +3.5% |
| 2016 | +13.9% | +20.1% | +9.5% | +4.4% | +10.5% |
| 2017 | +30.3% | +37.6% | +19.4% | +10.9% | +18.2% |
| 2018 | -0.6% | -7.1% | -6.2% | +5.6% | -0.9% |
| 2019 | +6.2% | +8.2% | +28.9% | -22.7% | -20.7% |
| 2020 | +53.2% | +45.8% | +16.3% | +36.9% | +29.6% |
| 2021 | +1.7% | +2.7% | +26.9% | -25.2% | -24.2% |
| 2022 | -3.7% | -11.4% | -19.4% | +15.8% | +8.0% |
| 2023 | +11.9% | +0.5% | +24.2% | -12.3% | -23.8% |
| 2024 | +79.8% | +73.3% | +23.3% | +56.5% | +50.0% |
| 2025 | +15.1% | +23.8% | +16.4% | -1.3% | +7.4% |
| 2026 | +2.9% | +4.0% | +0.5% | +2.4% | +3.5% |
| Parameter | CAGR Range | Spread | Sharpe Range | Spread | Sensitivity |
|---|---|---|---|---|---|
| MA period (50–300 + none) | +11.0% → +18.7% | 7.7pp | 0.47 → 0.81 | 0.34 | High |
| Number of stocks (10–50) | +13.4% → +19.8% | 6.4pp | 0.70 → 0.81 | 0.11 | High |
| Lookback (6-1 to 12-2) | +13.5% → +16.7% | 3.2pp | 0.58 → 0.76 | 0.18 | Moderate |
| Market cap ($200M–$20B) | +11.3% → +17.6% | 6.3pp | 0.54 → 0.81 | 0.27 | High |
| Skip month (0–2) | +14.1% → +17.6% | 3.5pp | 0.63 → 0.81 | 0.18 | Moderate |
| Pure vs standard (6-0 to 12-1) | +15.1% → +17.6% | 2.5pp | 0.68 → 0.81 | 0.13 | Moderate |
| Strategy | CAGR | Alpha | Sharpe | Sortino | Max DD | Vol | H1 Sh | H2 Sh | $100K → |
|---|---|---|---|---|---|---|---|---|---|
| 6-0 >$5B top20 MA200+EBIT | +17.6% | +9.1% | 0.81 | 1.19 | -31.1% | 18.0% | 1.01 | 0.69 | $3,092,210 |
| 6-0 >$5B top10 MA200+EBIT | +19.8% | +11.3% | 0.75 | 1.22 | -37.4% | 22.3% | 0.86 | 0.72 | $4,590,545 |
| 6-0 >$10B top10 MA200+EBIT | +20.4% | +11.9% | 0.83 | 1.26 | -28.7% | 20.9% | 0.97 | 0.80 | $5,088,328 |
| 9-1 >$5B top20 MA200+EBIT (old base) | +16.7% | +8.1% | 0.76 | 1.08 | -33.8% | 18.1% | 0.99 | 0.61 | $2,606,819 |
Recommended configuration: 6-0 >$10B top 10 with MA200 and EBIT > 0.
This strategy delivers +20.4% CAGR with a 0.83 Sharpe ratio and -28.7% max drawdown over 21 years — the best risk-adjusted return in the table. It has the highest CAGR, highest Sharpe, lowest drawdown, and the most sub-period stability (H1 Sharpe 0.97, H2 0.80).
For broader diversification, 6-0 >$5B top 20 offers lower volatility (18.0%) and more positions, at the cost of 2.8% CAGR and 0.02 Sharpe.