Aroon strategy for 1-hour trading on multiple forex and precious metal pairs. Developed through random generation and validated with Monte Carlo testing on 15 years of tick data to assess robustness.
Adding my first strategy to the community bank.
Detailed MC testing conducted:
How was the strategy generated?
The strategy was initially generated on 2 years of data using random generation on selected timeframe only, half a year of which was OOS.
How was it tested further?
– It was retested on 15 years of Dukascopy tick data as OOS, to make sure it works through history, confirmed via SQ & mt4 using TDS.
Did I optimize it?
Nope, if I like the strategy enough, I usually don’t optimize it, sometimes I give it a minor bump.
How did I check robustness and try to avoid overfitting?
– The fact genetic evo wasn’t used & the strategy was generated as is randomly using 2 years data, and turns out to work well on the entire data set, makes me more confident that I didn’t overfit it.
– 500 MC (each) runs of: Randomize trades order, skip trades, randomize min distance from price from 0-10, randomize slippage 0-5, randomize spread 1-5, randomize starting bar max change 100.
The above filtered by RETDD at 95% > 40% of original RETDD, and looking at the general correspondence of the curves, making sure they remain on the same course more or less and not far detached one from another, and the 2 SQX default filters were also used (Net profit at 80% > 50% of original net profit and Max DD% at 80% smaller than 200% of original DD%)
– 500 runs of Randomize History Data with probability 20% and max price change 20% of ATR. Same filters as above.
– 100 runs of Randomize strategy parameters, with probability 20% and max change 50%. Looking for RETDD at 100% to be > 1.
99% backtests for XAUUSD and EURUSD with TDS:
Hope it helps someone.
Ilya
Data settings
The strategy file stores the settings it was built with (engine MetaTrader4, symbol EURUSD, H1). When you retest it, select your own symbol, engine and costs.