Продолжение. Начало здесь: https://smart-lab.ru/blog/448018.php
«Даже если вы будете настолько святым, что пойдете по воде — они скажут, что вы разбрызгиваете воду». © Один известный персонаж
0. Итак, на этот раз будем заниматься продажей опционов «на краях» — то есть максимально (насколько хватит ликвидности) out-of-the-money путов и колов, с максимально возможным плечом.
Максимально «вне денег» опционы нужны по двум причинам:
— эти опционы, вследствие феномена «улыбки волатильности», имеют максимальную ожидаемую доходность на единицу ГО
— события полного слива счетов инвесторов и оставления их в долгах перед брокерами происходят максимально редко — если повезет, всего-то раз в пару-тройку лет
Ваша модель работы: шортите максимально «удаленные» опционы под завязку (сколько позволяет ГО), и пока на рынках все спокойно и не происходит сливов больше 4% в день (а временами такой период может непрерывно продолжаться несколько лет!) — вы зарабатываете по 100+% годовых за счет временного распада опционов, и можете откусывать себе по 20-30% от этого счастья! Когда рано или поздно (или вследствие любых крупных событий) волатильность на рынках резко усиливается, и происходит убыток 4-6% в день (в зависимости от плеч, которые вам удалось до этого набрать) — происходит полный слив счета, с высокой вероятностью — уход счета в отрицательную зону (то есть клиент, после полной потери капитала, еще остается должен брокеру сумму, сопоставимую с его начальным капиталом). Здесь необходимо понять, что это стандартная бизнес-ситуация:
— слив более 4% за день индексом ММВБ происходил 28 раз за последние 10 лет
— слив более 6% за день индексом ММВБ происходил 6 раз за последние 10 лет
Поэтому 50-200%-ное обновление счетов в год — это в соответствии с бизнес-планом.
Решил начать писать небольшие заметки по алгоритмической торговле и всему что с ней связано. Возможно, когда-нибудь расширю, склею и опубликую в виде книжки. Пока же это просто наброски заметок, сделанные на скорую руку.
Можно часто слышать от тех, кто торгует алгоритмически, да и просто систематически, такие понятия как «оверфиттинг», «курвафиттинг», «зафит» и прочие ругательства с корнем «фит». Что все это значит?
На самом деле, все эти слова, как правило, используются для описания одного и того же явления, являющегося врагом всех трейдеров, торгующих систематически и пытающихся оценить исторический перформанс своих торговых логик — а именно, что «живой» аут-оф-сампл перформанс на реальном счете, как правило, хуже ожиданий, полученных ими при проверке своих идей на истории. Например, при тестировании торговой логики на истории трейдер с помощью своей модели «зарабатывал» 30% годовых, а в реале может в среднем иметь 10% годовых. Разница 20% годовых — может объясняться именно оверфиттингом (если нет других факторов — например, некорректный учет комиссионных и проскальзываний, или ошибка в торговом коде; но прочие факторы легко устранить, в отличие от оверфиттинга). На картинке в начале статьи — пример перформанса некоторого фонда в бэктесте и в реальности, наглядно иллюстрирующий написанное выше.
Оверфиттинг является следствием комбинации одного или нескольких из следующих факторов, положительно влияющих на бэктест (результаты прогонки модели на истории), что и создает у трейдера завышенные ожидания от своей модели. В этой части мы рассмотрим основные источники оверфиттинга, в следующей — поговорим о способах избежания или минимизации оверфиттинга при историческом тестировании моделей.
Результаты консервативной количественной инвестиционной модели LQI (lazy quantitative investing), о которой я писал ранее (https://smart-lab.ru/blog/384110.php), за февраль (результаты за прошлый месяц: smart-lab.ru/blog/448988.php). Месяц оказался для рынка очень непростым — «perfect storm» наблюдался во всех классах активов, которыми торгует модель, однако модели удалось обогнать оба своих бенчмарка — SPY и EQW — как в терминах ретурна, так и риска (максимальной просадки). Вот веса предыдущего месяца и соответствующие ретурны торгуемых тикеров:
weight monthly.ret
XLY 0.131 -4.51
XLP 0.142 -7.96
XLE 0.000 -10.97
XLF 0.069 -4.67
XLV 0.093 -6.02
XLI 0.112 -5.74
XLB 0.034 -6.27
XLK 0.000 -2.06
XLU 0.112 -3.88
IYZ 0.000 -5.14
VNQ 0.000 -7.55
SHY 0.000 -0.06
TLT 0.144 -2.57
GLD 0.163 -2.30
Предыдущие веса были опубликованы 1-го января, соответственно доходности приведены за период с закрытия 1-го февраля по 1-е марта. Корреляция между весами и ретурнами положительная — 0.146. Вследствие этого модель обогнала свой основной бенчмарк — EQW (equal-weighted портфель из торгуемых тикеров): -4.6% LQI vs. -5.0% EQW, то же самое для индекса S&P: -4.6% LQI vs. -5.0% SPY. В терминах максимальной просадки в течение месяца модель также была лучшей: 6% для модели vs. 7% для EQW vs. 8.6% для SPY. Невесть что, однако для тех, кто сидел в просадке 6% и в просадке 9% на хороший капитал — разница, думаю, заметна. Аутперформанс был достигнут за счет лучшей диверсификации (даже не смотря на то, что все падало), а также за счет того, что модель вышла из «кислотных» январских тикеров XLE & XLK (из XLK — зря, зато из XLE — очень не зря), и «налегла» на защитные активы (TLT, GLD, XLU, XLV, XLP), хотя два последних тоже оказались не очень защитными.
Продолжаю публикацию своих ежемесячных результатов и портфелей на следующий месяц (начало здесь: smart-lab.ru/blog/412664.php, результаты января: smart-lab.ru/blog/448984.php).
Вот как вел бы себя портфель, рекомендованный на февраль:
Месяц выдался непростым как для рынка, так и для модели, которая в итоге «выступила» чуть хуже индекса (0.27% за месяц у модели против 0.35% у индекса ММВБ).
НА ПОКУПКУ: BANEP, CBOM, UPRO, ALRS, MTSS, MAGN
НА ПРОДАЖУ: AKRN, FXCN, TRMK, NMTP, FEES, VSMO, ROSN, TATNP, NVTK
ДЕРЖАТЬ: RTKMP, LSRG, YNDX, SBER, SBERP, MTSS, TATN, SIBN
Добавлю еще 5 копеек по теме дисциплины в количественной торговле, о важности которой я уже писал ранее (https://smart-lab.ru/blog/389973.php, smart-lab.ru/blog/401453.php).
Собственно, «на америке» я торгую LQI (https://smart-lab.ru/blog/384110.php), в ней простое правило ребалансировки — раз в месяц (я делаю это в начале месяца). Ребалансировавшись в начале (1-го) февраля, уже к 5-му я испытал всю глубину ощущений от падения рынка на 4+% и падения счета на 3+%. Мужественно продержался до конца недели, но в пятницу 9-го, после очередного слива СнП (к середине сессии), испугавшись, что может быть с такой динамикой рынка в понедельник, я таки-сделал (по факту — на самом дне просадки СнП) ребалансировку портфеля к новым таргетовым позициям, в результате которой снизил аллокацию на 20%. Вроде бы немного, но скинул самые волатильные и лосевые позиции, которые в ходе последующего восстановления рынка сильнее всего выросли. Итого — андерперформанс счета по сравнению с тем, если бы ничего не делал, на 2%.
Разумеется, меня заинтересовало — это получилось чисто случайно и в этот раз, или «рыпаться» с портфелем после сильных сливов — это фундаментально плохо. Отмечу, что это неочевидно, поскольку вполне возможно, что после существенного роста волатильности на рынках ребалансировка портфеля под новые условия — это правильная вещь. Я решил формально это протестировать.