Как тестируете стратегии для биржи? - страница 4

Aleksei Kuznetsov #:

Про ошибку в тестере вы не упомянули: SL сработал по цене Bid до тригера SL, а не по цене Bid после него.

Это неправильно.

Из Вашего скрина история bid-цен (по которым должны акцептироваться и исполняться SELL-ордера) в Тестере.

2025.09.17 16:27:39.507 1004.8
2025.09.17 16:27:42.394 1004.4
2025.09.17 16:27:42.399 1004.6

fxsaber #:

Это неправильно.

Из Вашего скрина история bid-цен (по которым должны акцептироваться и исполняться SELL-ордера) в Тестере.

Вы согласны, что не должно быть исполнения по 1004.8, как делает сейчас тестер ? По какой должно исполниться?
Aleksei Kuznetsov #:
Вы согласны, что не должно быть исполнения по 1004.8, как делает сейчас тестер ? По какой должно исполниться?

По этой.

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Как тестируете стратегии для биржи?

fxsaber, 2026.10.18 18:50

Из Вашего скрина история bid-цен (по которым должны акцептироваться и исполняться SELL-ордера) в Тестере.

2025.09.17 16:27:39.507 1004.8
2025.09.17 16:27:42.394 1004.4
2025.09.17 16:27:42.399 1004.6
fxsaber #:

По этой.

Пожалуй это самый правильный вариант, максимально приближенный к тому, что происходит в стакане: так как если уровень не выбран до конца, то в стакане с большой вероятностью еще есть несколько лотов. И небольшой шанс, что рыночный ордер полностью обнулил его, не начав выбирать следующий уровень.

Да и запрограммировать это легче, просто взять Last как Bid, а не ждать следующего Bid.

Вот и решение для исправления ошибки в тестере, очень простое в реализации.

Aleksei Kuznetsov #:

Да и запрограммировать это легче, просто взять Last как Bid

Да, взять ПОСЛЕДНИЙ в серии Last. Для SELL-серии - bid, для BUY-серии - ask.

Лучшего всего создавать кастомный символ с такими вкраплениями bid/ask, в котором нет места для last. И ставить исполнение, как на форекс.

Это будет давать самый быстрый и точный биржевой бэктест.

fxsaber #:

Да, взять ПОСЛЕДНИЙ в серии Last. Для SELL-серии - bid, для BUY-серии - ask.

Важное уточнение.
fxsaber #:

Лучшего всего создавать кастомный символ с такими вкраплениями bid/ask, в котором нет места для last. И ставить исполнение, как на форекс.

Для большинства пользователей это будет очень сложной задачей.

Лучше убедить MQ сделать правильную логику обработки стоповых ордеров (не только SL). Лимитные исполняются без проскальзываний, думаю это правильно.
Сам попробую сделать такие bid|ask в мат. режиме. Ну и буду ждать решения проблемы от MQ, чтобы сравнивать.


Как я понял большинство биржевиков и не знали о наличии такой проблемы, о лишних ~13% в тестере из за проскальзываний в прошлое... к сожалению почти никто не проверяет результаты работы тестера. Да и я бы не заметил без более подробного отчета, где сразу все видно. Даже рандомное поведение баланса никто не заметил, которое в соседней ветке описал, причем это видно в родном отчете тестера...

Aleksei Kuznetsov #:
Важное уточнение.

Для большинства пользователей это будет очень сложной задачей.

Лучше убедить MQ сделать правильную логику обработки стоповых ордеров (не только SL). Лимитные исполняются без проскальзываний, думаю это правильно.
Сам попробую сделать такие bid|ask в мат. режиме. Ну и буду ждать решения проблемы от MQ, чтобы сравнивать.


Как я понял большинство биржевиков и не знали о наличии такой проблемы, о лишних ~13% в тестере из за проскальзываний в прошлое... к сожалению почти никто не проверяет результаты работы тестера. Да и я бы не заметил без более подробного отчета, где сразу все видно. Даже рандомное поведение баланса никто не заметил, которое в соседней ветке описал, причем это видно в родном отчете тестера... 

Там тестер вообще работает не понятно как, поэтому и не тестирую там и всё. Не правильно и баланс считается....

В боте делаю виртуальный режим торгов и на торги и все расчеты и профиты и лоссы и цены (графики доходностей можно через файлы не строю еще) в нём и в реал времени наблюдаю за торгами и сработками торговых условий и так далее.....

я о МТ5 моекс ф-м ооо брокер.

Вообще, я думаю, что надо транслировать в историю края стакана после каждой транзакции - тут как раз был бы актуален отдельный флаг, иначе реальный спред не увидеть.

Aleksey Vyazmikin #:

Вообще, я думаю, что надо транслировать в историю края стакана после каждой транзакции - тут как раз был бы актуален отдельный флаг, иначе реальный спред не увидеть.

На всех 3х скриншотах после серии Last сработавших за одну миллисекунду, через 5 миллисекунд появляется тик изменяющий Bid или Ask. То есть так и происходит, как вы предложили. Почему так быстро? Наверно чьи то стоп-лимитки активировались после прохождения нескольких уровней в стакане. Либо кто-то супер быстрый успел обычную лимитку отправить.

Roman Shiredchenko #:

В боте делаю виртуальный режим торгов и на торги и все расчеты и профиты и лоссы и цены (графики доходностей можно через файлы не строю еще) в нём и в реал времени наблюдаю за торгами и сработками торговых условий и так далее.....

Вы один из немногих, кому под силу такое. Но тысячи других пользователей тестируют менее продвинутые роботы, выбирают из ошибочных вариантов один (а с ошибкой они все которые используют SL/тралл) и торгуют на нем. Нужно убеждать MQ исправлять ошибки.

Aleksei Kuznetsov #:
Нужно убеждать MQ исправлять ошибки.

там возможная причина что мало персон (клиентов) торгуют МТ5 в РФ в ф-м - это экономически не интересно ни разрабу, ни брокеру... заморачиваться надо и не то что правок а прям много чего делать надо, чтобы ок было всё в базовой комплектации... ) ИМХО.

Кто ж против - я только за! Надо запросы делать на правки!!! (всем) и указывать на недостатки в работе тестера в том числе... там еще и данные по символам вроде криво отдаются... самое элементарное - режим неттинг, мосбиржа при запросе - брокер хэдж отдаёт... 

Там же еще есть же и серверная часть МТ5 -в общем работы - куча!!! ) (вагон и маленькая тележка) )