Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2471
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Удали это
Ребята требуется помощь.
Я с хедж счетами работал только в далеком 2015 году на мт4, в МТ5 тут понадобилось сделать универсальность и возникла проблема с тейк профитами.
Смотрите логика:
Открываем Бай Селл
Робот подхватывает позиции, сомотрит что на них нет ТП и выставляет им ТП.
Если открыть еще один бай, по логике робот смотрит что появилось 2 позиции одного направления, он заходит во вторую функцию, сравнивает цены текущего ТП и нового, если они отличаются, он меняет Цену на второй ТП.
Но вот тут ошибка сыпаться начинает, если открыть вторую позицию на сел, то метод почему то берет цену тейка от направления бай и пытается ее модифицировать для направления сел на новый уровень, но так как этот уровень находится ниже цены открытия позиций - вылетает ошибка.
Почему он берет тейк не своего направления понять не могу
Может уже установленные тейки нужно каким то другим образом выявлять и т.д. ?GetAveragePrice
Во всём виновата GetAveragePrice.
После её вызова и возврата в функцию TakeMetod у вас в памяти остаётся выбранная позиция, но какая? Совсем не та которую выбрали в TakeMetod, а последняя выбранная в GetAveragePrice. Далее вы получаете тейк позиции выбранной в GetAveragePrice
И чей тейк вы получаете? Та хз чей.
Ребята требуется помощь.
Я с хедж счетами работал только в далеком 2015 году на мт4, в МТ5 тут понадобилось сделать универсальность и возникла проблема с тейк профитами.
Нашли среднюю цену. Потом можно и модификацией позиций заняться.
Нашли среднюю цену. Потом можно и модификацией позиций заняться.
А свопы и комиссии не учтены, это очень важно?
А свопы и комиссии не учтены, это очень важно?
Та я хз важно это или нет. Кому важно учитывать свопы и комиссии, тот пусть допишет :)
Со свопами проблем не будет, а вот, чтоб добавить комиссии придётся обращаться к истории сделок и то в том случае если комиссия берётся за вход, если комиссия берётся за выход её никак не учесть.
Нашли среднюю цену. Потом можно и модификацией позиций заняться.
У меня же же тоже самое что вы показали, только при вызове я просто задаю нужный тип бай или селл
Эти функции выполняют одну и тоже задачу, расчет средней цены серии ордеров, цена может быть не привязана вообще к какому то ордеру или позиции в рынке.
По сути мне кажется, в моем случае нужно искать ордер серии на котором висит тейк профит, я посмотрел в вроде как при первоначальной установке он вешается на первый открытый ордер и далее при его изменении тп на другие ордера не переносится.
В итоге я так думаю нужно постоянно искать самый первый открытый ордер серии и сним работать, попробую цикл поменять
У меня же же тоже самое что вы показали, только при вызове я просто задаю нужный тип бай или селл
Эти функции выполняют одну и тоже задачу, расчет средней цены серии ордеров, цена может быть не привязана вообще к какому то ордеру или позиции в рынке.
По сути мне кажется, в моем случае нужно искать ордер серии на котором висит тейк профит, я посмотрел в вроде как при первоначальной установке он вешается на первый открытый ордер и далее при его изменении тп на другие ордера не переносится.
В итоге я так думаю нужно постоянно искать самый первый открытый ордер серии и сним работать, попробую цикл поменять
Я вам указал на ошибку, но вы видимо это сообщение пропустили.
У меня же же тоже самое что вы показали, только при вызове я просто задаю нужный тип бай или селл
Эти функции выполняют одну и тоже задачу, расчет средней цены серии ордеров, цена может быть не привязана вообще к какому то ордеру или позиции в рынке.
Дополню.
Да функция аналогичная, с единственной разницей у меня за один проход обрабатываются оба типа позиций, у вас же для этого все позиции нужно перебрать дважды. В общем разница не большая и на проблему не влияет.
Я не посмотрел, что делает эта функция, так как увидел ошибку и не стал разбираться дальше.
Дополню.
Да функция аналогичная, с единственной разницей у меня за один проход обрабатываются оба типа позиций, у вас же для этого все позиции нужно перебрать дважды. В общем разница не большая и на проблему не влияет.
Я не посмотрел, что делает эта функция, так как увидел ошибку и не стал разбираться дальше.
Я немного просчитался.
Привык к нетингу.
В итоге то что происходит, открыли бай, выставился ТП, открыли второй, он перенесся на другой уровень, но на второй то ордер ТП не выставился...
Если сработает ТП закроется только первый вход.
Тут надо такую функцию, которая бы отслеживала валютную пару, при появлении первой позиции, ставился тейк профит, при появлении второй позиции,
делался расчет средней цены,
от этой средней цены делался расчет нового расстояния ТП
первая позиция которая имеет уже ТП модифицировала свой ТП на новый уровень, а вторая позиция у которой еще нет ТП, соответственно модифицировалась и выставляла свой ТП на уровень средняя цена + новое расстояние ТП
при появлении третьей и последующих позиций, все повторяется те что имеют ТП, делают новую модификацию средняя цена + уровень ТП
а новый ордер ставит свой тп так же ср цена + уровень тп.
Блин столько гемороя на хедж счетах
Все я разобрался в чем причина.
Нужен перебор всех тикетов ордеров серии и по этому нужно выбирать каждый отдельный тикет и перепроверять далее и по необходимости уже модифицировать