Here below the code but for some reasons doesnt work. Any idea why?
protected override void OnExecution(IExecution execution)
{
lineLength = Math.Max(CurrentBar - barNumberOfOrder, 3);
if (myLongEntry != null && myLongEntry == execution.Order
&& (execution.Order.OrderState == OrderState.Accepted))
{
DrawLine("EntryPending", false, lineLength, execution.Order.StopPrice, -20*lineLength, execution.Order.StopPrice, Color.White, DashStyle.Solid, 2);
}
if (myLongEntry != null && myLongEntry == execution.Order
&& (execution.Order.OrderState == OrderState.Filled || execution.Order.OrderState == OrderState.PartFilled
|| (execution.Order.OrderState == OrderState.Cancelled && execution.Order.Filled > 0)))
{
myLongEntry = null;
RemoveDrawObject("EntryPending");
}
}
//called by the Onbarupdate
private void LongEntry()
{
barNumberOfOrder = CurrentBar;
myLongEntry = EnterLongStop(1,GetCurrentAsk()+ 1*TickSize, "LongEntry");
}

Comment