I'm testing all parts of the EA and while I was testing the Range-Trade without recovery the behaviour was strange.
I think I found something in the code where parts are for recovery where they shouldn't be and some parts where a range part is missing:
if (target == 0) target = 1000000;//Dummy value
if ( Var5 < Var3 && Bid < Var3 && Bid < target)
I think prevents the target variable in "no recovery mode" from stopping the condition - which is CORRECT.
But further down in the short part:
if ( Var5...Ignored
The fix for this is in post 1. The fix is essential.
Those of you who can, go to void LookForRangeTradingOpps(). Scrool down to the //Short section. The next code snippet need to be:
//Short if (target == 1000000) target = 0;//Dummy value if ( Var5 > Var1 && Bid > Var1 && Bid > target)//B version plus Recovery
Cheets osthafen. You are a star.