Esta estrategia utiliza promedios móviles dobles configurados en los gráficos diarios y horarios para determinar la dirección de la tendencia principal en el gráfico diario y entrar y salir de las operaciones en el gráfico horario. Va largo cuando el gráfico diario indica una tendencia al alza y el gráfico horario ve una cruz de oro, y cierra la posición cuando el gráfico diario muestra una tendencia al alza pero el gráfico horario ve una cruz de muerte. Esta configuración nos permite capturar oportunidades de corto a medio plazo evitando los impactos de las fluctuaciones del mercado a corto plazo.
Las principales ventajas de esta configuración de doble marco de tiempo son:
Los principales riesgos de esta estrategia son:
Estos riesgos pueden mitigarse ampliando los niveles de stop loss, optimizando los parámetros o agregando filtros.
Esta estrategia se puede optimizar aún más mediante:
Esta estrategia aprovecha un análisis de doble marco de tiempo para capturar oportunidades a corto y mediano plazo dentro de las principales tendencias. La configuración de doble EMA filtra el ruido. Esto proporciona una rentabilidad sólida al tiempo que gestiona eficazmente el riesgo.
/*backtest start: 2022-12-08 00:00:00 end: 2023-12-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Dual Time Frame Strategy", overlay=true) // Define Daily Time Frame Inputs lenShort = input.int(20, title="Short EMA Length (Daily)", minval=1) lenLong = input.int(50, title="Long EMA Length (Daily)", minval=1) // Calculate EMAs on Daily Time Frame emaShort_D = ta.ema(close, lenShort) emaLong_D = ta.ema(close, lenLong) // Define Hourly Time Frame Inputs lenShort_H = input.int(10, title="Short EMA Length (Hourly)", minval=1) lenLong_H = input.int(30, title="Long EMA Length (Hourly)", minval=1) // Calculate EMAs on Hourly Time Frame emaShort_H = ta.ema(close, lenShort_H) emaLong_H = ta.ema(close, lenLong_H) // Daily Time Frame Condition dailyUpTrend = emaShort_D > emaLong_D // Hourly Time Frame Condition hourlyBuy = ta.crossover(emaShort_H, emaLong_H) hourlySell = ta.crossunder(emaShort_H, emaLong_H) // Strategy Entry and Exit Conditions if (dailyUpTrend and hourlyBuy) strategy.entry("Buy", strategy.long) if (dailyUpTrend and hourlySell) strategy.close("Buy") // Plot EMAs for Daily and Hourly Time Frames plot(emaShort_D, color=color.blue, title="Short EMA (Daily)") plot(emaLong_D, color=color.red, title="Long EMA (Daily)") plot(emaShort_H, color=color.green, title="Short EMA (Hourly)") plot(emaLong_H, color=color.orange, title="Long EMA (Hourly)")