PunchNigeria@66: US congratulates Nigerians, reaffirms commitment to stronger tiesDaily MaverickWhen VW sneezes, Nelson Mandela Bay catches a coldThe Jerusalem PostIDF gives rejection of 'NAZA' film claims, disputes civilian death ratios, AI targeting abuseRTP DesportoArgentina goleia Bolívia com Prestianni em estreia a titular e sem MessiBollywood HungamaTu Hai Meri Kiran: First Look of Sonakshi Sinha and Zaheer Iqbal out; poster unveils release date as October 23, 2026ESPN CricinfoKamboj replaces injured Prasidh for final India vs West Indies ODICNN TürkGÜNÜN MAÇLARI 1 EKİM 2026: Bugünkü Maçlar Neler? UEFA Uluslar Ligi Maçları Hangi Kanalda, Saat Kaçta? İşte 1 Ekim Günün MaçlarıPremium TimesElumelu’s Heirs Energies acquires 6 million Seplat Energy shares in £53.2m dealSeeking AlphaU.S. job cuts drop 18% M/M in September and 20% Y/Y: Challenger Job Cuts ReportBBC BusinessPension tops £16,000 a year after 4.7% increaseCNN بالعربيةهل فعلا كل الطرق تؤدي إلى روما؟ تحليل جديد يكشفRTL BoulevardHeinen bereid aanpassingen te doen maar doet ook hartekreet aan Kamer: 'Zet belastingplan niet in de fik'
The Daily Newsstand · Free, Always
Thursday, October 1, 2026

Как я перестал верить красивым бэктестам: 10 ловушек с реальными цифрами

Translate

За последний год я проверил около двадцати торговых идей. Каждая сначала выглядела убедительно: приличная t-статистика, гладкая кривая доходности, понятная история. И каждая умерла на конкретной проверке. В этой статье собраны эти проверки с реальными цифрами «до» и «после».

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

Правила, без которых результат не считается

  1. Признаки строятся только из прошлого. Скользящее окно заканчивается на предыдущем баре, а не на текущем.

  2. Пороги фиксируются до прогона. Если перебираете сетку, печатайте её целиком, чтобы видеть, как знак меняется между ячейками.

  3. Доходность меряется вперёд от бара входа.

  4. Контроль — весь юниверс за те же минуты, а не годовой дрейф. На растущем рынке «прибыльна» любая покупка: один только пятидневный дрейф давал от +70 до +119 бп.

  5. Издержки вычитаются явно: комиссия, половина спреда, проскальзывание.

  6. Значимость считается по независимым единицам (подробнее ниже, это главное).

  7. Период делится пополам. То, что живёт в одной половине и умирает в другой, — шум.

  8. Юниверс должен включать инструменты, которых уже нет.

  9. В итоговой цифре нет максимума по сетке.

Единица счёта

Наблюдений много, событий мало. Три реальных случая:

что мерил

наивный t

правильная единица

результат

агрессивный поток покупок → цена через 15 мин

+15.0 по дням

вход с задержкой 5 мин

−0.2 бп, эффект жил внутри сигнального бара

«индикатор на 30-дневном минимуме» → −32 бп на следующий день

−2.7 по дням

по эпизодам входа в состояние

−0.3

«сильный сигнал даёт +0.34R»

+4.67 по сделкам

без одного дня обвала

−0.010R

В последнем случае 104 сделки из 434 открылись в один день обвала и дали 111% всей прибыли. Без этого дня стратегии не было.

Отсюда правила. Сигнал-состояние (инструмент сидит в нём днями) считается по эпизодам, а не по барам. Сигналы внутри одного рыночного события — одно наблюдение, а не сто. Всегда проверяйте, что останется без лучшего дня и без лучших трёх недель. А если все инструменты торгуются в одну минуту, сначала усредните по инструментам внутри дня, потом считайте t по дням.

Смещение выживания — не ошибка округления

На юниверсе из 840 инструментов, где 315 исчезли за два года, длинная сторона отличалась на 1–2 процентных пункта в год между «полным юниверсом» и «только выжившими». Короткая — на 8–18 пунктов. Любой вывод «шорт не работает», сделанный на выживших, недействителен: в данных просто нет тех бумаг, которые стоило шортить.

Попутный факт: прямо перед делистингом цена уже перестала падать. Медианное движение за последние 30 дней — 0.0%. Обвал случился задолго до этого. К моменту, когда видно, что бумага уходит, шортить уже нечего.

Каталог самообманов

  1. Выбор чемпиона на отложенной выборке. Максимум из сотен кандидатов смещён вверх. +0.50R на отложенной выборке превратились в −0.05R вне выборки.

  2. Признак, который тайно равен «количество × цена». Открытый интерес в долларах — это контракты, умноженные на цену, так что «OI на максимуме» означает «цена на максимуме». В натуральных единицах +48.7 бп превратились в +4.7 при t = −0.1.

  3. Замаскированный моментум. Индикаторы позиционирования движутся вместе с ценой. Разбивка по прошлой доходности: от −12 до −16 бп везде, кроме корзины «уже выросло больше 5%», где было +138.

  4. Подглядывание через агрегат. Если срез данных помечен временем начала своего окна, вы читаете будущее. Задержка входа на один интервал превратила +4.65 бп в −0.22.

  5. Эффект меньше спреда. На неликвидных бумагах «возврат к среднему» — это отскок между бидом и аском. Исполнение по худшей стороне бара превратило +26.0 бп в −26.8 при внутриминутном размахе 53 бп.

  6. Равный вес на день. «+111 бп по дням» при нуле по сделкам означает, что вес получили дни с одной сделкой.

  7. Сортировка, которая знает будущее. Упорядочивание одновременных сигналов по времени выхода дало +51% годовых вместо +2.3%.

  8. Стоп, который меняет знак. Кандидат с +13.7 бп на сделку ушёл в −8…−26 бп со стопом 3×ATR. Стоп — часть стратегии, мерить их надо вместе.

  9. Хвост решает год. Сетап с +70% годовых держался на 30 сделках из 3504. Проверяйте результат без топ-1/3/5/10/20 сделок.

  10. Фальшивая широта. «Работает на 71% инструментов» ничего не значит, если они коррелированы.

Что выжило

На акциях США после всего этого выжил только хрестоматийный моментум 12-1: ранжирование по доходности за последние 12 месяцев без последнего месяца, равные веса, ребаланс раз в месяц. Любая попытка его улучшить делала хуже. Градиентный бустинг ранжировал не лучше равновзвешенной корзины. Стоп-лоссы были в минусе во всех 108 опробованных комбинациях, фильтры по индикаторам — во всех 44, а умные правила выхода ни разу не обыграли «продать, когда выпала из топа».

Цифры сдвинуло исполнение. Спред в первые минуты после открытия был около 61 бп, а к полудню по Нью-Йорку — около 15 бп, поэтому ордера теперь уходят после 12:00. А при минимальной комиссии за ордер маленький счёт с 10 бумагами обыграл тот же счёт с 20.

Чек-лист

  • Признаки только из прошлого, пороги объявлены заранее.

  • Издержки названы и вычтены, эффект сравнён с ними.

  • Эффект больше внутриминутного размаха.

  • t посчитан по независимым единицам.

  • Результат переживает удаление лучшего дня и лучших трёх недель.

  • Обе половины периода дают один знак.

  • Юниверс включает делистингованные инструменты.

  • Вход задержан на один интервал, эффект на месте.

  • Ни одна итоговая цифра не является максимумом по сетке.

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

Этот стенд теперь двигает мой проект Femidko Stock Analyzer & Trader: он ведёт портфель по правилу 12-1 на собственном счёте пользователя через API-ключ без права вывода, только покупки, и всё начинается бесплатно на бумаге. Сейчас работает Binance, на подходе Alpaca, Tiger Brokers и Kraken xStocks. Сегодня у проекта запуск на Product Hunt — буду рад отзывам и критике там или в комментариях здесь. На вопросы по устройству стенда отвечу.

View the original on Хабр →

KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.