StratCraft
Руководство по индикаторам Backtrader

Backtrader RSI Mean Reversion Strategy

Осциллятор импульса, измеряющий скорость и изменение ценовых движений по шкале от 0 до 100. Значения выше 70 указывают на состояние перекупленности, ниже 30 — на состояние перепроданности.

bt.indicators.RSIMean Reversion Strategies

Осциллятор импульса, измеряющий скорость и изменение ценовых движений по шкале от 0 до 100. Значения выше 70 указывают на состояние перекупленности, ниже 30 — на состояние перепроданности.

RSI является краеугольным камнем стратегий возврата к среднему. Когда цена значительно отклоняется от своего среднего значения (RSI > 70 или < 30), трейдеры ожидают возвращения к равновесию. В отличие от трендовых индикаторов, RSI эффективен в боковых рынках, где цена колеблется вокруг стабильного среднего значения.

Узнать больше о Mean Reversion Strategies →
Pythonbacktrader
import backtrader as bt

class RSIMeanReversion(bt.Strategy):
    params = (('rsi_period', 14), ('rsi_overbought', 70), ('rsi_oversold', 30))

    def __init__(self):
        self.rsi = bt.indicators.RSI(self.data.close, period=self.p.rsi_period)

    def next(self):
        if self.rsi[0] < self.p.rsi_oversold and not self.position:
            self.buy()  # Oversold: expect mean reversion upward
        elif self.rsi[0] > self.p.rsi_overbought and self.position:
            self.sell()  # Overbought: exit on reversion
ПараметрПо умолчаниюОписание
period14Период ретроспективы для расчета RSI
upperband70Порог перекупленности
lowerband30Порог перепроданности