Ошибки, баги, вопросы - страница 3585

 
Aleksandr Slavskii #:

Ну, с глубиной стакана в 5 уровней и на дохлом рынке, ваш метод может оказаться вполне рабочим. Собственно, что мы и видим в вашем эксперименте.

На ликвидных инструментах Мосбиржи он будет выдавать сигналы чаще, чем миллисекундный таймер.

Это одна из причин почему он не заменит Spy . Вторая -  OnBookEvent в тестере работать не может в принципе

Собственно, вопрос был по функции EventChartCustom и индикатору Spy, так как он даёт очень хороший прирост скорости тестирования в тестере стратегий, по сравнению с таймером.

Я никого не агитирую. Хотите пишите так как вам нравится. Зачем вы второй раз указываете на то, что в тестере не работает???

OnChartEvent  в тестере работать не может в принципе. И ЧТО???

 
Alexey Viktorov #:

Грешен, не обратил внимания. Исправляюсь…

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

 
Maxim Kuznetsov #:

в обработке OnBookEvent идеологическая ошибка !

там ненадо (вообще нельзя) обращаться к SymbolInfoTick - bid и ask надо брать по мин и макс лимиток из стакана. Это не только для MT, это вообще во всех терминалах и API

Спорить не буду, но не убедительно.

Какая разница между обработчиком события OnTimer(),  OnTick() или OnBookEvent()??? Произошло событие, обработчик этого события выполняет то, что в него написали. Какая разница откуда была вызвана функция? Я не понимаю.

 
Alexey Viktorov #:

Спорить не буду, но не убедительно.

Какая разница между обработчиком события OnTimer(),  OnTick() или OnBookEvent()??? Произошло событие, обработчик этого события выполняет то, что в него написали. Какая разница откуда была вызвана функция? Я не понимаю.

На практике, bid и ask, полученные из SymbolInfoTick и из стакана, могут отличаться.

 
JRandomTrader #:

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

Кто вас заставляет ими пользоваться??? Да и вообще на сколько нужны распечатки в боевом советнике, тем более с преобразованием даты…

Всё. Это уже похоже на придирки. Я беру самоотвод и больше не участвую в обсуждении этого вопроса.

 
Alexey Viktorov #:

Кто вас заставляет ими пользоваться??? Да и вообще на сколько нужны распечатки в боевом советнике, тем более с преобразованием даты…

Всё. Это уже похоже на придирки. Я беру самоотвод и больше не участвую в обсуждении этого вопроса.

Я не придираюсь, а наоборот, поясняю, откуда в распечатке задержки, указывая, что тики могут теряться и так, и так.

 
Alexey Viktorov #:

Спорить не буду, но не убедительно.

Какая разница между обработчиком события OnTimer(),  OnTick() или OnBookEvent()??? Произошло событие, обработчик этого события выполняет то, что в него написали. Какая разница откуда была вызвана функция? Я не понимаю.

частота и приоритеты

OnBookEvent самый частый и наиболее приоритетный..

даже если терминал их отдаёт в советник в общем порядке поступления, но на сервере всё равно OnBook возникает раньше 

 
JRandomTrader #:

На практике, bid и ask, полученные из SymbolInfoTick и из стакана, могут отличаться.

зачем вообще из стакана или шпиона получать цены, нужно только событие от символов, потом проверка торгового времени (рабочего и закрытия в конце дня), дальше наличие открытых позиций и потом уже проверка условий и цены

или есть другая схема?

 
Alexey Viktorov #:

Я никого не агитирую. Хотите пишите так как вам нравится. Зачем вы второй раз указываете на то, что в тестере не работает???

OnChartEvent  в тестере работать не может в принципе. И ЧТО???

Индикатор-шпион прекрасно работает в тестере, обеспечивая идентичные результаты тестирования мультивалютных советников при запуске на любом инструменте.

 
Maxim Kuznetsov #:
на сервере всё равно OnBook возникает раньше

А в советнике почему-то после соответствующего OnTick.