TPR (Trend Persistence Rate) — Коэффициент устойчивости тренда

Индикатор-коэффициента-устойчивости-тренда
Индикатор Trend Persistence Rate (TPR) измеряет долю (процент) баров в заданном окне lookback N, которые являются продолжением направления предыдущего бара. Проще: показывает, насколько часто цена «продолжает» предыдущее движение вместо его смены. Это даёт количественную оценку серийности однонаправленных движений и помогает отличать устойчивые трендовые периоды от шумного флетового поведения. TPR — Коэффициент устойчивости тренда — это технический индикатор, разработанный Ричардом Постером (Акции и сырьевые товары, февраль 2021 г., стр. 12), доктором философии. Как следует из названия, этот технический индикатор пытается измерить силу тренда. В то время как многие другие индикаторы оценивают силу тренда на основе изменений цен, коэффициент устойчивости тренда делает это с учетом продолжительности тренда.

Значения:
— TPR близкий к 1 (или 100%) — в большинстве баров направление не меняется: высокий уровень persistency.
— TPR близкий к 0 (или 0%) — частые смены направления: рынок непоследователен, флет/шум.
— Обычно интерпретируют пороги: >0.7 (сильная persistency), 0.4–0.7 (умеренная), <0.4 (слабая). В отличие от Trend Persistence Counter (TPC), который считает длину текущей серии, TPR измеряет частотную долю продолжений внутри окна. TPR даёт статистическую картину за фиксированное окно, а не только текущую длину серии.


Формула расчёта индикатора Trend Persistence Rate

Обозначения:
— C[t] — цена закрытия бара t (можно использовать любую цену: Close/Median/Typical).
— delta[t] = C[t] − C[t-1] — sign[t] = sign(delta[t]) = { +1, 0, −1 } (варианты: нули можно отбрасывать или считать как отдельный класс)
— N — длина окна (lookback), по умолчанию число последних баров, например 20

Базовая формула (вариант 1 — с учётом нулей как разрыва):
1. Для i = t−N+1 .. t вычислить sign[i].
2. Сформировать флаги продолжения для i = t−N+2 .. t:
continuation[i] = 1, если sign[i] == sign[i−1] и sign[i] != 0, иначе 0.
3. TPR[t] = (Σ_{i=t−N+2}^{t} continuation[i]) / (N−1)

Диапазон: 0 .. 1 (или умножают на 100 → 0..100%)

Формула (вариант 2 — игнорирование нулевых изменений):
— Исключить бары с sign == 0 из расчёта (т.е. считать только значимые барные изменения). Тогда
— M = количество пар последовательных баров внутри окна, где ни один из пары не ноль (или счёт пар значимых изменений)
— TPR = (число пар, где sign[i]==sign[i-1]) / M

Формула (с весами по возрасту — взвешенный TPR):
— Иногда полезно придавать больший вес более поздним барам:
w_i — веса для пар (например экспоненциальные или линейно убывающие).
TPR_w = (Σ w_i * continuation[i]) / Σ w_i

Формула (с нормализацией по волатильности — hybrid):
— Можно учитывать значимость баров по амплитуде: continuation_amp[i] = 1, если sign[i] == sign[i−1] и |delta[i]| > k*ATR (и/или |delta[i-1]| > k*ATR)
— Тогда TPR_amp = Σ continuation_amp / (N−1) (или по числу проверяемых пар)

Примеры вычисления:
— N=10, последовательность знаков (ignoring zeros): [+1, +1, −1, −1, +1, +1, +1, −1, −1, −1] пары продолжения: [1,0,1,0,1,1,0,1,1] → сумма = 6 → TPR = 6/9 ≈ 0.667


Использование в торговле индикатора Trend Persistence Rate

Trend-Persistence-Rate
Ниже — практическое применение Trend Persistence Rate (TPR) в трейдинге: конкретные тактики, правила входа/выхода, управление риском, комбинации с другими индикаторами и советы по настройке.

1) Роль TPR в системе
— Фильтр рыночного режима: TPR показывает, трендовый рынок (высокий TPR) или флет/шум (низкий TPR).
— Используется как вспомогательный индикатор — для включения/исключения стратегий, управления объёмом и выхода из позиций.

2) Тактики и правила
A. Фильтрация входов по направлению
Правило: принимать только сигналы в направлении доминирующего тренда, если TPR > upper_thresh.
— Пример: TPR(20) > 0.65 → разрешены только лонги при бычьих сигналах; TPR(20) < 0.35 → запрещены трендовые входы. B. Адаптивный режим стратегии (Trend vs Range) Режимы: - Trend mode: TPR ≥ 0.6 — применяются трендовые стратегии (пробои, следование за движением). - Range mode: TPR ≤ 0.4 — переход на контртренд/торговлю диапазонами. - Neutral: 0.4 < TPR < 0.6 — снижение активности или дополнительные подтверждения. C. Управление размером позиции и риском Увеличивать риск/лоты при высоком TPR (при подтверждении объёмом/амплитудой); снижать при низком. - Пример: risk = 1% при TPR <0.5, 1.5% при 0.5–0.7, 2% при TPR ≥0.7. D. Пирамидинг и добавления - Добавлять к убыточной/прибыльной позиции только если TPR растёт (например добавлять части при TPR ≥ 0.6 и снова при ≥0.8), и если амплитуда баров растёт. E. Выходы и защита прибыли - Удерживать позицию, пока TPR остаётся выше удерживающего порога; при падении TPR — частичное или полное закрытие. - Частичная фиксация при достижении исторически высокого TPR (95-й перцентиль) — признак возможной перегретости импульса. F. Сигнал раннего разворота - Резкое снижение TPR (например с 0.8→0.3) — ранний индикатор ослабления тренда; требует немедленного пересмотра позиции. 3) Комбинации с другими индикаторами (лучшие практики) - EMA/MA: входы по направлению MA только если TPR подтверждает направление. - ATR: использовать для фильтрации «малых» баров; требовать |delta| > k*ATR для учёта бара в TPR.
— Volume: требовать увеличение объёма при росте TPR для подтверждения качества тренда.
— ADX: ADX показывает силу тренда, TPR — его последовательность; использовать вместе (например ADX>25 и TPR>0.6).

4) Подбор порогов и тестирование
— Таймфрейм влияет: на М1–М15 TPR менее стабильный (больше шума), на H1–D — более значимый.
— Подбирать upper_thresh, lower_thresh и окно N через бэктесты по конкретному инструменту. Рекомендуемые начальные значения: N=20, upper=0.6–0.7, lower=0.35–0.45.
— Тестировать: hit-rate, средний P&L при разных уровнях TPR, просадки, количество сделок.

5) Практические шаблоны правил (коротко)
— Фильтр входа: Signal_primary AND TPR(20) ≥ 0.65 → вход; иначе игнорировать.
— Управление: при TPR ≥0.7 увеличить позицию на X% (при подтверждении объёмом).
— Выход: если TPR падает ниже 0.4 → закрыть или сократить позицию на Y%.

6) Ограничения и риски
— TPR не учитывает амплитуду по умолчанию — длинная серия мелких баров может вводить