Функция возвращает количество открытых ордеров.
int OrdersCount(
string sy="", // имя символа ("" - все символы)
int ty=-1, // тип ордера (-1 - все типы ордеров)
int mg=-1) // магическое число ордеров (-1 - все магики)
{
int num=0;
for(int i=0; i < OrdersTotal(); i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==sy || sy=="")
{
if(mg<0 || OrderMagicNumber()==mg)
{
if(ty<0 || ty==OrderType())
num++;
}
}
}
}
return(num);
}
Параметры
- sy — символьное имя торгового инструмента, с которого считывается количество ордеров. При пустом значении, количество ордеров будет считано со всех доступных символов;
- ty — тип ордера:
- 0 — Buy;
- 1 — Sell;
- 2 — Buy Limit;
- 3 — Sell Limit;
- 4 — Buy Stop;
- 5 — Sell Stop;
- mg — магическое число ордеров, при значении -1 будут учитываться ордера не зависимо от magic.
Возвращаемое значение:
Количество выбранных ордеров.
Написать комментарий
Комментарии ()