Strategi FiboBuLL Wave adalah strategi perdagangan berdasarkan penapis versi Brin Belt, yang boleh didapati di bawah halaman program saya. Strategi ini melakukan lebih banyak apabila harga ditutup di atas rel, dan kosong apabila harga ditutup di bawah rel.
Talian Brin adalah satu petunjuk klasik yang menggunakan purata bergerak sederhana 20 kitaran, dan dua standard yang berbeza dari garis asas. Talian ini membantu untuk memvisualisasikan turun naik harga dan trend berdasarkan kedudukan harga berbanding dengan tali.
Strategi ini tidak mengambil kira parameter lain seperti jumlah dagangan, RSI, asas, dan sebagainya, oleh itu pengguna mesti menggunakan kebijaksanaan bebas berdasarkan pengesahan atau asas dari petunjuk lain. Hasil strategi ini semata-mata berdasarkan perdagangan berganda dan kosong, tanpa mengambil kira sasaran atau hentian yang ditentukan oleh pengguna.
Strategi ini paling berkesan apabila harga menembusi atas/bawah pada tiang berturut-turut. Ia adalah keputusan yang bijak untuk menggunakan strategi ini atau penapis Brin bersama-sama dengan penunjuk lain apabila terdapat tekanan Brin atau penembusan atas/bawah berdasarkan turun naik.
Strategi ini boleh digunakan pada carta sunset dan waktu, dan juga untuk mencari trend dalam strategi sunset dan matahari, tetapi tidak disyorkan untuk input perdagangan kerana mereka tidak dapat mencerminkan harga sebenar aset.
Prinsip teras strategi gelombang FiboBuLL adalah penembusan harga berdasarkan petunjuk Brin. Brin terdiri daripada lintasan tengah, lintasan atas dan lintasan bawah. Lintasan tengah adalah purata bergerak sederhana 21 kitaran harga penutupan; lintasan atas diperoleh dari lintasan tengah ditambah jarak lintasan tengah, yang mencerminkan julat pergerakan harga ke atas; lintasan bawah diperoleh dari lintasan tengah tolak tolak dari lintasan tengah ke bawah, yang mencerminkan julat pergerakan harga ke bawah.
Apabila harga penutupan di atas melintasi orbit menghasilkan isyarat melakukan lebih banyak; apabila harga penutupan di bawah melintasi orbit menghasilkan isyarat melakukan lebih sedikit. Setelah melakukan lebih banyak melakukan lebih sedikit, sekali lagi memecahkan orbit yang bertentangan.
Strategi ini menggunakan fungsi barssince untuk menjejaki harga berbanding dengan pecahnya tren atas dan bawah. Apabila jumlah tiang yang pecah di atas tren lebih kecil daripada yang di bawah, ia menghasilkan isyarat lebih banyak, dan apabila jumlah tiang yang pecah di bawah tren lebih kecil daripada yang di atas tren, ia menghasilkan isyarat kosong.
Dengan menyesuaikan parameter kitaran orbit tengah dan parameter perkalian perbezaan piawai, sensitiviti penembusan pita Brin dapat diubah untuk menyesuaikan masa masuk.
Strategi gelombang FiboBuLL mempunyai beberapa kelebihan:
Strategi gelombang FiboBuLL juga mempunyai beberapa risiko yang perlu diperhatikan:
Menghadapi risiko tersebut, anda boleh mengoptimumkan dari beberapa aspek:
Strategi gelombang FiboBuLL mempunyai beberapa penyesuaian utama:
Dengan mengoptimumkan beberapa perkara di atas, anda boleh meningkatkan kestabilan dan keuntungan strategi gelombang FiboBuLL.
Strategi gelombang FiboBuLL menggunakan prinsip asas Burin band untuk menentukan harga pecah dan kembali ke orbit tengah, untuk mengesan pergerakan harga ke arah tengah dan ke bawah, dan membentuk isyarat perdagangan dengan pecah. Konsep strategi ini sederhana, luas, dan merupakan kaedah yang berkesan untuk mengesan turun naik pasaran.
Tetapi hanya bergantung kepada penembusan mudah membentuk isyarat yang salah dan penembusan tidak berdaya. Oleh itu, anda mesti menilai kebolehpercayaan penembusan dengan menggabungkan trend, jumlah transaksi dan faktor-faktor lain, dan menetapkan risiko kawalan hentian hentian untuk memanfaatkan sepenuhnya strategi ini.
Strategi gelombang FiboBuLL memberikan kita kerangka asas untuk menentukan masa perdagangan berdasarkan turun naik harga. Strategi ini boleh menjadi alat yang kuat untuk membuat keputusan perdagangan dalam proses pengoptimuman berterusan dan bekerjasama dengan petunjuk lain.
/*backtest
start: 2022-11-24 00:00:00
end: 2023-11-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//@FiboBuLL
strategy(shorttitle='FB Wave', title='FiboBuLL Wave (A version of Bollinger Bands Breakout Strategy By Trade Chartist)', overlay=true, pyramiding=1, currency=currency.NONE, initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
src = input(close, title='Source')
length = input.int(21, minval=1, title='SMA length') // 20 for classis Bollinger Bands SMA line (basis)
mult = input.float(1., minval=0.236, maxval=2, title='Standard Deviation') //2 for Classic Bollinger Bands //Maxval = 2 as higher the deviation, higher the risk
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
Show = input.string('Both', options=['Longs Only', 'Shorts Only', 'Both'], title='Trade Type')
CC = input(true, 'Color Bars')
upper = basis + dev
lower = basis - dev
//Conditions for Long and Short - Extra filter condition can be used such as RSI or CCI etc.
short = src < lower // and rsi(close,14)<40
long = src > upper // and rsi(close,14)>60
L1 = ta.barssince(long)
S1 = ta.barssince(short)
longSignal = L1 < S1 and not (L1 < S1)[1]
shortSignal = S1 < L1 and not (S1 < L1)[1]
//Plots and Fills
////Long/Short shapes with text
// plotshape(S1<L1 and not (S1<L1)[1]?close:na, text = "sᴇʟʟ", textcolor=#ff0100, color=#ff0100, style=shape.triangledown, size=size.small, location=location.abovebar, transp=0, title = "SELL", editable = true)
// plotshape(L1<S1 and not (L1<S1)[1]?close:na, text = "ʙᴜʏ", textcolor = #008000, color=#008000, style=shape.triangleup, size=size.small, location=location.belowbar, transp=0, title = "BUY", editable = true)
// plotshape(shortSignal?close:na, color=#ff0100, style=shape.triangledown, size=size.small, location=location.abovebar, transp=0, title = "Short Signal", editable = true)
// plotshape(longSignal?close:na, color=#008000, style=shape.triangleup, size=size.small, location=location.belowbar, transp=0, title = "Long Signal", editable = true)
p1 = plot(upper, color=color.new(#ff0000, 75), display=display.all, title='Upper Band')
p2 = plot(lower, color=color.new(#008000, 75), display=display.all, title='Lower Band')
p = plot(basis, color=L1 < S1 ? #008000 : S1 < L1 ? #ff0000 : na, linewidth=2, editable=false, title='Basis')
fill(p, p1, color=color.new(color.teal, 85), title='Top Fill') //fill for basis-upper
fill(p, p2, color=color.rgb(217, 161, 161), title='Bottom Fill', transp=85) //fill for basis-lower
//Barcolor
bcol = src > upper ? color.new(#8ceb07, 0) : src < lower ? color.new(#ff0000, 0) : src > basis ? color.green : src < basis ? color.red : na
barcolor(CC ? bcol : na, editable=false, title='Color Bars')
// === INPUT BACKTEST RANGE ===
FromMonth = input.int(defval=1, title='From Month', minval=1, maxval=12)
FromDay = input.int(defval=1, title='From Day', minval=1, maxval=31)
FromYear = input.int(defval=2018, title='From Year', minval=2015)
ToMonth = input.int(defval=1, title='To Month', minval=1, maxval=12)
ToDay = input.int(defval=1, title='To Day', minval=1, maxval=31)
ToYear = input.int(defval=9999, title='To Year', minval=2010)
// === FUNCTION EXAMPLE ===
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() =>
time >= start and time <= finish ? true : false
if window() and (Show == 'Longs Only' or Show == 'Both')
strategy.entry('AL', direction=strategy.long, when=longSignal)
strategy.close('LongAL', when=shortSignal, comment='AL KAPA')
if window() and (Show == 'Shorts Only' or Show == 'Both')
strategy.entry('SAT', direction=strategy.short, when=shortSignal)
strategy.close('SAT', when=longSignal, comment='SAT KAPA')