Strategi penjejakan pintar Double B


Tarikh penciptaan: 2024-01-18 15:41:20 Akhirnya diubah suai: 2024-01-18 15:41:20
Salin: 2 Bilangan klik: 539
1
fokus pada
1617
Pengikut

Strategi penjejakan pintar Double B

Ini adalah strategi untuk berdagang menggunakan indikator Bollinger Bands. Strategi ini bertujuan untuk menggunakan indikator Bollinger Bands untuk mengenal pasti masa apabila harga turun naik dengan ketara dan membuat keputusan membeli atau menjual dengan sewajarnya.

Prinsip Strategi

Strategi ini menilai apakah harga semasa berada di dalam rantaian turun naik dengan mengira rantaian atas, rantaian tengah, dan rantaian bawah di Brin Belt untuk menentukan masa untuk meletakkan atau meletakkan. Apabila harga mendekati rantaian atas, strategi ini memilih untuk menjual kedudukan yang rendah; apabila harga mendekati rantaian bawah, ia dianggap sebagai rantaian kosong, strategi ini memilih untuk membeli.

Di samping itu, strategi ini juga memperkenalkan faktor pembalikan trend, yang akan mencetuskan keputusan membeli atau menjual yang sesuai jika isyarat pembalikan berlaku. Secara khusus, logik strategi adalah seperti berikut:

  1. Mengira laluan atas, tengah, dan bawah di Brin Belt
  2. Menentukan sama ada harga menembusi orbit dan isyarat pembalikan
    1. Penembusan tengah sebagai isyarat trend
    2. Sebagai isyarat pembalikan berhampiran landasan atas atau bawah
  3. Menerbitkan arahan beli, jual atau kosong

Ini adalah logik perdagangan asas untuk strategi ini. Dengan menggunakan ciri-ciri Brinband, menggabungkan trend dan faktor pembalikan, strategi ini cuba untuk menangkap titik pembalikan untuk berdagang apabila turun naik meningkat.

Kelebihan Strategik

Strategi ini mempunyai beberapa kelebihan berbanding strategi purata bergerak biasa:

  1. Lebih sensitif dan dapat menangkap masa apabila harga turun naik secara mendadak
  2. Menggabungkan trend dan faktor pembalikan untuk mengelakkan kerugian yang disebabkan oleh pembalikan awal
  3. Mempunyai kesan FILTER untuk mengelakkan perdagangan yang tidak berguna di kawasan yang tidak bergolak
  4. Mengurangkan jumlah dagangan dengan menilai arah trend utama
  5. Menambah syarat penyaringan terbalik untuk mengurangkan kemungkinan kesalahan

Secara keseluruhannya, strategi ini menggabungkan baik-baiknya kebijaksanaan entiti Brin dan harga, berdagang di titik-titik perubahan yang munasabah, memastikan tahap keuntungan tertentu dan mengawal risiko.

Risiko dan pengoptimuman

Walau bagaimanapun, strategi ini juga mempunyai risiko, terutama yang ditunjukkan oleh:

  1. Parameter Brin Belt tidak ditetapkan dengan betul untuk menangkap pergerakan harga
  2. Keputusan isyarat pembalikan tidak tepat, kehilangan pembalikan atau salah mengira pembalikan
  3. Apabila trend tidak jelas, isyarat di laluan tengah tidak berfungsi dengan baik.

Oleh itu, di masa hadapan, pengoptimuman boleh dilakukan dalam beberapa aspek:

  1. Optimumkan parameter Brinband mengikut parameter varieti yang berbeza
  2. Meningkatkan kebarangkalian model pembelajaran mesin untuk membalikkan keputusan
  3. Jika trend tidak jelas, beralih kepada penunjuk lain
  4. Menapis isyarat dagangan dengan menggunakan lebih banyak bentuk harga

ringkaskan

Strategi ini secara keseluruhan adalah templat strategi perdagangan Brin Belt yang tipikal. Ia mengelakkan kelemahan perdagangan yang tidak berkesan yang mudah dihasilkan hanya dengan menggunakan Brin Belt. Dengan memperkenalkan penghakiman pembalikan trend, isyarat penapisan yang berkesan, secara teori dapat memperoleh prestasi strategi yang lebih baik.

Kod sumber strategi
/*backtest
start: 2023-12-18 00:00:00
end: 2024-01-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=3
strategy("Noro's Bollinger Strategy v1.2", shorttitle = "Bollinger str 1.2", overlay = true )

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")

length = input(20, defval = 20, minval = 1, maxval = 1000, title = "Bollinger Length")
mult = input(2.0, defval = 2.0, minval = 0.001, maxval = 50, title = "Bollinger Mult")
source = input(ohlc4, defval = ohlc4, title = "Bollinger Source")

uset = input(true, defval = true, title = "Use trend entry")
usect = input(true, defval = true, title = "Use counter-trend entry")

fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
showbands = input(true, defval = true, title = "Show Bollinger Bands")

//Bollinger Bands
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev

//Lines
col = showbands ? black : na 
plot(upper, linewidth = 1, color = col)
plot(basis, linewidth = 1, color = col)
plot(lower, linewidth = 1, color = col)

//Body
body = abs(close - open)
abody = ema(body, 30)

//Signals
bar = close > open ? 1 : close < open ? -1 : 0 
up1 = bar == -1 and close >= basis and close < upper and (close < strategy.position_avg_price or strategy.position_size == 0) and uset
dn1 = bar == 1 and close <= basis and close > lower and (close > strategy.position_avg_price or strategy.position_size == 0) and uset
up2 = close <= lower and usect
dn2 = close >= upper and usect
exit = (strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open) and body > abody / 2

//Trading
if up1 or up2
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

if dn1 or dn2
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    
if exit
    strategy.close_all()