Testing the 5-10-20 Trend-Following Strategy

Includes: QQQ, SPY
by: Michael Stokes
This is a test of a trend-following system from the (now defunct?) blog Dk Report: the 5-10-20 strategy, hailed by Dk as “perhaps the granddaddy of all market timing systems.” That’s a tall order.

I’ll put this granddaddy to the test against a classic trend-follower, 50/200-day moving average crossovers, here.

Strategy Rules:

Dk applied the strategy to the Nasdaq Composite and I’ll do the same here:

  • Go long at today’s close if both the 5 and 10-day exponential moving average (EMA) cross above the 20-day EMA.
  • Close the position at today’s close when both the 5 and 10-day EMA cross below the 20-day EMA.

This strategy does NOT go short.

click to enlarge


The graph above shows the Nasdaq (blue) versus the 5-10-20 strategy (red) from 1972. This test is frictionless and assumes a return on cash equal to half the nearest 3-month treasury yield.

And for the number-lovers:

click to enlarge


Over the last 37 years, this strategy significantly increased returns and reduced drawdowns and downside volatility with relatively low turnover (4.4 round-trips per year). It hasn’t been a magic bullet, underperforming the market in 16 of those years, but it has sidestepped every major bear turn, including our most recent.

To illustrate, the next graph shows historical drawdowns over the same period for the strategy (red) vs the index (blue).

click to enlarge


Finally, the last graph below shows that the 5-10-20 strategy (red) has been much more effective than the classic 50/200-day EMA crossover approach (blue) on this particular index.

click to enlarge


Granddaddy? Maybe a bit much. Very good? Most definitely.

In a follow up post I’ll look at the 5-10-20 strategy applied to the Nasdaq 100 (which traders would be much more likely to trade than the full composite) as well as the S&P 500.

Stay tuned, there's more to follow.

[Geek note: There are two generally accepted methods for calculating an EMA that produce slightly different results. DK’s strategy is using the (2 / (Period + 1)) method. If your charting program uses the ((1 / Period) * 2) method, simply increase my period by one. For example, if I’ve used a 10-day EMA, the alternate EMA would use an 11-day EMA.]