Скачать MetaTrader 5

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

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Узнай, как установить MetaTrader на Linux
e2878
59
e2878 2013.03.24 17:52 

Доброго времени суток всем!

Задался вопросом тестирования стратегий по расписанию. Суть в следующем: тестим советника ежедневно на данных прошлых суток и результаты оптимизации подставляем в работающего на рынке советника. Хочется сделать всё это как-то автоматически, чтобы не гонять тестер и не подставлять каждый день новые параметры в советника ручками. Никто с подобной задачей не сталкивался? 

Vladislav Andruschenko
92093
Vladislav Andruschenko 2013.03.24 18:04  
e2878:

Доброго времени суток всем!

Задался вопросом тестирования стратегий по расписанию. Суть в следующем: тестим советника ежедневно на данных прошлых суток и результаты оптимизации подставляем в работающего на рынке советника. Хочется сделать всё это как-то автоматически, чтобы не гонять тестер и не подставлять каждый день новые параметры в советника ручками. Никто с подобной задачей не сталкивался? 

Автозапуск тестера-

Советник в тестере который сохраняет данные по окончанию теста

Советник на графике которые читает эти настройки.  

e2878
59
e2878 2013.03.24 18:45  
Vladon:

Автозапуск тестера-

Советник в тестере который сохраняет данные по окончанию теста

Советник на графике которые читает эти настройки.  

Хорошо, если так работает. А можно чуть подробнее: куда сохраняет советник данные? В файл или глобальные переменные? И какой функцией можно просмотреть результаты оптимизации из советника?
Vladislav Andruschenko
92093
Vladislav Andruschenko 2013.03.24 19:25  

Если нужно постоянные оптимизации и данные то нужно два терминала. 

Как я это вижу:

1 терминал с советником для торговли,

2 терминал с советником для тестера, нужно установить в папку с терминалом номер 1. в папку mql5 - files (чтобы можно было читать и писать в одну папку)

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

 Не знаю как в мт5 - но в мт4 есть автозапуск тестера, если он есть и в мт5 - то в принципе такую связь можете сделать. 

Dmitriy Parfenovich
7719
Dmitriy Parfenovich 2013.03.24 19:41  
Флаги открытия файлов

FILE_COMMON

4096

Расположение файла в общей папке всех клиентских терминалов. Флаг используется при открытии файлов (FileOpen()), копировании файлов (FileCopy(), FileMove()) и проверке существования файлов (FileIsExist())


Теоретически, файлы расположенные в общей папке будут доступны нескольким терминалам.
Vladislav Andruschenko
92093
Vladislav Andruschenko 2013.03.24 19:43  
fyords:
Флаги открытия файлов

FILE_COMMON

4096

Расположение файла в общей папке всех клиентских терминалов. Флаг используется при открытии файлов (FileOpen()), копировании файлов (FileCopy(), FileMove()) и проверке существования файлов (FileIsExist())


Теоретически, файлы расположенные в общей папке будут доступны нескольким терминалам.

тогда гуд

 

осталось только найти Конфигурация при старте

   Помоему в мт5 такое не предусмотрели. 

Dmitriy Parfenovich
7719
Dmitriy Parfenovich 2013.03.24 20:47  
Vladon:

...

осталось только найти Конфигурация при старте

   Помоему в мт5 такое не предусмотрели. 

Вот еще интересная ветка про "автостарт" тестера

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Насколько нужен скриптовый язык программирования сценариев работы тестера/оптимизатора?

MetaDriver, 2011.03.03 21:37

  • Крайне необходим, может сэкономить уйму времени.
  • Желателен, было бы очень удобно.
  • Необязательная фича, меня и кнопки устраивают.
  • Не нужно засорять терминал бестолковыми излишествами.

 

MetaQuotes
Админ
24950
Renat Fatkhullin 2013.03.25 04:41  
В МТ5 автостарт тестера тоже есть - посмотрите справку, там богатый набор параметров.

Мы у себя уже обсуждали задачу запуска тестера и оптимизатора из экспертов, но пока решения нет. Как вариант, из кода можно запускать задачи(пачку задач сразу), подготовив для них данные, получать идентификаторы каждой задачи, а потом ловить статусы их исполнения в соответствующем обработчике. За счет наличия очереди задачи не будут теряться и конфликтовать.

В результате каждый эксперт может периодически заниматься самооптимизацией или вообще работать как диспетчер более сложных задач.

Главная засада кроется в том, как эта функция запуска оптимизации будет вести себя при запуске из самого тестера. Например, как протестировать поведение самооптимизирующегося эксперта, который раз в сутки запускает самооптимизацию? Далее вылезает рекурсия "а если включится самооптимизатор самооптимизатора от самооптимизатора...."?

Самый простой вариант, что внутри тестера запуск оптимизатора выключен. Но тогда встает вопрос - как протестировать самооптимизирующего эксперта?
Alexander Bereznyak
21475
Alexander Bereznyak 2013.03.25 06:15  

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

Один код непосредственно полноценная торговая система с вызовом тестера, а второй код без вызова тестера.


MetaQuotes
Админ
24950
Renat Fatkhullin 2013.03.25 06:16  
Даже один вызов невозможен, не говоря уже об рекурсии.
Alexander Bereznyak
21475
Alexander Bereznyak 2013.03.25 06:20  

Тогда остается один вариант:

один код непосредственно полноценная торговая система с вызовом тестера, а второй код без вызова тестера.

12345
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий