Esta estrategia genera señales de compra y venta usando el indicador Laguerre RSI y filtra las señales usando el indicador ADX. Cuando el Laguerre RSI cruza por encima o por debajo de los niveles de compra y venta predefinidos, y el ADX está por encima de un umbral establecido, la estrategia produce señales de compra o venta.
El RSI de Laguerre es un indicador de impulso utilizado para medir la velocidad y fuerza de los cambios de precios. Se basa en el filtro de Laguerre y es más sensible a los cambios de precios en comparación con el RSI tradicional.
El indicador ADX mide la fuerza de una tendencia de precios, con valores más altos que indican una tendencia más fuerte. La estrategia establece un umbral ADX para entrar en operaciones solo cuando la fuerza de la tendencia es suficiente y para permanecer al margen cuando la tendencia no es clara. Esto ayuda a mejorar la confiabilidad de las señales y evitar operaciones frecuentes.
La estrategia utiliza cruces del RSI de Laguerre para desencadenar señales de compra y venta. Entra en una posición larga cuando el indicador cruza por encima del nivel de compra y una posición corta cuando cruza por debajo del nivel de venta. Al mismo tiempo, el ADX debe estar por encima del umbral preestablecido para confirmar la fuerza de la tendencia. Este diseño de doble condición tiene como objetivo capturar oportunidades comerciales en tendencias fuertes.
La estrategia de trading de Laguerre RSI con ADX filtrado es un enfoque de seguimiento de tendencias. Utiliza un indicador rápido para capturar los cambios de precios al tiempo que confirma la fuerza de la tendencia con un indicador lento. Esta combinación permite la negociación oportuna cuando la tendencia es clara mientras se mantiene al margen cuando la tendencia es incierta. Las ventajas de la estrategia se encuentran en su simplicidad y amplia aplicabilidad, pero también tiene problemas como el comercio frecuente y el control de riesgos insuficiente.
/*backtest start: 2023-05-11 00:00:00 end: 2024-05-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Laguerre RSI with Buy/Sell Signals and ADX Filter', shorttitle='LaRSI_ADX Signals', overlay=false) // Kullanıcı girdileri src = input(title='Source', defval=close) alpha = input.float(title='Alpha', minval=0, maxval=1, step=0.1, defval=0.2) buyLevel = input(20, title='Buy Level') sellLevel = input(80, title='Sell Level') adxLength = input(14, title='ADX Length') adxSmoothing = input(14, title='ADX Smoothing') adxLevel = input(20, title='ADX Level') // adxLevel tanımlamasını ekledik // ADX hesaplaması [diPlus, diMinus, adx] = ta.dmi(adxLength, adxSmoothing) // Laguerre RSI hesaplamaları gamma = 1 - alpha L0 = 0.0 L0 := (1 - gamma) * src + gamma * nz(L0[1]) L1 = 0.0 L1 := -gamma * L0 + nz(L0[1]) + gamma * nz(L1[1]) L2 = 0.0 L2 := -gamma * L1 + nz(L1[1]) + gamma * nz(L2[1]) L3 = 0.0 L3 := -gamma * L2 + nz(L2[1]) + gamma * nz(L3[1]) cu = (L0 > L1 ? L0 - L1 : 0) + (L1 > L2 ? L1 - L2 : 0) + (L2 > L3 ? L2 - L3 : 0) cd = (L0 < L1 ? L1 - L0 : 0) + (L1 < L2 ? L2 - L1 : 0) + (L2 < L3 ? L3 - L2 : 0) temp = cu + cd == 0 ? -1 : cu + cd LaRSI = temp == -1 ? 0 : cu / temp // Alım ve satım sinyalleri longCondition = ta.crossover(100 * LaRSI, buyLevel) and adx > adxLevel shortCondition = ta.crossunder(100 * LaRSI, sellLevel) and adx > adxLevel // Strateji giriş ve çıkışları strategy.entry('Long', strategy.long, when=longCondition) strategy.entry('Short', strategy.short, when=shortCondition) // Göstergeleri çizme plot(100 * LaRSI, title='LaRSI', linewidth=2, color=color.new(color.blue, 0)) hline(buyLevel, title='Buy Level', color=color.new(color.green, 0), linestyle=hline.style_dotted) hline(sellLevel, title='Sell Level', color=color.new(color.red, 0), linestyle=hline.style_dotted) plot(adx, title='ADX', color=color.new(color.orange, 0))