Что проще - стабильные 500 пипсов в месяц или только 20? - страница 12

 
joo писал(а) >>

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

P.S. Возможно, наличие такой возможности нас парадует в MT5.

Н-да. Оптимизатор с возможностью задания своей целевой функции нужен. Может просто не востребован только. Но это пока. Нужен хороший пример.

 
Vinin >>:

Н-да. Оптимизатор с возможностью задания своей целевой функции нужен. Может просто не востребован только. Но это пока. Нужен хороший пример.

Мало того. Оптимизатор непригоден даже для оптимизации простейших систем. (забанят - незабанят?) Хотя сам тестер считаю великолепным.

Хороший пример? Пожалуйста! Если оптимизировать любую, даже относительно простую систему с целевой фунцией Balance, то получается что? Правильно. Из всего многообразия возможных вариантов генетический алгоритм выберет те, которые с бОльшим балансом. Сюда войдут также системы, которые сливали в 300-х сделках, и увеличили депо за пару сделок в несколько раз. Этого нам не надо. Аналогичная однобокость получится если выбирать остальные оставшиеся целевые фунции - Profit factor, Maximal Drawdown и т.д.

Не говоря уже о тех проблемах, которые возникнут, если Mathemat решит оптимизировать свои системы, о которых он говорил выше.

 
joo писал(а) >>

Мало того. Оптимизатор непригоден даже для оптимизации простейших систем. (забанят - незабанят?) Хотя сам тестер считаю великолепным.

Хороший пример? Пожалуйста! Если оптимизировать любую, даже относительно простую систему с целевой фунцией Balance, то получается что? Правильно. Из всего многообразия возможных вариантов генетический алгоритм выберет те, которые с бОльшим балансом. Сюда войдут также системы, которые сливали в 300-х сделках, и увеличили депо за пару сделок в несколько раз. Этого нам не надо. Аналогичная однобокость получится если выбирать остальные оставшиеся целевые фунции - Profit factor, Maximal Drawdown и т.д.

Не говоря уже о тех проблемах, которые возникнут, если Mathemat решит оптимизировать свои системы, о которых он говорил выше.

Я знаю обо всем этом. Но на оптимизатор мне знаний не хватит. А об использовании своей целевой функции - при необходимости делаю свои с сохранением результата в файл в стандартном оптимизаторе. Но, как мне кажется, в существующем оптимизаторе и нет целевой функции. Есть только параметр, по которому надо получить лучшее (но не оптимальное) решение. Хотя что считать лучшим - вот этого я и не знаю. Но то, что получаемое решение не оптимальное - это точно.

 
Vinin >>:

Я знаю обо всем этом. Но на оптимизатор мне знаний не хватит. А об использовании своей целевой функции - при необходимости делаю свои с сохранением результата в файл в стандартном оптимизаторе. Но, как мне кажется, в существующем оптимизаторе и нет целевой функции. Есть только параметр, по которому надо получить лучшее (но не оптимальное) решение. Хотя что считать лучшим - вот этого я и не знаю. Но то, что получаемое решение не оптимальное - это точно.

Извените, но вы ошибаетесь на счет отсутствия целевой фунции. Balance (и остальные) - и есть целевая фунция для генетического алгоритма, который пытается максимизировать её. А те параметры, которые во вкладке "Оптимизация" - всего лишь фильтры, которые отсеивают полученные результаты. Разработчики, подтвердите пожалуйста. :)

 
joo писал(а) >>

Извените, но вы ошибаетесь на счет отсутствия целевой фунции. Balance (и остальные) - и есть целевая фунция для генетического алгоритма, который пытается максимизировать её. А те параметры, которые во вкладке "Оптимизация" - всего лишь фильтры, которые отсеивают полученные результаты. Разработчики, подтвердите пожалуйста. :)

Можно просто оптимизировать по балансу, копировать в Ёксель, а в нем делать упорядочивание по любой вашей целевой функции макросом. Правда только на основе результатов выдаваемых оптимизатором МТ4. Конечно, найденные опты будут несовсем оптимальны с т.з. целевой функции, но можно затем дополнительно провести тестирование в более узких границах оптимизируемых параметров.

Кривовато, сложновато, но можно :)

З.Ы. В генетическом алгоритме целевая функция нетолько отсеивает худшие результаты, но и дает лучшим больше ресурсов для продолжения их исследования - на "продолжение ими рода"

 
Avals >>:

Можно просто оптимизировать по балансу, копировать в Ёксель, а в нем делать упорядочивание по любой вашей целевой функции макросом. Правда только на основе результатов выдаваемых оптимизатором МТ4. Конечно, найденные опты будут несовсем оптимальны с т.з. целевой функции, но можно затем дополнительно провести тестирование в более узких границах оптимизируемых параметров.

Кривовато, сложновато, но можно :)

З.Ы. В генетическом алгоритме целевая функция нетолько отсеивает худшие результаты, но и дает лучшим больше ресурсов для продолжения их исследования - на "продолжение ими рода"

Не целевая функция отсеивает худшие результаты, а генетический алгоритм. Целевая фунция не является частью генетического алгоритма. В природе целевой функцией является "выживание". И выживают не те особи, которые только лишь бысто бегают, или только лишь умеют летать и т.д. Выживают особи, которые обладают комплексом из этих качеств. В оптимизаторе MT выбираются особи, которые, например, только быстро бегают (Balance), или только те, у которых больше и крепче пасть (Profit factor). В жизни такие уроды не жизнеспособны (реальная торговля, или другими словами, жизнь).


P.S. К тому же, если я правильно понял, Mathemat предлагает осуществить целую эко-систему одновременно живущих особей разного вида.

 
joo писал(а) >>

Не целевая функция отсеивает худшие результаты, а генетический алгоритм. Целевая фунция не является частью генетического алгоритма.

Не знаю особенностей реализации ГА в МТ4, но целевая функция является частью ГА определяя приспособленность особи, ранжируя их, увеличивая вероятность продолжение рода через мутацию/скрещивание/переноса в следующую эпоху.

 
Avals >>:

Не знаю особенностей реализации ГА в МТ4, но целевая функция является частью ГА определяя приспособленность особи, ранжируя их, увеличивая вероятность продолжение рода через мутацию/скрещивание/переноса в следующую эпоху.

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

 
joo писал(а) >>

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

Спор не о чем. Вы спросили: "А те параметры, которые во вкладке "Оптимизация" - всего лишь фильтры, которые отсеивают полученные результаты". Я ответил нет, это нетолько фильтры отсеивающие полученные результаты. Фильтр - это либо "да" оставляем либо "нет" отсеиваем. В ГА реализовано иначе и по результатом оценочной функции ранжируются особи. ГА учитывает и само значение целевой функции. Например, как критерий остановки сравнивая наилучшие значения текущей и предыдущих эпох

 
Avals >>:

Спор не о чем. Вы спросили: "А те параметры, которые во вкладке "Оптимизация" - всего лишь фильтры, которые отсеивают полученные результаты". Я ответил нет, это нетолько фильтры отсеивающие полученные результаты. Фильтр - это либо "да" оставляем либо "нет" отсеиваем. В ГА реализовано иначе и по результатом оценочной функции ранжируются особи. ГА учитывает и само значение целевой функции. Например, как критерий остановки сравнивая наилучшие значения текущей и предыдущих эпох

Я ни о чем не спрашивал. Я утверждал. Никого ни вчем убеждать не собирался и не собираюсь. Мои методы работают не зависимо от кокого-либо стороннего мнения.

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