Генератор стратегий на mql5

 

Есть идея, сделать эксперт с набором сигналов и параметрами, и в тестере стратегий оптимизировать это всё (используя ГА) - таким образом искать стратегии.

пример параметров:

"_____________ MACD _____________";
MACD_FlT=0; \\ 1-включен индикатор 2-выключен
MACD_PERIOD=1; \\выбор таймфрейм
MACD_SIGNAL=1; \\ выбор сигнала или фильтра которые будут использованы для стратегии от данного индикатора.
MACD_fast_ema_period=1; \\параметры
MACD_slow_ema_period=1; \\параметры
Bands_MACD_PARAM=1; \\параметры
Bands_deviation_MACD_PARAM=1; \\параметры

 

хотелось бы услышать критику.

 
Mr.FreeMan:

Есть идея, сделать эксперт с набором сигналов и параметрами, и в тестере стратегий оптимизировать это всё (используя ГА) - таким образом искать стратегии.

пример параметров:

"_____________ MACD _____________";
MACD_FlT=0; \\ 1-включен индикатор 2-выключен
MACD_PERIOD=1; \\выбор таймфрейм
MACD_SIGNAL=1; \\ выбор сигнала или фильтра которые будут использованы для стратегии от данного индикатора.
MACD_fast_ema_period=1; \\параметры
MACD_slow_ema_period=1; \\параметры
Bands_MACD_PARAM=1; \\параметры
Bands_deviation_MACD_PARAM=1; \\параметры

 

хотелось бы услышать критику.

 Придется перебирать все . Иначе какую нибудь ТС можно пропустить, а это может быть пару тройку млрд .Или чуть усовершенствовать тестер ,чтобы некоторые параметры оптимизировать полным перебором . А так было бы приколньно попробовать.

 

 

 
ivandurak:

если будет интерес к теме, все непременно попробуют ;)
а вот насчёт полного перебора.... да, есть такая неприятность, но что бы перебрать все параметры потребуются годы, а то и десятки лет, единственный вариант если можно будет выбирать что то полным перебором, что то нет - но как такое сделать мне слабо представляется.
 
ivandurak:

но если систему выставлять в паблик - может оно и к лучшему? ведь даже плюс то что у каждого будут разные результаты поиска стратегий, а не всё абсолютно одинаковы - так и больше на генератор похоже)
 
Mr.FreeMan:
если будет интерес к теме, все непременно попробуют ;)
а вот насчёт полного перебора.... да, есть такая неприятность, но что бы перебрать все параметры потребуются годы, а то и десятки лет, единственный вариант если можно будет выбирать что то полным перебором, что то нет - но как такое сделать мне слабо представляется.
Для того что бы оптимизация проходила быстро было придумано облако агентов.
 

Mr.FreeMan:
но если систему выставлять в паблик - может оно и к лучшему? ведь даже плюс то что у каждого будут разные результаты поиска стратегий, а не всё абсолютно одинаковы - так и больше на генератор похоже)

Мне кажется лучше другой путь .

Режем исторические данные на участки чисто визуально . Благо флеты и тренды хорошо просматриваются  .Далее текущий момент сравниваем с базой данных предполагая что история повторяется . Для наиболее похожего исторического участка у нас уже есть оптимизированная ТС . 

Для меня здесь остается открытым вопрос как выбирать временной лаг текущего момента . 

То  sergey1294 

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

 

Mr.Freeman 

Я думал об этой затее пока не понял что использование индикаторов в основе стратегий в принципе подход ущербный. Сигнал от индикаторов по определению сильно запаздывают, иногда получается найти качественные стратегии которые без труда проходят хоть 5 хоть 10 лет тестирования, но в любом случае подходы без использования индикаторов вообще значительно качественней и прибыльней. Потому как в хронологическом порядке сигналы проходят такой путь: ММ - котировка - график(стакан и объемы тут же) - индикатор. При этом задержка между 3 и 4м уровнем зависит от настроек индикатора. Чем она меньше тем не качественней сигнал индикатора, чем качественней сигнал - тем она больше. Доступ на 1 и 2 уровень напрямую получить нельзя, а на 3й легко, зачем посредники в виде индикаторов если поведение ММ очень легко просматривается на 3ем уровне, давно есть конкретные стратегии по работе на 3м уровне.

*ММ - Маркет мейкер.

Ну а вообще, писать генетический алгоритм тебе придется с нуля потому как его также необходимо регулировать. Бери стандартные индикаторы (все) и выписывай сигналы по очереди какие они вообще могут дать. Классифицируй их и начинай писать )  

Вот тебе допустим сигналы по одной МА:

MA Рост MA[1]>Ma[2]

Падение MA[1]<Ma[2]

Остановка MA[1]==Ma[2]

Ускорение | MA[1]-MA[2] | > | MA[2]-MA[3] |

Замедление | MA[1]-MA[2] | < | MA[2]-MA[3] |

Пауза | MA[1]-MA[2] | = | MA[2]-MA[3] |

Разворот вверх MA[1]>Ma[2]<MA[3]

Разворот вниз MA[1]<Ma[2]>MA[3]  

По ADX картина выглядит еще страшней:

 Рост ADX,       Падение ADX,       Остановка ADX,       Ускорение ADX,       Замедление ADX,       Пауза ADX,       Разворот вверх ADX,       Разворот вниз ADX,       Пересечение уровня снизу ADX,       Пересечение уровня сверху ADX,       Рост DX+,       Падение DX+,       Остановка DX+,       Ускорение DX+,       Замедление DX+,       Пауза DX+,       Разворот вверх DX+,       Разворот вниз DX+,       Пересечение уровня снизу  DX+,       Пересечение уровня сверху DX+,       Рост DX-,       Падение DX-,       Остановка  DX-,       Ускорение DX-,       Замедление DX-,       Пауза DX-,       Разворот вверх DX-,       Разворот вниз DX-,       Пересечение уровня снизу  DX-,       Пересечение уровня сверху DX-,       Пересечение DX+ DX- снизу,       Пересечение DX+ DX- сверху,       Пересечение DX+ ADX снизу,       Пересечение DX+ ADX сверху,       Пересечение DX- ADX снизу,       Пересечение DX- ADX сверху.

 
Генетические алгоритмы - это просто!
Генетические алгоритмы - это просто!
  • 2010.05.25
  • Andrey Dik
  • www.mql5.com
В статье автор расскажет об эволюционных вычислениях с использованием генетического алгоритма собственной реализации. Будет показано на примерах функционирование алгоритма, даны практические рекомендации по его использованию.
 
Mr.FreeMan:

Есть идея, сделать эксперт с набором сигналов и параметрами

Делал такое еще для 4ки. Тут.

Можно добавлять свои сигналы\условия (ковыряться в коде, но очень просто, спецом для этого и был заточен) и сохранять\объединять стратегии.

Стратегии сохраняются в виде строк (см. лог эксперта), которые можно вставлять в параметры.

 

вообще честно говоря это не просто идея, это проект, и уже готовый проект. проблема в том, что я всё не как не могу дождаться от разработчиков пока они перепишут ГА в тестере, что бы снять ограничения оптимизированных параметров в 64 и протестировать эту систему на полную мощь.

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

 
Mr.FreeMan:

вообще честно говоря это не просто идея, это проект, и уже готовый проект.

А, ну тогда удачи.

проблема в том, что я всё не как не могу дождаться от разработчиков пока они перепишут ГА в тестере

Вообще при повышении размерности входов эффективность генетики падает. 64 параметра -- это нереально много.
 
TheXpert:
Вообще при повышении размерности входов эффективность генетики падает. 64 параметра -- это нереально много.

для того что я сделал 64 это нереально мало, насколько я понимаю тогда ГА будет крайне неэффективна в этом случае? в каком смысле неэффективна? мне лишь бы что то - то, что бы не использовать полный перебор и потом десятилетиями искать эти стратегии)

 ------

вообще я планирую открыть исходные коды, сделать сайт, форум, и вместе с заинтересованными людьми открыто двигать этот проект. НО ТОЛЬКО В ТОМ СЛУЧАЕ если разработчики MetaQuotes пойдут навстречу или же найдётся человек который встроит свой ГА в эту систему, а то у меня нет не времени... не обходимых знаний по этой теме.

Причина обращения: