Back testing S&P e-mini futures 1 min chart with Timing Solution (Terra Incognita project)
Click here to download the results of back testing (unpack and run this program): click here
The back testing of some models was done for S&P e-mini futures 1 min chart. Its results are shown in the table at the end of this article. When more models will be tested, the table will be updated.
How to use these results:
We have created the library of strategies; it collects trading strategies based on the models that provide the best results. You can download this library here click here. When Timing Solution software is open, you can run any strategy from the library this way: after downloading the price history, go to "TI"->"Trading Strategy" module.
Clicking this button:
choose the file bt_es_1min.ts_strat. You will get the list of different categories of the models tested for 1 min chart:
You can highlight (step #A) any of these sections and choose the models in these sections (step #B):
As a result the program generates ready buy/sell signals.
Since September 1997 till August 2010 we have 2,880,000 1min price bars in total. For our research we use the price history since 2002 till August 2010, this is totally 2.1M price bars.
There are three reasons why we have done this:
1) there is some amount of broken bars within the first four years of existence of this financial instrument;
2) the volume and the amount of trades that have been done within one price bar (i.e. within one minute) was very small for the first years, especially for the night sessions. Now (2010) several hundreds, sometimes thousands of trades are made in one minute, while within 1997-2000 it was usually less than a hundred trades in one minute;
3) The period of December 2001- August 2010 covers two Presidential cycles. According to Chaos Theory (R/S analysis), the period of 4 years is a period of a stochastic cycle, i.e. the stock market changes its structure every 4 years. For back testing it is better to cover two stochastic cycles at least.
Back testing architecture
This is a huge computational task, and we are proud that Timing Solution is able to do that. To perform the back testing, we break the available price history on three intervals:
Here the red interval is In Sample interval; it covers the period May 8, 2009 - August 13, 2010 and contains 400,000 1 min. price bars. We perform the optimization of our models using the price history In Sample interval only, the program does not "know" about the price history outside of In Sample interval.
There are other intervals marked by green bars in the price chart above, these are Out of Sample intervals. The intervals shown on the picture above cover periods December 23, 2001 - December 5, 2005 and January 12, 2007 - April 25, 2009. Each interval contains 700,000-800,000 price bars. We use these intervals to verify our models. We omitted the bars where the price did not change (it happened sometimes at night sessions).
If you would like to repeat the results shown in the library of strategies, choose any of the strategies there. After the installation, you will see a worksheet with In Sample and Out of Sample intervals, here they are:
If some model shows good results on both intervals, in sample and out of sample, it gives us some confidence regarding the reliability of this model. Here we used one out of sample interval because the models we analyze perform a big amount of trades (1000 and more), so the probability of having occasional results is very low. (NOTE: Usually, the "in sample" interval comes first, followed by "out of sample" interval. We tried that way too, when we looked for the models to forecast the future market moves; it was "walk forward analysis". Please pay attention that here we do vice versa: the intervals changed places as my purpose was to catch the most recent small cycles and see whether they had any involvement in the past; it is "walk backward analysis". However, if we switched the intervals and repeat back testing, the results are practically the same as the program chooses models that have good results on both intervals; if the model works, it works; and we are here on a safe side due to a huge amount of trades.)
I will show how it works with real data.
I have downloaded the price history bt_out_of_sample_1.wts to see how our models work on this interval. We are looking for the model that trades with the rate not more than 1 trade per hour. We select these models setting a filter to 60; the program gives us the list of the models that trade not faster than 1 trade per hour:
I have checked all models one by one and have found that TS standard quantum model provides the best result (among several other tested models):
This is the equity curve that corresponds to this model:
Then I have downloaded bt_out_of_sample_2.wts file with the price history. Here is the equity curve that I have got:
It is not so good, but still workable. On both intervals this model provides win/loss 64-65%.
BTW, the performance of analyzed models increases strongly if we decide to trade faster. Below the model is shown that makes one trade in 27 minutes (in average), this is the equity curve for this model for the first Out of Sample interval:
It provides 60.4% winning trades, SQN=4.59
On the second Out of Sample interval this model works as well, though some "flat" zone is present in 2005:
It still provides 59.6% of winning trades, SQN=2.59
However, these fast models are very sensitive to slippage. One minute delay can kill all your profit. The fast models are more suitable for trading robots.
Standard Quantum model works good. A very important conclusion is that the back testing shows that a quantum model for 1 min chart works much better than moving averages crossover.
Bollinger band break out model works. Quantum Bollinger break out trading system works as well. This is the only model that works for both, daily and 1 min, charts.
Quantum Relative Vigor break out system, works very well for a fast trade system.