Strategi ini menghitung rata-rata bergerak SMA dari beberapa kerangka waktu dan mengambil nilai rata-rata untuk membangun indikator rata-rata bergerak. Ini menghasilkan sinyal beli ketika harga naik di atas rata-rata bergerak dan sinyal jual ketika harga turun di bawah rata-rata bergerak.
Dengan rata-rata SMA dari beberapa kerangka waktu, strategi ini dapat secara efektif meluruskan kurva dan menyaring breakout palsu.
Risiko ini dapat dikurangi dengan memperpendek beberapa periode rata-rata bergerak dengan tepat dan menambahkan indikator lain untuk konfirmasi.
Ide keseluruhan dari strategi ini jelas. Dengan mengintegrasikan moving average dari beberapa timeframe, strategi ini dapat secara efektif mengidentifikasi tren dan merupakan strategi yang stabil dan praktis. Namun, kita juga perlu memperhatikan lag dan risiko sinyal palsu. Melalui pengoptimalan lebih lanjut pengaturan parameter, menambahkan indikator konfirmasi, dll, kita dapat terus meningkatkan strategi ini untuk menjadikannya alat perdagangan kuantitatif yang kuat.
/*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)