Великий и ужасный МТ4 навсегда (или как грамотно выработать стратегию перехода) - страница 18
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нет.
если грошей хватит - то гарантировано
Нужно на MT5 написать скрипт, который на пустом счете открывает 100 позиций.
На MT4 решил таким образом.
У кого какие варианты решения на MT5?
если грошей хватит - то гарантировано
вы не учли частичное исполнение, а когда учтете надо будет учесть еще и задвоение
Частичное исполнение возможно?
Будем считать, что частичного исполнения нет. Однако, во время работы скрипта кто-то может случайно нажать на крестик в таблице позиций, закрыв одну/несколько из них. Однако, в конце выполнения скрипта все же должно быть ровно 100 позиций.
MT4-вариант безумно прост. Поэтому и написал в этой теме.
У кого какие варианты решения на MT5?
Без синхронизатора - никак.
Может быть элементарно реквот или потеря связи в процессе, 100 ордерсендов далеко не всегда дадут 100 сделок.
Без синхронизатора - никак.
Может быть элементарно реквот или потеря связи в процессе, 100 ордерсендов далеко не всегда дадут 100 сделок.
Синхронизатор только будет гарантировать, что PositionsTotal и OrdersTotal значения не врут. Именно из-за того, что они краковременно врут, и получаются задвоения.
В принципе, синхронизатор - это одна строка. И если не лезть в его устройство, то применение простое.
Однако, даже с синхронизатором все крайне не тривиально. Можно использовать такое условие:
Однако, с этим условием будет полный облом, если кто-то сделает следующее.
Будем считать, что частичного исполнения нет. Однако, во время работы скрипта кто-то может случайно нажать на крестик в таблице позиций, закрыв одну/несколько из них. Однако, в конце выполнения скрипта все же должно быть ровно 100 позиций.
Т.е. элементарная задача, что решается в две строки в MT4, легко не решится в MT5. Поэтому MT4-style+Синхронизатор и рулит в MT5. Из-за этого не совсем понимаю, как иначе в MT5 пишутся советники, коих так много в том же Маркете.
Синхронизатор только будет гарантировать, что PositionsTotal и OrdersTotal значения не врут. Именно из-за того, что они краковременно врут, и получаются задвоения.
В принципе, синхронизатор - это одна строка. И если не лезть в его устройство, то применение простое.
Однако, даже с синхронизатором все крайне не тривиально. Можно использовать такое условие:
Однако, с этим условием будет полный облом, если кто-то сделает следующее.
Т.е. элементарная задача, что решается в две строки в MT4, легко не решится в MT5. Поэтому MT4-style+Синхронизатор и рулит в MT5. Из-за этого не совсем понимаю, как иначе в MT5 пишутся советники, коих так много в том же Маркете.
В МТ5 все решается так же, как и в МТ4 и часто гораздо проще, ибо язык и АПИ гораздо богаче. Точнее, языки почти одинаковы, тут Метаквоты сделали огромную работу для совместимости, а вот АПИ довольно разные. Ренат (директор Метаквотес) в свое время заявлял на форумах, что МТ4 мертвый и его развивать не будут. Но видно, коммерческие интересы оказались важнее, и все же обновления выходят. Но в основном это исправления ошибок и новые фичи из МКЛ 5. Так что разработчики молодцы, снимаю шляпу, которой у меня нет.))
А в целом мне непонятны стоны некоторых товарищей, как сложно перейти на МКЛ5. Да нет там никаких сложностей, ну другое АПИ, так есть подробные исходники, я предпочитаю изучать по ним. У кого не хватает пока знаний, добро пожаловать в хелп, написано кратко, но четко. В любом случае пятерка быстрее четверки минимум в 10 раз, а в режиме оптимизации вообще использует все разрешенные вами ядра проца и при современной видеокарте бьет четверку в сотни раз. Так что не надо писать грустных песен. ))
вы не учли частичное исполнение, а когда учтете надо будет учесть еще и задвоение
и так тоже не правильно? - хотя я не пойму, кто что хочет от этой функции - но она выполняет свою задачу на все 100!!!
Будем считать, что частичного исполнения нет. Однако, во время работы скрипта кто-то может случайно нажать на крестик в таблице позиций, закрыв одну/несколько из них. Однако, в конце выполнения скрипта все же должно быть ровно 100 позиций.
MT4-вариант безумно прост. Поэтому и написал в этой теме.
То-есть для MQL5 вы ставите такие условия, что кто-то может пошалить, а для MQL4 нет? А если я подключусь к счёту с другого компа и поставлю пару отложек… что откроет MQL4???
Вы хотите без каких либо проверок начудить? Вы агитируете за вседозволенность в программировании, или просто пытаетесь побольше охаять MQL5 в чьих-то корыстных интересах?
Напишите всё то-же самое на mql4 с проверками и защитой от дурака.
То-есть для MQL5 вы ставите такие условия, что кто-то может пошалить, а для MQL4 нет? А если я подключусь к счёту с другого компа и поставлю пару отложек… что откроет MQL4???
Условия MT4 и MT5 одинаковые.
Вы хотите без каких либо проверок начудить? Вы агитируете за вседозволенность в программировании, или просто пытаетесь побольше охаять MQL5 в чьих-то корыстных интересах?
Напишите всё то-же самое на mql4 с проверками и защитой от дурака.
Все делаю только на MT5. Просто не стоит нести чушь, что MT5 не сложнее MT4. Он ГОРАЗДО сложнее! Только на этой неделе появилось решение задвоения позиций, и то не факт, что рабочее на 100%.
Столько лет все знали о задвоении, приходя к... Sleep. Потому что ОЧЕНЬ сложно. О многих особенностях торгового API, что поднимались на форуме, разработчики не в курсе, либо не давали своих комментариев.
Никто не хает MT5. Показал примерами некоторые проблемы при решении элементарных задач.