Несколько предложений по входным параметрам тестера

 
Предложение 1:
Сейчас: По входному параметру можно только задать один диапазон с определенным шагом.
Предлагаю: Ввести возможность задавать список значений параметров и нескольких диапазонов.
Например: 1.1234;1.3582;(1.5,0.01,1.65);(1.71,0.01,1.8211) или другой синтаксис.
Трейдеры достаточно грамотные люди, освоят любой приемлемый синтаксис.

Предложение 2:
Сейчас: При отмеченных нескольких параметрах происходит перебор всех параметров одновременно.
Предлагаю: Ввести возможность перебора каждого параметра последовательно. По результату тестирования каждого параметра установить текущее значение по заданному принципу оптимизации (например по максимальному значению прибыли, максимальному матожиданию, минимальной просадка и др.). После этого переходить к следующему параметру.

Предложение 3:
Ввести признак автоматического присвоения советнику вычисленных параметров.

Предложение 4: (Для особо ленивых, т.е. меня)
Ввести возможность запускать тестирование по расписанию.

Объясню причину этих предложений:
Я написал себе советник, который требует последовательного вычисления более 40 параметров, но они действительны на 1-2 дня, поэтому я каждое утро занимаюсь пересчетом.
Реализация этих предложений позволит практически полностью автоматизировать этот процесс (например запускается пересчет перед утром) и сократить время на тестирование.
Останется только творчество, чего и вам желаю.
 
Да, линейный шаг параметров при тестировании в диапазоне не всегда нужен. Довольно часто нужнее логарифмический шаг с произвольным множителем (1, 10, 100... или 1, 2, 4, 8... и т.д.), а возможность задавать произвольный набор значений была бы вообще идеальным решением.
Сейчас тестеру зачастую приходится либо делать кучу ненужных прогонов, либо менять параметры вручную, а затем пытаться свести результаты разных прогонов воедино (особенно неудобно при визуальной оценке результатов).
 
Похоже при оптимизации по большому числу параметров тестер начинает со случайного выбора значений. Если же число вариантов не слишком велико, диапазоны перебираютя последовательно. А нельзя ли и в этом случае делать случайный выбор? В большинстве случаев какие-то выводы можно сделать гораздо раньше, чем будут просчитаны все комбинации параметров, но для этого желательно иметь более или менее равномерное распределение точек в пространстве вариантов.
 
Сейчас тестеру зачастую приходится либо делать кучу ненужных прогонов, либо менять параметры вручную, а затем пытаться свести результаты разных прогонов воедино (особенно неудобно при визуальной оценке результатов).

Именно приходится, потому-что программист заставляет тестер делать кучу ненужных прогонов.
Что мешает преобразовать линейный параметр в экспоненциальный в самом советнике? Всего один вызов, ведь.
Вообще говоря, можно запрограммировать практически любую функцию изменения параметра, какая может понадобится, в том числе с изменяемым шагом.
Тестеру откуда знать все эти тонкости? И зачем?
Эдак можно потребовать от тестера, чтобы он и стратегию подправлял, чтоб не сливала :)
 
В принципе разработчики могут избавиться от всех подобных вопросов добавив в язык несколько команд для управления тестером:
- Запуск тестера с передачей ему параметров (советник, инструмент, период, модель, параметр для тестирования, значение и др.). Под "значением" можно даже указать просто число, а не диапазон, каждый в своём советнике будет изгаляться как хочет.
- Установка признака окончания тестирования (например глобальная переменная). При входе в советник на каждом тике можно этот признак проверять и рулить дальше.
- Возврат результирующих значений. Массив данных, которые тестер сейчас показывает.

Этого, кажется, будет достаточно, чтобы включить тестер как мощный инструмент анализа в советник. Может этот симбиоз позволит создать самонастраивающийся советник. Было-бы клёво.
 
В терминале жмете F1 (Справка) и в разделе Сервис находите топик Конфигурация при старте

 
Я говорю не о написании конфигурационного файла, выполняющегося при запуске терминала, а о возможности запускать тестер из советника, работающего в терминале с определенным инструментом, например EURUSD H1. Я могу использовать только MQL 4. В крайнем случае внешний DLL.
 
Я примерно о том же говорю. Вызываете из своего советника в определенное время через dll на исполнение второй терминал(из другой папки) с нужным конфигурационным файлом, по окончании тестиования считываете нужный файл.
 
Предлагаю вообще тестер вынести в отдельную программу. Терминал для торговли, тестер для тестирования. Пускай каждая программа занимается своим делом.
 
Поищите свое пожелание на форуме, невозмоность разделения терминала и тестера уже обсуждалась. Можете считать второй терминал тестером.
 
Я примерно о том же говорю. Вызываете из своего советника в определенное время через dll на исполнение второй терминал(из другой папки) с нужным конфигурационным файлом, по окончании тестиования считываете нужный файл.

а как определить момент окончания тестирования?
по факту появления файла TestReport?
Причина обращения: