Тестер не оптимизирует советник на больших промежутках МТ4 - страница 2

 
nexagob99 #:

А он точно для этого? Исходя из описания он для нестандартных таймфреймов:

Одно из применений - да. Если можно сделать Н3, то никто не запрещает сделать Н1. В МТ4 таймфреймы независимые друг от друга, в отличие от МТ5, в котором все они рассчитываются из М1. Для МТ4 отсутствие данных на Н1 с наличием данных за этот же промежуток на М1 является не таким уж и редким явлением. Вот тут то и помогает period_converter. 

Кроме того, думаю, замечали в тестере появление ошибок рассогласования. Это такие ситуации, когда на младшем ТФ экстремум, соответствующий экстремуму старшего ТФ, не совпадает с ним по цене. Или же количество тиков младшего ТФ в сумме не дает количество тиков старшего ТФ. Такие ошибки лечатся только принудительной конвертацией всех ТФ из М1.

 
Ihor Herasko #:

Одно из применений - да. Если можно сделать Н3, то никто не запрещает сделать Н1. В МТ4 таймфреймы независимые друг от друга, в отличие от МТ5, в котором все они рассчитываются из М1. Для МТ4 отсутствие данных на Н1 с наличием данных за этот же промежуток на М1 является не таким уж и редким явлением. Вот тут то и помогает period_converter. 

Кроме того, думаю, замечали в тестере появление ошибок рассогласования. Это такие ситуации, когда на младшем ТФ экстремум, соответствующий экстремуму старшего ТФ, не совпадает с ним по цене. Или же количество тиков младшего ТФ в сумме не дает количество тиков старшего ТФ. Такие ошибки лечатся только принудительной конвертацией всех ТФ из М1.

Все понятно объяснили спасибо.

Только не могу уловить связь с тем что мы скрипт накладываем на график в окне МТ4, а советник -то оптимизируем в тестере, они же не связаны

 
nexagob99 #:

Все понятно объяснили спасибо.

Только не могу уловить связь с тем что мы скрипт накладываем на график в окне МТ4, а советник -то оптимизируем в тестере, они же не связаны

Тестер формирует FXT-файл на основе имеющихся HST-файлов (это видимые графики). Можно запретить ему это делать и тогда появляется возможность формирования FXT-файла на основе собственных данных.

 
Ihor Herasko #:

Тестер формирует FXT-файл на основе имеющихся HST-файлов (это видимые графики). Можно запретить ему это делать и тогда появляется возможность формирования FXT-файла на основе собственных данных.

Можно поподробнее пожалуйста?
 
nexagob99 #:
Можно поподробнее пожалуйста?

Какие именно подробности интересуют?

 
Ihor Herasko #:

Какие именно подробности интересуют?

Ну, смотрите, не совсем понял как скомбинировать скрипт и тестер советника.

1. Открыт график с нужной парой, на нем скрипт period_converter и время 1Н

2. Подкачены все котировки

3. Запущен тестер советника на время 1Н

Как это все скомбинировать?

 
nexagob99 #:

Ну, смотрите, не совсем понял как скомбинировать скрипт и тестер советника.

1. Открыт график с нужной парой, на нем скрипт period_converter и время 1Н

2. Подкачены все котировки

3. Запущен тестер советника на время 1Н

Как это все скомбинировать?

Скрипт не нужно запускать одновременно с тестером. Он должен отработать до момента запуска тестера. Чтобы начать все с чистого листа (если это вообще нужно), можно вручную удалить историю всех ТФ. Для этого нужно закрыть в терминале все графики того символа, манипуляции с которым собираетесь совершить, кроме минутного графика.  Минутные графики называются так: <имя символа>1.hst. Например, EURUSD1.hst. Такие файлы оставляете, все остальные (например EURUSD60.hst) удаляете.

После этого на минутном графике символа запускаете period_converter. Сначала со значением настроечного параметра 5. Потом ждете появления в журнале "Эксперты" записи такого вида:

2022.01.11 20:11:53.903 PeriodConverter EURUSD,M1: 146004 record(s) written

Это значит, что скрипт свое отработал. Можно удалить скрипт с графика. После этого таким же образом создаются ТФ М15 (значение 15), М30 (30), Н1 (60), H4 (240), D1 (1440), W1 (10080) и MN1(43200). После их создания скрипт более не нужен. В итоге получается полностью синхронизированная история на момент создания графиков (далее она снова может рассинхронизироваться).

Теперь любой запуск тестера на такой истории не приведет к появлению ошибок рассогласования.

Все это немного не по вопросу оптимизации. Но, кто знает, вдруг поможет. 

 
Ihor Herasko #:

Скрипт не нужно запускать одновременно с тестером. Он должен отработать до момента запуска тестера. Чтобы начать все с чистого листа (если это вообще нужно), можно вручную удалить историю всех ТФ. Для этого нужно закрыть в терминале все графики того символа, манипуляции с которым собираетесь совершить, кроме минутного графика.  Минутные графики называются так: <имя символа>1.hst. Например, EURUSD1.hst. Такие файлы оставляете, все остальные (например EURUSD60.hst) удаляете.

После этого на минутном графике символа запускаете period_converter. Сначала со значением настроечного параметра 5. Потом ждете появления в журнале "Эксперты" записи такого вида:

Это значит, что скрипт свое отработал. Можно удалить скрипт с графика. После этого таким же образом создаются ТФ М15 (значение 15), М30 (30), Н1 (60), H4 (240), D1 (1440), W1 (10080) и MN1(43200). После их создания скрипт более не нужен. В итоге получается полностью синхронизированная история на момент создания графиков (далее она снова может рассинхронизироваться).

Теперь любой запуск тестера на такой истории не приведет к появлению ошибок рассогласования.

Все это немного не по вопросу оптимизации. Но, кто знает, вдруг поможет. 

Как раз то что нужно, спасибо.

Попробовал поочередно накидывать скрипт на график М1, новые hst создаются, только весят они на порядок меньше

А где можно посмотреть журнал работы скрипты? В логах не пишется.

 
nexagob99 #:

А где можно посмотреть журнал работы скрипты? В логах не пишется.

Только в журнале "Эксперты". И там от скрипта только одна строка того вида, который я приводил выше:

2022.01.11 20:11:53.903 PeriodConverter EURUSD,M1: 146004 record(s) written

Это означает, что вся имеющаяся история уже обработана. Далее скрипт будет поддерживать создание вновь приходящих баров. Но для стандартных ТФ это не актуально. Поэтому скрипт можно удалить после появления такой записи.

 

>> После этого таким же образом создаются ТФ М15 (значение 15), М30 (30), Н1 (60), H4 (240), D1 (1440), W1 (10080) и MN1(43200).

потом переименовать их все в правильный вид? типа EURUSDН1

Причина обращения: