закрытие ордера

 

Здравствуйте подскажите пожалуйста правильно ли реализовано закрытие ордера в данном коде.

 

Спасибо 


п.с. Логика такова если (a > b) закрываем предыдущий ордер если он бай и открываем селл
а если (a <  b) закрываем селл и открываем бай

[PHP]if  NormalizeDouble (a > b){  

             for (int x=0; x<OrdersTotal(); x++)
  if (OrderSelect(x,SELECT_BY_POS,MODE_TRADES)==true)
    if (OrderSymbol()==Symbol() && OrderType()==OP_BUY)
    { 
      if (OrderClose(OrderTicket(),OrderLots(),Bid,3)==true) x--;
      RefreshRates();       
     }

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,NormalizeDouble(Ask + SellSL*Point,Digits), NormalizeDouble(Bid - SellTP*Point,Digits))>0){

                         

            }

            

            else if  (a <  b){

              for (int x=0; x<OrdersTotal(); x++)
  if (OrderSelect(x,SELECT_BY_POS,MODE_TRADES)==true)
    if (OrderSymbol()==Symbol() && OrderType()==OP_SELL)
    { 
      if (OrderClose(OrderTicket(),OrderLots(),Ask,3)==true) x--;
      RefreshRates();       
     }

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,NormalizeDouble(Ask + SellSL*Point,Digits), NormalizeDouble(Bid - SellTP*Point,Digits))>0){

                        

              }
[/PHP]
 
 NormalizeDouble (a > b)
Это что? о_О
 
просто для примера
 
prt:

Здравствуйте подскажите пожалуйста правильно ли реализовано закрытие ордера в данном коде.

 

Спасибо 


п.с. Логика такова если (a > b) закрываем предыдущий ордер если он бай и открываем селл
а если (a <  b) закрываем селл и открываем бай

[PHP]if  NormalizeDouble (a > b){  

             for (int x=0; x<OrdersTotal(); x++)
  if (OrderSelect(x,SELECT_BY_POS,MODE_TRADES)==true)
    if (OrderSymbol()==Symbol() && OrderType()==OP_BUY)
    { 
      if (OrderClose(OrderTicket(),OrderLots(),Bid,3)==true) x--;
      RefreshRates();       
     }

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,NormalizeDouble(Ask + SellSL*Point,Digits), NormalizeDouble(Bid - SellTP*Point,Digits))>0){

                         

            }

            

            else if  (a <  b){

              for (int x=0; x<OrdersTotal(); x++)
  if (OrderSelect(x,SELECT_BY_POS,MODE_TRADES)==true)
    if (OrderSymbol()==Symbol() && OrderType()==OP_SELL)
    { 
      if (OrderClose(OrderTicket(),OrderLots(),Ask,3)==true) x--;
      RefreshRates();       
     }

OrderSend(Symbol(),OP_SELL,Lot,Bid,3,NormalizeDouble(Ask + SellSL*Point,Digits), NormalizeDouble(Bid - SellTP*Point,Digits))>0){

                        

              }
[/PHP]
Не правильно, хотя работать возможно будет
Причина обращения: