It's a bug. In some cases, it might compared 4 digits prices with 5. Attached is the fixed version. I hope BK don't mind. Original: //@line 409 and 514 else if (OrderTakeProfit() != TP || OrderStopLoss() != _SL) Edited: else if ...