В прошлых постах я пытался получить численное подтверждение того, что тренд скорее всего будет продолжаться. Не люблю ничего принимать на веру, особенно если это поддается проверке. Перейдя к учету предыдущего движения, мы фактически получили упрощенный паттерн — по трем точкам, — который должен был описать следующее состояние рынка:
На самом же деле при такой модели достаточно свободы, чтобы в выборку попадали случаи, которые мы в здравом уме туда не включили бы — например, с очень большой просадкой на 1 этапе падения. Вот пример того, что формально также соответствует подобному описанию:
Выход виделся только один: забросить супершуструю технологию смещения временных рядов, и применить скользящее окно для построения свечек старшего таймфрейма. Производительность сразу упала на порядок, но что не сделаешь ради истины... В результате модель начала тренда приняла следующий вид:
-За период А до PivotPoint, HI(A) был выше PivotPointLOW на величину threshold(A)
-За период B после PivotPoint HI(B) был выше PivotPointLOW на величину threshold(B)
-PivotPointLOW является LOW за период AB
-Hi последнего бара B = HI(B)
Таким образом, гарантированно обозначена точка разворота как локальный лоу паттерна, а последний бар — как максимум с точки разворота.
Подходящие периоды отмечены на графике(период А в данном примере может быть любой длины, т.к. нет случаев значений ниже PivotPointLOW):
На данном примере будут учтены тренды длиной 1,2,3,6,8,23,26... дней.
Возьмем для примера тренд длиной 23 дня и таким же периодом результата:
В данном примере 10%-е падение и 7%-й рост, для такого примера посчитаем вероятности по старой нашей схеме, по трем точкам, учитывая только как минимум 2%-й рост и взяв 2-кратный период результатов:
и тот же пример, но уже с определением по паттерну:
Выборка существенно уменьшилась, особенно на длинных сроках(зеленые и красные линии, правая шкала Y). Видим, что в таком виде паттерн довольно редкий. Для примера уменьшим пороговые значения до 5% падения, 3% роста и 1% целевого результата по трем точкам:
и через паттерн:
и нам остается еще один маленький шаг для того чтобы понять, торгуемы ли эти закономерности. Но об этом чуть позже.
В предыдущем посте http://forum.mfd.ru/blogs/posts/view/?id=23123 я пытался применять метод автокорреляции т.е. анализа смещенного временного ряда, пытаясь использовать его для вычисления смещения вероятности продолжения тренда от среднего значения. Наиболее продвинутые могли заметить, что выборка, которую мы там анализировали, содержала все формально соответствующие условию отрезки, что скорее всего, далеко от того, что себе представляло большинство читателей. Дело в том, что по критерию «изменения за период» программа отбирала примерно следующее:
т.е. результаты коротких периодов были многократно усилены за счет длинных, в которые они входили. Иными словами, была допущена систематическая ошибка исследования. Попробуем исправить её, добавив дополнительную «ногу» в паттерн, перейдя от \/ к /\/ паттерну. Два периода будут описывать условия вхождения(разворот тренда), один — результирующий. Порог прежний — минимальное изменение 2% в каждом из предыдущих периодов, 0.1% в результирующем. Результат для SPY:
для пущего контроля выведем на график количество вхождений для роста (зеленая линия) и падения (красная).
Однако понятно, что 0.1% это не продолжение тренда, поэтому проверим, как часто происходит продолжение на величину более 1%:
Видно, что закрытие потенциально торгового периода не радует вероятностью в нашу пользу, в большинстве случаев цель не будет достинута на закрытии. Но ведь нам нужно просто выйти по тейку, верно? Добавляем учет Hi/Low:
Правда, мы вышли за рамки метода смещения временных рядов, но зато видим существенное отклонение вероятности на 1-5 дневных периодах.
По человечески полученные данные должны звучать так:
Если курс вчера упал более чем на 2 %, а сегодня вырос более чем на 2%, то с вероятностью 75% завтра он закроется выше +1% от сегодняшнего закрытия.
Если курс вчера вырос более чем на 2 %, а сегодня упал более чем на 2%, то с вероятностью 85% завтра он не упадет ниже -1% от сегодняшнего закрытия.
И тут возникает вопрос — а ликвидированы ли тут все систематические ошибки исследования?
Автокорреляция — статистическая взаимосвязь между последовательностями величин одного ряда, взятыми со сдвигом, например, по времени.
Если подать данные в стандартные функции расчета автокорреляции, на выходе получим высоконаучную хрень, которую непонятно как интерпретировать в реальном мире. Поэтому переписываем по-человечески, чтобы она измеряла что? Правильно, вероятность продолжения тренда, т.е. нужное, полезное и понятное большинству трейдеров качество. :)
А дабы было еще понятней, в том числе полному большинству, сдвинем шкалу вероятности, чтобы 50% оказался на 0%; таким образом, будем отображать смещение вероятности от средней отметки 50%. Столбик вниз — значит, вероятность меньше 50%, и вплоть до 0. Вверх — соответственно, больше.
На графике для SPY по оси Х — тестируемый период в днях, по оси У — сдвиг вероятности от 50%, например, для 10 дневного периода роста(более 2%) вероятность того, что через 10 дней курс будет еще выше — 64%, т.е. смещение на 9% (что и видим на оси У). Большие периоды:
Как видим, исторически тренды роста в SPY длиной до 60 торговых дней скорее продолжаются, тренды падения скорее прекратяться, чем продолжаться. Возьмем бОльший диапазон:
Возьмем двойной и половинный OOS-периоды:
Делаем выводы :)
А вот так выглядят тенденции у VIX & VXX:
По последнему графику сразу видно, что актив имеет тенденцию к падению независимо от направления тренда.
Рост скорее всего прекратится, падение — будет продолжаться. В отличие от самого VIX.
С легкой подачи Талеба по просторам трейдонета ходит стойкое ощущение, что можно взять опционную двухстволку, БАБАХ!
И Черный Лебедь подбит одной дробинкой.
На практике это выливается в идеи регулярно покупать путы на дальние страйки.
Сколько я ни пытался это проверять, на SPY (ETF SP500) результат неизменно плачевный — ЧЛ ранен, но из последних сил улетает, оставляя нас без патронов. Эквити примерно такая:
Так что предлагаю сыграть в игру.
У каждого 2 патрона(то бишь идеи) как подбить Черного Лебедя на SPY, я провожу тест и видим результаты. Тестируем голые путы.
Можно выбрать страйки в % от текущей БА
Можно указать диапазон IV для входа (по ставке 0.25)
Можно отобрать точки входа по «цене к МА» — ниже, выше, пересечение вниз/вверх
Можно отобрать входы по результатам прошлого периода
Можно отобрать хаи и лои как исторические, так и за период, или в заданном диапазоне, ввобще настройка входа выглядит так:
Пояснения к фильтрам:
P.S. Возможна ситуация, когда ваши патроны не подойдут к нашей двухстволке.
Знакомьтесь, это статистический профиль годовых результатов S&P500 за всю историю.
Я решил наглядно показать, что утверждение «раньше рынки были другие» не соответствует действительности.
В лучших традициях квантов построил гистограмму распределения доходностей за период и... был неправ.
На графике распределения дневной доходности мы видим четко прослеживающуюся тенденцию
увеличения дневной волатильности. Посмотрике как растут прозрачные столбики слева направо, каждый представляет собой 13 лет с 1950 по 2015. Поскольку используется округление «от нуля», "-1" следует понимать как «менее -1» а «1» следует понимать как «более 1». При этом результаты в точке 0 некорректны и в данном случае не важны. На большинстве графиков обрезаны хвосты, для лучшей читаемости значимого отрезка. Рассмотрим недельное распределение:
По графику также можно говорить о возрастающей волатильности, это видно по значениям ниже -3 и +5, но в целом результаты уже более однородны.
Месячное распределение:
А вот тут уже картина другая. Не прослеживается тенденции, просто разброд и шатание результатов.
Годовое распределение (полный график — в начале статьи):
Никакого изменения не прослеживается, результаты остаются теми же, в пределах нормального отклонения.
Вывод: За последние 65 лет неуклонно росла дневная волатильность S&P500, этот эффект сходит на нет примерно на недельном периоде.
Поведение рынков на месячном и годовом временных горизонтах не изменилось.
Правы оказались все!
С точки зрения интрадейшиков изменения значительны.
С точки зрения среднесрочников и долгосрочников — ничего не изменилось.
Возьмем за основу исходный результат продажи месячных путов на SPY c доходностью 24% годовых и попробуем выжать максимум.
Изначально результаты теста были следующие:
Теперь оставим только входы на высокой волатильности:
Доходность возросла до 44%
Пробуем не держать до экспирации, а добавить тейки:
И 70% годовых в валюте ждут своего трейдера :)
Неплохо, учитывая что мы 3 раза наугад тыкнули пальчиком...
Но нет предела лени, да и палец не железный, поэтому пишем API к нашему тестеру, навешиваем управляющий модуль и начинаем прогонять пачками, получая результаты теста в табличке. И тут встает вопрос — а как, собственно, сравнивать результаты для присвоения конкретной стратегии того или иного ранга? Получили такие результаты:
Самый главный тут EV(годовой прибыли) другими словами ROI.
Но ведь нужно еще учесть плавность эквити, просадки и т.д.
Мы продолжаем исследовать, как ведут себя месячные опционы на SPY (это крупнейший ETF на индекс SP500).
Исследование отвечает на вопрос: «Что будет, если всегда покупать 1 месячный опцион в каждой серии со страйком на х% вне денег(в деньгах)?» Также по ходу станет понятно, на каких опционах SPY в принципе можно зарабатывать и когда, а на каких — нет; и нужно ли их продавать или покупать.
Рассматривая покупку/продажу страйков на 5 % вне денег, мы видим картину, отличную от опционов на деньгах, рассмотренных в предыдущем посте. Редкие, но значительные изменения прибыли так и просятся быть вычлененными из общего ряда параметрическим фильтром с последующей упаковкой в отдельную стратегию. Впрочем, это уже отдельная тема.
Продажа путов:
Продажа коллов, в этот раз решено было применить фильтр по подразумеваемой доходности на уровне 10% годовых, потому что за меньшее — ну просто смысла никакого нет влезать в продажу опционов, соответственно появились периоды без сделок(и это к лучшему):
Результаты покупки коллов и путов одним графиком, с ними и так все понятно (синяя — результирующая):
Выводы: в этих страйках имеет смысл фильтровать точки входа для продажи путов, что и сделаем следующим тестом.
Методика тестирования:
Покупается 1 контракт максимально близкий к деньгам в заданном диапазоне страйков (в % от цены акции), как только входит в диапазон временных рамок. Для месячных это от 31 до 28 дней до экспирации.
Опцион удерживается до экспирации.
Как только появляется следующая серия в диапазоне, она приобретается независимо от наличия открытых позиций.
Практически на всех тестах будет видно кратное усиление тренда в 2013-2016гг, что связано с увеличением числа опционных серий, таким образом, новый опцион стал покупаться/продаваться не раз за месяц, а 4-5 раз.
В предыдущем посте родилась идея продавать на высокой волатильности, покупать на низкой.
По результатам теста, покупка на низкой IV что коллов, что путов, ничего хорошего не приносит.
А вот с продажей ситуация иная:
В путах довольно частая загрузка, и достойная прибыль в 50% годовых на вложенный капитал при адекватном риске, который реализовывался только на редком событии 2008 года. С коллами все плохо: