Strategi ini adalah sistem perdagangan intraday yang menggabungkan Bollinger Bands dan level retracement Fibonacci. Strategi ini mengidentifikasi kondisi overbought dan oversold menggunakan Bollinger Bands sambil memanfaatkan level retracement Fibonacci untuk mengkonfirmasi zona support dan resistance potensial, sehingga menangkap peluang trading dalam fluktuasi pasar. Strategi ini menggunakan Bollinger Bands berdasarkan jendela 20 periode dan tiga level Fibonacci utama: 0.236, 0.382, dan 0.618.
Logika inti dari strategi ini didasarkan pada elemen kunci berikut: 1. Menggunakan Bollinger Bands (2 standar deviasi) untuk mengidentifikasi zona harga overbought dan oversold 2. Menghitung tingkat retracement Fibonacci berdasarkan harga tertinggi dan terendah dari 20 periode terakhir 3. Membuat sinyal beli ketika harga pecah di bawah Bollinger Band bawah dan tetap di atas level dukungan Fibonacci 0,236 atau 0,382 4. Membuat sinyal jual ketika harga menembus atas Bollinger Band atas dan tetap di bawah level resistance Fibonacci 0,618. 5. Menggunakan titik stop loss dan take profit tetap untuk mengendalikan risiko dan mengamankan keuntungan
Ini adalah sistem perdagangan lengkap yang menggabungkan alat analisis teknis klasik, menyediakan para pedagang dengan kerangka kerja perdagangan sistematis melalui sinergi Bollinger Bands dan retracement Fibonacci. Meskipun memiliki keterbatasan tertentu, strategi ini dapat berkinerja baik dalam perdagangan intraday melalui optimasi parameter dan manajemen risiko yang tepat. Kuncinya adalah melakukan penyesuaian dan optimasi yang sesuai berdasarkan instrumen perdagangan tertentu dan kondisi pasar.
/*backtest start: 2025-01-02 00:00:00 end: 2025-01-09 00:00:00 period: 10m basePeriod: 10m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("Bollinger Bands and Fibonacci Intraday Strategy", overlay=true) // Bollinger Bands settings length = input.int(20, title="Bollinger Band Length") src = close mult = input.float(2.0, title="Bollinger Band Multiplier") basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // Fibonacci retracement levels fibRetrace1 = input.float(0.236, title="Fibonacci Level 0.236") fibRetrace2 = input.float(0.382, title="Fibonacci Level 0.382") fibRetrace3 = input.float(0.618, title="Fibonacci Level 0.618") // Define the Fibonacci levels based on recent high and low var float fibLow = na var float fibHigh = na if (bar_index == 0 or ta.highest(high, 20) != fibHigh or ta.lowest(low, 20) != fibLow) fibHigh := ta.highest(high, 20) fibLow := ta.lowest(low, 20) fibLevel1 = fibLow + (fibHigh - fibLow) * fibRetrace1 fibLevel2 = fibLow + (fibHigh - fibLow) * fibRetrace2 fibLevel3 = fibLow + (fibHigh - fibLow) * fibRetrace3 // Plot Fibonacci levels on the chart plot(fibLevel1, title="Fib 0.236", color=color.blue, linewidth=1) plot(fibLevel2, title="Fib 0.382", color=color.green, linewidth=1) plot(fibLevel3, title="Fib 0.618", color=color.red, linewidth=1) // Buy and Sell conditions buyCondition = close < lower and close > fibLevel1 sellCondition = close > upper and close < fibLevel3 // Plot Buy and Sell signals plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Execute strategy if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.entry("Sell", strategy.short) // Exit strategy with stop loss and take profit stopLoss = input.float(50, title="Stop Loss (pips)", minval=1) takeProfit = input.float(100, title="Take Profit (pips)", minval=1) strategy.exit("Exit Buy", "Buy", stop=close - stopLoss * syminfo.mintick, limit=close + takeProfit * syminfo.mintick) strategy.exit("Exit Sell", "Sell", stop=close + stopLoss * syminfo.mintick, limit=close - takeProfit * syminfo.mintick)