Добрый день.
Если на mql4 то
if(OrdersTotal() == 0) // открыть ордер
А на mql5 так
if(PositionsTotal() == 0 // открыть позицию
Да, на mql4. Но задача в том, что если открыт ордер по EURUSD, то по этой паре можно открывать еще ордера, но по любым другим нельзя пока по евродоллар не закроется все ордера.
Каков был вопрос, таков был и ответ.
В таком случае надо делать что-то экстра-ординарное.
Например: перед первым открытием проверка на OrdersTotal() == 0 и после открытия взвести какой-то флаг, что к этому символу запрет не относится.
Как-то так.
Каков был вопрос, таков был и ответ.
В таком случае надо делать что-то экстра-ординарное.
Например: перед первым открытием проверка на OrdersTotal() == 0 и после открытия взвести какой-то флаг, что к этому символу запрет не относится.
Как-то так.
Почему экстраординарное? Очень даже обыденная задача:
bool IsNewOrderAllowed() { for (int i = OrdersTotal() - 1; i >= 0; --i) { if (!OrderSelect(i, SELECT_BY_POS)) continue; if (OrderSymbol() != Symbol()) return false; } return true; }
Каков был вопрос, таков был и ответ.
В таком случае надо делать что-то экстра-ординарное.
Например: перед первым открытием проверка на OrdersTotal() == 0 и после открытия взвести какой-то флаг, что к этому символу запрет не относится.
Как-то так.
Почему экстраординарное? Очень даже обыденная задача:
Почему экстраординарное? Очень даже обыденная задача:
Ну надо-же было напугать новичка.)))
Добрый день.
Как именно один советник активирован на нескольких парах? Простите за любопытство, но очень интересно.
Как именно один советник активирован на нескольких парах? Простите за любопытство, но очень интересно.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования