THREAD THESIS: I contend that using the commericilly available backtesting and optimizing methods are fundamentally flawed approachs to achieving the results we want as traders.
I use NinjaTrader. I have looked at MultiCharts and Amibroker as reccomended in other threads, and I believe all of the programs have the same flaw. I'm not sure what call this 'flaw' (someone else can coin the word) but I describe it as serial backtesting as opposed to parallel backtesting.
Consider the chart in Attachment 1. I count three peaks and three valleys just by observation. That is I looked at all the oppotunities in parallel and get my results.
However, depending on how I set up my backtesting scenario, I could get different results. Look at Attachment 2. I added a green line representing a long trade followed by a red line representing a short trade. In this scenario (which is a serial method) I only get two opportunities. This is how NinjaTrader does back testing.
This means I am not only evaluating my stategy for effectiveness, I am evaluating my strategy to fall in an exact series of trades. I have done some work on expectancy ( but didn't feel like I was still getting the results I wanted. When I go back and read Van Tharp's work, I think he intended the calculations be done in parallel, not serial (like NinjaTrader).
So now what? I guess I am resolved to building my own backtesting/optimizer program. Not an easy task. My plan is to build the process in excel to prove my theories and then port that knowledge over to C#. The reason for using excel is it's easy and I can plot my results so I can ensure I am doing it correctly. It is also something that a lot more people can use and understand than C# so I can get input from all of you.
I will attach my spreadsheet next, for anyone interested to comment. It's not pretty. It's not meant to be. But it is functional.
If someone has a better idea, or comments about how I am proceeding, I am all ears. I am hoping that my work here with the help of the nexusfi.com (formerly BMT) community will produce a nice piece of work that we can all benefit from.