10-периодный RSI
Введение
Индекс относительной силы (RSI) — это осциллятор импульса, измеряющий скорость и изменение ценовых движений. RSI колеблется от 0 до 100 и традиционно считается перекупленным при значениях выше 70 и перепроданным при значениях ниже 30. Индикатор, разработанный Дж. Уэллсом Уайлдером, широко используется в торговле и выдержал проверку временем. Один из популярных вариантов — 10-периодный RSI.
Что такое 10-периодный RSI?
10-периодный RSI — это вариант стандартного RSI с фокусом на 10 периодов. Он более чувствителен к изменениям цены, чем классический 14-периодный RSI, и дает более оперативные сигналы для трейдеров, ориентированных на краткосрочные сделки. Значение RSI рассчитывается на основе средних прибылей и убытков за заданное число периодов, при этом для 10-периодного RSI используются последние 10 периодов.
Формула для 10-периодного RSI
Расчет включает следующие шаги:
- Рассчитать значения U и D, где U — среднее положительных изменений цены за период, а D — среднее отрицательных изменений цены.
- Рассчитать относительную силу (RS) как отношение среднего U к среднему D.
- Перевести RS в RSI по формуле: RSI = 100 - [100 / (1 + RS)]
Пример расчета
Рассмотрим расчет 10-периодного RSI:
- Допустим, последовательность цен закрытия за 10 периодов: [54, 56, 58, 57, 60, 62, 61, 63, 65, 67]
- Рассчитаем прибыли и убытки:
- Прибыли: (56-54), (58-56), (60-57), (62-60), (63-61), (65-63), (67-65) = [2, 2, 3, 2, 2, 2, 2]
-
Убытки: 57-58 , 61-62 = [1, 1] (по методологии Уайлдера убытки берутся по модулю)
- Средняя прибыль = (2+2+3+2+2+2+2) / 10 = 1.5
- Средний убыток = (1 + 1) / 10 = 0.2
- RS = средняя прибыль / средний убыток = 1.5 / 0.2 = 7.5
- RSI = 100 - (100 / (1 + RS)) = 100 - (100 / 8.5) = 100 - 11.76 = 88.24
RSI = 88.24 указывает на перекупленность, что соответствует преимущественно восходящему движению в примере.
Применение в алгоритмической торговле
Преимущества
Использование 10-периодного RSI в алгоритмической торговле дает несколько преимуществ:
- Чувствительность: индикатор быстрее реагирует на изменения импульса, чем RSI с более длинным периодом.
- Краткосрочная торговля: подходит для дейтрейдинга и краткосрочных стратегий, позволяя использовать небольшие колебания цены.
- Сигналы перекупленности/перепроданности: дает четкие сигналы для стратегий возврата к среднему.
Реализация в алгоритмах
Алгоритмическая торговля использует разные языки и инструменты для автоматизации RSI-стратегий:
- Python: библиотеки TA-Lib и pandas позволяют рассчитывать RSI и проводить бэктесты.
- C++ и Java: низкая задержка делает их удобными для высокочастотной торговли.
- Торговые платформы: MetaTrader, StockSharp и TradeStation позволяют реализовывать RSI-алгоритмы в своих средах.
Пример реализации на Python
import pandas as pd
import numpy as np
def calculate_rsi(data, period=10):
delta = data['Close'].diff(1)
gain = (delta.where(delta > 0, 0)).rolling(window=period).mean()
loss = (-delta.where(delta < 0, 0)).rolling(window=period).mean()
rs = gain / loss
rsi = 100 - (100 / (1 + rs))
return rsi
# Sample DataFrame
data = {'Close': [54, 56, 58, 57, 60, 62, 61, 63, 65, 67]}
df = pd.DataFrame(data)
df['RSI'] = calculate_rsi(df)
print(df)
Использование машинного обучения
Машинное обучение может усиливать RSI-стратегии за счет:
- Прогнозирования: использования исторических значений RSI и цен для прогнозов.
- Классификации: выявления рыночных условий, подходящих для торговли (например, перекупленность/перепроданность).
Фреймворки TensorFlow, PyTorch и Scikit-learn применяются для создания более сложных моделей и повышения качества решений в алгоритмических системах.
Кейсы
Высокочастотные торговые компании
Компании вроде Virtu Financial и Citadel Securities, вероятно, используют RSI в составе своих наборов технических индикаторов для быстрого принятия решений.
Академические исследования
Существует ряд исследований и статей, анализирующих оптимизацию RSI и влияние длины периода на торговые результаты.
Заключение
10-периодный RSI — мощный инструмент для трейдеров, работающих с краткосрочными движениями цены. Его повышенная чувствительность по сравнению с более длинными периодами делает его особенно полезным для активных трейдеров и алгоритмических стратегий. В сочетании с современными инструментами программирования и машинного обучения он формирует надежную основу для построения продвинутых торговых систем.