Estratégia de propagação do canal RSI seguindo


Data de criação: 2023-12-18 17:48:24 última modificação: 2023-12-18 17:48:24
cópia: 0 Cliques: 680
1
focar em
1621
Seguidores

Estratégia de propagação do canal RSI seguindo

Visão geral

A estratégia de rastreamento de diferença de preço do canal RSI gera sinais de negociação por meio do rastreamento da oscilação do indicador RSI dentro do canal de depreciação, combinado com a ruptura do preço. A estratégia visa capturar explosões de compra e venda rápidas no mercado de criptomoedas.

Princípio da estratégia

  1. Usando a média móvel de Hull para equilibrar o RSI, gera um indicador de RSI após o equilíbrio. Inclui o RSI do preço de fechamento, o RSI do preço máximo, o RSI do preço mínimo e o RSI do preço médio.

  2. Configure o canal RSI para 55-45. Quando o indicador RSI entra no canal 55-45, ele entra na zona de choque.

  3. Quando o RSI de encerramento retorna da linha de entrada do canal e o RSI de encerramento está abaixo do valor médio, o preço está sob pressão; enquanto o RSI de encerramento ainda está acima do limite superior do canal, o valor médio ainda tem impulso de compra, de acordo com a lógica de rastrear a ruptura do valor médio, gerando assim um sinal de compra.

  4. Quando o preço de fechamento RSI rebota a partir do limite inferior do canal, e o preço de fechamento é superior ao preço médio, indica que o preço está apoiado; e neste momento, o indicador de RSI médio é inferior ao limite inferior do canal, indicando que o preço médio está sob grande pressão, de acordo com a lógica de rastrear a quebra do preço médio, e, portanto, produz um sinal de venda.

  5. Os indicadores de RSI de preço máximo e RSI de preço mínimo são usados para identificar sinais de negociação em tempo hábil que falham e param rapidamente.

Vantagens estratégicas

  1. O uso de breakouts de preços médios para rastrear a direção de força dos preços médios, em consonância com a filosofia de rastreamento de tendências.

  2. O RSI move-se dentro do canal de desvalorização, o que leva a uma troca de posições, usando o valor médio para acompanhar a direção do valor médio e evitar ficar preso em um movimento intermediário.

  3. Os indicadores de RSI de preço máximo e RSI de preço mínimo são usados para identificar rapidamente falhas de sinais de negociação, para um rápido stop loss e para controlar efetivamente os prejuízos.

Risco estratégico

  1. A configuração incorreta do indicador RSI pode levar a uma hipersensibilidade ou atraso.

  2. O significado de uma ruptura no preço médio não é sempre confiável, e o preço médio pode estar em um estado de agitação.

  3. A volatilidade do mercado de criptomoedas é grande, e a posição de stop loss definida com demasiada flexibilidade pode levar à expansão dos prejuízos.

Solução:

  • Optimizar os parâmetros do RSI para que eles respondam moderadamente às mudanças de preço
  • Combinação de mais indicadores para determinar a confiabilidade da ruptura do preço médio
  • Aplicar um ajustamento apropriado para evitar perdas excessivas

Direção de otimização da estratégia

  1. A direção da ruptura com mais indicadores para o preço médio

Pode-se introduzir indicadores como a faixa de Brin para determinar se o preço médio está próximo de um trajeto ascendente ou descendente, aumentando a precisão do julgamento da direção do preço médio.

  1. Introdução de um modelo de aprendizagem de máquina para auxiliar o julgamento

Modelos de aprendizagem profunda, como o LSTM, são usados para prever a tendência futura do preço da mediana, auxiliando na determinação de se o preço da mediana pode ser bem sucedido em uma determinada direção.

  1. Uso de perda de adaptabilidade

De acordo com a volatilidade do mercado, ajuste a posição de stop loss em tempo real. Por exemplo, quando a volatilidade aumenta, aperte a posição de stop loss adequadamente; quando a volatilidade diminui, você pode relaxar a posição de stop loss adequadamente.

Resumir

A estratégia de rastreamento de diferença de preço do canal RSI cria sinais de negociação por meio do rastreamento da oscilação do indicador RSI dentro do canal e da combinação de rupturas de preços, com o objetivo de capturar explosões de compra e venda rápidas no mercado de criptomoedas. A estratégia combina efetivamente métodos de rastreamento de tendências e identificação de intervalos, e ainda obtém melhores negociações quando a diferença de preço se reduz.

Código-fonte da estratégia
/*backtest
start: 2023-11-17 00:00:00
end: 2023-12-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Hull MA of RSI Strategy",overlay=false)
//+++++++++++++++++++++++++++++++
//++++++++++++ Setup ++++++++++++
//+++++++++++++++++++++++++++++++
// RSI 
rsi1_tt="=== RSI ==="
rsi1_len=input(13,title="Period",inline="set",group=rsi1_tt)
//Mid
mid_tt="=== Mid Channel ==="
upper=input(55.0,title="Upper",inline="set",group=mid_tt)
lower=input(45.0,title="Lower",inline="set",group=mid_tt)
//Over
over_tt="=== Over ==="
ovb=input(70.0,title="Overbought",inline="set",group=over_tt)
ovs=input(30.0,title="Oversold",inline="set",group=over_tt)
//++++++++++++++++++++++++++++++++++++++++
//++++++++++++ Hull MA of RSI ++++++++++++
//++++++++++++++++++++++++++++++++++++++++
hma_tt="=== Hull MA ==="
hma_len=input(3,title="Period",inline="set",group=hma_tt)
rsi_c=hma(rsi(close,rsi1_len),hma_len)
rsi_h=hma(rsi(high,rsi1_len),hma_len)
rsi_l=hma(rsi(low,rsi1_len),hma_len)
rsi_hl2=hma(rsi(hl2,rsi1_len),hma_len)
//++++++++++++++++++++++++++++++++
//++++++++++++ Signal ++++++++++++
//++++++++++++++++++++++++++++++++
var order_status="None"
BuySignal=
       crossunder(rsi_c,ovb)
       and
       close<hl2
       and
       rsi_hl2>ovb
       and
       order_status=="None"
CloseBuy=
       order_status[1]=="Long"
       and
       (crossover(rsi_c,ovb)
       or
       crossunder(rsi_l,upper))
SellSignal=
       crossover(rsi_c,ovs)
       and
       close>hl2
       and
       rsi_hl2<ovs
       and
       order_status=="None"
CloseSell=
       order_status[1]=="Short"
       and
       (crossunder(rsi_c,ovs)
       or
       crossover(rsi_h,lower))
ExitSignal=
       CloseBuy
       or
       CloseSell
if BuySignal
    order_status:="Long"
if SellSignal
    order_status:="Short"
if ExitSignal
    order_status:="None"

//+++++++++++++++++++++++++++++++++++
//++++++++++++ Plot Line ++++++++++++
//+++++++++++++++++++++++++++++++++++
rsi_c_col=
       rsi_c>upper?color.new(color.blue,0):
       rsi_c<lower?color.new(color.blue,0):
       color.new(color.orange,0)
rsi_h_col=
       rsi_h>upper?color.new(color.green,0):
       rsi_h<lower?color.new(color.green,0):
       color.new(color.orange,0)
rsi_l_col=
       rsi_l>upper?color.new(color.yellow,0):
       rsi_l<lower?color.new(color.yellow,0):
       color.new(color.orange,0)
rsi_hl2_col=
       rsi_hl2>upper?color.new(color.olive,0):
       rsi_hl2<lower?color.new(color.olive,0):
       color.new(color.orange,0)
plot(rsi_c,title="RSI Close",color=rsi_c_col,linewidth=2)
plot(rsi_h,title="RSI High",color=rsi_h_col,linewidth=1)
plot(rsi_l,title="RSI Low",color=rsi_l_col,linewidth=1)
plot(rsi_hl2,title="RSI HL2",color=rsi_hl2_col,linewidth=1)
upper_line=hline(upper,title="Upper",color=color.new(color.black,100))
lower_line=hline(lower,title="Lower",color=color.new(color.black,100))
fill(upper_line,lower_line,title="Mid Channel",color=color.silver)
ovb_line=hline(ovb,title="Overbought",color=color.new(color.silver,0),linestyle=hline.style_solid,linewidth=2)
ovs_line=hline(ovs,title="Oversold",color=color.new(color.silver,0),linestyle=hline.style_solid,linewidth=2)

//++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++ Plot Analyzing Signals ++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++
//Color
buy_col=
       BuySignal?color.new(color.blue,70):na
sell_col=
       SellSignal?color.new(color.red,70):na
close_buy_col=
       CloseBuy and order_status[1]=="Long"?color.new(color.yellow,70):na
close_sell_col=
       CloseSell and order_status[1]=="Short"?color.new(color.yellow,70):na
//Background
bgcolor(close_buy_col, title='Close Buy', offset=0)
bgcolor(close_sell_col, title='Close Sell', offset=0)
bgcolor(sell_col, title='Sell', offset=0)
bgcolor(buy_col, title='Buy', offset=0)
//++++++++++++++++++++++++++++++++++
//++++++++++++ Backtest ++++++++++++
//++++++++++++++++++++++++++++++++++
strategy.entry("Long",strategy.long,when=BuySignal)
strategy.close("Long",when=CloseBuy)
strategy.entry("Short",strategy.short,when=SellSignal)
strategy.close("Short",when=CloseSell)
//EOF