Strategi mengikuti tren berdasarkan SuperTrend dan DEMA


Tanggal Pembuatan: 2023-12-08 16:42:14 Akhirnya memodifikasi: 2023-12-08 16:42:14
menyalin: 0 Jumlah klik: 1014
1
fokus pada
1621
Pengikut

Strategi mengikuti tren berdasarkan SuperTrend dan DEMA

Ringkasan

Strategi ini menggabungkan indikator SuperTrend dan indikator DEMA untuk mencapai strategi perdagangan yang mengikuti tren. Strategi ini menghasilkan sinyal beli ketika harga melampaui lintasan, dan menghasilkan sinyal jual ketika harga jatuh dari lintasan, dengan filter indikator DEMA untuk memfilter sinyal palsu. Strategi ini digunakan untuk perilaku yang berorientasi pada tren, dan dapat secara efektif melacak tren, memfilter getaran.

Prinsip Strategi

Strategi ini terutama didasarkan pada indikator SuperTrend untuk menentukan arah tren harga. Indikator SuperTrend dikombinasikan dengan indikator ATR, yang dapat secara efektif menentukan tren harga. Ketika harga naik, tren akan terbentuk, dan ketika harga turun, tren akan terbentuk.

Strategi ini juga menggabungkan indikator DEMA untuk memfilter sinyal misreport. Sinyal beli hanya dihasilkan ketika harga melampaui jalur atas dan di atas garis DEMA; Sinyal jual hanya dihasilkan ketika harga jatuh dari jalur bawah dan di bawah garis DEMA. Ini dapat secara efektif memfilter sinyal palsu di pasar yang bergoyang.

Secara khusus, logika sinyal trading dari strategi ini adalah sebagai berikut:

  1. Ketika harga keluar dari tren bawah, maka terjadi reversal yang menghasilkan sinyal beli.
  2. Ketika harga keluar dari track up, maka akan terjadi trend reversal yang menghasilkan sinyal sell.
  3. Sinyal beli hanya akan benar-benar dihasilkan ketika sinyal beli muncul dan harga lebih tinggi dari garis DEMA
  4. Sinyal jual hanya akan muncul jika harga berada di bawah garis DEMA

Dengan desain logis seperti itu, Anda dapat bertahan dalam tren dan menghindari sering membuka posisi di pasar yang bergoyang.

Keunggulan Strategis

  • Kombinasi Indikator SuperTrend dan Indikator DEMA, memberikan efek ganda dari pelacakan tren dan pemfilteran sinyal
  • Parameter indikator SuperTrend mudah dioptimalkan dan dapat disesuaikan dengan varietas dan siklus yang berbeda
  • Optimasi parameter indikator DEMA sederhana, tidak perlu tes ulang
  • Strategi ini digunakan untuk mengamati tren, dan dapat mengikuti tren secara berurutan
  • Indikator DEMA efektif memfilter sinyal palsu dari pasar yang bergoyang
  • Implementasi strategi sederhana, mudah dipahami dan dimodifikasi

Risiko Strategis

  • Strategi tidak dapat menangani situasi harga yang sangat berfluktuasi.
  • Jika tren berbalik, kemungkinan akan terjadi kerugian
  • Parameter indikator DEMA tidak disetel dengan benar, mungkin melewatkan waktu terbaik untuk membeli/menjual
  • Parameter indikator SuperTrend, seperti ATR yang tidak disetel dengan benar, dapat menghasilkan sinyal yang salah

Solusi untuk Mengatasi Risiko:

  • Optimalkan parameter DEMA dan parameter SuperTrend
  • Tergabung dengan strategi stop loss, untuk mengontrol stop loss tunggal
  • Menambahkan mekanisme konfirmasi di titik-titik penting untuk menghindari sinyal yang salah

Arah optimasi strategi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Pengoptimalan parameter indikator SuperTrend. Anda dapat menguji parameter siklus ATR yang berbeda untuk menemukan kombinasi parameter yang optimal.

  2. Optimalisasi parameter indikator DEMA. Anda dapat menguji parameter yang berbeda untuk menentukan pengaturan parameter yang optimal.

  3. Meningkatkan mekanisme stop loss. Anda dapat mengatur stop loss berdasarkan nilai ATR untuk menghindari stop loss yang terlalu besar.

  4. Tambahkan aturan penyaringan sinyal. Anda dapat menambahkan konfirmasi indikator lain pada titik-titik penting, untuk menghindari sinyal yang salah. Misalnya, konfirmasi indikator peningkatan energi kuantitatif pada titik-titik perubahan tren.

  5. Mengoptimalkan manajemen posisi. Posisi dapat disesuaikan dengan dinamika volatilitas pasar dan kondisi risiko.

Meringkaskan

Strategi ini mengintegrasikan keunggulan indikator SuperTrend dan indikator DEMA, dan memungkinkan strategi perdagangan kuantitatif berdasarkan pelacakan tren dan pemfilteran sinyal. Ada ruang yang luas untuk mengoptimalkan strategi, dan langkah-langkah seperti optimasi parameter, mekanisme stop loss, dan pemfilteran sinyal dapat meningkatkan stabilitas dan profitabilitas strategi.

Kode Sumber Strategi
/*backtest
start: 2023-11-07 00:00:00
end: 2023-12-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Krish\'s Supertrend Strategy', overlay=true)

// Supertrend Settings
Periods = input(title='ATR Period', defval=10)
src = input(hl2, title='Source')
Multiplier = input.float(title='ATR Multiplier', step=0.1, defval=3.0)
changeATR = input(title='Change ATR Calculation Method ?', defval=true)
showsignals = input(title='Show Buy/Sell Signals ?', defval=true)
highlighting = input(title='Highlighter On/Off ?', defval=true)

atr2 = ta.sma(ta.tr, Periods)
atr = changeATR ? ta.atr(Periods) : atr2

up = src - Multiplier * atr
up1 = nz(up[1], up)
up := close[1] > up1 ? math.max(up, up1) : up

dn = src + Multiplier * atr
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? math.min(dn, dn1) : dn

trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend

upPlot = plot(trend == 1 ? up : na, title='Up Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0))
buySignal = trend == 1 and trend[1] == -1

plotshape(buySignal ? up : na, title='UpTrend Begins', location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.green, 0))
plotshape(buySignal and showsignals ? up : na, title='Buy', text='Buy', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.new(color.white, 0))

dnPlot = plot(trend == 1 ? na : dn, title='Down Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0))
sellSignal = trend == -1 and trend[1] == 1

plotshape(sellSignal ? dn : na, title='DownTrend Begins', location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.red, 0))
plotshape(sellSignal and showsignals ? dn : na, title='Sell', text='Sell', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))

// DEMA Settings
dema_length = 200
dema = ta.ema(close, dema_length)

// Long and Short Conditions
longCondition = buySignal and close > dema
shortCondition = sellSignal and close < dema

// Strategy Entry and Exit
strategy.entry('Long', strategy.long, when=longCondition)
strategy.entry('Short', strategy.short, when=shortCondition)

strategy.close('Long', when=ta.change(trend) or close < dema)
strategy.close('Short', when=ta.change(trend) or close > dema)

// Plotting
mPlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0)
longFillColor = highlighting ? trend == 1 ? color.green : color.white : color.white
shortFillColor = highlighting ? trend == -1 ? color.red : color.white : color.white

fill(mPlot, upPlot, title='UpTrend Highlighter', color=longFillColor, transp=90)
fill(mPlot, dnPlot, title='DownTrend Highlighter', color=shortFillColor, transp=90)

// Alerts (using plotshape for alerts in strategies)
plotshape(buySignal, title='SuperTrend Buy', color=color.new(color.green, 0), style=shape.triangleup, size=size.small)
plotshape(sellSignal, title='SuperTrend Sell', color=color.new(color.red, 0), style=shape.triangledown, size=size.small)
changeCond = trend != trend[1]
plotshape(changeCond, title='SuperTrend Direction Change', color=color.new(color.yellow, 0), style=shape.triangleup, size=size.small)