Estrategia de seguimiento de la propagación del canal RSI


Fecha de creación: 2023-12-18 17:48:24 Última modificación: 2023-12-18 17:48:24
Copiar: 0 Número de Visitas: 680
1
Seguir
1621
Seguidores

Estrategia de seguimiento de la propagación del canal RSI

Descripción general

La estrategia de seguimiento de brechas en el canal RSI genera señales de negociación mediante el seguimiento de las fluctuaciones del indicador RSI dentro del canal de desvalorización, combinadas con brechas en el precio. La estrategia se dedica a capturar explosiones de compra y venta rápidas en el mercado de criptomonedas.

Principio de estrategia

  1. El RSI se suaviza con el promedio móvil de Hull, generando el indicador RSI después de la suavización. Incluye el RSI de cierre, el RSI de precio máximo, el RSI de precio mínimo y el RSI de precio medio.

  2. Configurar el rango de canal RSI en 55-45. Cuando el indicador RSI entra en el canal 55-45, indica que entra en la zona de oscilación.

  3. Cuando el indicador RSI de cierre de mercado retrocede desde la línea de salida del canal, y el precio de cierre está por debajo del precio medio, indica que el precio está bajo presión; mientras que el indicador RSI de precio medio sigue por encima del límite superior del canal, indica que el precio medio todavía tiene impulso de compra, de acuerdo con la lógica de seguimiento de la ruptura del precio medio, por lo tanto, genera una señal de compra.

  4. Cuando el precio de cierre RSI rebota desde el límite inferior de la canal, y el precio de cierre es superior al precio de la línea media, indica que el precio está soportado; y en este momento el indicador de RSI de la línea media está por debajo del límite inferior de la canal, lo que indica que el precio de la línea media está más presionado, de acuerdo con la lógica de seguimiento de la ruptura del precio de la línea media, por lo que genera una señal de venta.

  5. Los indicadores de RSI de precios más altos y más bajos se utilizan para identificar señales de negociación inactivas y rápidas.

Ventajas estratégicas

  1. El uso de la brecha de precios medianos para seguir la dirección de la fuerza de los precios medianos es compatible con el concepto de seguimiento de tendencias.

  2. El RSI oscila dentro del canal de desvalorización, lo que sugiere un ajuste, y el precio medio se utiliza para seguir la dirección de la fuerza del precio medio y evitar quedarse atrapado en los movimientos intermedios.

  3. Los indicadores RSI de precios máximos y mínimos se utilizan para identificar rápidamente las fallas en las señales de negociación, para detener rápidamente los pérdidas y controlar eficazmente las pérdidas.

Riesgo estratégico

  1. La configuración incorrecta del RSI puede causar una sensibilidad excesiva o una lentitud.

  2. El significado de la ruptura del precio promedio no siempre es confiable, y el precio promedio en sí mismo puede estar en crisis.

  3. El mercado de criptomonedas es muy volátil, y el establecimiento de una posición de stop loss demasiado suave puede causar pérdidas ampliadas.

La solución:

  • Optimizar el RSI para que sea moderadamente sensible a los cambios en el precio
  • La fiabilidad de la ruptura del precio promedio combinada con más indicadores
  • Apretamiento apropiado de la posición de pérdida para evitar pérdidas excesivas

Dirección de optimización de la estrategia

  1. La dirección de un avance en el precio promedio combinado con más indicadores

Se pueden introducir indicadores como las bandas de Brin para determinar si el precio medio está cerca de la vía ascendente o descendente, lo que mejora la precisión de la decisión sobre la dirección de la ruptura del precio medio.

  1. Introducción de un modelo de aprendizaje automático para ayudar a juzgar

El uso de modelos de aprendizaje profundo como LSTM para predecir el futuro de los precios medios ayuda a determinar si los precios medios pueden romper con éxito una dirección.

  1. Uso de la pérdida de adaptabilidad

Ajuste de la posición de pérdida en tiempo real según la volatilidad del mercado. Por ejemplo, cuando la volatilidad aumenta, se puede apretar adecuadamente la posición de pérdida; cuando la volatilidad disminuye, se puede relajar adecuadamente la posición de pérdida.

Resumir

La estrategia de seguimiento de la brecha de precios en el canal RSI genera señales de negociación mediante el seguimiento de la fluctuación del indicador RSI dentro del canal y la combinación de brechas de precios, y se dedica a capturar explosiones de compra y venta rápidas en el mercado de criptomonedas. La estrategia combina eficazmente los métodos de seguimiento de tendencias y reconocimiento de intervalos, y aún así se obtienen mejores operaciones cuando la brecha de precios se reduce.

Código Fuente de la Estrategia
/*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