The Momentum Portfolio

A simple, fully mechanical strategy: rank every US stock above $1B market cap by its 12-month price momentum, skipping the most recent month, hold the top 25 equal-weight, and re-rank at every month-end. No forecasts, no discretion. We tested it point-in-time on three separate windows back to 2009 — including two we never touched while designing it. It beat the S&P 500 in 2016–2026 and 2009–2012, and lost to it in 2012–2016 (9.7% vs 11.4%/yr). Over the full 2009–2026 window it earned 17.1%/yr after 0.3%/trade costs vs the index’s 13.4% — real, but regime-dependent: the edge comes from the strong windows and disappears entirely in the weak one, with drawdowns half again deeper than the index. We publish the loss next to the wins — the honest caveats are below, right next to the results.

🔒

The 25 holdings are for Premium members

The full performance and backtest below are free for everyone. Premium unlocks this month’s 25 positions and the portfolio check, updated automatically at every month-end rebalance — $19/month or $149/year, with a 14-day free trial.

Start 14-day free trial
Already a member? Sign in

The backtest — three independent windows

Same rules applied point-in-time: universe membership and market cap use only data knowable at each rebalance (annual filings with a 91-day lag, and that day’s price). The 2012-2016 and 2009-2012 windows were run after the strategy was fixed on 2016-2026 data — a true out-of-sample check. The strategy won 2009-2012 and lost 2012-2016: momentum rode the 2013-2015 mid-cap biotech run-up straight into the late-2015 crash. One win, one loss out-of-sample — that is the record, and we show both.

The chart shows total return since the selected period started, after 0.3%/trade costs on the strategy side — the strategy (green) against the S&P 500 (SPY, grey) and the Nasdaq-100 (QQQ, purple). The CAGR figures above are that same result expressed as a constant annual rate; the % scale on the chart isn’t directly comparable to the yearly stats. Switch the tabs to see the full 2009–2026 run or each individual window.

The harder benchmark — our strategies vs the Nasdaq-100

The S&P 500 is the standard yardstick; the Nasdaq-100 (QQQ) is the harder one — a tech-concentrated index that compounded over 20%/yr across this whole period. Here are both of our strategies against it, after 0.3%/trade costs on the strategy side (the indices are buy-and-hold, so costs on them are ~zero). Green means the cost-adjusted strategy beat QQQ in that window; red means it lost. The honest summary: the Nasdaq-100 is close to unbeatable in this period, and only Quality Momentum manages it — QM edges QQQ over the full 17 years after costs (20.9% vs 20.3%) and beats it clearly in 2016–2026 (22.9% vs 20.4%); Momentum beats it in 2016–2026 only; both strategies lose to it in 2012–2016. If your goal is maximum growth and you can stomach a −34% drawdown and heavy single-sector concentration, buying QQQ was historically an excellent trade, and we say so. What the strategies offer instead is sector-diversified exposure with an edge over the S&P 500 (Quality Momentum +7.5pp/yr after costs on the full window) — a different risk profile, not a Nasdaq substitute. Beating a diversified index is hard; beating a concentrated index that happened to hold the decade’s biggest winners is harder — which is why we show it.

Same backtest, same point-in-time universe and $5M liquidity floor for both strategies. Gross figures (before costs) are on each strategy’s own page. Drawdowns are peak-to-trough on monthly closes, before costs. QQQ’s own worst drawdown: see the far-right column.

Methodology — and what this test can and cannot claim

  • Signal: 12M-1M price momentum — the close one month before the rebalance divided by the close thirteen months before, minus one. The most recent month is skipped because short-term returns tend to reverse (the standard academic convention). Nothing else: no earnings, no scores, no opinions.
  • Universe: US-listed stocks with market cap ≥ $1B at the rebalance date, mega caps and mid caps competing in one pool. In testing, letting the whole spectrum compete beat restricting to either group alone. One tradability guard on top: a name must have a median daily dollar volume of at least $5M over the three complete months before the rebalance — measured point-in-time, so no look-ahead. A stock trading a few hundred thousand dollars a day has a bid-ask spread several times our modelled 0.3% cost; keeping it in the backtest would book returns nobody could have collected. The floor exists to keep the cost assumption honest, not to boost returns.
  • Portfolio: the top 25 by momentum, equal weight, re-ranked every month-end. Typically 5-10 names change per month, not the whole basket. Wider baskets (25) survived out-of-sample; concentrated ones (top 5-10) looked better in-sample and failed out-of-sample, so we don’t use them.
  • What we tried and rejected, in the open: per-stock trailing stop-losses (whipsawed, made results worse), market regime filters — 200-day trend, partial exposure, volatility-index tiers (each helped one window, hurt another; none passed both), quality-fundamental gates on top of momentum (diluted returns at monthly cadence). The bankruptcy check was the one defensive test that passed: in nine real collapses (2020-2023), momentum turned deeply negative 3-12 months before the end, so the monthly re-rank had already rotated out of every one of them.
  • Where this page came from: our original test asked whether ranking stocks by fundamentals beats the market. Honest answer: it didn’t (top-quintile 11.3%/yr vs SPY 13.5% in the mega-cap universe, 2016-2026). We published nothing and kept iterating; the momentum finding above is what survived every check we could throw at it.
Honest limitations. The universe is every SEC filer listed on a US exchange with at least three years of filings and usable price history — no size cutoff at all, foreign issuers (20-F/40-F) included (~4,350 names, the same registry the site’s screener and stock pages run on). It still under-represents companies that delisted or were acquired along the way, and that kind of gap flatters backtests. We take this seriously: each time we widened the pool the numbers came down and we published the lower ones (an early ~600-name draft showed 17.8%/yr for 2012-2016; the full universe shows 9.7%). We also publish our mistakes: an earlier revision of this page briefly showed 5.8% for that window and “a tie with the index” overall — that came from a data defect we then found and fixed, where split-adjusted prices were multiplied by unadjusted share counts, silently dropping the era’s biggest winners (pre-split NVDA, Tesla, Apple) out of the point-in-time universe while letting reverse-split microcaps in. Every figure on this page is computed with split-corrected share counts; the correction moved results in both directions and we re-published everything. The out-of-sample record is +4.5pp/yr (2009-2012) and −1.7pp/yr (2012-2016): the honest expectation is a modest edge over long horizons with multi-year stretches of losing to the index — not the +11pp of the main window. Returns are price-only (dividends excluded on both sides — which understates the SPY side more than the basket). The cost-adjusted CAGR assumes 0.3% per trade, and the $5M point-in-time liquidity floor above is what makes that assumption defensible. Max drawdowns ran deeper than the index (-31.8% vs -23.8% on the main window, -35.5% vs -10.9% in the losing 2012-2016 window) — momentum strategies are known to crash hardest when markets whipsaw. The variant of this idea with the strongest full-universe record is the Quality Momentum strategy — the same momentum signal behind a profitability gate. Past results are no guarantee of future results. Educational only, not investment advice.