if(BarsInProgress == 0)
{
EMA MovingAverage = EMA(smaPeriod);
// EMA MovingAverageShort = EMA(smaPeriodShort);
if(Position.MarketPosition == MarketPosition.Flat)
{
if(MovingAverage[0] > MovingAverage[1]);
{
EnterLong(1,1,"Enter Long");
Print( "MovingAverage 0 " + MovingAverage[0] + " MovingAverage 1 " + MovingAverage[1]);
}
if(MovingAverage[0] < MovingAverage[1]);
{
EnterShort(1,1,"Enter Short");
Print( "MovingAverage 0 " + MovingAverage[0] + " MovingAverage 1 " + MovingAverage[1]);
}
}
Is Producing This:
02/01/2009 7:30:00 AM Entered internal PlaceOrder() method at 02/01/2009 7:30:00 AM: BarsInProgress=1 Action=Buy OrderType=Market Quantity=1 LimitPrice=0 StopPrice=0 SignalName='Enter Long' FromEntrySignal=''
MovingAverage 0 887.388030127119 MovingAverage 1 887.384392238949
02/01/2009 7:30:00 AM Entered internal PlaceOrder() method at 02/01/2009 7:30:00 AM: BarsInProgress=1 Action=SellShort OrderType=Market Quantity=1 LimitPrice=0 StopPrice=0 SignalName='Enter Short' FromEntrySignal=''
MovingAverage 0 887.388030127119 MovingAverage 1 887.384392238949
...................
WHYYY is it submitting both orders??? I've spent 3 hours changing all kinds of trivial things to try and make it stop.... my optimizer period is set to 45 minutes, and I've added a 1 minute series to submit orders to.
I spend more time trying to hash out NT script crap then anything else... I hope I'm overlooking something very obviously or I'm starting to lose faith. Is this some kinda decimal rounding thing in the > < calculation? it displays all the decimals in the print statement. How can it be larger and smaller at the same time?!?! Even if it was knocking off decimals, I'm using > not >= .......Help.
Thanks.

Comment