Does buying strong stocks after a short dip beat holding the S&P 500?
Didn't work · 18 Oct 2026 · 6 min read
Short answer: No. A carefully built swing-trading system made about 1.5% a year from 2015 to 2021, while simply holding the S&P 500 made 14.9%. Its picks were no better than random ones.
The most popular swing-trading recipe
If you read books or watch videos about swing trading, one recipe comes up again and again:
- Stick to the strongest stocks, the ones already going up.
- Wait for a small dip, so you buy a little cheaper.
- Buy only when the price turns back up, so you don't catch a stock that is still falling.
- Protect yourself with a stop-loss, and take your profit at a target.
Every step sounds sensible. My first attempt, a simpler stock-scoring tool, had failed, so this time I built the recipe properly, the way experienced swing traders describe it, and tested it on seven years of S&P 500 stocks.
It made about 1.5% a year. Simply holding the S&P 500 made 14.9% a year. Over those seven years, 100,000 would have grown to about 111,000 with the system, and to about 264,000 by doing nothing.
The system, step by step
Every day, across all the companies in the S&P 500:
- Strong stocks only. The stock had risen more than about 70% of the others over the last three to six months, was above its 200-day average price, and was within 25% of its high for the year.
- A short dip. It had just dropped a meaningful amount below its recent high, but was still above its 50-day average.
- The buy signal. The first day it closed above the previous day's high. Buy the next morning, but not above a set price.
- The stop-loss. Just below the low of the dip. Each trade was sized so that if the stop was hit, I would lose 0.75% of my account, no more.
- Selling. Sell when the gain reaches twice the amount risked, or after 10 trading days, whichever comes first. (I also tried selling half at the target and letting the rest run for up to 20 days. It did no better.)
- Spreading the risk. At most six positions at a time, and at most two from the same industry.
- Costs. 0.05% on every buy and sell.
The test used the companies that were actually in the S&P 500 on each day, not today's list. Using today's list would only include the winners that stayed in, which makes any test look better than it is.
How I tested it: one rule at a time
Instead of testing the whole system at once, I built it up one rule at a time, like climbing a ladder.
The first step uses no skill at all: it buys any S&P 500 stock on random days, with the same stop-losses, targets and position sizes as the full system. I ran that 200 times with different random picks. This shows what the trading machinery earns by luck.
Each step up adds one rule. If a rule is any good, adding it should do better than the step before. Here is what happened, 2015 to 2021:
| Step | What it adds | Return a year | 100,000 became about |
|---|---|---|---|
| 1 | Random days, any S&P 500 stock | 4.9% | 140,000 |
| 2 | Random days, strong stocks only | 2.7% | 121,000 |
| 3 | Strong stocks, after a dip, on the buy signal | 1.8% | 113,000 |
| 4 | The full system, with its selling rule | 1.5% | 111,000 |
| Just holding the S&P 500 | 14.9% | 264,000 |
None of the rules helped. Picking strong stocks did no better than picking any stock. The dip and the buy signal added nothing. I also tried trading only when the overall market was rising; that made things worse.
("Return a year" is the average yearly growth, compounded.)
"But it was safer, wasn't it?"
Not really. The system's worst drop from a peak was −14% to −21%, against −34% for the index. But that was only because it was out of the market about a third of the time and each trade was small. It wasn't protecting anything.
And being in cash isn't the whole explanation either. When I put the spare cash into the S&P 500 instead of leaving it idle, the system still made only about 3.3% a year. The trades themselves earned almost nothing.
Was my test broken?
When something fails this badly, it's worth checking the test. So I fed the system "cheating" buy signals that already knew the next two weeks of prices. With the same stops, targets and costs, those trades made enormous profits. So the machinery worked fine. The problem was the signals: they said nothing about what would happen next.
I also looked at the signals on their own, without any stops or targets. One, five and ten days after a buy signal, the chosen stocks did no better than the average stock on the same day.
Maybe it works on some stocks?
A natural thought: perhaps the recipe suits some stocks and not others. So I tried trading it only on the stocks where it had worked best over the previous one to three years, re-choosing every month.
It didn't help. Each stock gave only one or two trades a year, far too few to tell skill from luck, and a stock's past record with the system said nothing about its next month.
What about 2022 onwards?
I had kept the years from 2022 aside as a final exam, to be taken only if the system passed on 2015–2021. It didn't pass, so I never ran it on those years.
The closest recent evidence comes from my earlier stock-scoring tool, which I traded on 36 large, well-known US stocks from October 2023 to October 2026. It used the same kind of plan: buy at a chosen level, with a stop-loss and a target, held for up to one or two weeks. I compared it with the same number of trades on random days, 1,000 times over. On Nvidia:
| Nvidia, Oct 2023 – Oct 2026 | Trades held up to 1 week | Trades held up to 2 weeks |
|---|---|---|
| The tool's plans (15 trades) | −8.4% | −2.9% |
| Same number of trades on random days (typical) | +9.0% | +11.5% |
| Just owning Nvidia | about +407% | about +407% |
Across all 36 stocks, it clearly beat random timing on only one, about what luck would give. It was in the market on only 0–12% of days, and simply holding beat trading on almost every stock. Those 36 stocks were picked because they had done well, so "just hold them" proves nothing either. But short-term timing didn't help in recent years any more than in 2015–2021.
A few caveats
The main test covers 2015–2021, years when the market rose strongly, which is hard on any system that sits in cash part of the time. Some companies that later went bust were missing from the free price data, which if anything flatters the system. And the recent evidence comes from a related tool, not this exact system.
What I took from it
Over days and weeks, large US stocks moved in ways these signals could not predict. Stop-losses and profit targets can't rescue buy signals that carry no information. And sitting in cash much of the time is an expensive habit when the market rises most years.