Библиотеки: MultiTester - страница 23

 
fxsaber:

В OnTesterInit сделать GetSettings и передать оттуда полученные значения через ParametersSetRange в sinput переменную.

Спасибо, частично помогло.

При переносе вызова GetSettings() в OnTesterInit() тестер перестал переключаться на вкладку настроек, но с локальными агентами что-то не то.

Данные GetSettings нигде не используются, просто вызываю функцию.

void OnTesterInit()
  {
   //получим настройки тестера
   string  Str;
   if(MQLInfoInteger(MQL_TESTER) && MTTESTER::GetSettings(Str))
     {
      // Print(Str);
     }
  }
  
 void  OnTesterDeinit()
  {
  }


 
Sunriser:

с локальными агентами что-то не то.

GetSettings можно вызывать только на локальных Агентах - машина, где работает Терминал. Запускать на других машинах нельзя.

Поэтому вариант через OnTesterInit - единственный.

 
Обновлен.
 

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

В каком месте мне вставить блок записи? В библиотеке? Или это только в советнике-задании реализуется?

В обычном случае без библиотеки вставлял это в блок ondeinit. Где тут вставить пока не нашёл.

Документация по MQL5: Файловые операции / FileWrite
Документация по MQL5: Файловые операции / FileWrite
  • www.mql5.com
FileWrite - Файловые операции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Aleksei Skrypnev:

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

В каком месте мне вставить блок записи? В библиотеке? Или это только в советнике-задании реализуется?

В обычном случае без библиотеки вставлял это в блок ondeinit. Где тут вставить пока не нашёл.

Если нет исходника запускаемого советника: только EX5, то вытягивать инфу (внутри MultiTester) из одиночного прогона нужно через сгенерированный tst-файл.

Если же исходник есть, то вставить в OnDeinit советника запись в Common-файл.

 
fxsaber:

Если нет исходника запускаемого советника: только EX5, то вытягивать инфу (внутри MultiTester) из одиночного прогона нужно через сгенерированный tst-файл.

Если же исходник есть, то вставить в OnDeinit советника запись в Common-файл.

Звучит вроде понятно, но по реализации пока не очень. Буду тыкать.)

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

 
fxsaber:

Если нет исходника запускаемого советника: только EX5, то вытягивать инфу (внутри MultiTester) из одиночного прогона нужно через сгенерированный tst-файл.

Если же исходник есть, то вставить в OnDeinit советника запись в Common-файл.

Кстати почему то запись идёт у меня только по последнему советнику. То есть 3 одинаковых скрипта друг за другом тестируются и записывают данные в 3 разных файла а запись в свой в файл идёт только у последнего.

Всё верно дублировал ещё советников но всё же запись идёт только у последнего советника. Метод запись в файл стандартным filewrite в  OnDeinit каждого советника .

По логам терминала тоже самое открывается и записывается в последний.
Документация по MQL5: Файловые операции / FileWrite
Документация по MQL5: Файловые операции / FileWrite
  • www.mql5.com
FileWrite - Файловые операции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Aleksei Skrypnev:

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

Делал комбайны, которые после Оптимизации выдирали лучшие проходы из opt-файла. Затем на основе их делали форварды и создавали другие оптимизационные задания.

Но это, действительно, могут здесь делать немногие.

 
Aleksei Skrypnev:

Кстати почему то запись идёт у меня только по последнему советнику.

Ничего не понял.

 
fxsaber:

Ничего не понял.

В библиотеке есть файл поставочный- MultiTester_Example2.

Я его взял добавил к имеющимся там 4 советникам еще 3 советника одинаковых просто скопированных друг от друга.

В ондеинит каждого своего советника указал запись в файл например советник1 делает запись в файл1, советник2 запись в файл2, советник3 запись в файл3.

На график кидаю MultiTester_Example2. Строка пробегает- показывает финиш. Захожу в папки записей вижу там только записанный файл с названием файл3.

(Причину пока не понял).

Добавляю например советник4 запускаю тест и вижу на выходе запись в файл  советник4.- (то есть только файл4 а файл1,2,3, нету)

То есть записывается получается только последний советник в последний файл.

(То есть как бы  OnDeinit выполняется с использованием библиотеки что-ли 1 раз в самом последнем советнике из списка.? ) ( А не окончания работы каждого советника из списка.)

(До этого пробовал писать в 1 файл инфо из каждого из 3-4 советников но информация в файле была тоже только из последнего советника.

Документация по MQL5: Файловые операции / FileWrite
Документация по MQL5: Файловые операции / FileWrite
  • www.mql5.com
FileWrite - Файловые операции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Причина обращения: