- PVSM.RU - https://www.pvsm.ru -

Почему прибыльная стратегия из научного журнала проиграла простому алгоритму

В прошлой статье я проверил с помощью кода торговую стратегию из известной книги Джона Мэрфи «Технический анализ финансовых рынков». Результат оказался неутешительным.

А что, если взять и проверить стратегию из авторитетного научного журнала? - подумал я. Там учёные, сообщество, исследования.

В журнале "Journal of Financial Economics" такая нашлась. А потом я написал свой алгоритм ....и он оказался прибыльнее.

Ты жива ещё, моя старушка?

Эта научная работа вышла в 2012 году. С тех пор прошло больше десяти лет. Рынки менялись, и было совершенно очевидно, что обнаруженная учёными закономерность могла исчезнуть со временем. Предстояло узнать:

Ты вообще ещё жива? Заработать -то можно?

Правила те же

Возьмём те же правила, но условия проверки чуть скоректируем:

  • Рынки. В научной работе было 58 фьючерсных и форвардных инструментов. Мы возьмём 84 фьючерсных рынка, чтобы проверить стратегию на более разнообразной корзине.

  • Расходы. Авторы статьи брали расходы в соответствии со своими данными. Я выбрал другую, более простую модель торговых издержек, основанную на доступных мне данных.

  • Годы. Я взял период после окончания исходного исследования — с 2010 года по июль 2026-го

И вот что получилось:

Период

Средняя годовая доходность

2010 — июль 2026

+5,87%

Это результаты исторического моделирования после базовых расчётных расходов, а не реальных сделок. Сами расчёты в моём гитхабе

Всё, можно закрывать исследование? Идём торговать?

Не совсем.

Стратегия прибыльная?

  • Да, до сих пор. Доходность, правда, небольшая, но она положительная же. А вот можно ли её торговать в реальном рынке?

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

Under pressure

Сразу, без прелюдий увеличим уровень расходов вдвое. Потом втрое. Потом она просила ещё, но я остановился.

И знаете что? Даже при таких условиях на современном периоде она продолжала показывать положительную доходность — 4,41% годовых.

Вот теперь становилось действительно интересно, но нести деньги на брокерский счёт ещё рано.

Надо понять: а за счёт чего наша стратегия вообще зарабатывает? Это важно и вот почему.

Где деньги, Лебовски?

Помните, как работает наш алгоритм? Он смотрит на движение цены за предыдущие 12 месяцев. Если цена выросла — покупает. Если упала — делает ставку на дальнейшее падение.

Всё просто. Но меня посетила одна мысль. Некоторые рынки на длинной дистанции имеют склонность к росту. Например, фондовые индексы.

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

Я решил это проверить. Разделил доходность портфеля на две части: сколько принесли покупки и сколько — шорты.

Вот что получилось на современном периоде, до торговых расходов:

Направление

Вклад в годовую доходность

Покупки

+8,51 п. п.

Ставки на падение

−1,91 п. п.

Вот это интересно!

Получается, покупки обеспечили всю положительную доходность, а попытки заработать на падении её уменьшили.

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

А что, если просто всегда покупать?

Самый ленивый трейдер

Я решил создать нашей научной стратегии соперника.

Назовём его Always Long. (а хотелось по-другому, более эпично, типо "Бешеный покупатель", пишите ваши варианты)

Ему не нужны прогнозы, история движения цены за 12 месяцев и попытки угадать направление.

Он просто постоянно покупает. Чтобы сравнение было осмысленным, я оставил те же рынки и те же правила расчёта размеров позиций. Убрал только прогнозирование направления.

Запустил эксперимент на современном периоде. И получил неожиданный результат.

Стратегия

Средняя годовая доходность

Наша научная стратегия

+5,87%

Always Long

+10,24%

Обе цифры — после базовых расчётных торговых расходов.

Я посмотрел на цифры исследуемой стратегии. Потом на Бешеного покупателя (Always Long). Потом ещё раз на стратегию из журнала. Это что получается:

Этот примитивный алгоритм показал доходность выше нашей научной стратегии?

Я даже проверил коэффициент Sharpe — показатель доходности относительно риска.

У Always Long получилось 0,65. У нашей научной стратегии — 0,48.

Ну приехали.

Столько проверок, столько расчётов. А оказывается, можно просто покупать?

Впрочем, не всё так однозначно.

Во время самых серьёзных падений просадка по Always Long была до 33,08% от предыдущего максимума. Наша стратегия — до 20,45%. Да и в целом результаты у простого алгоритма колебались сильнее.

Получается, больше доходность — но и больше риск.

Ну что, куда нести деньги?

Итак, что мы имеем?

Научная стратегия показала положительную доходность. Выдержала увеличение торговых расходов втрое.

Правда, нашёлся и конкурент, который вообще не пытался предсказывать рынок, но заработал больше.

Ну ладно. Допустим, мы всё-таки решили попробовать нашу стратегию на собственном счёте.

Сколько денег понадобится?

И тут меня ждал ещё один сюрприз.

Средний номинал открытых контрактов превышал капитал модельного портфеля в 8,3 раза.

То есть на каждый рубль капитала приходилось в среднем 8 рублей 30 копеек открытых позиций.

А ведь это фьючерсы. Здесь нужно учитывать гарантийное обеспечение, возможные просадки, требования брокера и запас денег на случай неблагоприятного движения рынка.

Само по себе превышение номинала не означает, что нам нужно внести всю эту сумму наличными. Но и взять результаты моделирования и просто повторить их на небольшом реальном счёте мы не можем без дополнительных проверок.

Прекрасно.

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

А в конце выяснили, что даже её практическое исполнение — отдельная задача.

И что в итоге?

Положительную доходность на исторических данных мы нашли.

А вот самостоятельное преимущество нашего алгоритма прогнозирования подтвердить не смогли. Как и возможность воспроизвести результаты на реальном счёте с доступным капиталом.

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

Поэтому деньги пока останутся там, где лежали.

А стратегия отправится в мой GitHub [1].

Вместе с кодом, результатами и всеми своими достоинствами и недостатками.

В конце концов, мы же собирались заработать на рынке, а не только научиться красиво считать прибыль.

П.сы: Предлагаю вам провести небольшое расследование самим

На протяжении всей статьи я рассказывал, как проверял стратегию, строил гипотезы и удивлялся результатам.

А теперь ваша очередь. Я сделал игру: 3000 случайных соперников против нашей стратегии. Кто победит? Сыграйте ниже

Сыграть в игру [2]

напИшите потом, кто победил

Почему прибыльная стратегия из научного журнала проиграла простому алгоритму - 1

Леонид

Разработка · ИИ · Исследования

Ранее на хабре

Как я уделал Microsoft, но это никому не нужно (кайфую сам) [3] — история создания Jupiter, программы голосового ввода текста для Windows.

Старый трейдер поделился секретом заработка. Я проверил с помощью кода. Удалось заработать? [4] - можно ли заработать на рынке фьючерсов, взяв стратегию из известной книги

Автор: Trop_12

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/python/461489

Ссылки в тексте:

[1] GitHub: https://github.com/iaroshenko-dev/tsmom-12m-1m-research

[2] Сыграть в игру: https://codepen.io/fsmcanxq-the-sasster/full/XJMygPR

[3] Как я уделал Microsoft, но это никому не нужно (кайфую сам): https://habr.com/ru/articles/1088618/

[4] Старый трейдер поделился секретом заработка. Я проверил с помощью кода. Удалось заработать?: https://habr.com/ru/articles/1101382/

[5] Источник: https://habr.com/ru/articles/1102864/?utm_campaign=1102864&utm_source=habrahabr&utm_medium=rss