Торговые стратегии, основанные на возврате к среднему значению RSI


Дата создания: 2023-09-20 15:38:45 Последнее изменение: 2023-09-20 15:38:45
Копировать: 1 Количество просмотров: 629
1
Подписаться
1617
Подписчики

Обзор

Эта стратегия использует несколько ценовых вводов для вычисления среднего значения RSI, чтобы определить, находится ли цена в состоянии перекупа или перепродажи, и относится к стратегии типа обратной торговли.

Стратегический принцип

  1. RSI рассчитывается на основе цены закрытия, цены открытия и цены максимума.

  2. Для получения среднего значения RSI используйте среднее число RSI.

  3. Средний RSI выше 0,5 является сигналом о перекупке, а ниже 0,5 - сигналом о перепродаже.

  4. Сигнал обратной торговли возникает, когда средняя величина RSI возвращается к средней линии 0.5.

  5. Настройка RSI на выходе из средней отметки, например, на прорыв в 0,65 зоны, чтобы сделать больше, и на прорыв в 0,35 зоны, чтобы сделать меньше.

  6. Логика сделки проста, понятна и легко реализуема.

Анализ преимуществ

  1. Для повышения стабильности RSI используется для вычисления средних значений с использованием различной информации о ценах.

  2. Возвращение средней линии RSI создает торговый сигнал, который сочетает в себе трендовые и обратные характеристики.

  3. Интуитивно понятная кривая RSI, формирующая четкий визуальный торговый сигнал.

  4. Параметры по умолчанию простые и практичные, подходящие для обратных трейдеров.

  5. Код прост, легко понять изменения, подходит для тех, кто только начинает разбираться в технологиях.

Анализ рисков

  1. RSI легко образует ложные обратные сигналы, что приводит к убыткам.

  2. Неправильная настройка параметров RSI и средней линейной отметки может повлиять на эффективность стратегии.

  3. Системный риск выше, если рассматривать только один RSI.

  4. Невозможно определить способность ценового реверса поддерживать.

  5. В условиях тренда это может привести к убыткам.

Направление оптимизации

  1. Тестирование оптимизации параметров цикла RSI для повышения чувствительности индикатора.

  2. Оценка влияния различных ценовых вводов на средние значения RSI.

  3. Добавить фильтр тренда, чтобы избежать обратной торговли.

  4. В сочетании с другими факторами подтверждается обратный сигнал.

  5. Разработать механизм динамического сдерживания убытков для контроля рисков.

  6. Оптимизация стратегии входа, остановки и остановки, повышение эффективности стратегии.

Подвести итог

Эта стратегия использует RSI для торговли на обратном пути, она проста и подходит для начинающих. Однако существует риск ошибочных сигналов и тенденций. С помощью многофакторной оптимизации и улучшения управления рисками стратегия может быть более стабильной и эффективной, чтобы стать надежной системой обратной торговли.

Исходный код стратегии
/*backtest
start: 2022-09-13 00:00:00
end: 2023-09-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © exlux99

//@version=5
strategy("RSI Average Swing Bot")

long_only=input.bool(true, title="Allow Long entries", group="Entries Type")
short_only=input.bool(true, title="Allow Short entries", group="Entries Type")
rsiohlc4= ta.rsi(ohlc4,50)/100
rsiclose= ta.rsi(close,50)/100
rsiopen= ta.rsi(open,50)/100
rsihigh= ta.rsi(high,50)/100
rsihlc3= ta.rsi(hlc3,50)/100
rsihl2= ta.rsi(hl2,50)/100

hline(0.3, color=color.white, linestyle=hline.style_dashed, linewidth=2)
hline(0.5, color=color.white, linestyle=hline.style_dotted, linewidth=2)
hline(0.7, color=color.white, linestyle=hline.style_dashed, linewidth=2)
rsi_avg = (rsiohlc4+rsiclose+rsiopen+rsihigh+rsihl2+rsihlc3)/6

culoare = rsi_avg > 0.50? color.green : rsi_avg<0.50 ? color.red : color.yellow
plot(rsi_avg,color=culoare )


long = rsi_avg > 0.5 and rsi_avg[1]< 0.5
longexit = rsi_avg >= input.float(0.65, step=0.05)
short = rsi_avg < 0.5 and rsi_avg[1] >0.5
shortexit=rsi_avg<=input.float(0.35, step=0.05)

if(long_only)
    strategy.entry("long",strategy.long,when=long)
    strategy.close("long",when=longexit or short)

if(short_only)
    strategy.entry("short",strategy.short,when=short)
    strategy.close("short",when=shortexit or long)