Скачать MetaTrader 5

Генетический алгоритм в тестере стратегий.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Узнай самые обсуждаемые темы на форуме. Заходи в раздел Стена!
Nikolay Khrushchev
19180
Nikolay Khrushchev 2011.05.07 17:11 

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

Почитал вот эту статью: https://www.mql5.com/ru/articles/1408

Но плохо понял как же все таки проходит оптимизация. Те кто знает как проходит оптимизация по генетическому алгоритму, объясните пожалуйста на пальцах как это делается на примере обычного советника по пересекающимся МА. Параметры - периоды каждой МА и все. Зарание спасибо!

Diamant
337
Diamant 2011.05.07 18:15  

Тестер по ГА - чушь и ерунда. ГА совсем не для этого. Не используйте тестер с включенной галкой "Генетический алгоритм"

Nikolay Khrushchev
19180
Nikolay Khrushchev 2011.05.07 18:19  

хорошо, в таком случае предложи свой алгоритм как уменьшить количество проходов при обучении нейронной сети. Есть банально 4 параметра: a1 a2 a3 a4. от 0 до 200 шаг 1 итого 1600 млн проходов

Victor Nikolaev
Модератор
14483
Victor Nikolaev 2011.05.07 18:21  
MrGold166:

хорошо, в таком случае предложи свой алгоритм как уменьшить количество проходов при обучении нейронной сети. Есть банально 4 параметра: a1 a2 a3 a4. от 0 до 200 шаг 1 итого 1600 млн проходов


Сколько людей, столько мнений.

Только ответьте на один вопрос - сколько нейронов в скрытом слое?

Diamant
337
Diamant 2011.05.07 18:21  
Ты уверен, что говоришь о нейронной сети?
Andrey Dik
11212
Andrey Dik 2011.05.07 18:39  
MrGold166:

Но плохо понял как же все таки проходит оптимизация. Те кто знает как проходит оптимизация по генетическому алгоритму, объясните пожалуйста на пальцах как это делается на примере обычного советника по пересекающимся МА. Параметры - периоды каждой МА и все. Зарание спасибо!

Два параметра (2 машки) принимаются генами хромосомы. К примеру, задается интервал поиска параметров от 10 до 100, тогда хромосому можно представить так (гены изображены в виде числовой прямой с текущим значением генов) с параметрами 15 и 30:

--------15----------------------------------------

----------------30--------------------------------

берем ещё одну хромосому, например такую:

-----------------------50-------------------------

--------------------------60----------------------

Результатом скрещивания будет такая хромосома:

------------ 33-----------------------------------

---------------------45--------------------------

Вот так берутся хромосомы с лучшими показателями (например баланс) и скрещиваются. В итоге хромосомы становятся всё лучше и лучше с каждым разом.


зы Это самое простое объяснение работы ГА, насколько можно вообще.

Diamant
337
Diamant 2011.05.07 18:53  

ТС, вообще тут объяснение на пальцах не прокатит.

Читай Википедию. И попробуй для себя понять, почему ГА не катят, когда зависимость между генами, вообще говоря, неизвестна. И неизвестным образом влияет на результат.

Andrey Dik
11212
Andrey Dik 2011.05.07 19:00  
Diamant:

Читай Википедию. И попробуй для себя понять, почему ГА не катят, когда зависимость между генами, вообще говоря, неизвестна. И неизвестным образом влияет на результат.

Не вводите людей в заблуждение, пожалуйста.
Nikolay Khrushchev
19180
Nikolay Khrushchev 2011.05.07 19:07  
joo:

Два параметра (2 машки) принимаются генами хромосомы. К примеру, задается интервал поиска параметров от 10 до 100, тогда хромосому можно представить так (гены изображены в виде числовой прямой с текущим значением генов) с параметрами 15 и 30:

--------15----------------------------------------

----------------30--------------------------------

берем ещё одну хромосому, например такую:

-----------------------50-------------------------

--------------------------60----------------------

Результатом скрещивания будет такая хромосома:

------------ 33-----------------------------------

---------------------45--------------------------

Вот так берутся хромосомы с лучшими показателями (например баланс) и скрещиваются. В итоге хромосомы становятся всё лучше и лучше с каждым разом.


зы Это самое простое объяснение работы ГА, насколько можно вообще.

Т.е Изначально мы можем провести несколько тестов в обычном режиме для общей картины и дальнейшего скрещивания. Допустим тестируем хромосомы 10-100 20-90 30-80 40-70 50-60 и далее проводим скрещивание?

похоже Diamant действительно прав, это явно не подходит.

Тогда вопрос другой, какой метод оптимизации использовать лучше. В данном случае оптимизация=подгон. Или нужно применять на конкретном примере в зависимости от параметров? Давайте на примере нейросети представленной на данном сайте в статьях. Там взят АО 1 7 14 и 21й бар, 4 нейрона. Задаются им веса для удобства 0-200 в дальнейшем веса пересчитываются через 100-вес.

Nikolay Khrushchev
19180
Nikolay Khrushchev 2011.05.07 19:11  
Vinin:


Сколько людей, столько мнений.

Только ответьте на один вопрос - сколько нейронов в скрытом слое?

На данный момент нет данных о количестве нейронов. Хочу создать систему которая будет комбинировать варианты нейронов в том числе и их количество, обучать их по очереди и выявлять наилучшие комбинации.
Andrey Dik
11212
Andrey Dik 2011.05.07 19:20  
MrGold166:

Т.е Изначально мы можем провести несколько тестов в обычном режиме для общей картины и дальнейшего скрещивания. Допустим тестируем хромосомы 10-100 20-90 30-80 40-70 50-60 и далее проводим скрещивание?

Да, можно искать наилучшие параметры даже в рукопашную. Проводим ряд первоначальных тестов 10-100 20-90 30-80 40-70 50-60. Выбираем два варианта с лучшими показателями и скрещиваем их. Полученную хромосому заносим в наш список. Из этого списка выбираем опять две лучшие и скрещиваем их. Незабываем выкидывать самые плохие сохраняя численность популяции.

Упрощённо так и работает. Попробуйте, будете удивлены.

MrGold166:

похоже Diamant действительно прав, это явно не подходит.

Diamant не прав.

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