
Strategi ini menggabungkan beberapa indikator teknis, seperti band oscillasi, indikator relatif kuat, dan indikator dispersi rata-rata bergerak, untuk membuat keputusan pembelian dan penjualan. Strategi ini pertama-tama memetakan band oscillasi tradisional di grafik, yang berbeda adalah dengan area pita dengan dua warna untuk menunjukkan dua tingkat standar yang berbeda.
Pertama, strategi ini memetakan band 34 siklus pada grafik, yang terdiri dari orbit tengah, orbit atas dan bawah dengan satu standar deviasi dan dua standar deviasi.
Ketika harga penutupan naik ke orbit, buka posisi multihead. Ketika harga penutupan turun ke orbit, buka posisi kosong.
Ketika memegang posisi multi-head, jika harga penutupan melewati rel tengah, posisi kosong. Ketika memegang posisi kosong, jika harga penutupan melewati rel tengah, posisi kosong kosong.
Strategi ini juga memperkenalkan indikator RSI, RSI lebih tinggi dari 70 sebagai konfirmasi tambahan untuk posisi overhead, RSI lebih rendah dari 30 sebagai konfirmasi tambahan untuk posisi kosong.
Ketika RSI di atas 50, posisi kosong. Ketika RSI di bawah 50, posisi kosong.
Strategi ini juga memperkenalkan indikator MACD, MACD Gold Fork sebagai konfirmasi tambahan untuk posisi terbuka dengan posisi multihead, MACD Dead Fork sebagai konfirmasi tambahan untuk posisi terbuka dengan posisi kosong.
Bila MACD mati, posisi kosong. Bila MACD emas, posisi kosong.
Secara keseluruhan, strategi ini membutuhkan band oscillasi, RSI dan MACD tiga indikator yang memenuhi persyaratan untuk membuka posisi. Kondisi posisi datar juga mempertimbangkan tiga indikator, sehingga mengurangi probabilitas sinyal yang salah.
Penggunaan komprehensif dari berbagai indikator sinyal penyaringan, dapat secara efektif menghindari perdagangan yang salah. Volatilitas membawa sinyal harga terobosan, RSI penyaringan overbought fenomena oversold, MACD penyaringan perubahan tren pasar, ketiga bersama-sama mengkonfirmasi sinyal, dapat meningkatkan probabilitas keuntungan secara signifikan.
Strategi ini juga menetapkan logika posisi terbuka dan posisi yang berbeda, yang secara ketat mengontrol risiko memegang posisi. Garis tengah, RSI 50 dan MACD Gold Forks Dead Forks diperkenalkan sebagai kondisi posisi kosong, yang dapat menghentikan kerugian dengan cepat dan mengurangi kerugian tunggal.
Strategi ini mengintegrasikan keunggulan dari beberapa indikator yang dapat secara signifikan meningkatkan tingkat keuntungan dan kemenangan, dan mengurangi pengembalian maksimum dibandingkan dengan strategi indikator tunggal. Filter kombinasi multi-indikator dapat mengurangi kemungkinan perdagangan yang salah, dan mekanisme stop loss yang ketat dapat mengontrol dampak dari setiap perdagangan yang merugikan.
Secara keseluruhan, strategi ini sangat cocok untuk perdagangan tren panjang dan menengah, karena dapat menangkap tren utama pasar dan juga dapat menggunakan detail indikator untuk menghindari kebocoran.
Strategi ini memiliki beberapa risiko utama:
Probabilitas sinyal palsu dari indikator. Meskipun kombinasi beberapa indikator dapat mengurangi sinyal yang salah, namun tidak mungkin sepenuhnya dihilangkan. Perlu mengoptimalkan parameter indikator untuk mengurangi tingkat sinyal palsu.
Tidak ada keuntungan dalam perdagangan sepihak. Ketika tren bergoyang, stop loss dapat dipicu dan tidak dapat terus menghasilkan keuntungan. Standar stop loss dapat dilonggarkan dengan tepat dan periode kepemilikan dapat diperpanjang.
Beberapa indikator tertinggal, mungkin melewatkan waktu terbaik untuk membuka posisi. Anda dapat menguji indikator yang lebih maju, menangkap pergeseran lebih awal.
Celah lompatan besar membuat stop loss tidak efektif. Anda dapat mengatur stop loss saluran atau meningkatkan posisi secara bertahap untuk mengendalikan kerugian.
Parameter terlalu tetap dan perlu disesuaikan dengan pasar yang berbeda. Parameter optimasi otomatis pembelajaran mesin dapat diperkenalkan.
Data tes tidak cukup, mungkin ada over-fitting. Ketahanan strategi perlu diuji dalam jangka waktu yang lebih lama dan di berbagai pasar.
Strategi ini dapat dioptimalkan lebih lanjut dalam beberapa hal:
Mengoptimalkan parameter indikator, menemukan periode band oscillasi yang lebih sesuai, siklus RSI dan kombinasi parameter MACD, mengurangi sinyal palsu. Anda dapat mencari parameter optimal dengan metode langkah demi langkah, metode perjalanan, dll.
Menambahkan mekanisme stop loss yang beradaptasi, bukan stop loss yang tetap. Hal ini dapat dikombinasikan dengan faktor-faktor seperti ATR, tren, dan penyesuaian posisi stop loss secara dinamis.
Memperkenalkan teknologi pembelajaran mesin untuk mengoptimalkan parameter secara adaptif. Pembelajaran intensif dapat digunakan untuk mengoptimalkan parameter dalam kondisi pasar yang berbeda.
Menambahkan aturan penilaian tren, membedakan strategi yang berbeda pada tahap yang berbeda, dan meningkatkan kemampuan adaptasi dinamis strategi.
Dengan menggunakan analisa teks, data sosial, dan lain-lain, ini meningkatkan prediksi multi-faktor, dan menggunakan indikator yang lebih canggih untuk menilai titik balik lebih awal.
Optimalkan pengembalian keuntungan, sesuaikan ukuran posisi dengan jumlah dana, sehingga pendapatan dapat mencapai pertumbuhan indeks.
Optimalkan portofolio, cari strategi yang saling melengkapi, dan gunakan non-relevansi untuk mengurangi volatilitas pendapatan portofolio.
Strategi ini mengintegrasikan beberapa indikator teknis untuk masuk dan keluar, dan menetapkan aturan stop loss yang ketat. Berbanding dengan satu indikator, kombinasi multi-indikator dapat secara signifikan mengurangi sinyal palsu dan meningkatkan probabilitas keuntungan. Aturan stop loss juga dapat mengontrol dampak dari setiap kerugian. Strategi ini sesuai dengan situasi tren dan dapat menghasilkan keuntungan yang lebih tinggi.
/*backtest
start: 2023-10-15 00:00:00
end: 2023-11-14 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
// Bollinger Bands: Madrid : 14/SEP/2014 11:07 : 2.0
// This displays the traditional Bollinger Bands, the difference is
// that the 1st and 2nd StdDev are outlined with two colors and two
// different levels, one for each Standard Deviation
strategy(shorttitle='MBB', title='Bollinger Bands', overlay=true, currency=currency.NONE, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_value = 0.05)
src = input(close)
length = input.int(34, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
basis = ta.sma(src, length)
dev = ta.stdev(src, length)
dev2 = mult * dev
upper1 = basis + dev
lower1 = basis - dev
upper2 = basis + dev2
lower2 = basis - dev2
colorBasis = src >= basis ? color.blue : color.orange
pBasis = plot(basis, linewidth=2, color=colorBasis)
pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles)
pUpper2 = plot(upper2, color=color.new(color.blue, 0))
pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles)
pLower2 = plot(lower2, color=color.new(color.orange, 0))
fill(pBasis, pUpper2, color=color.new(color.blue, 80))
fill(pUpper1, pUpper2, color=color.new(color.blue, 80))
fill(pBasis, pLower2, color=color.new(color.orange, 80))
fill(pLower1, pLower2, color=color.new(color.orange, 80))
//Strategy code starts here
long_entry = ta.crossover(src, upper1)
short_entry = ta.crossunder(src, lower1)
strategy.entry("Long", strategy.long, when=long_entry)
strategy.entry("Short", strategy.short, when=short_entry)
if long_entry or close < basis
strategy.close("Long", "Long")
if short_entry or close > basis
strategy.close("Short", "Short")
//Calculate RSI
rsiLength = input(14)
rsiValue = ta.rsi(src, rsiLength)
// Define RSI conditions for entering and exiting trades
rsiLong = rsiValue > 70
rsiShort = rsiValue < 30
//Enter long position when RSI crosses above 50 and Bollinger Bands long entry condition is met
strategy.entry("Long", strategy.long, when=long_entry and rsiLong)
//Exit long position when RSI crosses below 50 or Bollinger Bands exit condition is met
strategy.close("Long Exit", when=rsiShort or close < basis)
//Enter short position when RSI crosses below 50 and Bollinger Bands short entry condition is met
strategy.entry("Short", strategy.short, when=short_entry and rsiShort)
//Exit short position when RSI crosses above 50 or Bollinger Bands exit condition is met
strategy.close("Short Exit", when=rsiLong or close > basis)
//Calculate MACD
fastLength = input(12)
slowLength = input(26)
macdLength = input(9)
macdValue = ta.macd(src, fastLength, slowLength, macdLength)
// Define MACD conditions for entering and exiting trades
macdLong = ta.crossover(src, macdLength)
macdShort = ta.crossunder(src, macdLength)
//Enter long position when MACD crosses above signal line and RSI and Bollinger Bands long entry condition is met
strategy.entry("Long", strategy.long, when=long_entry and rsiLong and macdLong)
//Exit long position when MACD crosses below signal line or RSI crosses below 50 or Bollinger Bands exit condition is met
strategy.close("Long Exit", when=macdShort or rsiShort or close < basis)
//Enter short position when MACD crosses below signal line and RSI crosses below 50 and Bollinger Bands short entry condition is met
strategy.entry("Short", strategy.short, when=short_entry and rsiShort and macdShort)
//Exit short position when MACD crosses above signal line or RSI crosses above 50 or Bollinger Bands exit condition is met
strategy.close("Short Exit", when=macdLong or rsiLong or close > basis)