Esta estrategia calcula los promedios móviles SMA de múltiples marcos de tiempo y toma el valor promedio para construir el indicador de promedio móvil.
Al promediar las SMA de múltiples marcos de tiempo, esta estrategia puede suavizar efectivamente la curva y filtrar las fallas.
Estos riesgos pueden reducirse acortando adecuadamente algunos períodos de media móvil y añadiendo otros indicadores de confirmación.
La idea general de esta estrategia es clara. Al integrar los promedios móviles de múltiples marcos de tiempo, puede identificar efectivamente las tendencias y es una estrategia estable y práctica. Sin embargo, también debemos prestar atención a sus riesgos de retraso y falsas señales. A través de la optimización adicional de la configuración de parámetros, la adición de indicadores de confirmación, etc., podemos mejorar continuamente esta estrategia para convertirla en una poderosa herramienta de negociación cuantitativa.
/*backtest start: 2023-11-20 00:00:00 end: 2023-11-27 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("STRATEGY AVERAGE MULTI_SMA", overlay=true) sma1 = sma(close,input(title="SMA 1", defval=8)) sma2 = sma(close,input(title="SMA 2", defval=21)) sma3 = sma(close,input(title="SMA 3", defval=50)) sma4 = sma(close,input(title="SMA 4", defval=100)) sma5 = sma(close,input(title="SMA 5", defval=200)) mediaSMA= (sma1+sma2+sma3+sma4+sma5)/5 //color mediaSMA MediaUP = mediaSMA>mediaSMA[1] colorUP = (MediaUP ? #3CFF35 : na) MediaDOWN = mediaSMA<mediaSMA[1] colorDOWN =(MediaDOWN ? #FF0F03 : na) colorN =(not MediaUP and not MediaDOWN and mediaSMA==mediaSMA[1] ? white : na ) plot(mediaSMA,title="Avarege MULTI_SMA UP", color=colorUP, style=circles, linewidth=2, transp=0) plot(mediaSMA,title="Avarege MULTI_SMA DOWN", color=colorDOWN, style=circles, linewidth=2, transp=0) plot(mediaSMA,title="Avarege MULTI_SMA UP NEUTRAL", color=colorN, style=circles, linewidth=2, transp=0) //plot(sma1,color=blue,linewidth=1, style=line,transp=0,title="SMA 1") //plot(sma2,color=yellow,linewidth=1, style=line,transp=0,title="SMA 2") //plot(sma3,color=green,linewidth=1, style=line,transp=0,title="SMA 3") //plot(sma4,color=purple,linewidth=1, style=line,transp=0,title="SMA 4") //plot(sma5,color=red,linewidth=1, style=line,transp=0,title="SMA 5") // Strategy //BUY comprar=close>mediaSMA and mediaSMA>mediaSMA[1] fechar=close<mediaSMA and mediaSMA<mediaSMA[1] strategy.entry("BUY",strategy.long,when=comprar) strategy.entry("SELL",strategy.short, when=fechar) //SELL vender=close<mediaSMA and mediaSMA<mediaSMA[1] fechar2=close>mediaSMA and mediaSMA>mediaSMA[1] strategy.entry("SELL",strategy.short, when=vender) strategy.entry("BUY", strategy.long,when=fechar2)