Strategi Penembusan Hari Dalam Julat Sempit

Penulis:ChaoZhang, Tarikh: 2023-09-15 14:34:11
Tag:

Ringkasan Strategi

Strategi penembusan dalaman hari yang sempit mengenal pasti goyangan dalaman yang sempit dan penembusan dalaman hari yang dekat untuk trend panjang sahaja.

Logika Strategi

  1. Gunakan NR7 untuk mengenal pasti hari julat yang paling sempit di antara 7 hari yang lalu.

  2. Gunakan dalam hari untuk menentukan hari sebelumnya's tinggi lebih rendah daripada hari semasa's tinggi, dan hari sebelumnya's rendah lebih tinggi daripada hari semasa's rendah.

  3. Apabila NR7 dan hari dalam berlaku bersama-sama, dengan harga penutupan lebih tinggi daripada harga pembukaan, pergi panjang.

  4. Keluar apabila hari berikutnya tutup adalah lebih tinggi daripada terbuka.

Strategi ini menggunakan kedua-dua penyebaran harga dan isyarat dalam hari untuk mengenal pasti peringkat pengumpulan. Dengan kemiringan SMA ke atas, harga mungkin akan pecah. Penapisan pelbagai syarat seperti itu meningkatkan ketepatan.

Juga, pendekatan yang hanya panjang mengelakkan perangkap penyatuan dan perdagangan yang tidak perlu.

Kelebihan Strategi

  • Mempertimbangkan kedua-dua penyempitan dan dalam hari isyarat

  • Arah SMA menentukan kewujudan trend

  • Penapisan pelbagai keadaan meningkatkan ketepatan isyarat

  • Lama sahaja mengelakkan perangkap penyatuan

  • Parameter backtest yang boleh dioptimumkan, fleksibel

Amaran Risiko

  • Penyesuaian SMA diperlukan untuk mengoptimumkan isyarat

  • Masuk yang panjang mungkin terlambat, fokus pada masa keluar

  • Tidak dapat mendapat keuntungan daripada trend penurunan

  • Mencegah pengembangan semula julat

Kesimpulan

Rentang sempit dalam strategi hari pecah mengkaji secara menyeluruh struktur pasaran dan menghasilkan isyarat kebarangkalian tinggi. Dengan penyesuaian parameter, ia sangat adaptif. Strategi ini bernilai backtesting, pengoptimuman langsung, dan integrasi ke dalam sistem kuantum keseluruhan.


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

//@version=2
strategy("NR7ID: Narrow Range + Inside Day, Long Only Strategy (by ChartArt)", shorttitle="CA_-_NR7ID_Strat", overlay=true) // max_bars_back=5000

// ChartArt's Narrow Range + Inside Day Strategy (Long Only)
//
// Version 1.0
// Idea by ChartArt on Oktober 16, 2016.
//
// This long only strategy determines when there is both
// a NR7 (narrow range 7, a trading day in which the range
// is narrower than any of the previous six days), plus a
// inside day (high of the current day is lower than the high
// of the previous day and the low of the current day is higher
// than the low of the previous day) both on the same trading day
// and enters a long trade when the close is larger than the
// open and the slope of the simple moving average is upwards, too.
//
// The strategy exits the long trade next time the close is
// larger than the open in any of the next trading days.
//
// In addition the NR7ID can be colored (if close large open
// colored in green, else in red) and the SMA can be drawn
// with a color based on the direction of the SMA slope.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 


// NR7 Identifier
show_NR7=input(true, type=bool,title="Show Narrow Range 7 (NR7) ?")
range=(high-low)
nr7=(range < range[1]) and (range < range[2]) and (range < range[3]) and (range < range[4]) and (range < range[5]) and (range < range[6])
plotchar(show_NR7?nr7:na, char="7", location=location.abovebar, color=blue)

// Inside Day Identifier
show_insidebar = input(true, type=bool,title="Show Inside Day (I) ?")
insidebar =  (high < high[1] and low > low[1])
plotchar(show_insidebar?insidebar:na, char="i", location=location.abovebar, color=blue)

// NR7 + Inside Day Identifier
show_NR7ID = input(true, type=bool,title="Show NR7ID (NR7 + Inside Day) colors ?")
NR7ID = nr7 and insidebar
NR7ID_color = NR7ID and open < close ? green : NR7ID and open > close ? red : gray
barcolor(show_NR7ID?NR7ID_color:na)

// Simple Moving Average
show_ma = input(true, type=bool,title="Show SMA ?")
ma_length = input(14,title="SMA Length")
ma = sma(close,ma_length)
ma_change = change(ma) > 0
ma_change_color = change(ma) > 0 ? green : change(ma) < 0 ? red : blue
plot(show_ma?ma:na,color=ma_change_color,linewidth=3)

// (not enabled) Short Strategy: NR7 + Inside Day + close is smaller than open + change of SMA is downwards
//strategy.entry("sell", strategy.short, when = NR7ID and open > close and ma_change == false, comment="Short")
//strategy.close("sell", when = open > close )

// Long Strategy: NR7 + Inside Day + close is larger than open + change of SMA is upwards
strategy.entry("long", strategy.long, when = NR7ID and open < close and ma_change == true, comment="Long")
strategy.close("long", when = open < close )

Lebih lanjut