Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я про TRADE_TRANSACTION_ORDER_ADD - когда впервые появляется тикет ордера. Ещё нет сделки, ещё даже нет TRADE_TRANSACTION_REQUEST, где этот ордер выставляется.
Это актуально при асинхронной отправке отложенных ордеров.
При этом в первом TRADE_TRANSACTION_REQUEST (отправка) нет тикета ордера, а во втором TRADE_TRANSACTION_REQUEST, где ответ, тоже нет Magic'а, есть только ReqID, совпадающий с ReqID первого TRADE_TRANSACTION_REQUEST. И это единственная возможность привязать действующий ордер к Magic'у.
Если по какой-то причине(ребут, BSOD) пропустили второй TRADE_TRANSACTION_REQUEST - остаётся только гадать(по символу, цене и времени), какой именно робот выставил этот ордер.
С момента запуска 8 сделок по 4 ордерам - пока задвоений TRADE_TRANSACTION_DEAL_ADD не обнаружено.
Но я сейчас торгую только рыночными ордерами. Да, комиссия больше, но суммарная прибыль её в разы перекрывает.
Я про TRADE_TRANSACTION_ORDER_ADD - когда впервые появляется тикет ордера. Ещё нет сделки, ещё даже нет TRADE_TRANSACTION_REQUEST, где этот ордер выставляется.
Это актуально при асинхронной отправке отложенных ордеров.
При этом в первом TRADE_TRANSACTION_REQUEST (отправка) нет тикета ордера, а во втором TRADE_TRANSACTION_REQUEST, где ответ, тоже нет Magic'а, есть только ReqID, совпадающий с ReqID первого TRADE_TRANSACTION_REQUEST. И это единственная возможность привязать действующий ордер к Magic'у.
Если по какой-то причине(ребут, BSOD) пропустили второй TRADE_TRANSACTION_REQUEST - остаётся только гадать(по символу, цене и времени), какой именно робот выставил этот ордер.
Точно так-же
Ключевой фактор, когда ордер срабатывает по частям.
Да, ключевой фактор исполнение по частям. Даже если по частям происходит установка ордера, то так-же TRADE_TRANSACTION_DEAL_ADD задваивается.
TRADE_TRANSACTION_ORDER_UPDATE может появляться несколько раз - при изменении статуса ордера или при модификации, это нормально.
Что кроме статуса ордера может вызвать транзакцию TRADE_TRANSACTION_ORDER_UPDATE
Никакой модификации не делается. Только постановка лимитника скриптом.
Ключевой фактор, когда ордер срабатывает по частям, но одновременно. Обратите внимание на таймкод в логе.
У меня прошло 8 сделок по 4 ордерам. Два ордера вызвали по одной сделке, а другие два - по три сделки. Пока задвоение не выявлено.
Ордера рыночные, должно бы проходить одновременно, но миллисекунды сделок не совпадают.
Возможно, третье условие (кроме по частям, но одновременно) - ордер лимитный.Что кроме статуса ордера может вызвать транзакцию TRADE_TRANSACTION_ORDER_UPDATE
Никакой модификации не делается. Только постановка лимитника скриптом.
Могу предположить, что ордер последовательно прошёл статусы
ORDER_STATE_STARTED
ORDER_STATE_REQUEST_ADD
ORDER_STATE_PLACED
ORDER_STATE_REQUEST_CANCEL
некоторые из них - очень быстро, что не удаётся отловить.
Не забываем, что всё асинхронно, и статус ордера, который получаем мы, может отличаться от того, который был в момент возникновения события TRADE_TRANSACTION.
Бывает также ситуация, когда ордер уже не находится в действующих и ещё не находится в истории.
У меня прошло 8 сделок по 4 ордерам. Два ордера вызвали по одной сделке, а другие два - по три сделки. Пока задвоение не выявлено.
Ордера рыночные, должно бы проходить одновременно, но миллисекунды сделок не совпадают.
Возможно, третье условие (кроме по частям, но одновременно) - ордер лимитный.В последнем примере у меня при закрытии по рынку было задвоение. Совершенно не обязательно должен быть лимитник. Но, вероятно, на нём чаще всего встречается.
Еще, у меня демо счёт.Не помню авторства цитаты, но: "Все мы в этой жизни бета-тестеры".
И, в данном случае наш профит не в зарплате, а в более правильной работе MT.
Профит трейдера обычно состоит в том, чтобы найти баг (неэффективность), понять как его обойти (использовать) и никому не сказав об этом наживаться на ошибках других :)