Investing

Can You Beat the S&P 500 With $200 a Month? I Backtested 3 Strategies Since 2010

Yes, at least on paper. Buying last year’s ten best S&P 500 stocks every January would have doubled the index. But the ride was bumpier, and the test has blind spots.

Poshak Pathak · · 8 min read

If you had put $200 a month into the S&P 500’s ten best-performing stocks every year since January 2010, your $40,400 would be worth about $319,000 today. The same money in SPY, the most popular S&P 500 fund, would be worth about $157,000.

I wanted to know if a simple, rules-based stock-picking plan could beat just buying the index. So I wrote a backtest in Python and ran it on almost 17 years of monthly price data for every stock in the S&P 500. I tested three plans side by side, all with the same $200 every month.

The short version: both stock-picking plans won, but the bigger win came with a much bumpier ride, and the test has blind spots that probably make the results look better than they really were. Here’s what I found.

$40,400Money put in$200 a month, January 2010 to October 2026.
$156,857SPYThe benchmark. About 14.5% a year.
$232,459Biggest 10 by size48% ahead of SPY, with about the same worst drop.
$318,613Best 10 performersAbout 2× SPY, but fell 33% at its worst.

The three strategies

Every strategy invests exactly $200 on the first trading day of each month, starting January 2010. Nothing is ever sold, so each plan just keeps buying and holding.

StrategyWhat it buysHow the $200 is splitWhen the list changes
SPY (benchmark)The whole S&P 500 through one fundAll $200 into SPYNever
Best 10 performersThe 10 S&P 500 stocks with the biggest price gain over the previous 12 months$20 into eachEvery January
Biggest 10 by sizeThe 10 largest S&P 500 companies by market value, like SPY’s own top 10By size: bigger companies get moreEvery January

The best-performers plan is a momentum strategy: it bets that stocks that have been rising keep rising. The biggest-10 plan is a concentration bet: it owns only the giants that already dominate the index.

How the backtest works

The backtest is a Python script using pandas and yfinance. It downloads monthly prices for every current S&P 500 stock and SPY, adjusted for splits and dividends, so the returns include reinvested dividends.

The most important rule is no hindsight. It’s easy to “prove” any strategy works by picking stocks you already know did well. So:

All three plans get the same deposits on the same dates, so the comparison is fair.

The results

The best-performers plan finished with about twice as much money as SPY, and the biggest-10 plan finished about 48% ahead.

$200 a month in the best 10 performers grew to about $319k, twice SPY

Year-end portfolio value, 2010 to October 2026, $40,400 deposited in total. Hover for each year.

Best 10 performersBiggest 10 by sizeSPYMoney put in
Source: my backtest of monthly yfinance prices, January 2010 to October 2026, dividends reinvested.
StrategyEnding valueAnnual returnWorst drop
SPY$156,857~14.5%−22%
Biggest 10 by size$232,459~18.4%−21%
Best 10 performers$318,613~21.5%−33%

Annual return is the steady yearly rate that would turn $200 a month into each ending value. Worst drop is the largest fall in portfolio value from a peak, measured month to month.

Two things stand out. First, the biggest-10 plan beat SPY without extra risk: its worst drop was about the same as the index’s. Second, the best-performers plan earned its extra return the hard way. In 2022 it fell 28% while SPY fell 18%.

Digging deeper

The ending numbers hide how differently the two plans got there. Here are five things I found once I looked year by year and stock by stock.

1. The best-performers plan won most years. The biggest-10 plan won only once big tech took over.

Best 10 performers beat SPY in 14 of 17 years; the biggest 10 mostly won after 2016

Each year’s return minus SPY’s return, in percentage points.

Beat SPY that yearTrailed SPY
Source: my backtest, calendar-year returns for each strategy minus SPY, 2010 to October 2026. 2026 is January through October. Returns are money-weighted for monthly $200 deposits.

The best-performers plan beat SPY in 14 of 17 years, but its three losing years were painful, especially 2011 (−14 points) and 2022 (−10 points). The biggest-10 plan trailed SPY in five of its first six years, when the largest companies were Exxon, GE, AT&T and Walmart. From 2016 on, as Apple, Microsoft, Google and Amazon took over the top of the index, it beat SPY in 9 of 11 years.

2. Two stocks made 40% of the best-performers portfolio

The plan owned 117 different stocks over 17 years, but a handful did almost all the work. The top 5 positions produced 56% of all the gains.

StockTotal put inValue todayShare of portfolio
Nvidia (NVDA)$1,680$73,97623%
Micron (MU)$1,160$52,97317%
Apple (AAPL)$480$11,9634%
Netflix (NFLX)$720$11,4514%
Amazon (AMZN)$480$10,2993%

That’s the nature of momentum: most picks are fine, a few are huge. Remove Nvidia and Micron and the portfolio would be worth about $192,000. That still beats SPY’s $157,000, but the gap shrinks from 2× to about 1.2×. Only 19 of the 117 positions lost money, and together they lost just $1,316, because each loser only got $20 a month for a year.

3. The biggest-10 plan is really a bet on three companies

Apple, Microsoft and Google make up 66% of the biggest-10 portfolio today. Apple alone is 30%. It only ever owned 21 different stocks, and just one of them lost money. That concentration is why it beat SPY. It’s also the main risk: if those few companies stumble, there’s little else to fall back on.

4. The edge holds up no matter when you start

A common trap in backtests is a lucky start date. So I reran every strategy starting each January from 2010 through 2023, always ending in October 2026.

Start yearPut inSPYBiggest 10Best 10 performers
2010$40,400$156,857$232,459$318,613
2014$30,800$85,146$119,715$198,111
2018$21,200$43,606$53,188$72,148
2020$16,400$28,930$32,671$38,995
2022$11,600$17,928$20,323$21,334
2023$9,200$13,103$13,592$13,958

Both plans beat SPY from every one of the 14 start years. The edge shrinks with shorter windows, though: starting in 2023, the best-performers plan was only 7% ahead. Momentum needs years, and a few big winners, to pay off.

5. Updating the list every month doesn’t help

What if, instead of refreshing the list once a year, you refreshed it every month? In January you’d buy last December’s top 10, in February January’s top 10, and so on. I reran both plans that way, using the same rules checked monthly.

Strategy (start Jan 2010)Updated yearlyUpdated monthlyDifferent stocks owned
Biggest 10 by size$232,459$233,14721 → 26
Best 10 performers$318,613$288,933117 → 263

For the biggest-10 plan it makes almost no difference, because the largest companies barely change from month to month. For the best-performers plan, monthly updates more than doubled the number of stocks owned and cost about $30,000. Each month adds whatever just got hot, and many of those cool off soon after. Starting in 2017 instead, the monthly version roughly tied the yearly one ($99,569 vs. $99,258) but had a deeper worst drop: −30% vs. −26%.

The lesson: more trading isn’t better. A once-a-year update gets the same or better results with a twelfth of the work.

Why these results are probably too good

I tried hard to keep hindsight out, but no backtest is perfect. These are the biggest reasons the real-world results would likely be worse:

None of these erase the result, but they mean I’d treat the 2× figure as a best case, not a forecast.

Methodology and disclaimer

Data: monthly prices from Yahoo Finance via yfinance, January 2009 to October 2026, adjusted for splits and dividends. S&P 500 membership and join dates come from Wikipedia’s list of S&P 500 companies. Company sizes for the biggest-10 plan are price × shares outstanding, using Yahoo’s share-count history.

Rules: $200 invested on the first trading day of every month from January 2010. Picks are set each January using only data available then. Positions are never sold. Fractional shares, no fees, no taxes.

Code: the backtest is two short Python scripts, one for each stock-picking plan. Both compare against SPY using the same deposits.