Великий и ужасный МТ4 навсегда (или как грамотно выработать стратегию перехода) - страница 19
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Условия MT4 и MT5 одинаковые.
Столько лет все знали о задвоении, приходя к... Sleep. Потому что ОЧЕНЬ сложно. О многих особенностях торгового API, что поднимались на форуме, разработчики не в курсе, либо не давали своих комментариев.
Никто не хает MT5. Показал примерами некоторые проблемы при решении элементарных задач.
Откуда-же они одинаковые? Ведь вы так и не ответили на вопрос
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Великий и ужасный МТ4 навсегда (или как грамотно выработать стратегию перехода)
Alexey Viktorov, 2021.05.09 09:15
… А если я подключусь к счёту с другого компа и поставлю пару отложек… что откроет MQL4???
Просто надо правильно обрабатывать результат выполнения функции OrderSend() а вы никак не можете оторваться от простоты mql4. У вас своя цель, поймать микросекунды, а не торговать… У одного дц есть проблемы, а вы выдаёте эти проблемы за баги МТ. Покажите задвоение позиций на счёте MQ и тогда разработчики обратят на это внимание. Я ваш код запускал на демке Робо и никаких задвоений не получилось увидеть.
Некоторые ваши сообщения об ошибках действительно заслуживают уважения, но некоторые… извините, такая чушь, аж слов приличных не хватает.
На этом всё… С праздником Победы. Мир. Труд. Май.
Откуда-же они одинаковые? Ведь вы так и не ответили на вопрос
Еще раз, условия задачи для MT4/5 одинаковые. Нужно на пустом счете по окончании выполнения скрипта иметь 100 открытых позиций. При этом допускается во время выполнения скрипта с любого Терминала закрывать некоторые позиции. Это "вмешательство" нужно только для того, чтобы не было тупых решений.
Просто надо правильно обрабатывать результат выполнения функции OrderSend() а вы никак не можете оторваться от простоты mql4. У вас своя цель, поймать микросекунды, а не торговать… У одного дц есть проблемы, а вы выдаёте эти проблемы за баги МТ. Покажите задвоение позиций на счёте MQ и тогда разработчики обратят на это внимание. Я ваш код запускал на демке Робо и никаких задвоений не получилось увидеть.
Некоторые ваши сообщения об ошибках действительно заслуживают уважения, но некоторые… извините, такая чушь, аж слов приличных не хватает.
Если не замечаете проблем, это не значит, что их нет. MQ-демо - отвратительное место, с точки зрения отладки. Там выставлен такой тип исполнения, когда OrderSend возвращает true для маркет-ордеров только тогда, когда открылась позиция. В реальности на ECN-счетах ничего подобного нет. true - маркет-ордер принят. Что дальше - надо следить. Только кухонные ДЦ используют иную (как на MQ-Demo) схему исполнения.
На этом всё… С праздником Победы. Мир. Труд. Май.
Взаимно.
Нужно на MT5 написать скрипт, который на пустом счете открывает 100 позиций.
На MT4 решил таким образом.
У кого какие варианты решения на MT5?
самый короткий код, какой смог написать на МТ5:
без GetFilling() - не работает на крипте (((
но даже в этом коде у меня открылось 11 позиций:
самый короткий код, какой смог написать на МТ5:
Можно СБ для лаконичности
но даже в этом коде у меня открылось 11 позиций:
Потому что логика в коде такая.
Можно СБ для лаконичности
Потому что логика в коде такая.
не решается задача с помощью PositionsTotal() даже так:
открывает когда 10 позиций, когда даже 13 шт
вариантов особо нет, только запоминать тикет ордера из MqlTradeResult result и ждать появления открытой позиции, тогда точно будут открыты заданное количество позиций
не решается задача с помощью PositionsTotal() даже так:
открывает когда 10 позиций, когда даже 13 шт
вариантов особо нет, только запоминать тикет ордера из MqlTradeResult result и ждать появления открытой позиции, тогда точно будут открыты заданное количество позиций
Так и ждите!!! Ведь mql4 ждёт и вы не возмущаетесь. А в MQL5 вы решили, что можно просто отправить запрос и считать, что он обязательно должен быть выполнен…………
не решается задача с помощью PositionsTotal() даже так:
открывает когда 10 позиций, когда даже 13 шт
вариантов особо нет, только запоминать тикет ордера из MqlTradeResult result и ждать появления открытой позиции, тогда точно будут открыты заданное количество позиций
Заметьте, что это уже не скрипт/сервис, а советник. Но даже с советником голову поломать придется для того, чтобы решить столь простую задачу в две строки.
Так и ждите!!! Ведь mql4 ждёт и вы не возмущаетесь. А в MQL5 вы решили, что можно просто отправить запрос и считать, что он обязательно должен быть выполнен…………
Здесь несколько человек высказывались, что сложностей нет. Однако, решения они не предоставили.
Здесь несколько человек высказывались, что сложностей нет. Однако, решения они не предоставили.
Я тоже не предоставлю по самой простой причине. Не хочу учить …кодеров (к вам это не относится), но если будет необходимость решу проблему не долго думая. И всё по той-же причине уже долгое время в CodeBase попадают коды исключительно от барабашки. Все остальные молчат…
Я тоже не предоставлю по самой простой причине. Не хочу учить …кодеров (к вам это не относится), но если будет необходимость решу проблему не долго думая. И всё по той-же причине уже долгое время в CodeBase попадают коды исключительно от барабашки. Все остальные молчат…
Языком молоть — не мешки ворочать. Взяли бы и научили. Меня, пожалуйста.
Проблема есть, и проявляется не только на этом брокере.
И проблема не в том, что нужно ждать исполнения конкретного ордера (это из другой плоскости), а в том, что в момент исполнения ордеров они на время пропадают из всех списков (открытые, закрытые, сделки, позиции).
Подпереть еще одним костылем можно, конечно. Но хочется человеческого решения. Над коим fxsaber и трудится публично, выслушивая лай проходящих мимо доброжелателей.