Коннорс Двойная скользящая средняя стратегия реверсии RSI

Автор:Чао Чжан, Дата: 2023-11-21 14:20:43
Тэги:

img

Обзор

Коннорская стратегия реверсии двойных скользящих средних показателей RSI сочетает в себе индекс относительной силы (RSI) и двойные скользящие средние показатели для выявления высоковероятных возможностей для реверсии.

Принцип стратегии

Эта стратегия использует как RSI, так и двойные скользящие средние для определения рыночных тенденций. Во-первых, она рассчитывает 2-периодный RSI для оценки краткосрочных обратных тенденций. Во-вторых, она рассчитывает 200-периодный скользящий средний для определения долгосрочного направления тренда. Когда краткосрочный RSI отскакивает из зоны перекупленности / перепродажи и движется против долгосрочной тенденции, это сигнализирует о том, что рынок вот-вот изменится и может быть установлена торговая позиция.

Сигналы входа: перейти на длинную позицию, когда RSI ниже зоны перепродажи (по умолчанию 5) и краткосрочная цена выше долгосрочной цены; перейти на короткую позицию, когда RSI выше зоны перекупки (по умолчанию 95) и краткосрочная цена ниже долгосрочной цены.

Сигналы выхода: выход, когда 5-периодная краткосрочная скользящая средняя дает сигнал, противоположный направлению входа; или стоп-потеря (по умолчанию 3% потеря).

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

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

  1. Использовать RSI для определения краткосрочных точек перехода и скользящих средних для фильтрации надежности сигналов перехода
  2. Двойные скользящие средние формируют сильный фильтр для предотвращения задержек
  3. Краткосрочная скользящая средняя перепроверяет обратный сигнал для обеспечения высокой вероятности выхода
  4. Хорошее управление рисками с механизмом остановки потерь

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

Эта стратегия сопряжена с некоторыми рисками:

  1. Индикаторы RSI чаще дают неверные сигналы во время бурных колебаний рынка
  2. Суждения по комбинациям с несколькими показателями делают оптимизацию параметров сложной
  3. Успех отмены не гарантирован, необходимы своевременные остановки потерь

Руководство по оптимизации

Эта стратегия может быть оптимизирована в нескольких аспектах:

  1. Оптимизировать параметры RSI для поиска наилучшей комбинации параметров обратного движения
  2. Испытать различные типы параметров скользящих средних
  3. Оптимизировать стратегии стоп-лосса для поиска лучших точек стоп-лосса
  4. Добавление показателей оценки тренда для предотвращения неудачных переворотов

Заключение

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


/*backtest
start: 2023-10-21 00:00:00
end: 2023-11-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Connors RSI-MA Strategy", overlay=true)

// Strategy parameters
rsiLength = input(2, title="RSI Length")
maLength = input(200, title="MA Length")
exitMaLength = input(5, title="Exit MA Length")
overboughtThreshold = input(95, title="Overbought Threshold")
oversoldThreshold = input(5, title="Oversold Threshold")
stopLossPercentage = input(3, title="Stop Loss Percentage")

// 2-period RSI
rsi2 = ta.rsi(close, rsiLength)

// 200-period MA
ma200 = ta.sma(close, maLength)

// 5-period MA for exit signals
ma5_exit = ta.sma(close, exitMaLength)

// Positive trend condition
positiveTrend = close > ma200

// Negative trend condition
negativeTrend = close < ma200

// Buy and sell conditions
buyCondition = rsi2 < oversoldThreshold and positiveTrend
sellCondition = rsi2 > overboughtThreshold and negativeTrend

// Exit conditions
exitLongCondition = close > ma5_exit
exitShortCondition = close < ma5_exit

// Stop Loss
stopLossLevelLong = strategy.position_avg_price * (1 - stopLossPercentage / 100)
stopLossLevelShort = strategy.position_avg_price * (1 + stopLossPercentage / 100)

// Strategy logic
if (buyCondition)
    strategy.entry("Buy", strategy.long)

if (sellCondition)
    strategy.entry("Sell", strategy.short)

if (exitLongCondition or close >= stopLossLevelLong)
    strategy.close("Buy")

if (exitShortCondition or close <= stopLossLevelShort)
    strategy.close("Sell")

// Plotting
plot(ma200, title="200 MA", color=color.blue)
plot(ma5_exit, title="Exit MA", color=color.red)

// Plot stop loss levels
plotshape(series=stopLossLevelLong, title="Long Stop Loss", color=color.green, style=shape.triangledown, size=size.small)
plotshape(series=stopLossLevelShort, title="Short Stop Loss", color=color.red, style=shape.triangleup, size=size.small)


Больше