Без отложеных ордеров

 

Подскажите пожалуйста как исключить отложеные ордера из OrdersTotal(). Есть ли отдельная встроенная функция? Как OrdersHistoryTotal() для истории. Спасибо. 

 
protr:

Подскажите пожалуйста как исключить отложеные ордера из OrdersTotal(). Есть ли отдельная встроенная функция? Как OrdersHistoryTotal() для истории. Спасибо. 

Отдельной нет. Пишите свою. В цикле перебирайте все ордера и в нем уже подсчитывайте количество открытых позиций  типа OP_BUY и OP_SELL.

 
protr:

Подскажите пожалуйста как исключить отложеные ордера из OrdersTotal(). Есть ли отдельная встроенная функция? Как OrdersHistoryTotal() для истории. Спасибо. 

    int ordCount = OrdersTotal();
    int counter = 0;
    for(int n = 0; n < ordCount; n++)
    {
        RefreshRates();
        if(!OrderSelect(n, SELECT_BY_POS, MODE_TRADES))
        {
            Print("Ордер ", IntegerToString(n), " не выбирается функцией OrderSelect");
            continue;
        }    
        if(OrderType()==OP_BUY || OrderType()==OP_SELL))
            counter++;
    }
 
Спасибо
 

Я когда предлагал разширить функционал OrdersTotal() но проигнорировали. А я считаю что это супер было бы.

OrdersTotal(int magic=all,int type=all) 

Причина обращения: