Стратегия торговли LTC, сочетающая RSI и полосы Боллинджера


Дата создания: 2024-02-06 10:48:03 Последнее изменение: 2024-02-06 10:48:03
Копировать: 0 Количество просмотров: 601
1
Подписаться
1617
Подписчики

Стратегия торговли LTC, сочетающая RSI и полосы Боллинджера

Обзор

Эта стратегия реализует торговую стратегию, которая позволяет автоматически покупать и продавать Litecoin (LTC) в сочетании с относительно слабым индикатором (RSI) и криптовалютной биржей Bitfinex (LTC).

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

Стратегия основывается на следующих двух показателях:

  1. Индекс относительной силы (RSI) - индикатор, который отражает динамику и скорость падения торгуемого товара, чтобы определить, насколько он переоценен или недооценен. Если RSI ниже 20, то это считается перепродажей, а если выше 80, то это считается перекупкой.

  2. Bollinger Bands: индикатор включает в себя три линии, которые называются средней, верхней и нижней линиями. Средняя линия представляет собой скользящую среднюю цену закрытия за n дней, верхняя и нижняя линии соответственно равны средней линии плюс уменьшение в 2 раза n дней стандартной разницы.

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

Правила покупкиКогда RSI пересекает 20 от низкого уровня, это рассматривается как предстоящая обратная перепродажа, в то время как если цена прорвется вниз по линии Бринга, то будет получен сигнал купить.

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

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

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

Основные преимущества этой стратегии:

  1. В сочетании с RSI и двумя индикаторами по Брин-банку, в комплексе оценивается состояние рынка, торговый сигнал является более надежным.

  2. Индекс RSI позволяет оценить состояние перекупа и перепродажи, в то время как индикатор BRI отражает степень отклонения цен от нормального распределения, и они дополняют друг друга.

  3. При этом учитывается состояние показателей и ценовые прорывы, чтобы избежать ошибочных сигналов в условиях шока.

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

  5. Эта стратегия оптимизировала LTC в частности, и была более эффективной, основываясь на исторических данных. Если параметры будут оптимизироваться, эффективность может быть улучшена.

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

Несмотря на определенные преимущества этой стратегии, возможны следующие риски:

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

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

  3. Несмотря на два показателя, существует риск оказаться в ловушке в условиях шок. В этом случае возникают убытки и издержки возможности.

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

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

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

В этой стратегии есть несколько оптимизационных направлений:

  1. Тестирование различных параметров RSI и Бринской полосы для поиска наиболее подходящих длины циклов или ключевых значений.

  2. Добавление мер по контролю позиций, например, динамическая корректировка позиций по каждой сделке в зависимости от баланса счета.

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

  4. Учитывается стоимость скольжения в фиксированных сделках, корректируется параметр и точка остановки.

  5. В сочетании с другими показателями, такими как показатели волатильности цен, объемы сделок и т. д., формируется многофакторная модель, повышающая точность сигналов.

  6. Разработать механизм динамических параметров для различных этапов и циклов развития LTC, чтобы стратегия могла адаптироваться к рыночной ситуации.

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

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

Исходный код стратегии
/*backtest
start: 2024-01-29 00:00:00
end: 2024-02-05 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("LTCUSD BB + RSI 30MIN,", shorttitle="LTCUSD BBRSI 30MIN ", overlay=true)
     
     // Strategy Tester Start Time
sYear = input(2019, title = "Start Year")
sMonth = input(01, title = "Start Month", minval = 01, maxval = 12)
sDay = input(01, title = "Start Day", minval = 01, maxval = 31)
sHour = input(00, title = "Start Hour", minval = 00, maxval = 23)
sMinute = input(00, title = "Start Minute", minval = 00, maxval = 59)
startTime = true


///////////// RSI
RSIlength = input(5,title="RSI Period Length") 
RSIoverSold = input(20, minval=1,title="RSIL")
RSIoverBought = input(80, minval=1,title="RSIh")
price = open
vrsi = rsi(price, RSIlength)


///////////// Bollinger Bands
BBlength = input(60, minval=1,title="Bollinger Period Length")
BBmult = input(2.0, minval=0.001, maxval=50,title="Bb")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)
plot(BBbasis, color=aqua,title="Bollinger Bands SMA Basis Line")
p1 = plot(BBupper, color=silver,title="Bollinger Bands Upper Line")
p2 = plot(BBlower, color=silver,title="Bollinger Bands Lower Line")
fill(p1, p2)


///////////// Colors
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) and BBbasis < BBbasis[1] ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) and BBbasis > BBbasis[1] ? green : na
barcolor(switch1?TrendColor:na)
bgcolor(switch2?TrendColor:na,transp=50)


///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))

    if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
        strategy.entry("RSI_BB_L", strategy.long and startTime, stop=BBlower,  comment="RSI_BB_L")
    else
        strategy.cancel(id="RSI_BB_L")
        
    if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
        strategy.entry("RSI_BB_S", strategy.short and startTime, stop=BBupper,  comment="RSI_BB_S")
    else
        strategy.cancel(id="RSI_BB_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)