Strategi Saluran Harga Noro v1.1

Penulis:ChaoZhang, Tarikh: 2023-10-24 10:59:38
Tag:

img

Ringkasan

Noro's Price Channel Strategy v1.1 adalah strategi perdagangan trend berdasarkan saluran harga dan perubahan arah harga. Strategi ini menggabungkan penunjuk saluran harga dan penunjuk RSI cepat untuk mengenal pasti isyarat penembusan harga dari saluran, bersama dengan isyarat pembalikan warna lilin merah / hijau berturut-turut untuk menubuhkan kedudukan panjang / pendek. Matlamat strategi ini adalah untuk menangkap arah trend jangka menengah hingga panjang, sambil mengelakkan bunyi dari turun naik pasaran jangka pendek.

Logika Strategi

Strategi ini mula-mula mengira purata harga tertinggi dan terendah dalam tempoh tertentu untuk membina saluran harga pertengahan. Apabila harga pecah di atas saluran dari bawah, ia dianggap isyarat panjang. Apabila harga pecah di bawah saluran dari atas, ia dianggap isyarat pendek.

Pada masa yang sama, strategi ini menggabungkan dua peraturan tambahan: RSI cepat dan warna lilin. Apabila RSI cepat di bawah 25%, ia menunjukkan status oversold dan harga mungkin bangkit semula. Bersama-sama dengan pecah di atas saluran, ini menghasilkan isyarat panjang yang lebih kuat. Sebaliknya, apabila RSI cepat di atas 75%, ia menunjukkan status overbought dan harga mungkin jatuh. Bersama-sama dengan kerosakan di bawah saluran, ini menghasilkan isyarat pendek yang lebih kuat. Di samping itu, strategi ini mengesan perubahan warna lilin selama dua lilin terakhir. Dua lilin merah berturut-turut meningkatkan isyarat pendek, sementara dua lilin hijau berturut-turut meningkatkan isyarat panjang.

Dengan menggabungkan ketiga-tiga penunjuk isyarat ini, strategi dapat dengan berkesan mengenal pasti trend jangka menengah hingga panjang dan menetapkan kedudukan dengan sewajarnya.

Kelebihan

Kelebihan terbesar strategi ini adalah menggabungkan beberapa penunjuk untuk menentukan arah trend dan mengelakkan bunyi bising dari turun naik pasaran jangka pendek.

  1. Saluran harga dengan jelas mengenal pasti arah trend dan kekuatan.

  2. RSI pantas menilai keadaan overbought/oversold untuk mengelakkan mengejar trend pada titik perubahan.

  3. Pengesahan warna lilin seterusnya mengesahkan kesinambungan trend. Kedudukan ditutup jika warna berubah.

  4. Strategi ini hanya memasuki dua lilin berturut-turut yang berwarna yang sama memecahkan saluran, mengelakkan isyarat palsu dari goyangan jangka pendek.

  5. Stop loss purata mudah menutup kedudukan apabila warna lilin berubah, meminimumkan kerugian dengan berkesan.

Risiko

Terdapat juga beberapa risiko yang perlu diperhatikan untuk strategi ini:

  1. Tetapan parameter saluran harga yang tidak betul boleh menyebabkan saluran yang terlalu lebar atau terlalu sempit, kehilangan titik perubahan trend atau menghasilkan isyarat palsu yang berlebihan.

  2. Tetapan parameter RSI pantas yang tidak betul mungkin gagal mengenal pasti keadaan overbought/oversold dengan tepat, sehingga kehilangan peluang pembalikan.

  3. Mekanisme stop loss mudah mungkin terlalu sensitif dalam trend yang bergolak, menyebabkan pembukaan dan penutupan kedudukan yang berlebihan.

  4. Ia tidak dapat meramalkan kesinambungan trend sebenar selepas memecahkan saluran harga, yang membawa kepada kerugian yang diperkuat.

  5. Ia tidak boleh menyesuaikan diri dengan peristiwa black swan dengan kesan pasaran tiba-tiba, mengakibatkan kerugian besar.

Peluang Peningkatan

Beberapa peluang utama untuk meningkatkan strategi termasuk:

  1. Sesuaikan parameter saluran harga secara dinamik untuk menyesuaikan diri dengan lebih baik dengan turun naik dalam tempoh dan pasaran yang berbeza.

  2. Menggabungkan langkah-langkah turun naik untuk menyesuaikan parameter RSI, menurunkan kepekaan semasa turun naik yang tinggi dan meningkatkan kepekaan semasa turun naik yang rendah.

  3. Tambahkan mekanisme hentian dengan paras hentian berdasarkan turun naik trend untuk mengelakkan hentian yang terlalu sensitif.

  4. Meningkatkan pengenalan kekuatan pecah dan divergensi menurun / menaik untuk mengelakkan pecah palsu.

  5. Memasukkan model latihan data sejarah untuk membantu menganggarkan titik perubahan trend yang berkemungkinan tinggi dan meningkatkan ketepatan kemasukan.

  6. Mengoptimumkan model ukuran kedudukan untuk menyesuaikan peruntukan secara dinamik berdasarkan keadaan risiko.

Kesimpulan

Secara keseluruhan, Noro's Price Channel Strategy v1.1 adalah strategi trend berikut yang mudah dan praktikal. Ia menggabungkan beberapa penunjuk untuk mengenal pasti arah trend jangka menengah hingga panjang dan menubuhkan peraturan kemasukan yang agak berhati-hati. Terdapat ruang untuk peningkatan lanjut dalam bidang seperti mekanisme stop loss dan penyesuaian parameter dinamik. Tetapi logik keseluruhan adalah mudah dan jelas, menjadikannya mudah dilaksanakan untuk perdagangan kuantitatif, terutamanya untuk pemula. Dengan penyesuaian parameter dan pengoptimuman mekanisme, ia boleh menjadi sistem perdagangan yang stabil dan boleh dipercayai.


/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy(title = "Noro's Price Channel Strategy v1.1", shorttitle = "Price Channel str 1.1", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usecol = input(true, defval = true, title = "Use color strategy")
usersi = input(true, defval = true, title = "Use RSI strategy")
lev = input(1, defval = 1, minval = 1, maxval = 100, title = "leverage")
pch = input(30, defval = 30, minval = 2, maxval = 200, title = "Price Channel")
showcl = input(true, defval = true, title = "Show center-line")
fromyear = input(1900, defval = 1900, 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")
src = close

//Price channel
lasthigh = highest(src, pch)
lastlow = lowest(src, pch)
center = (lasthigh + lastlow) / 2
trend = low > center ? 1 : high < center ? -1 : trend[1]
col = showcl ? blue : na
plot(center, color = col, linewidth = 2)

//Bars
bar = close > open ? 1 : close < open ? -1 : 0
rbars = sma(bar, 2) == -1
gbars = sma(bar, 2) == 1

//Fast RSI
fastup = rma(max(change(src), 0), 2)
fastdown = rma(-min(change(src), 0), 2)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))

//Signals
body = abs(close - open)
abody = sma(body, 10)
up1 = rbars and close > center and usecol
dn1 = gbars and close < center and usecol
up2 = fastrsi < 25 and close > center and usersi
dn2 = fastrsi > 75 and close < center and usersi
exit = (((strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open)) and body > abody / 2)
lot = strategy.equity / close * lev

//Trading
if up1 or up2
    if strategy.position_size < 0
        strategy.close_all()
        
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if dn1 or dn2
    if strategy.position_size > 0
        strategy.close_all()
        
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
    strategy.close_all()

Lebih lanjut