Strategi ini adalah strategi perdagangan berbasis Bollinger Bands. Ini menggunakan Bollinger Bands untuk menghasilkan sinyal beli dan jual dan secara dinamis menetapkan stop loss dan take profit level. Sinyal beli dihasilkan ketika harga melintasi band bawah, dan sinyal jual dihasilkan ketika harga melintasi band atas.
/*backtest start: 2024-04-01 00:00:00 end: 2024-04-30 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands Strategy", overlay=true) // Bollinger Bands settings length = 20 src = close mult = 2.0 // Calculate Bollinger Bands basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // Plot Bollinger Bands plot(basis, color=color.blue, title="Middle Band") plot(upper, color=color.red, title="Upper Band") plot(lower, color=color.green, title="Lower Band") // Trade logic // Buy when the price crosses below the lower Bollinger Band buySignal = ta.crossover(lower, src) // Sell when the price crosses above the upper Bollinger Band sellSignal = ta.crossover(src, upper) // Define stop loss and take profit levels var float stopLoss = na var float takeProfit = na // Calculate stop loss and take profit levels if (buySignal) stopLoss := ta.lowest(low, length) takeProfit := na if (sellSignal) stopLoss := ta.highest(high, length) takeProfit := na // Update take profit on new signals if (buySignal) takeProfit := na if (sellSignal) takeProfit := na // Execute trades if (buySignal) strategy.entry("Buy", strategy.long, stop=stopLoss, limit=takeProfit) if (sellSignal) strategy.entry("Sell", strategy.short, stop=stopLoss, limit=takeProfit) // Plot signals on chart plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy", title="Buy Signal") plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell", title="Sell Signal") // Alert conditions alertcondition(buySignal, title="Buy Alert", message="Buy Signal detected") alertcondition(sellSignal, title="Sell Alert", message="Sell Signal detected")