Estrategia de reversión del RSI SAR parabólico

El autor:¿ Qué pasa?, Fecha: 2023-10-08 14:21:17
Las etiquetas:

Resumen general

La estrategia de inversión del SAR RSI parabólico genera señales comerciales basadas en los indicadores Parabolic Stop and Reverse y Relative Strength Index para identificar posibles inversiones de precios. Toma posiciones opuestas cuando el precio rompe las líneas de tendencia al alza o a la baja. Esto permite aprovechar las oportunidades de las inversiones de precios.

Estrategia lógica

La estrategia utiliza principalmente dos indicadores técnicos:

  1. Parabólico SAR: Traza una línea parabólica SAR como una línea de stop-loss dinámica. Cuando el precio rompe esta línea, la posición y la dirección de la línea de stop-loss se restablecen, generando señales de compra o venta.

  2. RSI: Refleja la velocidad y el cambio de los aumentos y caídas de precios durante un período de tiempo.

Específicamente, la estrategia primero establece el valor inicial, el paso y el valor máximo del SAR parabólico basado en la entrada del usuario.

  • Cuando el precio se rompe por encima de la línea SAR, se genera una señal de venta.
  • Cuando el precio se rompe por debajo de la línea SAR, se genera una señal de compra.

Mientras tanto, la estrategia también monitorea el RSI para determinar si se encuentra en la zona de sobrecompra / sobreventa. Las posiciones largas se cierran cuando el RSI entra en la zona de sobrecompra. Las posiciones cortas se cierran cuando el RSI entra en la zona de sobreventa.

Al combinar las señales de reversión SAR y las señales de filtro RSI, la estrategia puede hacer movimientos opuestos de manera oportuna cuando los precios se invierten para lograr comprar bajo vender alto.

Análisis de ventajas

Las principales ventajas de esta estrategia de seguimiento de la reversión son:

  1. Captura de la inversión de precios: utiliza las rupturas para generar señales de reversión y hacer movimientos opuestos cuando los precios se invierten.

  2. El valor de las pérdidas de suspensión de operaciones se calcula en función de los precios en tiempo real.

  3. Adaptabilidad - Los parámetros ajustables hacen que la estrategia sea adaptable a diferentes entornos de mercado.

  4. Filtro RSI - Filtra las fallas y evita los movimientos equivocados.

  5. Fácil de implementar - Utiliza indicadores simples con poco código, fácil de implementar y backtest.

Análisis de riesgos

Los riesgos incluyen:

  1. Riesgo de Whipsaw - Falso breakouts causa señales de parada y marcha atrás incorrectas, lo que lleva a pérdidas repetidas.

  2. Sobre-optimización - La optimización de los parámetros puede conducir a la sobreajuste y la falta de robustez.

  3. Ninguna base fundamental - Impulsado puramente por indicadores técnicos, ignora los fundamentos.

  4. Ignore los costos de transacción: el comercio frecuente aumenta los costos de transacción.

  5. Sujeto a las brechas de precios - Las brechas pueden desencadenar señales de parada y reversión incorrectas.

Oportunidades de mejora

La estrategia puede mejorarse en los siguientes aspectos:

  1. Combinar con otros indicadores - Confirmar señales con otros indicadores para evitar señales falsas.

  2. Ajuste de parámetros: prueba y optimización de parámetros para encontrar las combinaciones óptimas de parámetros.

  3. En el caso de los instrumentos financieros, el importe de las pérdidas derivadas de las operaciones de inversión se calculará en función de las condiciones del mercado.

  4. El valor de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés.

  5. Considere los factores fundamentales: agregue factores fundamentales para evitar el comercio en contra de las tendencias principales.

Conclusión

La estrategia de seguimiento de reversión genera señales utilizando SAR y RSI para capturar reversiones. Ajusta dinámicamente las paradas para capturar ganancias a corto plazo de las rupturas. Pero también está expuesto a riesgos de seguir el ruido. Optimizar los parámetros, mejorar la calidad de la decisión mejorará la estabilidad y la rentabilidad de la estrategia.


/*backtest
start: 2023-09-07 00:00:00
end: 2023-10-07 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
// strategy("SARSI",overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_type = strategy.commission.percent, commission_value = 0.0675, initial_capital = 10000, currency = currency.USD, calc_on_order_fills = true, calc_on_every_tick = true) 

//study("SARSI",overlay = true)

src     = input(close, title="Source")
len     = input(14, minval=1, title="Length")
rob     = input(title="RSI Overbought Level", defval=82, minval=1, maxval=100)
ros     = input(title="RSI Oversold Level", defval=21, minval=1, maxval=100)
start   = input(title="SAR Start", defval=0.007, minval=0.001, maxval=10)
inc     = input(title="SAR Increment", defval=0.017, minval=0.001, maxval=100)
max     = input(title="SAR Maximum", defval=0.24, minval=0.01, maxval=10)
asar    = sar(start,inc,max)
xrsi    = rsi(close,len)
date    = timestamp(2018, 8, 1, 00, 00)
up      = crossunder(asar,src)
dn      = crossover(asar,src)

//ob      = crossunder(xrsi,rob)
//os      = crossover(xrsi,ros)

strategy.entry("long", strategy.long, when=up and time>=date, comment="Long")
strategy.entry("short", strategy.short, when=dn and time>=date, comment="Short")

//strategy.close("long", when=ob)
//strategy.close("short", when=os)

alertcondition(up,  "Long",  "Long Msg")
alertcondition(dn, "Short", "Short Msg")

//uptrend=plotshape(up,"uptrend",shape.triangleup,color=#48A498,transp=0, size = size.tiny, location = location.belowbar,text="฿")
//downtrend=plotshape(dn,"downtrend",shape.triangledown,color=#E25655,transp=0, size = size.tiny, location = location.abovebar,text="$")
//plotshape(ob,"overbuy",shape.triangleup,color=#48A498,transp=0, size = size.small, location = location.belowbar,text="0฿")
//plotshape(os,"oversell",shape.triangledown,color=#E25655,transp=0, size = size.small, location = location.abovebar,text="0$")

plot(asar, style=cross, color=gray, transp=0, linewidth=1, title="SAR")

Más.