
Strategi penembusan MACD BB adalah strategi perdagangan yang didasarkan pada indikator MACD dan indikator Bollinger Bands. Strategi ini menggunakan indikator MACD untuk menangkap tren jangka pendek di pasar, sementara indikator Bollinger Bands digunakan untuk menentukan area overbought dan oversold di pasar.
Prinsip-prinsip dari strategi penembusan MACD BB adalah sebagai berikut:
Strategi penembusan gelombang MACD BB dilakukan pada tahap awal pembentukan tren dengan menggabungkan indikator MACD dan indikator Bollinger Bands. Keunggulan strategi adalah kemampuan untuk menangkap tren jangka pendek dan mempertimbangkan volatilitas harga, tetapi juga menghadapi risiko amplitudo, tantangan perdagangan yang sering dan pengoptimalan parameter.
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//AK MACD BB
strategy("AK MACD BB strategy", overlay = true)
// Inputs for TP and SL
tp_percent = input.float(1.0, title="Take Profit %") / 100
sl_percent = input.float(1.0, title="Stop Loss %") / 100
length = input.int(10, minval=1, title="BB Periods")
dev = input.float(1, minval=0.0001, title="Deviations")
//MACD
fastLength = input.int(12, minval=1, title="fastLength")
slowLength=input.int(26,minval=1)
signalLength=input.int(9,minval=1)
fastMA = ta.ema(close, fastLength)
slowMA = ta.ema(close, slowLength)
macd = fastMA - slowMA
//BollingerBands
Std = ta.stdev(macd, length)
Upper = (Std * dev + (ta.sma(macd, length)))
Lower = ((ta.sma(macd, length)) - (Std * dev))
Band1 = plot(Upper, color=color.gray, style=plot.style_line, linewidth=2,title="Upper Band")
Band2 = plot(Lower, color=color.gray, style=plot.style_line, linewidth=2,title="lower Band")
fill(Band1, Band2, color=color.blue, transp=75,title="Fill")
mc = macd >= Upper ? color.lime:color.red
// Indicator
plot(macd, color=mc, style =plot.style_circles,linewidth = 3, title="macd")
zeroline = 0
plot(zeroline,color= color.orange,linewidth= 2,title="Zeroline")
//buy
barcolor(macd >Upper ? color.yellow:na)
//short
barcolor(macd <Lower ? color.aqua:na)
if macd > Upper
strategy.entry("Long", strategy.long)
// strategy.exit("Long TP/SL", "Long", limit=close * (1 + tp_percent), stop=close * (1 - sl_percent), comment = "Long Exit" )
if macd < Lower
strategy.entry("Short", strategy.short)
// strategy.exit("Short TP/SL", "Short", limit=close * (1 - tp_percent), stop=close * (1 + sl_percent), comment = "Short Exit")