Tirgu Mures, Romania
Experience: Intermediate
Platform: Ninja
Broker: ZenFire
Trading: CL, GC
Posts: 36 since Sep 2010
Thanks Given: 42
Thanks Received: 7
I have a problem with my strategy.
On chart it looks like the order has been closed, but on Super Dom the order is still there. And after this, on chart the order appears to exit again.
Please look on the attached chart:
I have a single target long (in the place where you see the arrow), but I have two orders on exit.
Here are my entry conditions:
Code
protected override void OnBarUpdate()
{
EntryHandling = EntryHandling.UniqueEntries;
ManageOrders();
ManageExit();
if ((Position.MarketPosition == MarketPosition.Short |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntryNo && CrossAbove(QQE(RSI_Period, SF).Value1, QQE(RSI_Period, SF).Value2, LookBackCross) &&
EMA(EMAperiod1)[0] > EMA(EMAperiod2)[0]
)
GoLong();
else if ((Position.MarketPosition == MarketPosition.Long |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntryNo && CrossAbove(QQE(RSI_Period, SF).Value2, QQE(RSI_Period, SF).Value1, LookBackCross) &&
EMA(EMAperiod1)[0] < EMA(EMAperiod2)[0]
)
GoShort();
else if ((Position.MarketPosition == MarketPosition.Short |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntryNo && QQE(RSI_Period, SF).Value1[0] > QQE(RSI_Period, SF).Value2[0] &&
CrossAbove(EMA(EMAperiod1), EMA(EMAperiod2), LookBackCross)
)
GoLong();
else if ((Position.MarketPosition == MarketPosition.Long |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntryNo && QQE(RSI_Period, SF).Value1[0] < QQE(RSI_Period, SF).Value2[0] &&
CrossAbove(EMA(EMAperiod2), EMA(EMAperiod1), LookBackCross)
)
GoShort();
// entry ergodic
else if ((Position.MarketPosition == MarketPosition.Short |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntry && CrossAbove(QQE(RSI_Period, SF).Value1, QQE(RSI_Period, SF).Value2, LookBackCross) &&
EMA(EMAperiod1)[0] > EMA(EMAperiod2)[0] &&
Ergodic(3, 5, 14).Main[0] >= 25
)
GoLong();
else if ((Position.MarketPosition == MarketPosition.Long |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntry && CrossAbove(QQE(RSI_Period, SF).Value2, QQE(RSI_Period, SF).Value1, LookBackCross) &&
EMA(EMAperiod1)[0] < EMA(EMAperiod2)[0] &&
Ergodic(3, 5, 14).Main[0] <= -25
)
GoShort();
else if ((Position.MarketPosition == MarketPosition.Short |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntry && QQE(RSI_Period, SF).Value1[0] > QQE(RSI_Period, SF).Value2[0] &&
CrossAbove(EMA(EMAperiod1), EMA(EMAperiod2), LookBackCross)&&
Ergodic(3, 5, 14).Main[0] >= 25
)
GoLong();
else if ((Position.MarketPosition == MarketPosition.Long |
Position.MarketPosition == MarketPosition.Flat) &&
ErgodicEntry && QQE(RSI_Period, SF).Value1[0] < QQE(RSI_Period, SF).Value2[0] &&
CrossAbove(EMA(EMAperiod2), EMA(EMAperiod1), LookBackCross) &&
Ergodic(3, 5, 14).Main[0] <= -25
)
GoShort();
}
Can someone help?