Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Опубликуй статью и ее прочитают тысячи человек по всему миру!
Automated-Trading
Админ
97631
Automated-Trading 2011.06.24 10:33 

Опубликована статья Создание собственных критериев оптимизации параметров эксперта:

Терминал МetaTrader 5 дает новые возможности для оптимизации параметров создаваемых экспертов. Кроме уже имеющихся в тестере критериев оптимизации, разработчики получили инструмент для создания собственных критериев. Это открывает поистине безграничные возможности в тестировании и оптимизации экспертов. В статье рассматриваются практические способы построения таких критериев - как простых, так и достаточно сложных.

Автор: Dmitriy Skub

sigma7i
1240
sigma7i 2012.07.19 22:22  

Очень полезная статья. все просто бери и пользуйся..

Но здесь описывается только критерии по вызове функции OnTester(), т.е когда оптимизация закончилась с данным параметром.

Возможно ли досрочно прервать оптимизацию? например при просадке более 50% или балансе менее n-значения, чтобы не тратить зря процессорное время!

Vladimir Gomonov
8273
Vladimir Gomonov 2012.07.20 08:25  
sigma7i:

Очень полезная статья. все просто бери и пользуйся..

Но здесь описывается только критерии по вызове функции OnTester(), т.е когда оптимизация закончилась с данным параметром.

Возможно ли досрочно прервать оптимизацию? например при просадке более 50% или балансе менее n-значения, чтобы не тратить зря процессорное время!

ExpertRemove
sigma7i
1240
sigma7i 2012.07.20 16:53  
MetaDriver:
ExpertRemove
О в точку!!! Спасибо!
sigma7i
1240
sigma7i 2012.07.20 21:50  

 Подскажите пожалуйста, есть возможность отсеять ненужные результаты по окончании оптимизации (вызова OnTester) например с минусовым результатом, чтобы не захламлять вкладку "результаты оптимизации" ?

Olegs Kucerenko
12017
Olegs Kucerenko 2012.07.20 21:55  

Сортировку можно сделать ,кликая на...

на любых столбцах. 

 ПС.Не всегда заведомо кривые результаты ,в процессе генетической оптимизации можно "срывать"  ExpertRemove().

Также обнулять в OnTester(). 

У меня ,лично, генетика порой уходила не туда. 

sigma7i
1240
sigma7i 2012.07.20 22:46  
Karlson:

Сортировку можно сделать ,кликая на...

на любых столбцах. 

Также обнулять в OnTester(). 

У меня ,лично, генетика порой уходила не туда. 

 

Так это сортировка,  я хочу чтобы неугодные результаты вообще не выводились... 

с сортировкой все просто например:

double  OnTester()
double  balance = TesterStatistics(STAT_PROFIT);
double  trades_number = TesterStatistics(STAT_TRADES);

if(balance < 5000 || trades_number < 20) return(-777);

....бла бла return(свой критерий оптимизации);

 а потом сортируем(-777 уходит на задний план)...

но это как то "топорно" хочется чтобы неугодные результаты вообще не выводились.

sigma7i
1240
sigma7i 2012.07.20 22:51  

Karlson:

 

 

 ПС.Не всегда заведомо кривые результаты ,в процессе генетической оптимизации можно "срывать"  ExpertRemove().

 

Вот здесь вы правы что у меня не получается  "срывать" результаты при оптимизации(любой не только генетической) с помощью  ExpertRemove()...

может я не умею его готовить:) ..ставлю в обработчик  OnTick() с условием... 

Olegs Kucerenko
12017
Olegs Kucerenko 2012.07.20 23:08  

Хотите сказать,что код по типу :

if (balance < 3000) ExpertRemove();

 не работает?

 

Но сказал я совсем другое. Что такой срыв (работал ранее по крайней мере) приводил к уходу генетики в конечном итоге.

 

sigma7i
1240
sigma7i 2012.07.21 09:56  
Karlson:

Хотите сказать,что код по типу

if (balance < 3000) ExpertRemove(); 

 не работает?

 

Работает. Уже понял. прерывает оптимизацию но в результаты всеравно выводит, поэтому я подумал что не работает.


 

Karlson:

Но сказал я совсем другое. Что такой срыв (работал ранее по крайней мере) приводил к уходу генетики в конечном итоге.

Это да.

еще если обнулять результаты  OnTester() или делать как указано выше(присваивать минусовое значение -777), то гинетика действительно может вести себя непредсказуемо, т.к. отбор ведется по результатам как раз по возвращаемому значению  OnTester().

 

 

sigma7i
1240
sigma7i 2012.07.21 09:57  
вопрос остается открытым, как убрать ненужные результаты из отчета. 

В MT4 было такое:

MT4 

 


Наверняка это возможно сделать с помощью средств MQL5 раз разработчики вообще убрали такие функции.

Конечно все можно скопировать в Excel, но хочется воспользоватся возможностями новой платформы.

C ограничениями мы разобрались - можно сделать с помощью  ExpertRemove().

как быть с пропуском бесполезных результатов, в отчете?

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