![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Для начала, разберитесь, сколько исполняются ордера.
Если 4 секунды, то решение однозначное — менять брокера.
а на самом деле НЕТ. 4 сек - если это только на каких-то пиках, то это нормально.
пауза к котировках валют от биржы может достигать в 15-30 сек (и достает кстати). Это в пиках, в умным людям заранее известных местах. В обыденном ритме в тех же местах там паузы 1-2 сек максимум или вообще незаметны невооружённым глазом.
и задержки исполнения там будут конечно-же на сопряжённых forex-серверах. И 4 сек для них это нормаль. Если конечно не круглосуточно такая дребедень, а ровно 1-2-3-4 (и регулярно и от инструмента) в день
есть несразу понятный многим парадокс - чем кухоннее кухня, тем быстрее там исполнение :-) Если гнаться за скоростью исполнения приказов, то это 100пудовый влёт, если контрагента вы не знаете лично на расстоянии кулака
Если советник один и нельзя сделать из него три, общающихся между собой, то можно устроить одновременную отправку трех ордеров путем запуска трех скриптов. Но для этого потребуется разрешение на использование DLL.
Это вряд-ли
Продолжая изучать варианты я нашла что это возможно реализовать с помощью GlobalVariable
Т.е. советник - сервер следит за появлением ситуации (условия) и при появлении условия - создает глобальную переменную
а советник - клиент отслеживает появление глобальной переменной и при ее наличие открыть ордер (каждый на своей паре)
ну и затем изменить значение глобальной переменной - после открытия всех ордеров
Нет, это очень долго. Попробуйте три одинаковых советника на трёх связанных парах. Каждый торгует свою пару, но их логика связана на уровне алгоритма. Без обмена данными и без общих потоков.
Для начала, разберитесь, сколько исполняются ордера.
Если 4 секунды, то решение однозначное — менять брокера.
Если проблема в том, что советник ждет следующих тиков, то нужно переписать советника.
Пилить костыли для одновременной отправки нескольких торговых запросов можно, но я бы скорее перешел на МТ5. Это перспективнее.
Понимаете брокера и терминал я не могу поменять от слова никак.
Поэтому исхожу из того, что есть.
Сейчас задалась вопросом, а что если разделить задачу.
Индикатор ищет подходящую ситуацию, а советник только открывает ордера.
При этом можно на каждой паре запустить и советник и индикатор.
Буду пробовать.
Так как при одновременном запуске но на разных парах (чартах) все происходит идеально разница +\- секунда но это я думаю из-за тиков, что вполне нормально и ожидаемо
Так как при одновременном запуске но на разных парах (чартах) все происходит идеально разница +\- секунда но это я думаю из-за тиков, что вполне нормально и ожидаемо
Перепишите робота, он не должен ждать тиков.
Если не сложно подскажите каким образом это сделать для МТ4?
Непосредственно запуск скрипта делается вот так:
Да, у меня был ТрейдБустер для решения этой задачи.
Но я убрал его с витрины, потому что не готов поддерживать.
А не было какой нить лайтовой версии публичной, для по-изучать код?
А не было какой нить лайтовой версии публичной, для по-изучать код?
Нет. Но там особо нечего изучать - советник менеджер + 7 исполнителей, общение через файл.
Нет. Но там особо нечего изучать - советник менеджер + 7 исполнителей, общение через файл.
Понял, спасибо.
А глобальные переменные терминала разве не быстрее будут для общения, чем файл?
Понял, спасибо.
А глобальные переменные терминала разве не быстрее будут для общения, чем файл?
Немного будут, да. Сложнее просто с ними.
Еще можно через ресурсы и события, еще быстрее. Я давно делал, не все было доступно, не все освоил.