в Алготрейдинг

Как «плата за выход» из торговой стратегии убивает вашу доходность

Автор: Александр Кургузкин (mehanizator).

Дальше я буду писать о классе стратегий, которые строятся вокруг ограниченного куска исторических данных, без привлечения внешних по отношению к цене моделей. То есть все берется из цены. По-моему, весь алготрейдинг, что я видел в интернете, это именно такие стратегии. Берется кусок данных в несколько лет, подгоняется система, начинается торговля.

То, что существенная доля результатов системы на тестовом периоде будет состоять из переподгонки, это вряд ли новость для кого-то. В принципе, ничего плохого само по себе этот факт не несет, особенно если трейдер все понимает. Ну да, подгонка есть, все равно никто, наверное, не ждет таких же сладких результатов, какие проявились на тестовом периоде.

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

Теперь посмотрим неопределенности и порождаемые ими риски.

Сколько в результатах переподгонки – неизвестно, и очень сложно оценить. Был ли вообще там фактор? Какой срок этот фактор будет действовать и каким образом перестанет проявляться? Тихо сойдет на нет или резко, с фазовым переходом, перекинется в противоположность?

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

Выражусь проще.

Очень вероятно, что ваша система выйдет на такую просадку, которую вы никак не ждали.

И вот тут наступает самое интересное. Вам надо будет принимать решение. У вас есть альтернатива:

1. Решить, что это просто результат волатильности результатов и торговать дальше.

2. Решить, что фактор сдох, и сдать систему в утиль.

Так вот, я думаю, что в подавляющем большинстве случаев, когда система уходит вниз на волатильности результатов, у вас будет большой соблазн сдать ее в утиль, и рано или поздно вы таки сделаете это. Редко кто меняет систему, пока она зарабатывает. Из системы как правило уходят на больших убытках.

Причем под «уходом» я также понимаю и повторную подгонку за новыми параметрами. Система с новыми параметрами это новая система.

Выходя из «еще живой» системы, когда она ушла вниз на дисперсии результатов, вы фиксируете своего рода убыток. Его можно понимать как «плату за выход» из системы.

На рисунке:

AB – то, что вы видите в тестере.

BD – доходность, которую вам обещает картинка подогнанной в тестере системы.

BC – реальное действие фактора.

BE или BF – доходность, которую вы получите в итоге, с учетом платы за выход.

Синие вертикальные отрезки – плата за выход.

Вы можете пересиживать убытки, не бросаясь на выход из стратегии, когда вы точно знаете, что находитесь внутри некоего «возвращающегося к среднему» контекста (value, например). В случае алготрейдинга на переподогнанных системах этого контекста нет, и «плата за выход» неизбежна — и этот выход даже вполне обоснован риск-менеджментом.

Автор: Александр Кургузкин (aka mehanizator)

Комментарии:

Kent: «классе стратегий, которые строятся вокруг ограниченного куска исторических данных, без привлечения внешних по отношению к цене моделей»
самое сладкое с нонпрайсдата

Kent: «Сколько в результатах переподгонки – неизвестно, и очень сложно оценить. Был ли вообще там фактор?»
при правильном тестировании такие вещи минимальны, т.е. нужна правильная технология тестирования

Kent: «Очень вероятно, что ваша система выйдет на такую просадку, которую вы никак не ждали.»
любая мтс должна быть бернуллиева и должна иметь мо>0
для системы испытаний бернулли с мо>0 максдродаун всегда будет нарастать
так что ничего удивительного

Kent: «1. Решить, что это просто результат волатильности результатов и торговать дальше.
2. Решить, что фактор сдох, и сдать систему в утиль.»
данная дилемма законна и присутствует всегда

Kent: системы бывают нескольких типов, некоторые ломаются резко, некоторые уходя в боковик

Kent: В целом горячий одобрямс статье, такие проблемы есть.
давайте попробуем найти правильный ответ как различить?
у меня ответ есть, потом представлю, жду ваши версии

Kent: давайте попробуем найти правильный ответ как различить сломавшуюся систему от планового убытка, от плановго максдродауна или еще чего?

dobrachev: Я оптимизирую на интервале в 7 и более лет. Если система показывает дроудаун больше , чем на 7-ми летней истории, я её снимаю. Системный подход, где в качестве страховки может быть заплачена «плата за выход», всё равно лучше любых «танцев с бубнами» 🙂

EdgeStone: У Меха была ссылка на статью, которая по-моему даёт метод, определяющий бросать торговать систему или нет
http://jonathankinlay.com/index.php/2015/04/strategy-still-working/

Ну а еще надо чётко понимать какой фактор вы торгуете, т.е. поверх математики понимать, так сказать физику модели.

q-trader: Вот моя заметочка:
q-trading.ru/index.php/blog/1448-philosophia.html

Если коротко, то из правильно разработанной стратегии вообще не надо выходить, поскольку она почти наверно выйдет в 0.

Kent: «Если коротко, то из правильно разработанной стратегии вообще не надо выходить, поскольку она почти наверно выйдет в 0.» очевидно неверно ) не читал но осуждаю ))
аргумент: эффект исчез — исчез провит

Kent: по статье q-trader
«спекулянт должен четко представлять, какую именно рыночную «неэффективность» он торгует.»
это правильно и про ихдержки далее правильно
остальное существенно неправильно

q-trader: Поскольку стратегия адаптивная, при отсутствии базовой неэффективности асимптотически она этому обучится и перейдет к торговле более простых вещей (по тренда). Если тренда тоже не окажется, средства перейдут в кэш/фиксед инком. Поэтому в долгосроке выход в безубыток будет почти гарантирован. Портят картину только комиссии, но если частота торговли адекватная, то они сожрут не сильно много денег

q-trader: Поскольку стратегия адаптивная, при отсутствии базовой неэффективности асимптотически она этому обучится и перейдет к торговле более простых вещей (по тренда). Если тренда тоже не окажется, средства перейдут в кэш/фиксед инком. Поэтому в долгосроке выход в безубыток будет почти гарантирован. Портят картину только комиссии, но если частота торговли адекватная, то они сожрут не сильно много денег

EdgeStone: Неэффективности от эффективностей чем отличаются?
Математически можно сказать только о том, есть авторегрессия во временном ряде ценновых приращений или нет.
А что если торговать не исчезающие неэффективности, а так сказать эффективности, т.е. те инвариантные свойства ценового ряда, которые будут всегда, и даже если пропадут, то не надолго.
?

q-trader: Да это просто финансовый жаргон. Реально то речь идет о матожидании, которое в общем случае может зависеть от перекупленности/перепроданности, автокорреляций и т.д.
Моя идея в том, что более «тонкие» штуки типа возврата к среднему и т.п. — потенциально более прибыльным, чем, скажем, торговля по долгосрочному тренду. Однако они жеи более хрупкие. Хм, логично: что тоньше, то и хрупче)) Поэтому торговые стратегии должны быть адаптивным. Если не удаётся «выучится» более тонкому (когда его нет в данных), то происходит переключение на более базовые вещи типа долгосрочных трендов.

EdgeStone: Я с Вами согласен, я бы сказал, что торговать надо все стратегии сразу, каждая из которых имеет кросс-валидированный бэк-тест и форвард тест на которых ее показатели типа фактора восстановления, сортино и т.д. не ниже неких пороговых значений, и чтоб еще эти стратегии были не коррелированы, грубо говоря если даже на одном инструменте, тотодна возврат к среднему типа продажи волы на опционах, а вторая тренд долгосрочный, третья импульс и т.д.
Чтоб не одна стратегия хотя бы на истории не сливала на длинных периодах, и чтоб был в принципе рынок, на котором она бы показала суперприбыль.
Т.к. мы не знаем какой рынок нас ждёт в будущем, то надо делать больше разных ставок, но чтоб потери у каждой стратегии были ограничены и желательно не совпадали друг с другом по времени, вот такой живучий синтетический монстр для любого рынка.)

q-trader: Да. Это, наверно, и будет пресловутый грааль

usas: » Да. Это, наверно, и будет пресловутый Грааль»

А этот Грааль в других местах вроде диверсификацией называют, или где?

EdgeStone: Диверсификация диверсификации рознь.
Грааль это некоррелированные системы, которые на самом плохом для себя рынке показывают ноль. а на благоприятном суперприбыль.
Если есть такие системы — это реально тот самый граль

usas: «Kent: В целом горячий одобрямс статье, такие проблемы есть.
давайте попробуем найти правильный ответ как различить?
у меня ответ есть, потом представлю, жду ваши версии»

Очень бы хотелось прочитать Ваше решение..

Kent: Собственно основное уже прозвучало:
по статье q-trader q-trading.ru/index.php/blog/1448-philosophia.html
«спекулянт должен четко представлять, какую именно рыночную «неэффективность» он торгует.»
т.е. нужно знать что эксплуатируешь
+ эта статья
15:04 mehanizator: 9 Mistakes Quants Make that Cause Backtests to Lie http://blog.quantopian.com/9-mistakes-quants-make-that-cause-backtests-to-lie-by-tucker-balch-ph-d/

Kent: мой ответ:
1. нужно знать ккакую закономерность эксплуатируешь + техника правильного тестирования

если не знаем причину эффекта, допустим нашли нейросетью нечто вроде работоспособное, но мы все равно эксплуатируем, то остается только следующее:

2. диверсификация + превышение планового максдродауна

хотя отмечу что некоторый тип систем не уходит в дродауны, перестает просто расти эквити
вроде все

Kent: про диверсификацию добавлю
диверсификация :
1. по системам
2. по параметрам (систем)
3. по инструментам (финансовым)