@juanj, no I forgot to du that. But now i tried to change but I dont get the same results. Here is 200k from 8 to 19 utc+1.
@Henrik and @Nicolas I have spent some time ‘optimizing’ Entry and Exit criteria, possibly to the extent where it is ‘over’ optimized (too many OR’s). I will over the comming days refine the criteria adding and removing them as I test between different markets trying to find what tend to work more universally. For now the attached is the latest version, also attached my latest results on EUR/USD. @Hendrik if you backtest on 200k bars just re-optimize the trading time filter using the backtest engine.
Here it is over 200k. Put it optimizing overnight. Feels like stopped somewhere but you see which time parameters used.
A=starttime
S=endtime
D=exit
Regards
Henrik
@Hendrik, thankyou for that I am glad to see it is performing well going back that far. Looking really positive!
I would say according to your optimization Start: 9 and End: 19 is the sweet spot here, good 10 hours of exposure and the highest win %.
The Exit time is not really too important here as it is simply meant to close the positions Friday night (just before the weekend).
I have developed a new ‘universal’ strategy developed on many of the same principles as the other one using a Keltner band to supplement the Bollinger band and trading mean reversion.
It is not meant to replace the previous strategy but rather to supplement it.
I have also not tested this strategy on as many markets as my other one however it performs relatively fair across markets as far as I could see so far. Attached is the .ITF file along with the results on Gold (attached screenshot compares the 2 strategies result on Gold). @Henrik if you want you can maybe test the strategy on 200k bars optimizing the timeframe accordingly (just Start Time and End Time)?
@Nicolas if you prefer we can add this strategy as a separate entry to the library?
@juanj
I think we could make multiple posts but with different approach, because it seems to evolve each day a bit more 🙂 People may also “fork” this code and upload them here. So I feel like we could wait for things to be a bit more ‘advanced’ or ‘completed’. In any case, thanks for the job done and for sharing! 😉 Please note that I’ll be on leave by tomorrow, not be able to be as present on forums/admin and moderations as usual.
@nicolas enjoy your leave! When will you be back in full swing?
Hi!
Here is BollingerKeltner.itf with 200k and time opti.
Regards
Henrik
Bonnes vacances Nicolas !!
@Hendrik thank you for that. What do you say we try a few more markets? Oil as well as some of the other big markets? FTSE, DAX, etc.
I have modified my latest version to include heuristics to automatically optimize the period used to calculate the Bollinger and Keltner Bands. I have also opened a new topic (containing the heuristics algorithm used).
Machine Learning in ProOrder ProRealTime
The sequence make no sense to me. I compared it with the mathematical sequences I could find, did some calculations in Excel and also visit a mathematical forum for more info. The only thing I could confirm is the number 42 from @juanj that seems to be the median of the sequence.
@Marcel thank you for your comment, I appreciate you looking into it. You are correct in that the sequence doesn’t make sense, however it does achieve its purpose. Maybe you can assist with a more logical algorithm? What I am trying to achieve is something like this;
Starting Variable (Median)
Starting Variable + (increment)
Starting Variable – (increment)
Starting Variable + (increment*2)
Starting Variable – (increment*2)
Starting Variable + (increment*3)
Starting Variable – (increment*3
Etc.
However in typing this I now think I know how to do it.
//Heuristics Algorithm
Increment = 1
once IncPos = 1 //Increment Position
once Optimize = 0
once Mode = 1 //Switches between + and - increments
once StratAvgB = 0
once Periods = 42 //Starting eriod of variable to optimize
If Optimize = 10 Then //'optimize = optimize + 1' set at position entry/exit
WinLoss = 0
StratAvgA = StratAvgB
StratAvgB = 0
For i = 1 to 10 Do
If positionperf(i) > 0 Then
WinLoss = WinLoss + 1
EndIF
StratAvgB = StratAvgB + StrategyProfit[i]
Next
StratAvgB = StratAvgB/10
If (Winloss < 5 or StratAvgA > StratAvgB) and Mode = 1 Then
Periods = Periods + (Increment*IncPos)
ElsIf (Winloss < 5 or StratAvgA > StratAvgB) and Mode = 2 Then
Periods = Periods - (Increment*IncPos)
mode = 1
If IncPos > 6 Then //Max Increment Value
Periods = 42 //Starting Vaue is Reset
IncPos = 1 //Increment Position is Reset
Else
IncPos = IncPos + 1
EndIF
EndIF
mode = 2
Optimize = 0
EndIf
@ Juani
I’m still working to the strategy based on Ichimoku and hosoda cycle. If you are interested we can develop togheter a specific strategy.
Thanks
Emanuele