🎲 Z-счёт: как проверить, что «после двух убытков надо пропустить сделку».
Почти у каждого трейдера есть такое правило. Три убытка подряд - снижаю объём. Серия прибылей - добавляю. Логика кажется железной: рынок ведь ходит полосами.
Проблема в том, что полосы есть и у честной монеты. Подбросьте её сто раз -увидите и пять орлов подряд, и семь решек. Это не память монеты, а обычная случайность. И прежде чем строить на серии правило, стоит проверить: ваши полосы длиннее случайных или нет?
Ровно на этот вопрос отвечает Z-счёт (runs test).
📐 Как считается
Берём список сделок и считаем «серии» - непрерывные полосы одинаковых исходов. Пример из десяти сделок:
+ + − − + − + + + −
Серий здесь шесть: (++)(−−)(+)(−)(+++)(−). Прибыльных сделок W = 6, убыточных L = 4, всего N = 10.
Сколько серий должно быть у честной монеты при таком раскладе? Формула простая:
ожидаемые серии = 2·W·L/N + 1 = 2·6·4/10 + 1 = 5,8
Фактически у нас 6 - почти ровно столько же. Теперь переводим в стандартные отклонения. Обозначим X = 2·W·L = 48:
Z = (N·(R − 0,5) − X) / √(X·(X − N)/(N − 1))
Z = (10·5,5 − 48) / √(48·38/9) = 7 / 14,2 = +0,49
Читается так:
• Z < −1,96 - серий меньше ожидаемого, исходы слипаются в полосы. Правила вида «после убытка сокращаюсь» осмысленны.
• Z > +1,96 - серий больше ожидаемого, исходы чередуются. После убытка вероятнее прибыль, и пропускать сделку - вред.
• |Z| < 1,96 - полос ровно столько, сколько у монеты. Прошлая сделка не говорит о следующей ничего.
Наши +0,49 - третий случай.
🔍 Живой пример
У одной из моих систем на валютном фьючерсе годами стоял фильтр: после двух убытков подряд пропускаем следующий вход. И он работал - на истории поднимал профит-фактор с 1,77 до 1,91, а просадку срезал на два пункта.
Считаю Z-счёт по 539 сделкам: фактических серий 263 при ожидаемых 267. Z = −0,33. Никакой зависимости.
Но метрики-то улучшались. Значит, надо смотреть не на метрики, а на то, что фильтр выбрасывает.
И вот тут всё встало на места. Ужесточаю правило до «пропускаем после одного убытка» - фильтр отсекает 95 сделок со средним результатом +2 561 ₽. А средний по всем 539 сделкам - +2 384 ₽. Он выбрасывает сделки ЛУЧШЕ средних. Суммарно - четверть миллиона рублей выброшенной прибыли.
Правило гласило: после серии убытков сделки слабее. Данные говорят: не слабее.
⚠️ Почему профит-фактор обманул
При том же ужесточении профит-фактор вырос до 1,81 - а доходность рухнула с +642% до +423%. Фильтр отрезал прибыльный хвост и улучшил соотношение прибыль/убыток. Профит-фактор - это отношение, и его легко поднять, выкинув часть сделок. Деньги при этом уменьшаются.
Отбирая подмножество сделок, смотрите на итог в деньгах, а не на красивое отношение.
💡
Что с этим делать
Правило, выведенное из серий, стоит гонять по трём проверкам: значимый Z-счёт, поведение соседних настроек и - главное - состав того, что правило выбрасывает. Если отсекаемые сделки не хуже остальных, никакой закономерности вы не нашли.
Оговорюсь честно: соседние настройки - слабая проверка, и я сам на этом попался. У моего фильтра варианты «после 4» и «после 5» трогают всего пять и три сделки из 539. Разумеется, они ничем не отличаются от базы - они почти ничего не делают. Судить по ним всё равно что испытывать лекарство на трёх пациентах.
Улучшение метрики на истории само по себе не доказывает ничего. Лучший из полусотни перебранных вариантов красив случайно - просто потому, что их было полсотни.
$SiU6 $CRU6
#трейдинг #пульс_оцени