Sunday, May 6, 2012

Real World Example Trade Filtering

The above chart show the results of a trading system trading the S&P e-mini (@ES.D). The data represents the time period from Jan 1,2000 through April 2012. The trades in this case are daily totals for a system which may do 1 or more trades per day. When the trades are plotted (blue line) you can see that it loses money. The Y axis represents cumulative S&P e-mini points net of slippage and commissions and since each point is worth $50 the system lost just over $46,000. The X axis is days. The red line is what we get when we plot the output of the regression function or Yr values. It winds up at about the same place on the chart which is what you'd expect. Of the available data, only the data through the end of 2010 was used as an input to the regression function. So, neither the post 2010 X or Y values can possibly influence the regression calculation because they were never used as inputs.
Now we see what happens when we apply the filter to the trade history. The purpose of the regression calculation is to attempt to predict what the Y values or profit will be. That trading performance can be predicted is our hypothesis. The way you test the hypothesis is to apply the correlation to new data. In this case that would be the data from the end of 2010 to the present. On the chart you can see that our filter/predictor does a good job of picking trades and produces a very nice looking upward trending net profit curve. That's nice, but not all that hard to do because the Yr values were fitted to the historical data through the use of the LINEST function. The real test is what happens when the trade filter is applied to new data. The new data in this case is everything after the red dot on the chart. That fact that the performance in the out of sample period is very similar to the performance for the in sample period can be taken as evidence that our trading hypothesis is valid. You may be thinking, well, this was just luck because perhaps the OOS trades just happend to be from a period when the system was profitable irrespective of filtering. But, if you look at the unfiltered trades, which include all of the data, you can see this was not the case.

This, in a nutshell, is the entire basis for my trading methods.

1 comment:

Kevin Davey said...

Great work, Tom. Very interesting. Sorry for the dumb question, but basically you are filtering trades (or trading days), right? So, you model would say "do/don't take the next trade," right?

Post a Comment