Стратегия разворота относительной силы RSI


Дата создания: 2023-11-14 16:49:02 Последнее изменение: 2023-11-14 16:49:02
Копировать: 0 Количество просмотров: 762
1
Подписаться
1617
Подписчики

Стратегия разворота относительной силы RSI

Обзор

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

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

Эта стратегия основана на следующих принципах:

  1. RSI может отражать, находится ли рынок в настоящее время в состоянии перекупа или перепродажи. RSI определяет степень перекупа или перепродажи на текущем рынке, рассчитывая соотношение среднего роста к среднему падению за определенный период времени и измеряя относительную силу плюсовой и пустой динамики.

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

  3. Когда RSI входит в зону перепродажи (обычно считается, что RSI меньше 30 - это перепродажа), это означает, что рынок уже очень силен, и в это время число трейдеров, удерживающих позиции по понижению, будет больше, и пространство для продолжения падения ограничено, и цены могут продолжать расти, чтобы перевернуть состояние перепродажи.

  4. Таким образом, можно установить RSI на 90-й и 10-й отметки в зоне сверхпокупа, чтобы сделать пробел, когда RSI входит в зону сверхпокупа, и сделать лишний, когда RSI входит в зону сверхпродажи, чтобы поймать обратный поворот.

В частности, основная логика этой стратегии заключается в следующем:

  1. Вычислить значение RSI, используя закрытие цены в качестве источника для RSI, длительностью 2 цикла.

  2. Когда RSI превышает 90, это означает, что вы входите в зону сверхпокупок и открываете позиции. Когда RSI превышает 10, это означает, что вы входите в зону сверхпродаж и открываете позиции.

  3. Для каждой открытой позиции устанавливается стоп-стоп.

  4. Для каждой открытой позиции устанавливается точка отслеживания стоп-лоса. Если RSI продолжает входить в более проданную зону, то следует отслеживать точку отслеживания стоп-лоса, чтобы сделать стоп-дистанцию более свободной.

  5. Если RSI вновь выйдет в нейтральную зону в районе 50, можно остановить или свернуть позицию.

  6. Если обратный ход не наступит, и открытие позиции более чем на 3 K-линии не достигнет условий остановки или остановки, то обязательная ликвидация позиции предотвращает большие потери, вызванные чрезмерным удержанием позиции.

Стратегические преимущества

Стратегия обратного отсчета RSI имеет следующие преимущества:

  1. Использование RSI для определения перекупа и перепродажи позволяет эффективно улавливать переломные моменты рынка. RSI является точным в определении перекупа и перепродажи, и переход имеет более высокий уровень успеха.

  2. Стратегия обратного трейдинга обладает систематическим преимуществом в том, что она позволяет продолжать торговлю в соответствии с ветром.

  3. Стратегия включает в себя механизм стоп-лосса, который позволяет эффективно контролировать убытки от одной сделки. Даже если обратный ход не удается, стоп-лосса может контролировать убытки в определенном диапазоне.

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

  5. Принудительный стоп-лосс гарантирует, что сделки, которые не могут быть возвращены в течение длительного периода времени, могут быть ликвидированы, не принося неограниченный срок убытков.

  6. Параметры RSI могут быть изменены в зависимости от рынка, что повышает адаптивность стратегии.

Стратегический риск

В этой стратегии также есть некоторые риски, о которых следует помнить:

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

  2. Хотя RSI может судить о перекупе и перепродаже, он не может предсказать точную точку отклонения. Существует риск того, что после применения этой стратегии не будет никакого отклонения, и цена продолжит работать.

  3. Определенные стратегией RSI зоны перекупа и перепродажи могут быть необоснованными, а если их установить неправильно, то это может привести к пропущенному повороту или повороту перед ночным прорывом.

  4. Если реверс не достигнет остановки, то вероятность того, что реверс снова вернется, существует, и в этом случае остановка может не иметь сделки.

  5. Стоп-стоп устанавливается необоснованно, слишком близко может быть остановлено, слишком далеко - потеряет смысл.

  6. Кроме того, комиссионные могут оказать определенное влияние на прибыль.

Оптимизация стратегии

Помимо этого, RSI может быть оптимизирована в следующих аспектах:

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

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

  3. Оптимизация стратегий остановки убытков, такие как остановка в соответствии с ATR, установка остановки убытков в зависимости от волатильности и т. д.

  4. Оптимизируйте стратегию остановки, установите мобильную остановку, отслеживайте большую разницу в цене и т.д.

  5. Включение вспомогательных решений в модели машинного обучения повышает вероятность успешного обращения вспять.

  6. Испытание данных для разных рынков и сортов, корректировка параметров для достижения наилучших результатов на диске.

  7. В сочетании с объемом сделок, обратный сигнал рассматривается только в случае увеличения объема сделок.

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

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

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

//@version=4
// Copyright (c) 2021-present, RicMos
//study("RSI2 Sell Strategy, overlay=true)

//------------------------------------------USER VARIABLE DEFINITIONS --------------------------------------
var float lots = 0.1
//var float fixed_commission = 0.6 // forex pairs commission  value USD per position size two sides
var float fixed_commission = 10 // BTC commission value USD per position size two sides
//var float money = 10000 //forex pairs position size
var float money = 0.3333 //BTC position size



strategy(title="RSI2 Sell Strategy", commission_type=strategy.commission.cash_per_order, calc_on_every_tick =true, commission_value = fixed_commission/2, overlay=true, default_qty_value= lots*100000, initial_capital=1000, currency = "USD", calc_on_order_fills = false)
len = input(2, minval=1, title="RSI Length")
src = input(close, "RSI Source", type = input.source)
upRsi = rma(max(change(src), 0), len)
downRsi = rma(-min(change(src), 0), len)
rsi = downRsi == 0 ? 100 : upRsi == 0 ? 0 : 100 - (100 / (1 + upRsi / downRsi))
var color buyColor = color.blue
var color sellColor = color.red


plotshape(rsi <= 10 ? low : na, title="Arrow Up", style=shape.triangleup, location=location.belowbar, size=size.tiny, color=buyColor)
plotshape(rsi >= 90 ? high : na, title="Arrow Down", style=shape.triangledown, location=location.abovebar, size=size.tiny, color=sellColor)


// long = rsi <= 10 
// var float longsl = 0
// var int long_ts_points = 0

// if long
//     longsl:= low
//     long_ts_points := 200
    
// if rsi >= 70
//     long_ts_points := 100
// else if rsi >= 80
//     long_ts_points := 80


// plot (longsl)
// var int barsPassed = 0
// barsPassed := barssince(long)
// if long
//     strategy.entry("long", long = strategy.long, qty = 10000, stop = high)
// strategy.exit("slLo", from_entry="long", stop = longsl-0.0002, trail_points = long_ts_points )
// //strategy.close("long", when = rsi[1]>=50 and rsi < 50 , comment = "rsi under 50" )
// strategy.cancel_all(barsPassed > 3  and not long)


short = rsi >= 90 
var float shortsl = 0
var int short_ts_points = 0
//var bool stClose = 0

if short
    shortsl:= high
    short_ts_points := 200
    
if rsi <= 30
    short_ts_points := 100
    //stClose :=1
else if rsi <= 20
    short_ts_points := 80 
//else
    //stClose := 0

plot (shortsl)
var int barsPassedSh = 0
barsPassedSh := barssince(short)
if short
    strategy.entry("short", long = strategy.short, qty = money, stop = low)
strategy.exit("slSh", from_entry="short", stop = shortsl, trail_points = short_ts_points, trail_offset =20 )
//strategy.close("short", comment="rsi<30", when = stClose)


//strategy.close("long", when = rsi[1]>=50 and rsi < 50 , comment = "rsi under 50" )
strategy.cancel_all(barsPassedSh > 3  and not short)