Sunny Supertrend Strategi

Penulis:ChaoZhang, Tanggal: 2023-12-13 14:40:24
Tag:

img

Gambaran umum

Strategi Sunny Supertrend adalah strategi mengikuti tren berdasarkan indikator ATR dan SuperTrend. Ini dapat secara akurat memprediksi pembalikan tren dan bekerja dengan sempurna sebagai indikator waktu. Strategi ini dapat meningkatkan kesabaran dan membantu pedagang memasuki dan keluar dari pasar pada waktu yang tepat.

Logika Strategi

Strategi ini menggunakan indikator SuperTrend untuk menentukan arah tren saat ini. Ketika indikator SuperTrend mengubah arah, kami pikir pembalikan tren dapat terjadi. Selain itu, strategi ini juga menggunakan arah tubuh lilin untuk penilaian tambahan. Ketika sinyal pembalikan potensial muncul dan arah tubuh lilin konsisten dengan yang sebelumnya, sinyal yang tidak valid disaring.

Secara khusus, strategi menghasilkan sinyal perdagangan sesuai dengan logika berikut:

  1. Gunakan indikator SuperTrend untuk menentukan arah tren utama
  2. Ketika arah indikator SuperTrend berubah, sinyal pembalikan potensial dihasilkan
  3. Jika arah tubuh lilin konsisten dengan yang sebelumnya pada saat ini, sinyal pembalikan disaring keluar
  4. Jika arah tubuh lilin berubah, sinyal pembalikan dikonfirmasi dan sinyal perdagangan dihasilkan

Analisis Keuntungan

  1. Berdasarkan indikator Supertrend, dapat secara akurat menentukan titik pembalikan tren.
  2. Menyaring sinyal yang tidak valid dengan menggabungkan arah tubuh candlestick untuk meningkatkan kualitas sinyal
  3. Cocok sebagai indikator waktu untuk membimbing investor untuk memilih waktu masuk dan keluar yang wajar
  4. Berlaku luas untuk setiap kerangka waktu dan varietas yang berbeda dengan kemampuan beradaptasi yang kuat

Risiko dan Solusi

  1. Indikator Supertrend cenderung menghasilkan sinyal berlebihan yang perlu disaring Solusi: Strategi ini menggunakan arah tubuh candlestick untuk penilaian tambahan untuk secara efektif menyaring sinyal yang tidak valid

  2. Parameter supertrend cenderung terlalu dioptimalkan
    Solusi: Gunakan parameter default untuk menghindari tweaking manual dan overoptimization

  3. Tidak dapat memproses pembalikan tren yang sangat cepat Solusi: Sesuaikan parameter periode ATR sesuai dengan pergerakan pasar yang lebih cepat

Arahan Optimasi

  1. Coba kombinasi yang berbeda dari parameter periode ATR
  2. Tambahkan indikator Volume atau volatilitas untuk membantu menyaring sinyal
  3. Menggabungkan dengan sistem lain untuk meningkatkan kinerja strategi
  4. Mengembangkan mekanisme stop loss untuk mengendalikan kerugian tunggal

Kesimpulan

Strategi Sunny Supertrend adalah strategi pembalikan tren yang efisien berdasarkan indikator SuperTrend. Ini menggabungkan arah tubuh lilin untuk penilaian tambahan, yang dapat secara efektif menyaring sinyal yang tidak valid dan meningkatkan kualitas sinyal. Strategi ini sederhana untuk dioperasikan, sangat dapat disesuaikan, dan dapat digunakan secara luas di berbagai produk dan kerangka waktu. Dengan mengoptimalkan parameter secara wajar dan meningkatkan mekanisme stop loss, kinerja strategi dapat ditingkatkan lebih lanjut.


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

//@version=5
strategy("Sunny Supertrend Strategy", overlay=true, default_qty_type=strategy.percent_of_equity)

atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)

[_, direction] = ta.supertrend(factor, atrPeriod)

shor= close > open and close[1] > open[1] and close[2] > open[2] 
lon = open > close and open[1] > close[1] and  open[2] > close[2]
tt= ta.change(direction) < 0
ss= ta.change(direction) > 0
long= tt
longexit = lon or ss
short= ss
shortexit = shor or tt

longPosMem = false
longexitPosMem = false
shortPosMem = false
shortexitPosMem = false

longPosMem := long ? true : short ? false : longPosMem[1]
longexitPosMem := longexit ? true : shortexit ? false : longexitPosMem[1]
shortPosMem := short ? true : long ? false : shortPosMem[1]
shortexitPosMem := shortexit ? true : longexit ? false : shortexitPosMem[1]

longy = long and not(longPosMem[1])
longexity = longexit and not(longexitPosMem[1])
shorty = short and not(shortPosMem[1])
shortexity = shortexit and not(shortexitPosMem[1])

//Use this to customize the look of the arrows to suit your needs.
plotshape(longy, location=location.abovebar, color=color.green, style=shape.arrowup, text="Buy")
plotshape(longexity, location=location.top, color=color.green, style=shape.xcross, text="Buy exit")
plotshape(shorty, location=location.belowbar, color=color.red, style=shape.arrowdown, text="Sell")
plotshape(shortexity, location=location.bottom, color=color.red, style=shape.xcross, text="Sell exit")


//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
// STEP 1:
// Make input options that configure backtest date range
startDate = input.int(title="Start Date", defval=1, minval=1, maxval=31)
startMonth = input.int(title="Start Month", 
     defval=1, minval=1, maxval=12)
startYear = input.int(title="Start Year",
     defval=2021, minval=1800, maxval=2100)

endDate = input.int(title="End Date",
     defval=1, minval=1, maxval=31)
endMonth = input.int(title="End Month",
     defval=2, minval=1, maxval=12)
endYear = input.int(title="End Year",
     defval=2021, minval=1800, maxval=2100)

// STEP 2:
// Look if the close time of the current bar
// falls inside the date range
inDateRange =  true



// STEP 3:
// Submit entry orders, but only when bar is inside date range
if (inDateRange and longy)
    strategy.entry("enter long",strategy.long,when= longy)
    strategy.close("long",when=longexity)


if (inDateRange and shorty)
    strategy.entry("enter short",strategy.short,when = shorty)
    strategy.close("short", when=shortexity)


Lebih banyak