Тестер в новой сборке 604 работает некорректно - страница 11

 

здравствуйте, что я обнаружил по поводу 610 очень медленного теста, после завершения этого очень медленного теста, когда вы показываете сделки на графике, индикаторы связанные с "open chart" не отображаются на графике, в отличие от 509.

Возможно, это связано с индикаторами-переменными, определенными не в верхней части блока, а внутри блока (если блоки). или некоторые продолжают создавать/вводить переменные на каждом тике?

(тест 610 очень медленный, но точный, совпадает с 509, но требует много часов для завершения).


И эта медлительность будет действительна и для реальных исполнений под 610, я полагаю.

 

привет, возможная причина медлительности: iMA(1000) и некоторые другие индикаторы с длинным периодом работают очень медленно, в тестере 610. в 509 они работают комфортно. и работают в реальных условиях...

Если уменьшить период, например iMA(30), тестер работает быстрее... но опять же не показывает используемые индикаторы на графике, когда я нажимаю "открыть график", показываются только сделки... (509 правильно показывает индикаторы на графике, если таймфрейм тестера совпадает).


MA5 = iMA(NULL, PERIOD_M5, 1000, 0, MODE_SMMA, PRICE_MEDIAN, 2);

 
cbalta:

привет, возможная причина медлительности: iMA(1000) и некоторые другие длиннопериодные индикаторы работают очень медленно, в тестере 610. в 509 они работают комфортно. и работают в реальных условиях...

Если я уменьшаю период, например iMA(30), тестер работает быстрее... но снова не показывает используемые индикаторы на графике, когда я нажимаю "открыть график", показываются только сделки... (509 правильно показывает индикаторы на графике, если таймфрейм тестера совпадает).


MA5 = iMA(NULL, PERIOD_M5, 1000, 0, MODE_SMMA, PRICE_MEDIAN, 2);



Сообщили ли вы о любом из этих случаев в службу технической поддержки для рассмотрения?
 

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

Каждый раз тестируйте советника, пока не определите точные функциональные различия между новой и старой версиями mt4.

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

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

 
moneycode:

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

Каждый раз тестируйте советника, пока не определите точные функциональные различия между новой и старой версиями mt4.

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

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

Извините, я не стартапер. Я не разрабатываю новые системы, я переношу проверенный код. Что вы найдете, так это некую болезнь новой среды, когда ваши сборки закончатся.


Между тем, похоже, что внешние вызовы icustom также очень медленные для перенесенного кода по сравнению с 509.

 
Trevhib:

Сообщили ли вы о любом из этих случаев в службу поддержки для рассмотрения?
Спасибо. Добавлено.
 
cbalta:

здравствуйте, что я обнаружил по поводу 610 очень медленного теста, после завершения этого очень медленного теста, когда вы показываете сделки на графике, индикаторы связанные с "open chart" не отображаются на графике, в отличие от 509.

Возможно, это связано с индикаторами-переменными, определенными не в верхней части блока, а внутри блока (если блоки). или некоторые продолжают создавать/вводить переменные на каждом тике?

(тест 610 очень медленный, но точный, совпадает с 509, но требует много часов для завершения).

И эта медлительность будет справедлива и для реальных исполнений, в рамках 610, я полагаю.

Я согласен, я снова запустил тестовый советник 600+ на тех же данных графика, что и в предыдущем бэктесте за 1 год. Результаты очень медленные по сравнению с предыдущими.

Новый тест скорости: Бэктест тестового советника за 1 год на билде 610 в сравнении с результатами предыдущего теста.

MT4 build 509 MT4 build 606 MT4 build 610
Тест1
Тест2
Тест3
13.510 секунд
13.588 секунд
13.603 секунды
12.075 секунд
11.778 секунд
12.043 секунды
26,317 секунды
25,943 секунды
27,815 секунды
Среднее13.567 секунд11.965 секунд26.692 секунды
Разница по сравнению с 50911,8% быстрее96,7% медленнее

Хорошо, вот в чем проблема, я заметил, что terminal.exe держал 750 МБ RAM все время, даже до того, как я начал тесты, поэтому сейчас я удалил 500 МБ .fxt файл из тестера. Terminal.exe немедленно освободил большую часть этой оперативной памяти. Теперь я снова запустил 3 теста на 610.

Terminal.exe держит только 68 МБ RAM на протяжении всех следующих тестов. Вновь созданный .fxt файл снова имеет размер 500 МБ, как и ожидалось для бэктеста за 1 год.

MT4 build 610 (после удаления старого .fxt файла)
Тест1
Тест2
Тест3
11,622 секунды
11,934 секунды
11,481 секунды
Среднее11.678 секунд
Разница по сравнению с 50913.9% быстрее

Я полагаю, это означает, что в сборке 610 есть проблемы с памятью.

 

Мой советник под релизом 509 генерирует более 2000 ордеров за 2013 год.

После перекомпиляции, без ЛЮБОЙ модификации, под 610, он генерирует 3 ордера и список : "tester: 0 символ не найден".

Любая идея по исправлению будет оценена по достоинству.

 
FaceNord:

Мой советник под релизом 509 генерирует более 2000 ордеров за 2013 год.

После перекомпиляции, без ЛЮБЫХ изменений, под 610, он генерирует 3 ордера и список : "tester: 0 символ не найден".

Любая идея по исправлению будет оценена по достоинству.


Добро пожаловать на форум mql4.com,

Выбран ли символ, которым торгует ваш советник, в Market Watch?

 

Так что я пошел в магазин через дорогу и обратно я думаю, что я отсутствовал около 30 минут теперь я смотрю на диспетчер задач снова, terminal.exe RAM использование поднялось с 68 МБ до 544 МБ, пока я отсутствовал, так что с этим?

Редактировать:

Я снова удалил .fxt файл, на этот раз это не повлияло на использование оперативной памяти. Я закрыл терминал, но диспетчер задач все еще показывает, что terminal.exe запущен. Тогда я снова открыл терминал и снова закрыл его, на этот раз он закрылся и из диспетчера задач. Я перезапустил терминал. Теперь он снова использует 56 МБ оперативной памяти.