
Strategi ini didasarkan pada desain indikator Bollinger Bands, yang melakukan shorting ketika harga menembus Bollinger Bands dan melakukan overlay ketika harga menembus Bollinger Bands, untuk mencapai perdagangan pelacakan cerdas.
Strategi ini menggunakan indikator berbasis garis tengah, garis atas, dan garis bawah di Brin Belt. Garis tengah adalah rata-rata bergerak dari harga penutupan n hari, garis atas adalah dua standar deviasi di atas garis tengah, dan garis bawah adalah dua standar deviasi di bawah garis tengah.
Secara khusus, strategi ini didasarkan pada dua indikator:
ta.crossover ((source, lower): harga close-out naik ke bawah, melakukan lebih
ta.crossunder{source, upper}: naik di bawah harga penutupan, melakukan shorting
Ketika kondisi posisi kosong dipicu, gunakan fungsi strategy.cancel () untuk membatalkan posisi saat ini.
Strategi ini memiliki beberapa keuntungan utama:
Strategi ini juga memiliki beberapa risiko:
Solusi yang sesuai:
Strategi ini dapat dioptimalkan lebih lanjut:
Strategi ini didasarkan pada desain indikator Brin-band, menggunakan harga untuk melakukan pelacakan secara otomatis. Strategi ini sederhana dan mudah dimengerti, sensitif terhadap volatilitas pasar, dan dapat dioptimalkan lebih lanjut melalui pengoptimalan parameter dan penghentian kerugian. Secara umum, strategi ini cocok untuk indeks saham atau pasar komoditas yang lebih berfluktuasi.
/*backtest
start: 2023-12-17 00:00:00
end: 2024-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands Strategy with alerts (incl. pending orders) via TradingConnector to Forex", overlay=true)
source = close
length = input.int(20, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
basis = ta.sma(source, length)
dev = mult * ta.stdev(source, length)
upper = basis + dev
lower = basis - dev
buyEntry = ta.crossover(source, lower)
sellEntry = ta.crossunder(source, upper)
if (ta.crossover(source, lower))
strategy.entry("BBandLE", strategy.long, stop=lower, oca_name="BollingerBands", comment="BBandLE")
alert(message='long price='+str.tostring(lower), freq=alert.freq_once_per_bar_close)
else
strategy.cancel(id="BBandLE")
alert(message='cancel long', freq=alert.freq_once_per_bar_close)
if (ta.crossunder(source, upper))
strategy.entry("BBandSE", strategy.short, stop=upper, oca_name="BollingerBands", comment="BBandSE")
alert(message='short price='+str.tostring(upper), freq=alert.freq_once_per_bar_close)
else
strategy.cancel(id="BBandSE")
alert(message='cancel short', freq=alert.freq_once_per_bar_close)
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
//Lines of code added to the original built-in script: 14, 17, 20 and 23 only.
//They trigger alerts ready to be executed on real markets through TradingConnector
//available for Forex, indices, crypto, stocks - anything your broker offers for trading via MetaTrader4/5