Особенности языка mql5, тонкости и приёмы работы - страница 23
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нет, не надо. Нужно просто знать как была закрыта последняя позиция (а для этого не нужно сильно в историю углубляться - достаточно отфильтровать "свои" сделки) - дальше последней позиции вглубь истории знания больше статистические, нежели оперативные.
Ну так всё это делается в OnTradeTransaction. Только в триггер опубликованный fxsaber: я-бы добавил проверку по символу, магику и сделки на DEAL_ENTRY_OUT
А в тестере как будешь проверять?
Невнимательно посмотрел этот триггер, но не увидел проверки сделки на DEAL_ENTRY_OUT. Ведь именно эта сделка говорит о закрытии позиции на hadge счетах.
Проверка не нужна. В тестере триггер работать не будет, т.к. тестер не генерирует некоторые Trade-события.
Какие, например из этого списка?
TRADE_TRANSACTION_ORDER_ADD
Добавление нового открытого ордера.
TRADE_TRANSACTION_ORDER_UPDATE
Изменение открытого ордера. К данным изменениям относятся не только явные изменения со стороны клиентского терминала или торгового сервера, но также и изменение его состояния при выставлении (например, переход из состояния ORDER_STATE_STARTED в ORDER_STATE_PLACED или из ORDER_STATE_PLACED в ORDER_STATE_PARTIAL и т.д.).
TRADE_TRANSACTION_ORDER_DELETE
Удаление ордера из списка открытых. Ордер может быть удален из открытых в результате выставления соответствующего запроса либо в результате исполнения (заливки) и переноса в историю.
TRADE_TRANSACTION_DEAL_ADD
Добавление сделки в историю. Осуществляется в результате исполнения ордера или проведения операций с балансом счета.
TRADE_TRANSACTION_DEAL_UPDATE
Изменение сделки в истории. Возможны ситуации, когда ранее исполненная сделка изменяется на сервере. Например, сделка была изменена во внешней торговой системе (бирже), куда она была выведена брокером.
TRADE_TRANSACTION_DEAL_DELETE
Удаление сделки из истории. Возможны ситуации, когда ранее исполненная сделка удаляется на сервере. Например, сделка была удалена во внешней торговой системе (бирже), куда она была выведена брокером.
TRADE_TRANSACTION_HISTORY_ADD
Добавление ордера в историю в результате исполнения или отмены.
TRADE_TRANSACTION_HISTORY_UPDATE
Изменение ордера, находящегося в истории ордеров. Данный тип предусмотрен для расширения функциональности на стороне торгового сервера.
TRADE_TRANSACTION_HISTORY_DELETE
Удаление ордера из истории ордеров. Данный тип предусмотрен для расширения функциональности на стороне торгового сервера.
TRADE_TRANSACTION_POSITION
Изменение позиции, не связанное с исполнением сделки. Данный тип транзакции свидетельствует именно о том, что позиция была изменена на стороне торгового сервера. У позиции может быть изменен объем, цена открытия, а также уровни Stop Loss и Take Profit. Информация об изменениях передается в структуре MqlTradeTransaction через обработчик OnTradeTransaction. Изменение позиции (добавление, изменение или ликвидация) в результате совершения сделки не влечет за собой появление транзакции TRADE_TRANSACTION_POSITION.
TRADE_TRANSACTION_REQUEST
Уведомление о том, что торговый запрос обработан сервером, и результат его обработки получен. Для транзакций данного типа в структуре MqlTradeTransaction необходимо анализировать только одно поле - type (тип транзакции). Для получения дополнительной информации необходимо анализировать второй и третий параметры функции OnTradeTransaction (request и result).
Разве что выделенное событие не генерируется. Так а оно надо кому-то?
Какие, например из этого списка?
Trade-событие - мой термин.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Особенности языка mql5, тонкости и приёмы работы
fxsaber, 2017.02.28 19:30
Может быть открыта BUY-позиция и действующий BUY-ордер. Выше привел кодо-пример, но проще, наверное, на пальцах. Как идет срабатывания TP открытой позиции
Trade-событие - мой термин.
На мой взгляд это не событие. Это тонкости последовательности выполнения приказов. Зачем мне ловить момент когда ордер SELL для закрытия позиции BUY находится в терминале одновременно с самой позицией???
Может быть беда, что последовательность прихода событий может не соблюдаться, но ... что главное в торговле? разве отслеживание потока событий и замеры скорости? Если мне откроют позицию хоть завтра, но по заявленной цене и закроют её хоть вчера, но с прибылью я возражать не буду.
На мой взгляд это не событие. Это тонкости последовательности выполнения приказов. Зачем мне ловить момент когда ордер SELL для закрытия позиции BUY находится в терминале одновременно с самой позицией???
Прочтите название ветки.
А что от этого изменится?