Strategi ini membina saluran SuperTrend berdasarkan indikator Average True Range (ATR) untuk menjana isyarat beli dan jual apabila harga menembusi saluran.
Band atas dan bawah saluran SuperTrend dikira sebagai:
Band Atas = (Harga Tertinggi + Harga Terendah) / 2 + ATR(n) * Faktor Band bawah = (Harga Tertinggi + Harga Terendah) / 2 - ATR(n) * Faktor
Di mana ATR(n) adalah Julat Benar Purata n-periode dan Faktor adalah parameter yang boleh diselaraskan, lalai kepada 3.
Sinyal bullish dihasilkan apabila harga penutupan melintasi band atas. Sinyal bearish dihasilkan apabila harga penutupan melintasi band bawah. Strategi menentukan entri dan keluar berdasarkan isyarat ini.
Kaedah Penyelesaian Risiko:
Strategi ini menggunakan saluran SuperTrend untuk pengesanan trend dan pengurusan stop loss. Pertandingan antara tempoh ATR dan parameter faktor adalah penting. Langkah seterusnya adalah untuk mengoptimumkan lagi strategi melalui penyesuaian parameter, penapisan isyarat dan lain-lain, menjadikannya dapat disesuaikan dengan persekitaran pasaran yang lebih kompleks.
/*backtest start: 2023-01-11 00:00:00 end: 2024-01-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Supertrend Backtest", shorttitle="STBT", overlay=true) // Input for ATR Length atrLength = input.int(10, title="ATR Length", minval=1) atrFactor = input.float(3.0, title="Factor", minval=0.01, step=0.01) // Calculate SuperTrend [supertrend, direction] = ta.supertrend(atrFactor, atrLength) supertrend := barstate.isfirst ? na : supertrend // Define entry and exit conditions longCondition = ta.crossover(close, supertrend) shortCondition = ta.crossunder(close, supertrend) // Plot the SuperTrend plot(supertrend, color=color.new(color.blue, 0), title="SuperTrend") // Plot Buy and Sell signals plotshape(series=longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal") plotshape(series=shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal") // Strategy Entry and Exit strategy.entry("Long", strategy.long, when=longCondition) strategy.entry("Short", strategy.short, when=shortCondition)