Se trata de una estrategia multifactorial a largo plazo que combina indicadores de media móvil, RSI y ATR para identificar condiciones de mercado subvaloradas y generar señales de compra.
Cuando el promedio móvil rápido cruza por encima del promedio móvil lento, formando una señal de cruz dorada, mientras que el indicador RSI está por debajo del área de sobrecompra, el mercado se considera infravalorado y se genera una señal de compra.
Específicamente, la estrategia utiliza promedios móviles de 10 días y 50 días para formar señales comerciales. Una señal de compra se genera cuando el MA de 10 días cruza por encima del MA de 50 días. Al mismo tiempo, el RSI (14) debe estar por debajo del área de sobrecompra de 70 para evitar comprar en puntos altos.
Después de entrar en el mercado, el stop loss y el take profit se fijan en función del tamaño de ATR (14).
Se trata de una estrategia multifactorial a largo plazo que combina múltiples indicadores para juzgar las condiciones del mercado, lo que puede evitar efectivamente las pérdidas causadas por las falsas rupturas.
Como estrategia de tenencia a largo plazo, la estrategia también tiene algunos riesgos a tener en cuenta.
La estrategia se puede optimizar en los siguientes aspectos:
/*backtest start: 2023-01-16 00:00:00 end: 2024-01-22 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Long Only Multi-Indicator Strategy", shorttitle="LOMIS", overlay=true) // Inputs lengthMAFast = input(10, title="Fast MA Length") lengthMASlow = input(50, title="Slow MA Length") rsiLength = input(14, title="RSI Length") rsiOverbought = input(70, title="RSI Overbought Level") rsiOversold = input(30, title="RSI Oversold Level") atrLength = input(14, title="ATR Length") riskMultiplier = input(1.5, title="Risk Multiplier for SL and TP") // Moving averages maFast = sma(close, lengthMAFast) maSlow = sma(close, lengthMASlow) // RSI rsi = rsi(close, rsiLength) // ATR atr = atr(atrLength) // Long condition longCondition = crossover(maFast, maSlow) and rsi < rsiOverbought // Entering long trades if (longCondition) strategy.entry("Long", strategy.long) slLong = close - atr * riskMultiplier tpLong = close + atr * riskMultiplier * 2 strategy.exit("SL Long", "Long", stop=slLong) strategy.exit("TP Long", "Long", limit=tpLong) // Plotting plot(maFast, color=color.red) plot(maSlow, color=color.blue) hline(rsiOverbought, "Overbought", color=color.red) hline(rsiOversold, "Oversold", color=color.blue)