Esta estrategia es un sistema de seguimiento de tendencias que combina múltiples promedios móviles de período con el precio promedio ponderado por volumen (VWAP). La estrategia identifica la dirección de la tendencia a través del cruce de tres promedios móviles simples (SMA) - 9 períodos, 50 períodos y 200 períodos, mientras que utiliza VWAP como un indicador de confirmación de la fortaleza del precio, implementando un mecanismo de confirmación de señales comerciales multidimensionales.
La lógica central de la estrategia se basa en varios elementos clave:
Las condiciones de entrada largas requieren:
Las condiciones de entrada a corto plazo requieren:
Sugerencias para el control de riesgos:
Este es un sistema de negociación completo que combina múltiples promedios móviles de período y VWAP, proporcionando señales de negociación confiables a través de múltiples mecanismos de confirmación. Las fortalezas de la estrategia se encuentran en su lógica clara, facilidad de ejecución y buenas capacidades de control de riesgos. Aunque tiene ciertos riesgos relacionados con el retraso y la sensibilidad de los parámetros, estos pueden abordarse a través de las direcciones de optimización sugeridas para mejorar aún más la estabilidad y la adaptabilidad. La estrategia sirve como un marco de base sólido que los operadores pueden personalizar de acuerdo con su estilo de negociación y el entorno del mercado.
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-05 00:00:00 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("SMA Crossover Strategy with VWAP", overlay=true) // Input lengths for SMAs sma9Length = 9 sma50Length = 50 sma200Length = 200 // Calculate SMAs sma9 = ta.sma(close, sma9Length) // 9-period SMA sma50 = ta.sma(close, sma50Length) // 50-period SMA sma200 = ta.sma(close, sma200Length) // 200-period SMA // Calculate VWAP vwapValue = ta.vwap(close) // Long entry condition: SMA 9 crosses above SMA 50 and SMA 200 is less than SMA 50, and close is above VWAP longCondition = ta.crossover(sma9, sma50) and (sma200 < sma50) and (close > vwapValue) if (longCondition) strategy.entry("Long", strategy.long) // Exit condition for long: SMA 9 crosses below SMA 50 longExitCondition = ta.crossunder(sma9, sma50) if (longExitCondition) strategy.close("Long") // Short entry condition: SMA 9 crosses below SMA 50 and SMA 200 is greater than SMA 50, and close is below VWAP shortCondition = ta.crossunder(sma9, sma50) and (sma200 > sma50) and (close < vwapValue) if (shortCondition) strategy.entry("Short", strategy.short) // Exit condition for short: SMA 9 crosses above SMA 50 shortExitCondition = ta.crossover(sma9, sma50) if (shortExitCondition) strategy.close("Short") // Plotting the indicators on the chart plot(sma9, color=color.blue, title="SMA 9") plot(sma50, color=color.orange, title="SMA 50") plot(sma200, color=color.red, title="SMA 200") plot(vwapValue, color=color.green, title="VWAP")