Скачать MetaTrader 5

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

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

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

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

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

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

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

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

Forex Trader
114257
Forex Trader 2006.12.06 15:36  
Я говорю не о написании конфигурационного файла, выполняющегося при запуске терминала, а о возможности запускать тестер из советника, работающего в терминале с определенным инструментом, например EURUSD H1. Я могу использовать только MQL 4. В крайнем случае внешний DLL.
Forex Trader
114257
Forex Trader 2006.12.06 15:59  
Я примерно о том же говорю. Вызываете из своего советника в определенное время через dll на исполнение второй терминал(из другой папки) с нужным конфигурационным файлом, по окончании тестиования считываете нужный файл.
Forex Trader
114257
Forex Trader 2006.12.06 16:00  
Предлагаю вообще тестер вынести в отдельную программу. Терминал для торговли, тестер для тестирования. Пускай каждая программа занимается своим делом.
Forex Trader
114257
Forex Trader 2006.12.06 16:17  
Поищите свое пожелание на форуме, невозмоность разделения терминала и тестера уже обсуждалась. Можете считать второй терминал тестером.
Forex Trader
114257
Forex Trader 2006.12.06 17:41  
Я примерно о том же говорю. Вызываете из своего советника в определенное время через dll на исполнение второй терминал(из другой папки) с нужным конфигурационным файлом, по окончании тестиования считываете нужный файл.

а как определить момент окончания тестирования?
по факту появления файла TestReport?
1234
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий