Idea teras strategi ini adalah menggunakan indikator Bollinger Bands Oscillator untuk mengenal pasti trend dan mengambil bahagian dalam perubahan trend. Melakukan lebih banyak apabila harga menembusi Bollinger Bands dan mengambil ruang apabila harga jatuh ke Bollinger Bands.
Strategi ini berdasarkan kepada indikator Brinband Oscillator untuk menentukan arah trend. Formula Brinband Oscillator adalah:
BBO = (收盘价 - N日移动平均价) / (2 * N日标准差) * 100
Di mana harga penutupan adalah harga penutupan pada hari itu, purata bergerak hari N adalah purata bergerak sederhana hari N harga penutupan, perbezaan standard hari N adalah perbezaan standard hari N harga penutupan.
Strategi ini pertama-tama mengira 65 hari Bollinger Band Oscillator, dan kemudian mengira 30 hari rata-rata Bollinger Band Oscillator. Apabila Bollinger Band Oscillator melintasi garis rata-ratanya, menganggap trend mula berubah, lakukan lebih banyak; apabila Bollinger Band Oscillator melintasi garis rata-ratanya, menganggap trend mula berubah, lakukan kosong.
Selepas memasuki kedudukan, strategi menggunakan hentian bergerak, hentian tetap dan hentian bergerak untuk mengawal risiko dan keuntungan. Parameter tertentu boleh dioptimumkan berdasarkan hasil pengukuran semula.
Menggunakan indikator Brinband Oscillator untuk menilai trend, yang lebih sensitif terhadap perubahan trend.
Menggunakan Hentian Bergerak untuk mengawal kerugian individu, anda boleh berhenti tepat pada masanya apabila trend bertukar lagi.
Menggunakan stop-loss tetap untuk mengunci keuntungan, anda boleh menjual dengan keuntungan tepat pada masanya jika arah trend betul.
Menggunakan Tracker Stop Loss untuk mengesan harga kelebihan, anda boleh memaksimumkan keuntungan tunggal.
Strategi ini lebih mudah dan intuitif, mudah difahami dan dilaksanakan.
Brin mendedahkan bahawa terdapat kemungkinan pecah palsu pada alat penggetar dan ia mungkin memberi isyarat yang salah.
Penetapan yang tidak betul untuk menghentikan atau mengesan kehilangan bergerak boleh menyebabkan berhenti atau berhenti terlalu awal.
Pengaturan yang tidak betul boleh menyebabkan penghentian yang terlalu awal dan lebih berbahaya.
Parameter Brinband dan Moving Average perlu dioptimumkan, jika tidak, ia boleh menyebabkan overfit.
Pengunduran mungkin besar dan memerlukan sokongan kewangan yang mencukupi.
Optimumkan parameter Brin dan parameter moving averages untuk mencari kombinasi parameter yang terbaik.
Ujilah pelbagai cara untuk menghentikan pergerakan, seperti menghentikan ATR, menghentikan peratusan, dan sebagainya.
Ujian dan pengoptimuman parameter hentian tetap dan hentian pengesanan.
Tambah syarat penapisan lain untuk mengelakkan isyarat silap pada pendayung pita Brin.
Pengurusan kedudukan yang dioptimumkan, saiz kedudukan yang berbeza sesuai dengan pasaran yang berbeza.
Uji keserasian strategi ini dalam pelbagai jenis dan tempoh masa.
Strategi ini menggunakan arah trend yang ditentukan oleh indikator Brin Belt Oscillator, memasuki kedudukan apabila trend mula berubah, dan menggunakan hentian bergerak, hentian tetap, dan hentian pengesanan untuk mengawal risiko dan keuntungan. Strategi ini lebih intuitif dan mudah dilaksanakan, tetapi perlu mengoptimumkan parameter, dan juga mencegah penembusan palsu dan penempatan hentian hentian yang tidak sesuai.
/*backtest
start: 2022-10-03 00:00:00
end: 2023-10-09 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title="Strategy CCT Bollinger Band Oscillator", shorttitle="Hornkild", calc_on_order_fills=true, default_qty_type=strategy.percent_of_equity, default_qty_value=50, overlay=false)
length=input(65)
lengthMA=input(30)
src=close
cctbbo=100 * ( src + 2*stdev( src, length) - sma( src, length ) ) / ( 4 * stdev( src, length ) )
//ul=hline(100, color=gray, editable=true)
//ll=hline(0, color=gray)
//hline(50, color=gray)
//fill(ul,ll, color=blue)
//plot(cctbbo, color=blue, linewidth=2)
//plot(ema(cctbbo, lengthMA), color=red)
TP = input(0) * 10
SL = input(0) * 10
TS = input(1) * 10
TO = input(10) * 10
CQ = 100
TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na
TOP = (TO > 0) ? TO : na
longCondition = crossover(cctbbo, ema(cctbbo, lengthMA))
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = crossunder(cctbbo, ema(cctbbo, lengthMA))
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Close Short", "Short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)
strategy.exit("Close Long", "Long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)