Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1259
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Правильно ли понимаю, что в мт5 заместо времени закрытия позиции необходимо смотреть POSITION_TIME_UPDATE ?
TakeProfit исчисляется в пунктах, а ТрейлингТейкПрофит в валюте депозита. ТрейлингТейкПрофит прибыль в валюте депозита с одного или нескольких ордеров и ставит стопы ордеров в определенной в настройках сумме, то есть на вычисленном расстоянии.
Например в настройках указан ТрейлингТейкПрофит в 100 баксов. Как только цена наберет профитов в 100 баксов и уйдет дальше, программа вычисляет расстояние, соответствующее 100 баксам и выставляет все стоплоссы ордеров в рассчитанном месте, если это позволяет. Как только цена откатит до стоплосов, то все ордера закроются. В принципе это тот же самый ТрейлинСтоп, только расчет в валюте депо и тралит прибыль. Возможно где-то ошибся, но принцип таков. Надеюсь разъяснил.
Трейлинг - движение. Тралим стоп - передвигаем стоп по алгоритму. Тралим ТейкПрофит - передвигаем уровень по мере приближения к нему по какому либо алгоритму.
Нет. Нужна закрывающая сделка.
Спасибо!
Вот есть функция для мартина, проверяющая на профит последнюю сделку. Если убыточная, то возвращает объем сделки. Насколько корректно это делать таким образом:
Если нужно для всей позиции узнать профит, то необходимо:
-> Прошерстить все сделки и узнать DEAL_POSITION_ID последней сделки;
-> По DEAL_POSITION_ID опять шерстить и узнавать профит всей позиции?
Или есть путь короче?
Спасибо!
Вот есть функция для мартина, проверяющая на профит последнюю сделку. Если убыточная, то возвращает объем сделки. Насколько корректно это делать таким образом:
Если нужно для всей позиции узнать профит, то необходимо:
-> Прошерстить все сделки и узнать DEAL_POSITION_ID последней сделки;
-> По DEAL_POSITION_ID опять шерстить и узнавать профит всей позиции?
Или есть путь короче?
Посмотрите на проблему с другой стороны. Зачем шерстить историю если ID позиции можно получить в момент закрытия позиции и выбрать ордера и сделки этой позиции уже всё зная.
Посмотрите на проблему с другой стороны. Зачем шерстить историю если ID позиции можно получить в момент закрытия позиции и выбрать ордера и сделки этой позиции уже всё зная.
Дело в том, что это нужно проверять перед открытием сделки :(
Но если короткого нет, всегда можно и длинным путем пойти :)
Дело в том, что это нужно проверять перед открытием сделки :(
Но если короткого нет, всегда можно и длинным путем пойти :)
Это надо только при перезапуске советника в OnInit так искать. А в процессе работы советника получать необходимые данные в момент закрытия позиции. Но всё это дело каждого. Кому-то нравится грузить процессор ненужными действиями………
Это надо только при перезапуске советника в OnInit так искать. А в процессе работы советника получать необходимые данные в момент закрытия позиции. Но всё это дело каждого. Кому-то нравится грузить процессор ненужными действиями………
Немного не понял, а как отследить момент закрытия позиции, кроме как на каждом тике делая запрос по состоянию позиции? Это конечно не все позиции опрашивать, но все равно на каждом тике запрос.
TakeProfit исчисляется в пунктах, а ТрейлингТейкПрофит в валюте депозита. ТрейлингТейкПрофит прибыль в валюте депозита с одного или нескольких ордеров и ставит стопы ордеров в определенной в настройках сумме, то есть на вычисленном расстоянии.
Например в настройках указан ТрейлингТейкПрофит в 100 баксов. Как только цена наберет профитов в 100 баксов и уйдет дальше, программа вычисляет расстояние, соответствующее 100 баксам и выставляет все стоплоссы ордеров в рассчитанном месте, если это позволяет. Как только цена откатит до стоплосов, то все ордера закроются. В принципе это тот же самый ТрейлинСтоп, только расчет в валюте депо и тралит прибыль. Возможно где-то ошибся, но принцип таков. Надеюсь разъяснил.
Трейлинг - движение. Тралим стоп - передвигаем стоп по алгоритму. Тралим ТейкПрофит - передвигаем уровень по мере приближения к нему по какому либо алгоритму.
Сильно не пинайте, но я не до понял. В настройках советника, сгенерированного в MetaEditor и включающего в себя модуль трейлинга, указывается трейлинг именно в пунктах. К примеру, я выставляю "Take Profit trailing level (in points)" = 100. Как данный трал будет работать? Поправьте, если ошибаюсь. При достижении текущей ценой расстояния, составляющего 100 пунктов до установленного Take Profita активируется трал. Когда цена достигает TP и пересекает его, то позиция не закрывается. Просто трал начинает следовать за ценой на расстоянии в 100 пунктов. Если цена развернется и пойдет против позиции, то позиция закроется либо по установленному TP либо, если трал ушел дальше TP, по установленному тралом SL. Верно?
Без кода не ответить трудно.
Это надо только при перезапуске советника в OnInit так искать. А в процессе работы советника получать необходимые данные в момент закрытия позиции. Но всё это дело каждого. Кому-то нравится грузить процессор ненужными действиями………