Forums ProRealTime English forum ProOrder support Strategy Robustness Tester Reply To: Strategy Robustness Tester

#106992

I was still concerned that my ‘Robustness Tester – Daily’ still suffered from being vulnerable to daily seasonality and my ‘Robustness Tester – Lite’ didn’t really run enough tests to give meaningful analysis. I wanted something that could run lots of tests and was almost random. So welcome to the ultimate robustness tester – which I call ‘Robustness Tester – Random’!

It isn’t truly random but it can create many different possible entry patterns so it almost seems like it is. It works by checking the remainder of the barindex number divided by a ‘qty’ number. If the remainder is zero then it allows a trade. It also then compares the remainder to a value j that cycles between 1 and ‘qty’ and if the remainder matches j then it also allows a trade. This cycling is interrupted by a further variable ‘random’ which causes the cycling to pause or skip values which gives us our randomness or if not actual randomness then at least a lot of very different varying combinations of trading patterns.

As with all the other robustness testers add the code to the top of your strategy (but under any DEFPARAMS) and put the condition TRADEON in your entry conditions and then set optimising variables ‘Qty’ from 2 to whatever you want and ‘Random’ from 1 to whatever you want (maximum = maximum qty value).

You can also set a ‘startdate’ to only test from that date. If you set this to zero it tests on all of history.

Another benefit of this tester is that it can be run on weekly chart too as it is barindex based and not day of the week based.

In the image I have graphed TRADEON and you can see the sort of variety of trading pattern created to test with. The second image shows the results for a simple strategy tested using qty = 10 and random = 5. All the win rates are very consistent and all tests were profitable – not all the same but I think that if six identical versions of this strategy were set to run each only allowed to open trades on one day of the week then the combined equity curve should be satisfactory.

In my opinion this version of robustness tester is now a very powerful tool. It is incredible how many strategies that can look great but if you take a random sample of the trades or even just change the start date by one day they can fall apart. This tester now lets us really test that. I think this tester might actually be the most important thing that I have coded so far! It will be fun to try it on some of the strategies posted in the forums….

 

 

10 users thanked author for this post.