Функция подсчета ордеров

Функции подсчета ордеров в mql4

Практически любой советник должен считать свои ордера, например, чтобы не открывать сотни позиций при одном сигнале. Я пользуюсь двумя функциями — одна считает бай-ордера, другая селл-ордера. Можно конечно сделать, чтобы ордера считались в одной функции с разделением по типу, но я уже привык к этим своим двум функциям.

//==========Считаем бай-ордера
int CountBuy()
  {
   int count=0;
   for(int trade=OrdersTotal()-1;trade>=0; trade--)
     {
      OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
      if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
        {
         if(OrderType()==OP_BUY)
            count++;
        }
     }
   return(count);
  }
//============== Считаем селл-ордера =============== 
int CountSell()
  {
   int count=0;
   for(int trade=OrdersTotal()-1;trade>=0; trade--)
     {
      OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
      if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
        {
         if(OrderType()==OP_SELL)
            count++;
        }
     }

   return(count);
  }

Поделись с друзьями:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *