Нужен ли режим тестирования по ценам открытия текущего таймфрейма? (как в МТ4) - страница 10
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Поясните, какое отношение имеет работа по ссылке выше к описанным багам?
P.S. OnTickMarketWatch обязан был быть сделан разработчиками в самом onTick по этому образу и подобию. Элементарный (казалось бы) мультивалютный сборщик тиков в MT5, как и в MT4, делается через (одно место) опрашивание MarketWatch каждые N ms. Как результат, тики пропускаются.
Велась речь о тестере в режиме "по ценам открытия". Не путайте этот режим с режимом "по всем тикам" и Real-Time.
Не буду спорить, приведу лишь MT4-советник, который показывает баг. Если у кого возникнет желание, сможет переписать его на MQL5 и проверить наличие/отсутствие бага.
Результат его работы в тестере MT4 build 432 на EURUSD M1 "по ценам открытия":
Видно, что на USDJPY отсутствует бар в 23:13. Однако, когда мы в тестере доходим до этого времени и запрашиваем OHLC[23:13] USDJPY, то вместо {Close[23:12], Close[23:12], Close[23:12], Close[23:12]} мы получаем {Open[23:12], Open[23:12], Open[23:12], Open[23:12]}. Что, конечно же, неверно, т.к. цена в 23:13 USDJPY не менялась (бара нет, но цена была - привет от "нет тика - нет бара") и была равна цене закрытия USDJPY в 23:12 (Close[23:12]).
Очевидно, переборщили в защите от заглядывания в будущее (которая все равно обходится штатными средствами).
P.S. Если вы заполните все дыры (в MT5 привет от NO_CustomHistory) в истории, достигнув тем самым мультисимвольной побаровой синхронизации, то сумеете обойти данный баг.
Не буду спорить, приведу лишь MT4-советник, который показывает баг. Если у кого возникнет желание, сможет переписать его на MQL5 и проверить наличие/отсутствие бага.
Результат его работы в тестере MT4 build 432 на EURUSD M1 "по ценам открытия":
Видно, что на USDJPY отсутствует бар в 23:13. Однако, когда мы в тестере доходим до этого времени и запрашиваем OHLC[23:13] USDJPY, то вместо {Close[23:12], Close[23:12], Close[23:12], Close[23:12]} мы получаем {Open[23:12], Open[23:12], Open[23:12], Open[23:12]}. Что, конечно же, неверно, т.к. цена в 23:13 USDJPY не менялась (бара нет, но цена была - привет от "нет тика - нет бара") и была равна цене закрытия USDJPY в 23:12 (Close[23:12]).
Очевидно, переборщили в защите от заглядывания в будущее (которая все равно обходится штатными средствами).
P.S. Если вы заполните все дыры (в MT5 привет от NO_CustomHistory) в истории, достигнув тем самым мультисимвольной побаровой синхронизации, то сумеете обойти данный баг.
Вы пришли искать правду в тестировании по ценам открытия в четвёрке(???) через 8 лет?
Мы заранее предупреждали, что этот метод пригоден только для грубой оценки стратегии.
Если вы хотите предъявить претензии по ценам открытия в пятёрке, то предъявляйте предметно.
Кстати, вы в курсе о существовании официального грааля на M1 OHLC методе тестирования?
Интересный баг.
А кто хотел тестирования "по ценам открытия"?
А кто предупреждал о весёлых последствиях тестировния "по ценам открытия как в четвёрке"?
Из ваших слов и servicedesk понял, что на MT4 - это фича, а не баг.
Нарвался на нее случайно, когда решил попробовать сохранить синхронизированную побарово историю не через скрипт, а через советник в тестере. Тем самым получив серьезные расхождения.
Для меня очевидно, что такая работа тестера является ошибочной, поэтому по доброте душевной и написал здесь. Заодно предположив, что в MT5 могут быть те же детские болезни. Желающие могут переписать приведенный код на MQL5 и проверить в течение минуты-другой, так это или нет. В этом и состоит предметность по MT5, где вы умудрились найти желание предъявить претензии.
Ну а более серьезное предположение бага в MT5-тестере, которое при должной серьезности к своей платформе очень стоит проверить, описано здесь.
P.S. Интересно, что "фичу" разработчики могут легко исправить:
однако вместо "поправим в следующем билде", видим привычное с их стороны поведение.
P.P.S. Конечно, в MT4-тестере в режиме "по всем тикам", данная "фича" тоже имеет место быть. MT5 - не проверял.
hrenfx
Возможно, в MT4 в этом месте есть баг (в том числе и в ежетиковом тестировании). Но (утверждаю с вероятностью 99 процентов) этот баг в четвёрке никто править не будет.
Так что давайте переключимся на пятёрку. Если в ежетиковом режиме (в режиме "по ценам открытия" мы допускаем разные неточности) этот баг присутствует, то будем его править обязательно. Однако, могу Вас уверить, что в пятёрке такого бага нет. Лучше попробуйте доказать, что в пятёрке этот баг присутствует.
Возможно, в MT4 в этом месте есть баг (в том числе и в ежетиковом тестировании).
Привел лаконичное доказательство своего утверждения наличия бага в MT4, вы продолжаете говорить "возможно".
Так что давайте переключимся на пятёрку. Если в ежетиковом режиме (в режиме "по ценам открытия" мы допускаем разные неточности) этот баг присутствует, то будем его править обязательно. Однако, могу Вас уверить, что в пятёрке такого бага нет. Лучше попробуйте доказать, что в пятёрке этот баг присутствует.
Речь идет не о тестировании, а о корректной подаче последовательности ценовой информации в тестере. Если "по ценам открытия" в мультивалютном тестере у вас такие проблемы с подачей мультисимвольных цен, то это странно.
На данный момент совсем не заинтересован в MT5-тестере и MT5-платформе в целом, причины неоднократно излагал (любая платформа с подобными архитектурными ляпами подверглась бы мною идентичной здесь критике). Поэтому в отношении MT5 о наличии бага не утверждал, а лишь только предполагал. Проверить могут заинтересованные.