This type of strategy is actually the simplest and extremely easy to backtest and use. We have a look at two SMAs (Simple Moving Average). As soon as a fast moving SMA crosses above a slowly moving SMA, we buy. We sell the stock as soon as the opposite occurs, i.e. the fast SMA crosses below the slow SMA. In the backtesting, I assume that we enter/exit on open of the next day.
This is illustrated in the graph below:
The main issue is a choice of SMAs. The well-known pair is 50-day SMA and 200-day SMA, and this pair has been tested here. Let us choose the testing period to be between 1 January 2000 – 1 September 2017.
At first, we will test stocks that are currently in S&P 500 index. In addition, we will exclude stocks in which price is lower than 20 USD and larger than 500 USD. Finally, we will only select stocks with trading volume greater than 100 000.
Please note that this may be misleading since some of these stocks were not in this index in the tested period, as well as some of them were not traded during the whole period. Of course, the number of trades will be extremely huge so in practice it is impossible to follow the strategy as it is. Also, we do not use any stop-losses – something you should never use in your trading. Nevertheless, we can assume that the conclusions will still teach us something.
Here are some selected results (using NinjaTrader software using data from Kinetick)
|Number of trades||4502|
|Average time in market||298 days|
Now, let us do the same for stocks from Russell 3000 index. The results are as follows:
|Number of trades||10856|
|Average time in market||275 days|
As we can see, we earn some money but the main concern is perhaps the maximum drawdown (more than 35%). This may be less appealing for many traders because they have to be prepared for large losses and wait for a long time until they start earning money again. Therefore, it is difficult to recommend this strategy in the current form.