#39892 - Thu Apr 05 2012 10:07 AM
ПЕРЕоптимизация - как не попасть в ловушку?!
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
Последнее время мучает мысль, что постоянно при тестировании алгоритма попадаю на переоптимизацию. Я бы даже сказал, что уже параноя какая-то по этому поводу! Хотелось бы просто для себя понять, что можно считать правильной оптимизацией, а что т.н. подгоном. Возьмем такой пример:
Простейшая стратегия на пересечении МА. Начинаем тестить: меняем разные типа средних и через оптимизацию их параметры. Выбираем лучший вариант. Переоптимизация или все же нормальный подход? Я же не могу руками перебирать все возможные варианты - их просто несметное кол-во!
Идем дальше. Ставим трейл. стопы и снова пускаем оптимизацию по ним. Выбираем лучший вариант. Да, кое-где в сделках можно будет увидеть супер подогнанный вариант стопа, где до него не дошла цена буквально 5 пунктов, а потом все ушло в прибыль - такое считать за переоптимизацию? Думаю, вряд ли! Опять же торгуя руками, стоп ставиться "на глаз", в данном же случае программа просто подбирает средний наиболее приемлемый вариант для длительной истории.
Также важным моментом является период тестирования. Ведь если взять, скажем, месяц, то там действительно можно получить неадекватный результат. В тоже время слишком длинная история также этот результат искажает в силу таких серьезных изменений на рынке, как появление огромного числа робот, рост объем, снижение волатильности (из-за роботов) и т.д.
В общем, очень бы было интересно послушать мнения опытных людей - кто и как к данной ситуации относиться!
Отредактировано Discrecio (Thu Apr 05 2012 10:09 AM)
|
Наверх
|
|
|
|
#39893 - Thu Apr 05 2012 10:40 AM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: Discrecio]
|
enthusiast
Registered: Tue Jan 25 2011
Записи: 326
|
Не знаю насколько я опытен в подобных процессах, но путем проб и ошибок, для себя сделал кое-какие выводы. Самое главное при выборе параметров скрипта нужно понимать и придерживаться той логике, что в нем заложена. Например, можно получить супер результат минутного скрипта на годовом периоде, при наличии всего двух сделок - лонг и шорт. Но вероятность того, что рынок повторит данное движение сводится к нулю. Я выбираю те параметры индикаторов, которые соответствуют разумным пределам и отвечают моим ожиданиям от действия того алгоритма, что я пытался заложить в скрипт. Насколько комфортна просадка для данного скрипта, какое количество сделок я от него ожидаю и сколько притом выигрышных. Очень редко использую стопы, вместо их пытаюсь найти выход из позиции, основанный на той же логике скрипта. Т.е. выход (стоп) фактически должен означать переворот позиции, но для входа нет соответствующей уверенности. Но самая лучшая проверка работоспособности выявляю результатами скрипта на тех участках, где не проводилась оптимизация, т.е. примерно так скрипт должен себя показать в будущем на реале. Необязательно там результаты должны быть такими же, как на оптимизируемом участке, но если есть приемленный плюс, то первый шаг есть. Период теста опять же зависит от логики скрипта, какие периоды в нем используются. В основном беру последний квартал, затем с этими же параметрами сравниваю результаты на предыдущих кварталах, максимум за год, если скрипт более-менее поворотливый.
Отредактировано AWK (Thu Apr 05 2012 10:46 AM)
|
Наверх
|
|
|
|
#39894 - Thu Apr 05 2012 10:50 AM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: AWK]
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
AWK, спасибо за мнение. В целом во всем согласен. Единственное, что стопы все же использую - трейлинги. Заметил, что просадку они снижают серьезно. А это главный фактор, по-моему.
|
Наверх
|
|
|
|
#39896 - Thu Apr 05 2012 11:13 AM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: Discrecio]
|
enthusiast
Registered: Tue Jan 25 2011
Записи: 326
|
Избежать большой просадки можно разными способами, кому как комфортней. Но думаю многие попадали, когда срабатывает супер оптимизированный (до сотых долей) стоп, взятый на % от входа, и после закрытия позиции рынок сразу же издевательски разворачивается в противоположное направление. Хотя хорошо видно, что предпосылок для выхода не было, идет элементарная заправка топливом для дальнейшего движения с помощью высадки из поз. Да, есть моменты, когда рынок вялотекущий, но медленно-медленно движется в ненужном для нас направлении, а скрипт основан, например, на входы/выходы по каким-нибудь импульсам. И если другие условия выхода будут только мешать работе, то без стопов не обойтись, но опять же, и это лишь мое мнение, они должны быть привязаны к какому-то логическому уровню, банально к границе канала, например.
Отредактировано AWK (Thu Apr 05 2012 11:15 AM)
|
Наверх
|
|
|
|
#39897 - Thu Apr 05 2012 11:17 AM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: AWK]
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
Это уже другая тема - тут можно долго разбираться! Хотелось бы услышать еще мнения, особенно тех, кто после оптимизации проверял среднесрочные алгоритмы на реале. Были ли какие-то заметные расхождения, какие возникли мысли после форвард теста? Сам планирую в ближайшее время запустить среднесрочный скрипт, но чтобы реально увидеть его результаты нужно довольно много времени гонять его на реале. Поэтому и хочется заранее понять, где обычно возникают подводные камни!
|
Наверх
|
|
|
|
#39898 - Thu Apr 05 2012 12:16 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: Discrecio]
|
Pooh-Bah
Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
|
оптимизация нужна только чтобы найти усреднённые прибыльные параметры
|
Наверх
|
|
|
|
#39899 - Thu Apr 05 2012 12:20 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: vito333]
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
vito333, это так, но как не довести этот поиск до откровенного идеального подгона?)
|
Наверх
|
|
|
|
#39900 - Thu Apr 05 2012 12:24 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: Discrecio]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
бек тест или фючер тест, и чем ближе к дагонале тем лучще
|
Наверх
|
|
|
|
#39901 - Thu Apr 05 2012 12:27 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: uuzzeerr]
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
uuzzeerr, в смысле чтобы доход рос ровно по медиане?
|
Наверх
|
|
|
|
#39902 - Thu Apr 05 2012 12:37 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: Discrecio]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
uuzzeerr, в смысле чтобы доход рос ровно по медиане? при тесте он должен быть ближе к медиане. вот здесь ls.jpg не очень а ls+.jpg хорошо но можно лучше. в виду того что есть большие интервалы застоя и психологически не выдержишь, это игра в угадайку - конец того года бурный начало этого ничетак, но дальше ни кто не знает какая динамика будет и будет ли застой.
|
Наверх
|
|
|
|
#39903 - Thu Apr 05 2012 12:53 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: uuzzeerr]
|
Pooh-Bah
Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
|
на периоде в год-два и количестве сделок не менее нескольких сотен это будет уже не подгон
|
Наверх
|
|
|
|
#39907 - Thu Apr 05 2012 02:24 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: vito333]
|
enthusiast
Registered: Tue Jan 25 2011
Записи: 326
|
на периоде в год-два и количестве сделок не менее нескольких сотен это будет уже не подгон Это было бы слишком просто. Как тогда объяснить, что оптимизировав скрипт на двухлетнем периоде с приличным количеством сделок, с результатом, скажем, 7-10% среднемесячно, через пару недель скрипт медленно, но упорно начинает сливать? Таких скриптов можно много наштамповать, но в реал их ставить нет желания. Начинаешь разбираться, всплывает, что в одном вся сказка завязана на паре-тройке удачных сделок по 20% каждая с серией мелких убыточных, в другом вся прибыль складывается на случайных утренних гэпах. Если понять, почему "вдруг" рынок идет против наших сделок и против наших чудо индикаторов, тогда и будет всем нам счастье. На мой взгляд главная цель оптимизации выявить верное направление, диапазон параметров. Остальное все должна сделать логика нашего скрипта.
|
Наверх
|
|
|
|
#39912 - Thu Apr 05 2012 03:41 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: AWK]
|
Pooh-Bah
Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
|
так и сопоставлять надо результаты не нескольких сделок
именно так дело и обстоит - может скрипт сливать, но на длительном периоде у него хороший шанс хотя если без мозгов подходить, то конечно, одной оптимизации маловато
|
Наверх
|
|
|
|
#39914 - Thu Apr 05 2012 03:48 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: vito333]
|
enthusiast
Registered: Tue Jan 25 2011
Записи: 326
|
Во-во, мозг - всему голова!
|
Наверх
|
|
|
|
#39923 - Thu Apr 05 2012 09:27 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: AWK]
|
enthusiast
Registered: Mon Dec 26 2011
Записи: 391
Loc: Уфа, Россия
|
у меня 2 скрипта, один выглядит вот так 3.5 месяца форвард теста - полет нормальный проскальзывание 50п часовик вход/выход по закрытию свечи. склееный РТС с момента введения вечерки
Attachments
Image 1.png (470 downloads)
Отредактировано kirillshi (Thu Apr 05 2012 09:28 PM)
|
Наверх
|
|
|
|
#39924 - Thu Apr 05 2012 09:35 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: kirillshi]
|
enthusiast
Registered: Mon Dec 26 2011
Записи: 391
Loc: Уфа, Россия
|
а вообще есть еще 2 варианта, логика таже, немного по разному реализована какой надежнее??
Attachments
Image 2.png (566 downloads)Image 3.png (619 downloads)
|
Наверх
|
|
|
|
#39928 - Thu Apr 05 2012 10:29 PM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: serg]
|
enthusiast
Registered: Mon Dec 26 2011
Записи: 391
Loc: Уфа, Россия
|
оптимизируемых параметров 3 значения близкие к оптимальным, тоже прибыльны смущает маленький профит фактор
|
Наверх
|
|
|
|
#39933 - Fri Apr 06 2012 09:53 AM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: AWK]
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
На мой взгляд главная цель оптимизации выявить верное направление, диапазон параметров. Остальное все должна сделать логика нашего скрипта. С этим невозможно не согласиться концептуально, но, как говориться в одном анекдоте - есть нюанс! Собственно хотелось бы еще раз на простейшем примере попытаться понять, где оптимизация, а где грааале-подгонка. Берем пересечение МА, как сигнал на открытие позиции, а закрываемся по трейл стопу. Т.о. у нас возникает 2 оптимизируемых параметра для входа и 2 для выхода - казалось бы ничего криминального, это все же не 10 заумных индикаторов завязанных все вместе. Что делаем дальше? Проводим оптимизацию по МА, т.к. иначе я не представляю себе как выделить правильный вариант из тысяч возможных. Даже для простейших средних без оптимизации не обойтись, а уж если взять такие хитры штуки, что добавил в ТСлаб ув. Вито (респект ему за работу), то тут без оптимизации уже просто ну никак! Вот здесь уже кроется проблема: считать ли оптимизацию в данном случае адекватной или уже ставить этот результат под серьезное сомнение? Далее берем для выбранного варианта средних трейл стопы. Опять же тут без оптимизации не обойтись. Да, можно тупо выставить значения руками и... Собственно пытаясь торговать некоторое время руками я так и делал, НО никогда не понимал, а стоп, который я ставлю он вообще адекватен ситуации? Был стоп мелкий (~300 п. на РИ) и его выбивало в 80% случаев и еще в 50% случаев цена шла туда, куда я и вставал. А поставить большой стоп, скажем в 1000 п. я как-то опасался, думая, что раз уж выбило 300, то где 300 там и 500 и т.д. Т.е. я просто не мог статистически понять, прав я или совершенно заблуждаюсь. В этом примере опять же прогресс приходит на помощь и оптимизация позволяет на продолжительной истории выбрать оптимальный размер этого стопа. Программа как бы говорит: чувак, мы берем стоп аж в 1500 п., но зато вероятность его получить всего 30%. Хочешь мелкий стоп - вот результат, где вероятность выигрыша уже 20%. И это все решает. Я верю системе, верю в статистику, которую торгуя руками получить невозможно - она будет всегда разная в силу кучи моментов. В общем, к чему я все это расписал. Вчера долго гонял подобные варианты на оптимизации с целью разобраться в проблеме. Действовал на простом описанном выше примере со средними. Оптимизацию проводил за год, а далее добавлял еще 2 месяца новых. Ну, что можно сказать. Результат удручает, конечно. Фактически имеем хороший эквити на оптимизируемом периоде, а далее боковик с просадками, который за 2 месяца не заработал ни копейки. Буду и дальше эту тему продолжать тестить, чтобы принять для себя какое-то окончательное решение, но уже подхожу к мысли о том, что от среднесрочных "простых" стратегий придется отказаться, к сожалению в силу такой вот неопределенности. Очень бы хотелось применительно к данной ситуации послушать ваши мнения!
Отредактировано Discrecio (Fri Apr 06 2012 09:55 AM)
|
Наверх
|
|
|
|
#39934 - Fri Apr 06 2012 09:59 AM
Re: ПЕРЕоптимизация - как не попасть в ловушку?!
[Re: Discrecio]
|
member
Registered: Thu Mar 01 2012
Записи: 124
|
kirillshi, невероятно слабый результат в абсолютном выражении за такой громадный период чуть ли не в 4 года. Да и с такими показателями я бы в силу изложенных выше факторов не рискнул бы даже думать о запуске такого скрипта на реале. Просадки очень серьезные и продолжительные, ПФ действительно никакой. Единственное у тебя стоит проскальзывание приличное - тоже занижает результат, но может быть для такого кол-ва сделок оно и не существенное в целом.
|
Наверх
|
|
|
|
|
|