В Тестере тики и исполнение идут по тейкерской истории: не можете быть мейкером.
Смотрите. Вот я привёл конкретный пример.
Вся суть в том, что в моей системе тестирования - данная заявка закрывается в 09.00.14 когда появляется именно тейкерский ордер. А в mql5 - эта же заявка закрывается в 09.00.07 - при появлении встречной заявки. Т.е. тестер как бы реагирует не на ТОРГОВЫЙ тик, а на выставленный лимитный ордер по этой же цене.
Не совсем понятно " не можете быть мейкером ". В смысле? Что значит не могу? Вы имеете ввиду, что не могу по лимитным ордерам работать?
Смотрите. Вот я привёл конкретный пример.
Вся суть в том, что в моей системе тестирования - данная заявка закрывается в 09.00.14 когда появляется именно тейкерский ордер. А в mql5 - эта же заявка закрывается в 09.00.07 - при появлении встречной заявки. Т.е. тестер как бы реагирует не на ТОРГОВЫЙ тик, а на выставленный лимитный ордер по этой же цене.
Если встречная заявка не была "пассивной", то всё правильно. По крайней мере, для биржевого исполнения.
Если встречная заявка не была "пассивной", то всё правильно. По крайней мере, для биржевого исполнения.
Не совсем понятно " не можете быть мейкером ". В смысле? Что значит не могу? Вы имеете ввиду, что не могу по лимитным ордерам работать?
Здесь на ресурсе выложен бесплатный тестер, который идентичен MT5-Тестеру. Его автор - я. Поэтому, как работает алгоритм Тестера, - понимаю.
В MT5-Тестере своими лимитными заявками вы не влияете на ценообразование.
Так в этом то и дело. Посмотрите в прикрепленном файле - там ТИКИ. И моя заявка закрылась в 09.00.07 Тиком у которого стоит флаг =2. Т.е. как я понимаю - это на Вашем языке как раз "пассивная" заявка (я её называю мейкерской, т.е. Лимитной)
Пассивная заявка - лимитка с типом исполнения ORDER_FILLING_BOC (Book or Cancel) - выставляется только если не приводит к немедленной сделке. Если мы ставим лимитку с другим типом в зону встречных ордеров, она будет тут же исполнена (в зависимости от типа исполнения и наличия встречных объёмов) по наилучшим встречным ценам, как рыночная.
Пассивная заявка - лимитка с типом исполнения ORDER_FILLING_BOC (Book or Cancel) - выставляется только если не приводит к немедленной сделке. Если мы ставим лимитку с другим типом в зону встречных ордеров, она будет тут же исполнена (в зависимости от типа исполнения и наличия встречных объёмов) по наилучшим встречным ценам, как рыночная.
Я использую тип заявки ORDER_FILLING_RETURN
И ставлю цену внутри спреда. Т.е. если мне надо продать - я ставлю цену лучше BID и на 1 пункт хуже чем ASK
Всё норм - заявка появляется и "кушается" по мере поступления рыночных встречных ордеров.
Тогда... если я помению тип ордера на ORDER_FILLING_BOC - по идее ситуация не измениться (ну если мы берём за аксиому, что на момент выставления заявок - в стакане отсутствуют встречные лимитные заявки по данной цене). Или я что-то не верно понимаю?
И... ну какая разница в моём примере в конечном итоге от типа выставленного ордера? Он выставился (появился в стакане). Вопрос то в том - как и чем он закрывается.
Здесь на ресурсе выложен бесплатный тестер, который идентичен MT5-Тестеру. Его автор - я. Поэтому, как работает алгоритм Тестера, - понимаю.
В MT5-Тестере своими лимитными заявками вы не влияете на ценообразование.
Вот Ваш тестер учитывает только торговые тики или как в mt5 ещё и изменения цен (с флагом 2 и 4) без проведения торговых операций? Этот вопрос НЕ актуален, если Ваш тестер ориентирован на роботы, работающие только по рыночным ордерам.
Приведите хронологию на простом примере, какой видите правильную работу тестера.
Ну смотрите.. я в прикреплённом файлике - тики.
я в 09.00.06 Выставляю Лимитный ордер на продажу по цене 28249
Далее я отслеживаю стакан и если появляются ордера по цене, лучше чем у меня - я становлюсь перед ними.
Таким образом мой ордер по идее должен быть исполнен при первом поступившем рыночном тике на покупку.
Такой тик появляется только 09.00.14 по цене 28243 - и моя система ориентируется именно по нему.
А в mt5 - после того, как я выставил свой ордер на продажу по цене 28249 - тут же (но после меня) появляется лимитный (не торговый тик с флагом 2) по этой же цене ордер на покупку. И система mt5 вполне вроде как логично исполняет мой ордер.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Тестирую робота в режиме "Каждый тик на основе реальных тиков"
фьюч SRH4 31.01.2024
В определенный момент роботом создаётся лимитный ордер на продажу
Его дата: 31.01.2024 09.00.07 по цене 28249 (внутри спреда ASK: 28250 BID: 28248). Но робот по факту отправил запрос в 09.00.06 (сразу после получения последнего тика в эту секунду)
Немного спустя в 09.00.07 Появляется встречная Лимитная заявка на покупку по этой цене (именно мейкерская заявка так же внутри спреда)
В связи с чем появляются "риторические" вопросы:
1. При тестировании - правильно ли опираться только на "тейкиров"? Ибо как интуитивно мы понимаем, что мейкерские заявки навряд ли будут появляться внутри спреда, если уже есть заявки в противоположном направлении. Быть может кто-то сталкивался с данной ситуацией... В смысле есть ли понимание на сколько в итоге сильно будут отличаться результаты в реале?
2. Есть ли возможность в mt5 тестировать только по тейкерским тикам? Опять же - предполагая, что мейкеры не будут в реале становиться тейкирами и будут выставлять свои заявки по факту учитывая наличие других заявок внутри спреда.
3. И не совсем понятно... Почему дата моего лимитного ордера 09.00.07? Я в отладчике вижу, что на момент отправки запроса время стоит 09.00.06