I'm having a challenge with this code I wrote and wondering if someone could take a look at it. The entries are fine, but the exits are erratic. I've used Draw() and Print() to debug. Everything draws and prints correctly, but the exit only work about half the time. Here is the code:
currenthigh = MRO(delegate {return High[0] == CurrentDayOHL().CurrentHigh[0];}, 1, 5);
if (currenthigh > -1 && RValueCharts(Color.Blue, 3, 3).VClose[0] <= -4 && CurrentBar - mydownConditionBar >=5)
{
EnterShort(DefaultQuantity, "DHReversal");
mydownConditionBar = CurrentBar;
DrawDiamond("DailyHighReversal" + CurrentBar,true,0,Low[0] - 1,Color.DarkMagenta);
dailyHighReversal = true;
Print(Time[0] + " dailyHighReversal");
}
dmPlusCrossUp = MRO(delegate {return CrossAbove(DM(10).DiPlus, 25, 1);}, 1, 1);
if(dmPlusCrossUp > -1 && Falling(ADX(10)) == true)
{
BarColor = Color.DarkBlue;
Print(Time[0] + " dmPlusCrossUp");
}
if(dmPlusCrossUp > -1 && Falling(ADX(10)) == true
&& Position.MarketPosition == MarketPosition.Short && dailyHighReversal == true)
{
ExitShort("Exit DHReversal", "DHReversal");
dailyHighReversal = false;
EarlyShortExit = false;
}
Any help would be greatly appreciated.
Comment