
Strategi ini didasarkan pada indikator Bollinger Bands untuk menentukan arah tren pasar, melakukan operasi terbalik ketika arah tren berbalik. Dalam pasar bertingkat, ketika harga turun di bawah Bollinger Bands, melakukan lebih banyak; Dalam pasar kosong, ketika harga menembus Bollinger Bands, melakukan kosong.
Strategi ini menggunakan Bollinger Bands mid-trail, up-trail, dan down-trail untuk menentukan arah tren pasar. Bollinger Bands mid-trail adalah rata-rata bergerak indeks dengan siklus n, Bollinger Bands up-trail dan down-trail masing-masing adalah mid-trail + 2.3 kali standar perbedaan dan mid-trail - 2.3 kali standar perbedaan. Ketika harga menembus down-trail, berarti saat ini berada di pasar multi-head; Ketika harga menembus up-trail, berarti saat ini berada di pasar kosong.
Selain itu, strategi ini juga menetapkan SMA 200-siklus sebagai indikator untuk menilai tren jangka panjang. Hanya ketika indikator Brin dan SMA berlawanan arah, sinyal perdagangan akan dikirim. Ini dapat secara efektif memfilter beberapa terobosan palsu.
Logika transaksi adalah sebagai berikut:
Cara Peningkatan:
Strategi ini secara keseluruhan relatif sederhana dan mudah dimengerti, menggunakan Brin band untuk menentukan tren, melakukan operasi terbalik pada titik balik. Selain itu, menambahkan indikator penilaian jangka panjang dan jangka pendek, dapat memfilter sinyal secara efektif. Ruang optimasi strategi masih besar, parameter yang disesuaikan, menambahkan indikator energi kuantitatif dan lain-lain dapat ditingkatkan lebih lanjut.
/*backtest
start: 2023-10-23 00:00:00
end: 2023-11-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Aayonga
//@version=5
strategy("布林趋势震荡单", overlay=true,initial_capital=10000,default_qty_type=strategy.fixed, default_qty_value=1 )
bollL=input.int(20,minval=1,title = "长度")
bollmult=input.float(2.3,minval=0,step=0.1,title = "标准差")
basis=ta.ema(close,bollL)
dev=bollmult*ta.stdev(close,bollL)
upper=basis+dev
lower=basis-dev
smaL=input.int(200,minval=1,step=1,title = "趋势分界线")
sma=ta.sma(close,smaL)
//多头趋势
longT=upper>sma and basis>sma and lower>=sma
//空头趋势
shortT=upper<sma and basis<sma and lower<=sma
//入场位
longE=ta.crossover(close,lower)
shortE=ta.crossover(close,upper)
//出场位
longEXIT=ta.crossover(high,upper)
shortEXIT=ta.crossunder(close,basis) or ta.crossover(close,ta.sma(close,230))
if longT and longE
strategy.entry("多",strategy.long)
if longEXIT
strategy.close("多",comment = "多出场")
if shortE and shortT
strategy.entry("空",strategy.short)
if shortEXIT
strategy.close("空",comment = "空出场")