You can approach it differently too. The ES ATR range is approximately 25 pts. What you can consider a random fluctuation would be the square root of 25, meaning 5. Add one point for additional safety and you get 6. 1.5*6=9 and 9 is 1% of SP value, again approximately. You can easily get deviations of 1% in SP if you choose the direction and time properly, which of course can be tough. 3, 4, 5, 6 and so on means too much optimization to me. I prefer to approach it from basic principles.
I noticed in setting up for the test, that you wanted emini data before the open till the stock close. I don't have that. These tests are on the SP futures market beginning with 9:30 and ending at 4:15 pm. The results assume no slippage or commissions. I ran the tests from 1/1/97 - 7/31/2001 as that's the upper limit of the data I have in my continuous contracts. Here's the results of your original idea:
Here's the second test results. Since you only had one variable to check I just reversed it. A random test would be meaningless as we'd need to run it hundreds of times to get a distribution of returns and then figure the mean to compare with the original test.
And last, here's the equity curve over the 4 1/2 period for the first test. You can see the behavior has been consistent throughout the test period. It not very strong, but it is consistent.
Here's something that may be a bit interesting to those using profit targets. How about a test with a 3 point stop and NO profit target. If not stopped out, just exit on the close. Once again, the old cut losses short let profits run.
What if you had a 6 pt stop-loss and MOC exit? I use it in one of my systems, works good, perhaps it would work here too.
Here's another twist. The one day std. dev. has been about 15 pts. since 1997. Here's what happens when you truncate the loss to 1/2 of a std. deviation instead of a fixed # of points.