BarsAgo_100Xdown = MRO(delegate{return (myWoodies[0] < 100 && (myWoodies[Math.Min(CurrentBar, 1)]==100 ? myWoodies[Math.Min(CurrentBar, 2)]>100 : myWoodies[Math.Min(CurrentBar, 1)]>100));},1,CurrentBar) +1;// 100 line cross up
This line is identical to the MRO in the previous line except that the > and < operators are reversed. That line reads:
BarsAgo_100Xup = MRO(delegate{return (myWoodies[0] > 100 && (myWoodies[Math.Min(CurrentBar, 1)]==100 ? myWoodies[Math.Min(CurrentBar, 2)]<100 : myWoodies[Math.Min(CurrentBar, 1)]<100));},1,CurrentBar) +1;// 100 line cross up
Also of interest is that if I change the last > to a < the line passes muster. I have checked it against a standard CCI and the CCI has exceeded both 100 and -100 before bar 34. I also changed the return statement to start bar processing as high as 200 and it still throws the error.
Like I said, this line has worked for v6.5 for years.
This much simpler line throws the same error:
BarsAgoSidewaysreset = MRO(delegate{return (Math.Abs(myWoodies[Math.Min(CurrentBar, 1)])>=Extremes);},1,CurrentBar) +1;// Extreme cross up
Where Extremes is an int (def == 200)
If I change the >= to a <= it passes muster.
Any help would be appreciated.
Comment