Подскажите, пожалуйста, знающие люди !!!
Как сделать так, чтобы открытие позиций шло как на рис.1
рис.1
У меня,используя различные условия для переменной функции OrdersTotal(), получается открытие всех трех ордеров на первом сигнале (на одном баре). На других сигналах открытия не происходит рис.2
рис. 2
это легко!
1-вы должны метить каждый сигнал как исполненный
при условии что у вас не возникает повторынй сигнал в одном и том же месте
( если возникает я боролся так - сравнивал время и цену и если они не сильно отличались не входил второй раз )
Разрешать открытие позиции один раз за бар. То есть перед открытием проверять все открытые позиции и сравнивать их время открытия (OrderOpenTime()) с временем открытия текущего бара (Time[0]). Если время открытия позиции больше или равно времени открытия бара, то новую позу не открываем. Также еще неплохо проверять историю по времени открытия позы. Ведь, если тело бара больше профита позы, то он мог быть открыт и закрыт на одном и том же баре. В этом случае тоже запрещаем открывать позу.
дребезг - повторный сигнал может возникнуть на втором баре который будет отстоять от предыдущего на небольшом времени и небольшом уровне
---
хотя и так тоже можно попробовать подстраховаться
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Подскажите, пожалуйста, знающие люди !!!
Как сделать так, чтобы открытие позиций шло как на рис.1
рис.1
У меня,используя различные условия для переменной функции OrdersTotal(), получается открытие всех трех ордеров на первом сигнале (на одном баре). На других сигналах открытия не происходит рис.2
рис. 2