La estrategia de cruce de promedios móviles simples se basa en el cruce de dos promedios móviles, un promedio móvil más rápido (MA rápido) y un promedio móvil más lento (MA lento).
La estrategia utiliza dos promedios móviles. Uno es un MA rápido a corto plazo que responde rápidamente a los cambios de precios. El otro es un MA lento a largo plazo que filtra las fluctuaciones a corto plazo y refleja mejor las tendencias a largo plazo. Cuando el MA rápido cruza por encima del MA lento, indica una tendencia al alza a corto plazo y se considera una señal de compra cruzada dorada. Cuando el MA rápido cruza por debajo del MA lento, indica una tendencia a la baja a corto plazo y se considera una señal de venta cruzada de muerte.
Los riesgos se pueden controlar estableciendo un stop loss.
En resumen, el Simple Moving Average Crossover es una estrategia de seguimiento de tendencias simple y práctica. Identifica los cambios de tendencia utilizando las propiedades del indicador de los promedios móviles. Las principales ventajas son la fácil implementación, la comprensibilidad y las reducciones relativamente pequeñas. Las principales desventajas son las posibles señales falsas, la naturaleza rezagada. La estrategia se puede mejorar aún más a través de la optimización de parámetros, la configuración de stop loss y la combinación con otros indicadores.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Simple Moving Average Crossover", overlay=true) // Input parameters fastLength = input(10, title="Fast MA Length") slowLength = input(30, title="Slow MA Length") stopLossPercent = input(1, title="Stop Loss Percentage") // Calculate moving averages fastMA = ta.sma(close, fastLength) slowMA = ta.sma(close, slowLength) // Buy condition: Fast MA crosses above Slow MA buyCondition = ta.crossover(fastMA, slowMA) // Sell condition: Fast MA crosses below Slow MA sellCondition = ta.crossunder(fastMA, slowMA) // Plot moving averages as lines plot(fastMA, color=color.blue, title="Fast MA", linewidth=2) plot(slowMA, color=color.red, title="Slow MA", linewidth=2) // Execute trades based on conditions if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.close("Buy") // Set stop loss level stopLossLevel = close * (1 - stopLossPercent / 100) strategy.exit("Sell", from_entry="Buy", loss=stopLossLevel)