Блог им. Dmi3

1. Методология
Исследование рассматривает классическую систему моментума — покупку акций с наибольшим ростом за предшествующие N месяцев. Цель: найти возможности увеличения доходности и снижения рисков относительно базовой реализации.
Ребалансировка: производится в последний торговый день каждого месяца. В этот день по цене открытия 10:00 продаются позиции которые выходят из топ-K, и покупаются новые.
Сигнал: open[t] / open[t−252] − 1 (годовой моментум на открытиях 10:00)
Отбор: Топ-K акций по сигналу с фильтром [нижний порог, верхний порог]
Вход: open[t] — то же открытие, в которое считался сигнал
Удержание: До следующей ребалансировки (~21 торговый день)
Выход: open[t_next] — открытие следующей ребалансировки
Комиссии: В бэктесте комиссии не учтены. Оценочное влияние: ~10 ребалансировок в год × 2 стороны × K позиций × 0.05% ≈ 0.3–0.6% CAGR — некритично.
Дивидендная корректировка: Цены скорректированы методом backward additive adjustment по дате закрытия реестра (record_date). Текущие цены остаются без изменений.
2. Тестирование стандартных параметров
Перед оптимизацией проведено полное тестирование классических вариаций:
горизонт N (6–12 месяцев), размер портфеля K (3–8), исключение последнего месяца (skip-1-month), недельная ребалансировка. Все тесты на ценах открытия, период 2015–2025.

Выводы
• N=12 — безусловный лидер. Классический годовой моментум работает лучше коротких горизонтов.
• K=3 даёт лучший Calmar, K=6 — более равномерную equity. Оба берём как базовые конфигурации.
• Skip-1-month — на MOEX эффект отсутствует. Краткосрочного reversal на открытиях нет, исключение последнего месяца только ухудшает результат.
• Недельная ребалансировка — сигнал слишком шумный, все метрики хуже.

3. Путь оптимизации
Каждый шаг добавлял одно улучшение поверх предыдущего результата. Параметры не переподбирались ретроспективно — каждое решение мотивировалось экономической логикой.

4. Оптимизация порогов сигнала
Двойной порог [lower, upper] отсекает две проблемные зоны: акции со слабым сигналом (<20%) которые входят в топ-K случайно, и перегретые акции (>115%) где моментум уже исчерпан. При недостаточном числе подходящих акций свободная доля уходит в кэш.

5. Хедж через шорт IMOEX
Хедж реализуется через шорт фьючерса на IMOEX. Хеджируется только доля капитала в акциях — кэш-часть не хеджируется. Затраты на маржу и комиссию по фьючерсу не учтены — предполагается покрытие за счёт распада контанго.

6. Свободный кэш под ставку ЦБ − 2%
При срабатывании фильтра [20%,115%] часть из K слотов остаётся свободной. Эта доля размещается под ставку ЦБ минус 2% годовых (дневное начисление). В 2022–2024 при ставке 15–21% кэш давал существенный вклад в доходность и смягчал просадки именно тогда, когда рынок падал.

7. Walk-Forward валидация
Параметры фиксированы — никакой переоптимизации. Обучающее окно 5 лет, тестовое 1 год, шаг 1 год. Тестируется 5 окон: 2021–2025.


8. Разбор убыточного 2024 года
Обе стратегии показали убыток в 2024 (−5% и −14%) при IMOEX −7%. Анализ позиций выявил системную причину.

• Momentum crash — при развороте рынка лидеры предыдущего года падают сильнее всего. Стратегия зашла по моментуму 2023 года, рынок развернулся.
• Мечел (MTLR) — реальное падение −73% за год. Дивидендов нет. Корректировка цен верна — это рыночное падение, не дивидендный гэп.
• SNGSP — падение −33% в июле 2024 рыночное, не дивидендный гэп. Adj цены корректны.
• Хедж частично помог (рынок −7%), но металлурги падали быстрее рынка.
9. Итоги и выводы
Что работает
• 12-месячный моментум на MOEX устойчив out-of-sample — 80% прибыльных лет
• Двойной порог [20%,115%] устраняет слабые сигналы и перегретые позиции
• Хедж через шорт IMOEX режет MaxDD вдвое (с −37–35% до −18–19%)
• Кэш под ставку ЦБ−2% улучшает Sharpe в периоды высоких ставок
• Ребалансировка в последний торговый день месяца логична и эффективна
Ограничения
• MaxDD −18–19% остаётся высоким для розничного клиента
• Momentum crash в 2024 — системный риск, не устраняется параметрами
• Walk-forward на 5 окнах — статистика ограниченна
Выбор конфигурации:
В ходе исследования рассматривались две конфигурации — K=3 и K=6. Сравнение показало, что K=6 уступает K=3 по всем ключевым метрикам при практически одинаковой максимальной просадке: CAGR 13.4% vs 19.8%, Calmar 0.69 vs 1.08.
Единственное преимущество K=6 — больше акций в портфеле (4–6 vs 2–3), однако это не компенсирует существенного проигрыша в доходности. Выбора нет — финальная конфигурация одна.


Вы в него файлы котировок пихали?
котировки и мое управление процессом тестирования.
нужно :)
все клод делает, я только кнопки нажимаю :)
Сам я подобное не имею навыков в софте протестировать, но всегда было интересно посмотреть варианты моментумов, читая тут того же Силаева.
А у вас даже вариант с логичным хеджем рассмотрен!
11 лет может и невеликая дистанция, но для выводов уже кажется подходящей.
на моих задачах без разницы. устриц ел.
при переходе на опус включается недельный лимит, который меня выбивает сразу, но вы можете использовать то, что вам кажется более удобным для вас :)
ну, дело не в модели, правда. я начал одну систему на опусе и потом, когда заканчивал на соннете, нашли там концептуальные косяки.
ну, хотя, для туристов, может быть и важно, не знаю :)
правильно и неправильно я способен оценить самостоятельно. а бигдаты в финанализе и рядом нет.
Это самая что ни на есть биг дата.
ну так надо структурировать данные на своей стороне. а новости, отчеты и прочая фигня это для туристов :)
А сравнение Опуса с Соннетом, сравнение версии ХХ.Y против XX.Y+1 это строго для гурманов, которых не интересует результат. Главное, примкнуть к чему-то ох, передовому.
в яблочко! :)
Что такое добрый язык программирования я не знаю. Подозреваю, ваша личная терминология.
Если Вы не знаете, что такое Си, это не то, чем следует гордиться.
Что либо дальше с вами обсуждать не вижу смысла.
зря вы на Юрича накинулись. это правда простая задача, очевидно. я могу и в екселе это все смоделировать, просто времени понадобится на два порядка больше.
Что касается конкретной задачи — я даже не читал отчет. Мне в целом это не интересно, так как подобные задачи я делаю по 20 штук на дню. Я написал про нечто другое. Но видимо недостаточно подробно. По правде, расписывать более подробно уже нет желания. Как говорится, кто поймет — тот поймет. Кто не поймет — се ля ви. Я тут не ради обучения.
да, понимаю, задача не интересная, но интересные здесь никто публиковать не будет, это же очевидно :)
этот пост немного про другое. про то что:
— сейчас есть механизмы, которые способны упростить решение подобных задач
— темы, на которых спекулируют многочисленные инфоцыгане, возможно разобрать самостоятельно и понять, что они фигня/не фигня.
1) Я не могу говорить за других, будут кто-то что-то публиковать или нет. Я не настолько всеведущ
2) Про что пост я понял изначально
3) Гонение инфоцыган — не про меня. В целом не интересна борьба с мельницами
4) Да, механизмы есть, хорошее время.
интересные, в моем контексте, значит прибыльные :)
это исследование пол-дня или день, но надо понимать, что все данные загружены, у Claude есть четкий регламент to do из прошлых чатов и я знаю, что хочу сделать и увидеть.
Клёво! Очень интересно получилось, и затратно по времени я думаю. Большую работу проделали![Image]()
Моментум-подход в таком виде ещё пользуется спросом в широких кругах инвесторов, как считаете?
пол-дня :)
моментум-подход это единственное, что еще работает у инвесторов, все остальное хуже или сильно хуже.
Дмитрий Овчинников, полдня для такого бескорыстного поступка — роскошь:)
Скиллы наверное так прокачиваете исследовательские![Image]()
Тут мне вам возразить особо нечем, с инвесторами прямого диалога почти нет.
Потрудились хорошо, подход основательный. Людям думающим ваш репорт очень кстати будет, я считаю.
думающие это и так знают, а остальным все равно, они будут покупать то, что посоветуют в мозговике или что-то типа того.
Дмитрий Овчинников,
Хотелось бы верить, что не настолько всё безнадёжно.
Дмитрий Овчинников, а куда копаете, если это побочка?
Если не секрет, конечно)
может быть когда-нибудь напишу :)
Дмитрий Овчинников, будьте любезны) С удовольствием почитаю!
Если здесь не получится, то в личку тоже хорошо![Image]()
так это не инвесторское, а трейдерское. там много чего работает :)
Дмитрий Овчинников, шикарно! Но это уже что-то не особо инвестиционное с такими цифрами, похоже.
Фишка, вероятно, в отказе от дорогой защиты в пользу дешёвой (ОФЗ) и, возможно, более строгого отбора или добавили какую-то активную спекулятивную составляющую.
У вас их уже так много накопилось, что придумали свою систему кодировки?) К3, B4...
Классно, конечно! Очень рад вашим открытиям. Подтверждается тезис, что технологии в умелых руках творят чудеса.
Модель в реале когда запустите?
Может фонд организуете? Не думали в этом направлении?
По бете, да, больше 1 должен быть согласно формуле, иначе нет смысла покупать на росте. Вопрос как всегда в отрицательной составляющей беты
зачем хеджировать больше 1? какой в этом экономический смысл?
P.S. а экономический смысл можно оставить туристам, пусть развлекаются
Оптимум по Calmar однозначно на 0.8× — сверххедж не помогает, просадка начинает расти обратно (шортим больше чем нужно, теряем на росте рынка).
да, разумеется. тем более, что я этот вариант не торгую. но в другой системе, которая торгуется на реальных деньгах и использует хеджирование, оптимальный размер хеджа составляет 0.5
хеджируется всегда вся часть в акциях на 80% от суммы покупки.
если стратегия при 100% хедже сохраняет положительные результаты, значит альфа в ней есть.
Но я -то имел два вопроса, почему 80% и почему хедж не переменный во времени.
80% это величина, полученная в результате оптимизации. Переменный хедж это уже трендовая стратегия на MIX в шорт и это совсем другая история.
в тестах для хеджа считается по индексу IMOEX, так что дополнительной альфы там нет. в реальной торговле шорт через фьючерс.
нет, убытки и прибыли, возникающие от вариационной маржи не учитываются.
разница 0.067% CAGR
возможно вы правы, но это уже вне сферы моего интереса.