Estrategia avanzada de negociación con el indicador RSI


Fecha de creación: 2024-02-06 11:47:59 Última modificación: 2024-02-06 11:47:59
Copiar: 7 Número de Visitas: 788
1
Seguir
1617
Seguidores

Estrategia avanzada de negociación con el indicador RSI

Descripción general

S&P500 Advanced RSI Indicator Trading Strategy es una estrategia de seguimiento de tendencias a medio y largo plazo para el índice S&P500. La estrategia combina varios filtros para operar sobre la base de las señales de sobreventa y sobrecompra del RSI para controlar el riesgo y reducir las falsas señales.

Principio de estrategia

El indicador central de la estrategia es el RSI, que determina el precio de sobreventa y sobreventa en función de los valores del RSI de 2 ciclos. Se puede hacer un alza cuando el RSI está por debajo de la línea de sobreventa establecida, y una rebaja cuando el RSI está por encima de la línea de sobreventa establecida. Además, la estrategia también tiene una serie de filtros auxiliares para controlar el riesgo:

  1. Filtro de RSI semanal: requiere que el RSI semanal esté por debajo de la línea de ajuste para evitar excesos demasiado radicales en un mercado alcista

  2. Filtrador MA: requiere que el precio sea más alto que el MA del período especificado, asegurando que se compre solo después de que la tendencia comience

  3. Filtrador de RSI secundario: requiere que el RSI secundario también esté por debajo de la línea de venta excesiva para evitar falsas rupturas

  4. ATR rompe el filtro: evita la caída rápida de los precios y sigue haciendo más para controlar el riesgo

La combinación de estos filtros múltiples permite identificar con eficacia los puntos de inflexión de la línea media del precio, controlar la frecuencia de las transacciones y reducir el riesgo.

Análisis de las ventajas

Las estrategias de trading con el RSI superior del S&P 500 tienen las siguientes ventajas:

  1. Combinación de varios indicadores auxiliares de filtración, reducción de señales falsas, mayor fiabilidad

  2. Control de riesgos a través de filtros de ruptura de ATR para evitar la caída de precios

  3. El filtro RSI semanal evita la compra en el mercado alcista y evita el exceso de volatilidad

  4. Los filtros MA exigen que los precios sean superiores a la línea media de tendencia para asegurar la entrada después de que la tendencia comience

  5. El filtro RSI secundario evita que el indicador RSI produzca más falsas rupturas

  6. Aplicable para mantener posiciones medianas y largas, no se comercializa con demasiada frecuencia

Análisis de riesgos

Los principales riesgos de esta estrategia provienen de los siguientes aspectos:

  1. Con el RSI como indicador principal, hay un cierto retraso.

  2. Las condiciones de filtración son demasiado estrictas y pueden perder algunas oportunidades

  3. En un escenario de extrema magnitud, el límite de pérdidas podría ser superado.

  4. La capacidad de juicio de situaciones complejas basadas en indicadores y filtros RSI simples es débil

Los métodos de mitigación correspondientes son los siguientes:

  1. Ajuste adecuado de los parámetros para evitar oportunidades perdidas

  2. Aumentar el tamaño de las posiciones para compensar ciertas probabilidades de pérdida de ventas

  3. Relajación de las condiciones de filtración para aumentar la frecuencia de las transacciones

  4. Se puede considerar la combinación de más indicadores para evaluar situaciones complejas

Dirección de optimización

La estrategia también puede ser optimizada en las siguientes direcciones:

  1. Prueba de ajuste de los parámetros del RSI para encontrar la línea óptima de sobrecompra sobreventa

  2. Prueba de los parámetros de ciclo de la media de MA para determinar el parámetro óptimo

  3. Prueba de ajuste de los parámetros ATR para optimizar el precio para romper los juicios filtrados

  4. Intentar mejorar la capacidad de discernimiento en situaciones complejas, junto con otros indicadores.

  5. Optimización de los parámetros del RSI semanal para determinar el parámetro óptimo para el RSI semanal

  6. Optimización de los parámetros del RSI secundario para encontrar el mejor ciclo del RSI secundario y la línea de sobrecompra sobreventa

Resumir

La estrategia de comercio de indicadores RSI avanzados de S&P 500 determina el punto de inflexión de la tendencia de la línea media a través de los indicadores RSI y establece una variedad de condiciones de control de filtro de riesgo. La estrategia aprovecha al máximo la utilidad del indicador RSI para bloquear eficazmente la tendencia de la línea media y evitar la entrada en el mercado con demasiada frecuencia.

Código Fuente de la Estrategia
/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// Lets connect on LinkedIn (https://www.linkedin.com/in/lets-grow-with-quality/)
// Optimized for S&P500 Daily. Use it as a buy confirmation on certain levels (Springs, Pullbacks, ...) or let it run 
// without "Weekly RSI Filter" and pyramiding for 4 x more trades.
// This strategy is optimized for minimum drawdowns and has several filters on board for use on different securities

strategy("S&P500 RSI2 Studio", overlay=true)

baseLength = input(2, title="Base RSI Length")
overSold = input(10, title="Overbought Level")
overBought = input(90, title="Oversold Level")
overBoughtExit = input(70, title="Overbought Level Exit")
enableWeeklyRsiFilter = input(true, title="Enable Weekly RSI Filter")
weeklyOverSold = input(30, title="Weekly Oversold Level")
weeklyOverBought = input(70, title="Weekly OverOverbought Level")
weeklyRsiLength = input(2, title="weeklyRsiLength")

enableWmaFilter = input(false, title="Enable MA Filter")
wmaLength = input(100, title="WMA Length")

exitRsiLength = input(4, title="Exit RSI Length")
dailyRsiLength = input(4, title="Daily RSI Length")

enable2ndRSIFilter = input(false, title="Enable 2nd RSI Filter")
SecRSIFilterLengh = input(14, title="2nd RSI Filter Length")
SecRSIFilterOverSold = input(20, title="2nd RSI Filter Oversold Level")

enableAtrFilter = input(true, title="Enable ATR Filter")
numAtrDays = input(14, title="Number of Days ATR Average")
atrFilterFactor = input(2, title="ATR Filter Factor")

weeklyRsi = request.security(syminfo.tickerid, "W", ta.wma(ta.rsi(close, weeklyRsiLength), 1))
exitRsi = request.security(syminfo.tickerid, "D", ta.wma(ta.rsi(close, exitRsiLength), 2))
dailyRsi = request.security(syminfo.tickerid, "D", ta.wma(ta.rsi(close, dailyRsiLength), 2))
price = close

priceDropCondition = ta.atr(1) >= ta.atr(numAtrDays) * atrFilterFactor
preventEarlyEntry = not priceDropCondition

vrsi = ta.wma(ta.rsi(price, baseLength), 2)
wma = ta.wma(price, wmaLength)


buyCond1 = ta.crossunder(vrsi, overSold)
buyCond2 = enableWeeklyRsiFilter ? weeklyRsi < weeklyOverSold : true
buyCond3 = enable2ndRSIFilter ? ta.wma(ta.rsi(close, SecRSIFilterLengh),2) < SecRSIFilterOverSold : true
buyCond4 = enableWmaFilter ? price > ta.wma(close, wmaLength) : true
buyCond5 = enableAtrFilter ? preventEarlyEntry : true
 
buy = buyCond1 and buyCond2 and buyCond3 and buyCond4 and buyCond5

if (not na(vrsi))
    if buy 
        strategy.entry("RSI2 Studio", strategy.long, comment="Long")

if (exitRsi > overBoughtExit)
    strategy.close("RSI2 Studio", comment="Close Long")