Ошибки, баги, вопросы - страница 1938
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Опробывал Ваш вариант - в пределах погрешности изменение
Было:
2017.07.21 17:23:20.046 Core 1 Si-9.17,M1: 107509 ticks, 35385 bars generated. Environment synchronized in 0:00:00.032. Test passed in 0:02:52.037 (including ticks preprocessing 0:00:00.031).
2017.07.21 17:23:20.046 Core 1 Si-9.17,M1: total time from login to stop testing 0:02:52.069 (including 0:00:00.032 for history data synchronization)
2017.07.21 17:23:20.046 Core 1 351 Mb memory used including 32 Mb of history data, 64 Mb of tick data
Стало с Вашим кодом
2017.07.21 17:27:37.393 Core 1 Si-9.17,M1: 107509 ticks, 35385 bars generated. Environment synchronized in 0:00:00.031. Test passed in 0:02:58.013 (including ticks preprocessing 0:00:00.031).
2017.07.21 17:27:37.393 Core 1 Si-9.17,M1: total time from login to stop testing 0:02:58.044 (including 0:00:00.031 for history data synchronization)
2017.07.21 17:27:37.393 Core 1 352 Mb memory used including 32 Mb of history data, 64 Mb of tick data
MT4
2017.07.21 17:27:57.070 RUBRUR,M1: 225314 tick events (35701 bars, 231783 bar states) processed in 0:00:04.306 (total time 0:00:11.357)
Вам уже советовали готовое решение — https://www.mql5.com/ru/code/18305
Судя по вашим требованиям:
, оно вам подойдет.
Опробовал - вот результат:
2017.07.21 18:15:16.395 Core 1 Si-9.17,M1: 107509 ticks, 35385 bars generated. Environment synchronized in 0:00:00.047. Test passed in 0:02:37.748 (including ticks preprocessing 0:00:00.031).
2017.07.21 18:15:16.395 Core 1 Si-9.17,M1: total time from login to stop testing 0:02:37.795 (including 0:00:00.047 for history data synchronization)
2017.07.21 18:15:16.395 Core 1 540 Mb memory used including 32 Mb of history data, 64 Mb of tick data
Особого толка нет, и по не ясным причинам отличается фин. результат :(
Тут можно попробовать еще убрать объявление массива в функциях, а сделать его глобальным. Т.е. массив arr[ 1 ] сделайте глобальным и уберите строку double arr[ 1 ]; из всех функций.
Вот результат
2017.07.21 18:28:58.653 Core 1 Si-9.17,M1: 107509 ticks, 35385 bars generated. Environment synchronized in 0:00:00.078. Test passed in 0:02:51.477 (including ticks preprocessing 0:00:00.031).
2017.07.21 18:28:58.653 Core 1 Si-9.17,M1: total time from login to stop testing 0:02:51.555 (including 0:00:00.078 for history data synchronization)
2017.07.21 18:28:58.653 Core 1 359 Mb memory used including 32 Mb of history data, 64 Mb of tick data
Да, чуть быстрей, чем было, но с MQL4 не сравнить...
А если предположить, что дело не в коде? Сейчас у меня советник вообще жутко тормозит и уже минут 10 не может завершить работу - изменений особо не вносилось....
Итак, господа, теперь я в серьезном замешательстве - вырезал весь void OnTick(), и получил потрясающий результат
2017.07.21 21:22:08.048 Core 1 Si-9.17,M1: 107509 ticks, 35385 bars generated. Test passed in 0:02:32.928 (including ticks preprocessing 0:00:00.031).
2017.07.21 21:22:08.048 Core 1 346 Mb memory used including 32 Mb of history data, 64 Mb of tick data
И тут возникает идея, а может тормозят внешние индикаторы, хендаль которых объявлен и получен, если даже запроса к ним не происходит, если это так, то почему ж профилирование об этом умолчало и отняло у меня день жизни...
...если это так, то почему ж профилирование об этом умолчало и отняло у меня день жизни...
Потому что вы не выкладываете свой код, и отнимаете по дню жизни у каждого из присутствующих. Обратка от мироздания )
Потому что вы не выкладываете свой код, и отнимаете по дню жизни у каждого из присутствующих. Обратка от мироздания )
Это то, о чём вы говорите?
Это то, о чём вы говорите?
Похоже
Это то, о чём вы говорите?
Не-не я выложил результаты профилирования!