The backtesting is based on automated trading, that is, my computer programs select the best entries and assume that we buy a stock on day open. This may not be optimal in practice due to a high spread between bid and ask as the market opens. Besides, a trader may wish to wait for a lower entry price (even though he/she may lose the trade if the price never retraces intraday).

Moreover, my real ideas are often manually tuned. For instance, I reject many signals. Nevertheless, the final conclusions should not differ significantly and the statistical results still show us a lot.

In the backtesting shown on this website, the following rules were followed:

  • Entries occur usually between 1 January 2000 and 1 September 2017, but the exits are allowed until more or less the middle of 2018. In this period, two bear markets occurred, which resulted in worse performance of the tested strategies. This is advantageous since the same may happen in our real trading afterwards.
  • Errors may happen: some stocks were not traded in the whole period and this will influence the statistics.
  • It is better to avoid too much optimizing, i.e. the idea is to make the strategies as simple as possible. A successful strategy should result in a good performance without adding extra filters or changing of input parameters. In reality, you have plenty of other possibilities (e.g. do not trade before earnings or if you think the general market is overbought).
  • The strategies do not assume any short entries, i.e. we only buy stocks
  • The tested strategies are only tested using daily bars, i.e. no daytrading.
  • It is not a good idea to backtest only “blue chips” because these are good stocks by default. The idea is also to have a look at “less famous” stocks, e.g. from Russell 3000 index. Backtesting will usually result in worse performance. This is preferable because it is more realistic (because good stocks may suddenly become bad stocks)
  • Some strategies result in huge amount of trades and some entries happen simultaneously. It means that in reality we will not follow all the signals. Anyway, we still learn a lot.