first_may:
Добрый день.
Подскажите пожалуйста по поводу ордеров. Функция OrdersTotal - возвращает общее количество открытых и отложенных ордеров. А как можно узнать по конкретной бумаге, есть ли открытые ордера или нет?
Перебрать все открытые позиции и выбрать только нужный инструмент. Если ничего не выбрали, то нету
То есть вот так:
int k=0;
total=OrdersTotal();
for (int cnt=0; cnt<total; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderSymbol()==Symbol()) k++;
if (k>0) Print("ЕСТЬ ОРДЕР ПО НУЖНОЙ БУМАГЕ!!!");
}
first_may:
То есть вот так:
int k=0; total=OrdersTotal(); for (int cnt=0; cnt<total; cnt++) { OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if (OrderSymbol()==Symbol()) k++; } if (k>0) Print("ЕСТЬ "+k+" ОРДЕР(ОВ) ПО НУЖНОЙ БУМАГЕ!!! "); else Print("НЕТУ ОРДЕРОВ ПО НУЖНОЙ БУМАГЕ, УКРАЛИ!!!");Лучше так. :)
Спасибо! :)
Vinin:
Лучше так. :)
Лучше так. :)
А еще лучше, так:
if OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if (OrderSymbol()==Symbol()) k++;
:)
first_may:
Спасибо! :)
Спасибо! :)
Если речь идет про открытые ордера (без отложенных) то надо еще тип ордера анализировать.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Добрый день.
Подскажите пожалуйста по поводу ордеров. Функция OrdersTotal - возвращает общее количество открытых и отложенных ордеров. А как можно узнать по конкретной бумаге, есть ли открытые ордера или нет?