Блог им. MrFly

Грааль и трейдеры, которые его ищут.

Грааль и трейдеры, которые его ищут.

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


Вот 3 стратегии входы, которых построены на разных принципах:
— Паттерн – Ударный день
— Parabolic
— Классический канал Дончиана
В качестве выходов, используем TrailingSMA, про который я рассказывал в одном из своих постов.
Все 3 техники популярны и общедоступны, в чистом виде, понятно, их никто торговать не решится, из-за возможности больших просадок.
Вот как выглядят графики эквити и просадок этих стратегий на фьючерсах Ri и Si за последние 5 лет (интересно будет дальше, после картинок):
 
Ударный день, фьючерс на индекс RTS (1 опт параметр, Sma):
Грааль и трейдеры, которые его ищут.

Ударный день, Si (1 опт параметр, Sma):
Грааль и трейдеры, которые его ищут.

Parabolic, фьючерс на индекс RTS (1 опт параметр, Sma)* :
Грааль и трейдеры, которые его ищут.

Parabolic, Si (1 опт параметр, Sma)*:
Грааль и трейдеры, которые его ищут.
*Параметры Parabolic используются классические и вставлены в виде констант.

Канал Дончиана, фьючерс на индекс  RTS (2 опт параметра, Sma и период канала):
Грааль и трейдеры, которые его ищут.

Канал Дончиана, Si (2 опт параметра, Sma и период канала):
Грааль и трейдеры, которые его ищут.

  А вот, те же самые стратегии, но в виде портфеля в равных долях:
Грааль и трейдеры, которые его ищут.

На графике видно, что по сравнению со стратегиями на Si нам удалось уменьшить неприбыльные участки и увеличить доходность в 1,5-2 раза. По сравнению со стратегиями на Ri в 3 раза уменьшилась просадка, правда, вместе с этим уменьшилась и доходность, но не сопоставимо просадке, гораздо меньше.
Нужно отметить, что это всего лишь пример, торговать такой портфель «как есть» я никому не рекомендую.
— Во-первых, изначально никто не будет брать в портфель стратегии с 30% просадкой.
— Во-вторых, в Combination Strategy – невозможно протестировать инструменты с плечом, естественно, что у Si плечо должно быть раза в 2-3 больше чем у Ri, но здесь такого не протестируешь. Данный подход, скорее годится для того, чтобы прикинуть, как стратегии будут вести себя в паре, на начальном этапе формирования своего собственного портфеля стратегий.
При этом, наверняка, многие ожидали увидеть заоблачную эквити и она была бы такой, если бы в данных стратегиях использовались бы входы по рынку, без указания проскальзывания. Для стратегий на Si использовались как выходы, так и входы лимитными ордерами – а значит, никакого проскальзывания быть не может. Для стратегий на RTS лимитные ордера использовались только на вход, в связи с особенностями инструмента, но проскальзывание стоит. На обе бумаги указана комиссия в размере 4 рубля на круг – это большая комиссия даже для Ri, а для си то завышена практически в 2 раза, сделано это для того, чтобы окончательно убрать все вопросы о вероятности, или невероятности результатов.
Главное, что я хотел показать, что портфели стратегия торговать намного комфортнее.

А теперь немного теории.

Грааль и трейдеры, которые его ищут.

Грааль и трейдеры, которые его ищут.

Таким образом,  мы получаем бесконечное число портфелей, так как мы можем задать абсолютно любые веса для каждой стратегии.
Задача будущего «героя открытых рынков» выбрать только те портфели, которые обеспечат нам наибольшую доходность при одинаковом риске. Для этого, нам желательно привести все стратегии к одному показателю риска, чтобы их можно было сравнить. Например, это может быть стандартное отклонение, либо просадка.
 
Нам, как адекватным участникам рынка важно найти портфель на эффективной границе.(ссылка на вики)
 Для этого:
-Оценим ожидаемую доходность всех стратегий
-Оценим попарные ковариации всех стратегий, с помощью матрицы ковариации
-Подберем наименее коррелированные инструменты.
-Подобрать веса

Практика.

По 10-15 стратегий можно проторговывать и через Wealth, но
— эти стратегии должны быть все на разных инструментах(это зависит от коннектора, конечно но, как правило)
— я бы не стал его перегружать стартегиями,
— если нам нужно поторговать таймфрейм меньше часовика, тоже нет.
— если у нас только одна лицензия, где мы будем тестировать наши новые стратегии, если wealth у нас задействован в ежедневной торговле?
— опционы через него тоже не торгуются.
Поэтому, если стратегий у нас прилично, среди них есть опционные стратегии. Или  стратегии на мелких тайм-фреймах -  лучше проторговывать наш портфель на Stocksharp.
 
 В моем приводе несколько стратегий выглядят таким образом:
Грааль и трейдеры, которые его ищут.
 
В Stocksharp Studio вот так:
Грааль и трейдеры, которые его ищут.
 

Тестировать портфелей можно производить в Wealth. 6-ой версии есть классная возможность посмотреть, что будет со стратегиями, если их объединить, называется Combination strategy.
Очень хороший визуализатор и все агрегированные показатели, которыми мы обычно пользуемся при анализе отдельной стратегии.

Грааль и трейдеры, которые его ищут.

Если вы тестируете в StockSharp – там можно использовать всю мощь C# и осуществить довольно подробное тестирование, намного точнее, чем в Wealth из-за использования стакана и ордер лога.
Самым простым способом проверить, как стратегии себя будут вести в союзе — это выкачать еженедельную доходность каждой из них и сравнить. Для анализа подойдет обычный Exсel.
В нем можно посчитать корреляцию, или просто объединить эти доходности.
Для наглядности пользуйтесь условным форматированием.

Грааль и трейдеры, которые его ищут.       Пример недельных доходностей трех  стратегий.

Профессионалы же используют оптимизаторы портфелей, написанные самостоятельно и как правило с использованием технологии CUDA – вычисления на графических картах, так как подбор весов стратегий в портфеле – зада сложная даже для современных мощных компьютеров.
 
После того, как вы нашли несколько стратегий, с непохожими недельными результатами (или  можно смотреть финрез. на каждую сделку), ставим их на торговлю и когда одна из стратегий получает убыток, другие вытягивают общий результат в плюс. Правильно, используем принцип диверсификации.
Для того, чтобы сильнее прокачаться в портфельной теории есть книги специально по портфельному инвестированию, но для начала советую изучить работу Шарпа «Инвестиции» — там пара глав, которые помогут вам разобраться в азах портфельной теории современной портфельной теории.

Воспользовавшись новыми знаниями Вы еще сильнее улучшите результаты и уже не будете относиться к средничковым стратегиям, так строго — будете поступать мудрее, тестировать в союзе с другими, более прибыльными.
В одном из следующих своих постов, я собираюсь написать про то, как веса стратегий могут самостоятельно регулироваться в зависимости от результатов той или иной стратегии с помощью мани-менеджмента. Так что не пропустите! =)

Вот коды стратегий для того, чтобы можно было меня проверить, в публичном доступе в виде cs фалов:
-Паттерн – Ударный день Ri, Si 
-Parabolic Ri, Si
-Классический канал Дончиана Ri, Si

Если нашли какие-то ошибки — пишите, буду рад поправить! ))
 
Спасибо за внимание!
Пишите стратегии, пользуйтесь Wealth-lab, Stocksharp, получайте прибыль и узнавайте много всего нового!
 
Подробнее о StockSharp на  http://stocksharp.com/
 
Официальный сайт  Wealth-lab http://www.wealth-lab.com/
 
Ставьте плюсики и пишете!




★80
39 комментариев
Очень хорошая статья, спасибо!
avatar
можете сказать сколько просадка за последние 2 недели вышла?
avatar
Vitali, спасибо за комментарий. Данный пример, «портфель», был создан специально для статьи. Торговать его не стоит! Стратегии работают, но они всего лишь пример, там нет ни фильтров ни вкусных примочек, которые и делают стратегию пригодной для реальной торговли.
Николай Флёров, немного добавлю. Интереснее одинаковые стратегии на разных инструментах. Причем на разноҡоррелированных и разной степени тяжести.
avatar
Николай Флёров, автор молодец, наставляет неокрепшие умы на правильный путь.
По поводу этого:
"… убедиться в том, что даже у самой хорошей стратегии случаются моменты, когда она здорово сливает..."
Я бы сказал не сливает, а не приносит дохода. Иначе такую стратегию фтопку.
По ходу статьи вижу что плюс-минус именно это вы и имели в виду.
avatar
Хорошо!
avatar
лудоманы награфоманили, чтобы графоманы налудоманили
avatar
whattheheck, +100
1) Про теорию диверсификации--согласен
2) Все три стратегии--это трендовухи. И оба инструмента RI и Si--также весьма трендовые на периоде вашего тестирования. Поэтому ваш подход выглядит переподогнанным. Возьмите-ка Лукойл и Ростелеком--и поторгуйте их УД, дончианами и параболиками.
3) В свете пункта 2) различные методы управления долями выглядят несвоевременными--для начала системы нужны качественные.
4) Имхо, этот высококвалифицированный пост (с точки зрения используемого инструментария) посвящен исследованию не особо нужных для трейдинга вещей. Исследуется вопрос--как из не пойми чего сделать конфетку. Ответ--никак. В будущем низкокачественная система будет работать как минимум также мерзко, как и в прошлом. А вероятней всего--работать не будет вообще. И пул из таких систем--тоже шедевром не будет. Вероятно, это будет СБ с уменьшенной за счет диверсификации дисперсией. Нужно изначально делать конфетки.
5) Для хорошей системы вопросы вкладываемой доли решаются за две минуты. А диверсификация получается практически автоматически--ибо хорошие системы разной логики друг с другом не коррелируют (в отличие от дончианов).
avatar
anatolyutkin, вы слишком строги к автору =))
я так понял, что автор разжевал 3 мысли по диверсификации:
1) диверсифицировать нужно
2) диверсифицировать нужно по некоррелирующим активам+стратегимя
3) диверсификация уменьшает сигму портфеля

всё остальное — просто весёлые картинки помогающие начинающим понять эти 3 банальные, но такие правильные вещи
avatar
Swan, Да конечно, согласен. Но критически оценивать свои и чужие мысли--дело полезное. А автор выглядят достаточно квалифицированным, чтобы его покритиковать :) Тем более, за неудачное название.
avatar
Грааль — это не артефакт (стратегия), а процесс. В том смысле, что нельзя останавливаться. А вообще хорошая статья, длинная. Спасибо.
Дончиан/паттерн/параболик… Не все так просто, как представленно в статье, только теория…
anatolyutkin, Микаелян Саро, спасибо за комментарии!
Я с вами согласен. Данные стратегии были взяты для примера. В разделе «Теория», я написал, что нужно диверсифицироваться и по типу стратегий, как то — арбитражные, скальперские, трендовые, свинг стратегии и т.д. Также, я считаю, что от самого инструмента (бумаги) очень многое зависит, и нельзя одну стратегию размазывать на 10 абсолютно непохожих акций и фьючерсов.
Николай Флёров, Ну на самом деле мысли грамотные… только в арсенале иметь арбитраж, скальперские и тд стратегии это алготрейдинг на высшем професиональном уровне. Обычно такая торговля эквити на истории не имеет, только очень приближенные цифры!
Поэтому и написал, что не все так просто)))
За труд в любом случае спасибо! всегда интересно на алготрейдерскую тему читать.
Микаелян Саро, как и вас. Побольше бы на СЛ Николаев и Саро.
avatar
Николай Флёров, Ну так не пишите в самом начале: «Но этот счастливчик, даже не представляет, что сидит на граале и не видит его». Это неправильно. Из десяти низкокачественных решений не слепишь одного хорошего никакой диверсификацией. Нет там никакого грааля, и человек этот--не счастливчик.

Главное в системном трейдинге--хорошие системы. А не диверсификация/управление капиталом/риск менеджмент итд.

Назовите вашу статью попроще. Например, «О пользе диверсификации»--и вопроса не будет. А так эта заметка выглядит как искусственное привлечение внимания.
avatar
anatolyutkin, я отвечаю на конструктивную критику, а как мне называть статьи решаю только я. Рад, что мой пост вас так заинтересовал )
Николай Флёров, Это конструктивная критика. Имхо, название вашей статьи не соответствует содержанию. Название--«Грааль», а содержание--«Диверсификация». Но диверсификация--это рядом даже не грааль.

Еще один момент. Вероятно, та куча низкокачественных систем, которую вы предлагаете собрать в портфель, будет высококоррелирована. Например, вы любите трейлинги. Вероятно, любые две системы на одинаковом ТФ с трейлингом на выходе дадут высокую корреляцию. Это дополнительный вклад в уменьшение действия диверсификации. Попробуйте.

Вы не обижайтесь, я вполне понимаю, что вы старались и, вероятно, действительно верите в написанное. И статья неплохая по своему математическому и программистскому уровню. Но сама идея, имхо, уводит вас и читателей в сторону от денег на рынке. Удачи.
avatar
anatolyutkin, оп! не видел этот каммент… в ответе выше то же самое по смыслу написал…
avatar
тонна информации и ни одного ответа на главный вопрос — сколько денег от какого капитала автор на этом заработал в торговле? за год и за всю историю использования.
Спасибо, интересно почитать! ))
avatar
Замечание к картинко «Диверсификацие работает если» (там действительно очепятка): на самом деле диверсификация работает если «нет корреляции между стратегиями». Это включает 2 последних пункта из картинки, а первый воще не в тему. По первому можно просто сказать что матожидание для пакета стратегий равно сумме матожиданий отдельных стратегий.
Например иногда имеет смысл добавить в пакет убыточную стратегию если она удачно компенсирует просадки других стратегий.
avatar
ivanovr, спасибо за подсказку, картинку исправил!)
Я слышал про то, что некоторые ставили в портфель стратегию которая не приносит дохода, но вытягивает трендовые стратегии во время флета. Сам не пробовал, на мой взгляд, лучше все-таки выбирать прибыльные стратегии. И раз уж у нас на РФ рынке практически нет инструментов, на которых можно поторговать флет, нужно идти за диверсификацией на зарубежные рынки.
Николай Флёров, «лучше все-таки выбирать прибыльные стратегии» — это само собой, матожидание пакета равно сумме матожиданий. Иначе говоря, диверсификация (при том же объеме лотов) на прибыльность не влияет! Но она уменьшает просадку, что позволяет брать больше объем (плечо).
avatar
побольше бы такого на смартлабе +++
avatar
а на TSLab можно писать такие стратегии?
avatar
так за эту же статью уже парень планшет получил? или это другой парень был, а этот скопипастил от него?
спасибо за пост, я строю свой портфель стратегий по такому же принципу. главное раскореляция стратегий и желательно иметь в порфеле стратегии которые не только трендовые но и флетовые на разных таймфреймах и инструментах.
В принципе, статья полезная для начинающих алго-трейдеров, но можно было бы для полноты картины добавить тайм-фрейм на котором выполнялось тестирование каждого из алгоритмов, среднее кол-во сделок в день, профит-фактор, да и некоторые другие общеизвестные характеристики результатов тестирования.
А главное интересует вопрос, каким образом отслеживалось качество исполнения лимитных заявок на утренних гэпах в первую минуту торговой сессии. Так как, если это никак не учитывалось, то результаты тестов могут быть значительно хуже, чем показано выше.
avatar
OSerov, спасибо за комментарий!
Еще раз хочу заметить стратегии плюшевые — они использовались только для примера! Они скорее дают понять, что даже на одном таймфрейме и на одном рынке можно улучшить свои результаты за счет составления портфеля.
Но,
1) Захода в первый час торгов нет.
2) Вы можете все протестировать сами, код я выложил, или вы предлагаете вставить еще больше картинок в статью?
Николай Флёров,
Конечно, я согласен, что основой целью вашей статьи является ознакомление начинающих алго-трейдеров с базовыми принципами диверсификации и построением портфеля торговых алгоритмов. К сожалению, я не могу оперативно воспользоваться выложенными исходными кодами алгоритмов, т.к. не пользуюсь ни WealthLab, ни Stocksharp, в силу упомянутых же вами различных сложностей и ограничений в этих продуктах, при одновременной торговле множества алгоритмов. Но просмотрев код, у меня сложилось впечатление, что выходы по трейлинг-стопам, которые будут попадать на первую минуту торгов, чаще всего будут выполнять на практике по значительно худшим ценам, чем будет показано в результатах тестирования, что может значительно повлиять на форму эквити в худшую сторону, особенно с таким продолжительным пологими участками. И это влияние будет сильно связано с общим количеством сделок, которое совершил алгоритм. Поэтому я и хотел уточнить, на каком временном интервале (TimeFrame) проводились тесты, и какое количество сделок в каждой эквити. В качестве эксперимента, можно сделать те же тесты, но с добавленной фильтрацией первой минуты сессии (или первых 15-30 секунд, если это позволяет ваша тестовая платформа, хотя это маловероятно), т.е. чтобы стратегия ничего не делала, в течение этого интервала и сравнить результаты.
avatar
OSerov, спасибо за вопрос.) Я понял, на картинках видно, что это часовки. Наверное нужно было указать в тексте. Так что, таймфрейм 60 минут)
OSerov, да, и я писал уже, что на первом часе стратегия вообще не делает заходов. Сделок в среднем 180-200 в год. Комиссия на контракт.
вектор правильный, но проскальзывание 4 рубля по ри — это сказка. такая же сказка, что входы по часовикам лимитками, т.к. гэпы и проскальзывание съедят много
avatar
ZooR, 4 рубля — это только комиссия! По Si — вообще работа только лимитками. По Ri, входы лимитками. Выходы по стопам, на них просказование стоит — это не тоже самое, что и комиссии. Посмотрите код, там видно, как у меня работают лимитные входы и выходы — с гэпами я благополучно пролетаю, поэтому-то доходность и такая маленькая и просадки такие большие, но все учтено.
слишком сложно
avatar
Отличная статья! Я бы добавил еще диверсификацию по таймфреймам.
Николай, большое спасибо!
avatar

теги блога Николай Флёров

....все тэги



UPDONW
Новый дизайн