Z-score нормализация: учет тренда и горизонта времени
Как использовать Z-score нормализацию для корректного сравнения данных разных масштабов и временных горизонтов в финансовом анализе.
Что такое Z-score нормализация?
Z-score нормализация — это продвинутый метод нормализации, который учитывает не только масштаб данных, но и тренд, а также адаптируется под горизонт времени для корректного сравнения движений разной длительности.
Z-score нормализация: как сделать движения сопоставимыми
В анализе временных рядов и в машинном обучении часто нужно сравнивать события на разных горизонтах времени и в разных масштабах. Проблема в том, что «крупные» движения автоматически выглядят более важными, чем «мелкие», даже если в относительном выражении они одинаковы по силе.
Почему простое деление на стандартное отклонение не спасает
- • Оно убирает масштаб, но не учитывает средний тренд
- • Оно не делает данные разных горизонтов сопоставимыми
- • Длинные горизонты по-прежнему выглядят более «шумными» из-за накопленной волатильности
Суть Z-score нормализации
Метод одновременно:
- Вычитает ожидаемое движение — убирает предсказуемую часть, оставляя только отклонение от нормы
- Масштабирует по длине горизонта — учитывает, что волатильность растёт пропорционально квадратному корню времени
В результате каждое изменение переводится в «единицы неожиданности» — насколько оно необычно по сравнению с типичным поведением ряда.
Интуитивный пример
Движение в +1% за 1 час и +2% за 4 часа могут быть одинаково необычными, даже если второе в абсолютных цифрах больше.
После Z-score нормализации оба получат одинаковый «балл силы» и станут напрямую сравнимыми.
Почему это важно
- • Сигналы с разных таймфреймов становятся сопоставимыми
- • Убирается систематическое смещение из-за тренда
- • Аналитика и обучение модели опираются на отклонения, а не на абсолютные величины
- • Увеличивается устойчивость прогнозов и точность статистических выводов
Вывод
Z-score нормализация — это способ привести любые временные горизонты и масштабы к одной системе координат, где каждый шаг оценивается по своей «неожиданности», а не по голым цифрам.
Проблема классической нормализации
В классической нормализации мы просто делим значение на стандартное отклонение:
delta_h /= pnl_std
Это убирает масштаб данных, но не учитывает среднее значение (mean) и не адаптируется под горизонт времени.
Результат:
- • Тренд не отделен от случайных колебаний
- • Горизонты разной длины становятся несопоставимыми
Решение: Z-score нормализация
Z-score нормализация решает обе проблемы:
delta_h = (delta_h - pnl_mean × h_) / (pnl_std × √h_)
1. Вычитаем ожидаемый тренд
Если средний PNL за минуту = 0.001, то:
За 1 минуту
ожидаемое изменение = 0.001 × 1 = 0.001
За 5 минут
ожидаемое изменение = 0.001 × 5 = 0.005
За 10 минут
ожидаемое изменение = 0.001 × 10 = 0.01
Результат: Вычитая этот тренд, мы оставляем только «неожиданное» движение, которое действительно важно для анализа.
2. Масштабируем по горизонту времени
Волатильность растет как квадратный корень времени:
За 1 минуту
std × √1 = std
За 4 минуты
std × √4 = std × 2
За 9 минут
std × √9 = std × 3
Результат: Так мы учитываем, что более длинные горизонты естественным образом колеблются сильнее.
Практический пример
Исходные параметры:
pnl_mean = 0.001 # Средний PNL за минуту
pnl_std = 0.002 # Стандартное отклонение PNL за минуту
Расчеты:
Горизонт 1 минута
delta_h = 0.003
normalized_1 = (0.003 - 0.001 × 1) / (0.002 × √1) = 1.0
Горизонт 4 минуты
delta_h = 0.008
normalized_4 = (0.008 - 0.001 × 4) / (0.002 × √4) = 1.0
Результат одинаков — 1.0. Это значит, что оба движения одинаково «сильны» относительно своих горизонтов.
Математическая формула
Z-score нормализация:
Z = (x - μ × h) / (σ × √h)
где:
x — исходное значение
μ — среднее значение за единицу времени
σ — стандартное отклонение за единицу времени
h — горизонт времени
Интерпретация:
• Z = 0 — движение соответствует ожидаемому тренду
• Z = ±1 — движение на одно стандартное отклонение от ожидаемого
• Z = ±2 — движение на два стандартных отклонения от ожидаемого
Почему это важно в трейдинге
Сравнимость сигналов
Сигналы разных таймфреймов становятся сравнимыми — движение в 1% за минуту и движение в 2% за 4 минуты могут иметь одинаковую значимость.
Исключение смещения
Исключается смещение из-за долгосрочного тренда — мы фокусируемся на неожиданных движениях, а не на общем направлении рынка.
Качество моделей
Улучшается качество обучения моделей и корректность статистических выводов благодаря нормализованным данным.
Сравнение методов нормализации
| Метод | Формула | Учет тренда | Учет горизонта | Применимость |
|---|---|---|---|---|
| Классическая | x / std | Нет | Нет | Ограниченная |
| Min-Max | (x - min) / (max - min) | Нет | Нет | Ограниченная |
| Z-score | (x - μ) / σ | Да | Нет | Хорошая |
| Z-score с горизонтом | (x - μ×h) / (σ×√h) | Да | Да | Отличная |
Когда использовать Z-score нормализацию
Мультитаймфреймовый анализ
Когда нужно сравнивать сигналы с разных временных горизонтов — минутные, часовые, дневные данные.
Трендовые рынки
Когда в данных присутствует долгосрочный тренд, который может искажать анализ краткосрочных движений.
Машинное обучение
При обучении моделей на данных с разными временными горизонтами для обеспечения корректности сравнений.
Статистический анализ
Для корректного проведения статистических тестов и оценки значимости движений разной длительности.
Практическая реализация
Пошаговый план внедрения:
- 1Рассчитайте базовые статистики — среднее и стандартное отклонение за единицу времени
- 2Определите горизонты — для каких временных периодов нужно нормализовать данные
- 3Примените формулу — используйте Z-score нормализацию с учетом горизонта
- 4Проверьте результаты — убедитесь, что нормализованные значения имеют ожидаемое распределение
- 5Интегрируйте в модель — используйте нормализованные данные для обучения и прогнозирования
Примеры использования
Алгоритмический трейдинг
Нормализация сигналов с разных таймфреймов для единообразного принятия решений независимо от горизонта анализа.
Риск-менеджмент
Оценка рисков на разных временных горизонтах с учетом естественного роста волатильности с увеличением периода.
Ключевые выводы
- • Z-score нормализация — это продвинутый метод, учитывающий тренд и горизонт времени
- • Устраняет смещение тренда — фокусируется на неожиданных движениях
- • Учитывает горизонт времени — волатильность растет как √t
- • Обеспечивает сравнимость — движения разных масштабов становятся сопоставимыми
- • Улучшает качество анализа — особенно в мультитаймфреймовых задачах
Философия подхода
По сути, Z-score нормализация переводит данные в «единицы неожиданности», позволяя объективно сравнивать движения разного масштаба и длительности.
Это особенно важно в трейдинге, где нужно принимать решения на основе относительной значимости движений, а не их абсолютной величины.