I have played around with some true/false statements and although I've had luck with them in the past can't get them to work this time around. What am I missing?
I also have an array that I've written out long form. 1.) This isn't working anyway and 2.)I know there has to be an easier way of doing this.
Thanks in advance!
public class Toggle : Indicator
{
protected override void OnStateChange()
{
if (State == State.SetDefaults)
{
Description = @"Alert when action takes place.";
Name = "Toggle";
xRisingLast = false;
xFallingLast = false;
Calculate = Calculate.OnBarClose;
IsOverlay = true;
IsSuspendedWhileInactive = false;
}
}
protected override void OnBarUpdate()
{
if(CurrentBars[0] < 100)
return;
if (
Momentum(100)[0] > 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] > 0
)
{
// Draw.TriangleUp(this,"Up1"+CurrentBar,true,0,Close[0]-60,Brushes.MediumSpringGreen);
// PlaySound (@"C:\Program Files (x86)\NinjaTrader 8\sounds\Alert2.wav");
xRisingLast=true;
xFallingLast=false;
BarBrushes[0] = Brushes.DeepSkyBlue;
}
if (
Momentum(100)[0] < 0
&&Momentum(116)[0] < 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] < 0
)
{
// Draw.TriangleDown(this,"Down1"+CurrentBar,true,0,C lose[0]+60,Brushes.OrangeRed);
// PlaySound (@"C:\Program Files (x86)\NinjaTrader 8\sounds\Alert2.wav");
xRisingLast=false;
xFallingLast=true;
BarBrushes[0] = Brushes.Magenta;
}
if (
Momentum(100)[0] > 0
&&Momentum(116)[0] < 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] < 0
||
Momentum(100)[0] > 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] < 0
||
Momentum(100)[0] > 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] < 0
||
Momentum(100)[0] > 0
&&Momentum(116)[0] < 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] < 0
||
Momentum(100)[0] > 0
&&Momentum(116)[0] < 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] > 0
||
Momentum(100)[0] > 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] < 0
||
Momentum(100)[0] < 0
&&Momentum(116)[0] < 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] > 0
||
Momentum(100)[0] < 0
&&Momentum(116)[0] < 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] > 0
||
Momentum(100)[0] < 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] > 0
||
Momentum(100)[0] < 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] < 0
||
Momentum(100)[0] < 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] < 0
&&Momentum(150)[0] > 0
||
Momentum(100)[0] < 0
&&Momentum(116)[0] > 0
&&Momentum(133)[0] > 0
&&Momentum(150)[0] < 0
)
{
xRisingLast=false;
xFallingLast=false;
}

Comment