Strategi ini adalah sistem trend momentum berdasarkan purata bergerak berganda, menggabungkan isyarat silang dari purata bergerak cepat dan perlahan dengan garis penapis untuk mengoptimumkan masa kemasukan, mencapai hasil perdagangan yang stabil melalui pengurusan wang yang betul dan kawalan risiko.
Strategi ini menggunakan purata bergerak mudah (SMA) 11 tempoh dan 31 tempoh sebagai sistem isyarat utama, dengan purata bergerak 5 tempoh sebagai penapis. Isyarat masuk panjang dihasilkan apabila garis pantas (SMA11) melintasi di atas garis perlahan (SMA31) dan harga di atas purata penapis. Posisi ditutup apabila garis pantas melintasi di bawah garis perlahan. Strategi melaksanakan pengurusan risiko melalui ukuran kedudukan tetap.
Strategi ini membina trend yang agak kukuh mengikuti sistem melalui pelbagai purata bergerak. Walaupun ia mempunyai beberapa batasan yang melekat, kestabilan dan keuntungan dapat ditingkatkan lagi melalui pengoptimuman dan penambahbaikan yang sesuai.
/*backtest start: 2024-10-01 00:00:00 end: 2024-10-31 23:59:59 period: 3h basePeriod: 3h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Nifty 30m SMA Crossover Long', overlay=true) start = timestamp(2020, 1, 1, 0, 0) end = timestamp(2024, 12, 31, 0, 0) SlowSma = ta.sma(close, 31) FastSma = ta.sma(close, 11) FilterSma = ta.sma(close, 5) plot(SlowSma, title='Sma 31', color=color.new(color.green, 0)) plot(FastSma, title='Sma 11', color=color.new(color.red, 0)) plot(FilterSma, title='Filter Sma 5', color=color.new(color.black, 0)) // strategy LongEntry = FastSma > SlowSma and close > FilterSma LongExit = FastSma < SlowSma MyQty = 10000000 / close // // Plot signals to chart // plotshape(not LongExit and strategy.position_size > 0 and bIndicator, title='Hold', location=location.abovebar, color=color.new(color.blue, 0), style=shape.square, text='Hold', textcolor=color.new(color.blue, 0)) // plotshape(LongExit and bIndicator and strategy.position_size > 0, title='Exit', location=location.belowbar, color=color.new(color.red, 0), style=shape.triangledown, text='Sell', textcolor=color.new(color.red, 0)) // plotshape(LongEntry and strategy.position_size == 0 and bIndicator, '', shape.arrowup, location.abovebar, color.new(color.green, 0), text='Buy', textcolor=color.new(color.green, 0)) // plotshape(not LongEntry and strategy.position_size == 0 and bIndicator, '', shape.circle, location.belowbar, color.new(color.yellow, 0), text='Wait', textcolor=color.new(color.black, 0)) if time >= start and time < end strategy.entry('Enter Long', strategy.long, qty=1, when=LongEntry) strategy.close('Enter Long', when=LongExit)