Когда я написал первого своего успешного робота, который торговал акциями на MOEX, я вообще не задумывался о том, что он может перестать работать. Это было тем, что психологи называют «жить здесь и сейчас» (привет гештальт-терапии и Перлзу лично), а некоторые другие категории персонажей «быть в моменте». Однако, ничто не вечно под этим небом.
А потому, когда пришло осознание, что любая стратегия рано или поздно умрёт — любая из тех, что мне интересны в силу своей высокой доходности — то хорошо бы решить несколько задач:
- создавать стратегии автоматизированно и без моего участия (что было сделано на отлично)
- детектировать момент увядания стратегии, чтобы своевременно её отключить, не дожидаясь трупа и всех прелестей разложения слива выделенной на неё доли депозита
Я много раз подступался к последней задаче, с разных сторон, и неизменно приходил к одним и тем же результатам.
По моему мнению, в (алго)трейдинге вопрос определения момента — когда стратегия перестала работать — один из самых важных. Написана туева хуча книжек о том, как торговать, как строить стратегии, как торговать ими вручную или писать роботов. Но я нигде и никогда не видел методик и рекомендаций, которые относятся к теме поста. Хотя, справедливости ради, сотни книг я не читал.
Представляется, что эта ситуация обусловлена скрытым убеждением, что достаточно построить стратегию, совершить этот титанический труд — и уж она-то будет работать вечно. В этом заключается подлость и обман понятия «грааль». Наивные и молодые, приходящие на рынок, просто в это верят. Потому что так «даже в википедии написано». С другой стороны, а откуда им знать-то, что это совершенно не так? Критическое мышление и критический взгляд на вещи — это производная личного опыта, не иначе. А откуда ему взяться у тех, кто только входит в тему трейдинга?
Но к нашим баранам.
Давайте посмотрим на несколько картинок.
Буду использовать пример на основе акций Сбера в последние месяцы.
Вот график Equity молодой стратегии. Она пока ещё растёт, набирает свою силу.
Вот эта уже прожила свои «лучшие годы», и её звезда катится к горизонту.
Ещё пример:
А эта, очевидно, издохла и уже пованивает.
У этой открылось второе дыхание:
Глядя на графики, мне приходит в голову мысль сгладить кривую Equity скользящей, а затем ловить момент, когда её производная перевернётся. Так себе идея.
Можно посчитать квадратные или кубические разницы отклонений между идеальной Equity (EtalonSTD) и реальной (чёрная линия, SBER). Но такую метрику, скорее, лучше использовать для оценки гладкости кривой Equity. Максимальная просадка — это показатель из той же оперы, но он совсем примитивен и нерелевантен, как по мне. Можно считать только отрицательные отклонения, что ещё лучше.
Можно вместе с кривой Equity нарисовать ломаную кривую максимальной достигнутой доходности (MaxSTD). Число касаний Equity к MaxSTD тоже определяет качество стратегии — чем оно больше, тем стратегия лучше. Его можно перевести в %, разделив число касаний на число сделок. Уже что-то. Но тоже не говорит, что стратегия перешла к фазе своего заката. Хотя тут зависит, на что смотреть.
Обратите внимание на графики, где стратегии перестали зарабатывать или стали убыточными. Видно, что у них MaxSTD перестал расти. Поэтому можно взять среднее время приращения MaxSTD на фазе роста и проверять, как давно Equity не обновляла свой High. Этот метод, на данный момент, я считаю наиболее эффективным.
Но от чёрных лебедей он не спасёт — может случиться вот такое:
Однако, для этого у нас есть диверсификация и управление капиталом. Я склонен думать, что такие ситуации будут всегда. Но ведь и лекарство известно.
Поэтому, если у вас много стратегий, то теперь есть и инструмент, с помощью которого формально, а не интуитивно, можете отправлять свои стратегии в пансионат для престарелых.
Напоследок хочу вот что сказать: если стратегия умерла — возможно, это не навсегда. Так что иногда стоит заглядывать в свой пансионат, и смотреть, что там происходит. Лично я делаю это на регулярной основе.
Ещё пофантазируйте вот над чем: что будет, если вы консолидируете графики, к примеру, сотни стратегий, где таких, как на первой картинке, будет 90%, а остальных — 10%? У меня за счёт таких манипуляций кривая Equity стала куда более гладкой, а ещё меня примерно совсем перестали волновать просадки. Понимаете, почему?
Хорошего вам дня.
Ну или я что-то неправильно посчитал :)
ps ну да, 338 / 2670 = 12%. Но смотреть нужно за год, это должно быть примерно 60%.
bascomo, смысл там примерно такой. После загогулины, надо срочно выключать )
Это весьма существенная разница :)
вообще у мя есть бот на 1ом параметре от 2010г торгую им досих пор
Какие стратегии напихать в портфель и как между ними распределить капитал — такого рода «подстройки» есть, да. Но это другое.
А без параметров стратегии просто быть не может. Невозможно написать алгоритм без параметров.
Дродауны — первые звоночки. Когда стратегия начинает загибаться сразу чувствуется по винрейту, задолго до полного расколбаса. Главное не затягивать.
Был один скальпер, которыи не смог приспособиться к изменениям. Как только он входил, рынок дёргал против него. Потом он начал замечать куклов в стакане… Закончилось всё очень серьезно — обвинение брокера в кукловодстве.