Помогите удалить отложенний ордер

 

Здравствуйте! Помогите пожалуйста! Функция должна удалить отложенные ордера, когда цена бывает в растояании 25 пунктов,но не удаляет.

extern double selltake=0.001;
extern double selllimittake=0.002;
extern double sellstop=0.0015;
extern double selllimitstop=0.0015;
extern double marketorderslot=0.001;
extern double pendingorderslot=1;
extern int MagicNumber = 1234;


if (...........)
{
OrderSend(Symbol(), OP_SELLLIMIT, pendingorderslot, Bid+0.0015,0 , Bid+0.0015+selllimitstop, Bid+0.0015-selllimittake, NULL,0,0, CLR_NONE );
i1=OrderSend(Symbol(), OP_SELL, marketorderslot, Bid,0 , Bid+sellstop, Bid-selltake,NULL,0,0, CLR_NONE );
big=1;
}

if(big==1)
{
OrderSelect(i1, SELECT_BY_TICKET);
if(Bid<=OrderTakeProfit())
{
for(int k=OrdersTotal()-1;k>=0;k--)
if(OrderSelect(k,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
if(OrderType()==OP_SELLLIMIT)
OrderDelete(OrderTicket());
big=0;
}
}

 
Ни разу не увидел ни условия про 25 пунктов, ни как Вы инициализируете переменные i1 и big.
Причина обращения: