Strategi Supertrend Tumpang Tindih Tiga Kali Lipat


Tanggal Pembuatan: 2024-02-26 10:04:18 Akhirnya memodifikasi: 2024-02-26 10:04:18
menyalin: 3 Jumlah klik: 633
1
fokus pada
1617
Pengikut

Strategi Supertrend Tumpang Tindih Tiga Kali Lipat

Ringkasan

Ini adalah strategi untuk membuat keputusan perdagangan yang menggunakan tiga indikator supertrend yang digabungkan. Ini dapat menangkap peluang arah yang lebih besar dalam situasi tren.

Prinsip Strategi

Strategi ini menggunakan fungsi ta.supertrend() untuk menghitung indikator supertrend dari tiga pengaturan parameter yang berbeda. Untuk menghitung supertrend 3 kali ATR pada hari ke-10, supertrend 1 kali ATR pada hari ke-14, supertrend 2 kali ATR, dan supertrend 3 kali ATR pada hari ke-20 2.5. Untuk menghasilkan sinyal beli ketika harga melewati semua tiga supertrend di atas. Untuk menghasilkan sinyal jual ketika harga melewati semua tiga supertrend di bawah.

Indikator supertrend yang dikombinasikan dengan indikator ATR, dapat secara efektif melacak tren perubahan harga. Strategi supertrend tiga kali lipat, membuat sinyal lebih dapat diandalkan, sehingga mendapatkan keuntungan yang lebih besar dalam situasi tren.

Keunggulan Strategis

  1. Mekanisme pemfilteran tiga, menghindari sinyal palsu, meningkatkan kualitas sinyal
  2. Indikator supertrend sendiri memiliki fungsi penghapusan suara yang baik
  3. Mengkonfigurasi beberapa kombinasi hyperparameter untuk lingkungan pasar yang lebih luas
  4. Tes historis berjalan dengan baik, keuntungan lebih tinggi daripada risiko

Risiko Strategis

  1. Sinyal multi-filter mungkin melewatkan beberapa kesempatan
  2. Tidak baik dalam situasi gempa
  3. Kombinasi dari tiga set parameter hyper yang harus dioptimalkan
  4. Waktu transaksi terpusat rentan terhadap kejadian tak terduga

Hal-hal berikut dapat dipertimbangkan untuk mengurangi risiko:

  1. Menyesuaikan kondisi penyaringan untuk mempertahankan satu atau dua tren super
  2. Meningkatkan strategi stop loss
  3. Optimalkan parameter super untuk meningkatkan tingkat kemenangan

Arah optimasi strategi

  1. Uji lebih banyak kombinasi parameter untuk menemukan superparameter terbaik
  2. Menambahkan algoritma pembelajaran mesin, optimasi parameter real-time
  3. Meningkatkan strategi stop loss untuk mengendalikan kerugian tunggal
  4. Mengidentifikasi tren dan gejolak dalam kombinasi dengan indikator lainnya
  5. Memperpanjang waktu transaksi, menghindari risiko node waktu tunggal

Meringkaskan

Strategi ini menggunakan tiga overlapping supertrend untuk membuat keputusan dan dapat mengidentifikasi arah tren secara efektif. Ini memiliki kualitas sinyal yang tinggi, parameter yang dapat dioptimalkan, dan sebagainya. Namun, ada risiko tertentu yang memerlukan penyesuaian parameter dan waktu keluar untuk menyesuaikan dengan lingkungan pasar yang berbeda. Secara keseluruhan, strategi ini berkinerja baik dan layak untuk diteliti dan diterapkan lebih lanjut.

Kode Sumber Strategi
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Combined Supertrend Strategy - Ajit Prasad', overlay=true)

// Function to calculate Supertrend
supertrendFunc(atrLength, factor) =>
    [supertrend, direction] = ta.supertrend(factor, atrLength)
    [supertrend, direction]

// Input parameters for the first Supertrend
atrPeriod1 = input(10, 'ATR Length 1')
factor1 = input(3, 'Factor 1')

// Calculate the first Supertrend
[supertrend1, direction1] = supertrendFunc(atrPeriod1, factor1)

// Input parameters for the second Supertrend
atrPeriod2 = input(14, 'ATR Length 2') // Change values as needed
factor2 = input(2, 'Factor 2') // Change values as needed

// Calculate the second Supertrend
[supertrend2, direction2] = supertrendFunc(atrPeriod2, factor2)

// Input parameters for the third Supertrend
atrPeriod3 = input(20, 'ATR Length 3') // Change values as needed
factor3 = input(2.5, 'Factor 3') // Change values as needed

// Calculate the third Supertrend
[supertrend3, direction3] = supertrendFunc(atrPeriod3, factor3)

// Define market opening and closing times
marketOpenHour = 9
marketOpenMinute = 15
marketCloseHour = 15
marketCloseMinute = 30
exitTimeHour = 15
exitTimeMinute = 10

// Fetch historical close values using security function
histClose = request.security(syminfo.tickerid, "D", close)

// Buy condition
buyCondition = close > supertrend1 and close > supertrend2 and close > supertrend3 and close[1] <= supertrend1[1]

// Sell condition
sellCondition = close < supertrend1 and close < supertrend2 and close < supertrend3 and close[1] >= supertrend1[1]

// Exit conditions
buyExitCondition = close < supertrend1[1] or close < supertrend2[1] or close < supertrend3[1]
sellExitCondition = close > supertrend1[1] or close > supertrend2[1] or close > supertrend3[1]

// Execute orders with market timing
if true
    // Buy condition without 'and not'
    strategy.entry('Buy', strategy.long, when = buyCondition)

    // Sell condition without 'and not'
    strategy.entry('Sell', strategy.short, when = sellCondition)

    // Close conditions
    strategy.close('Buy', when = buyExitCondition )
    strategy.close('Sell', when = sellExitCondition)

// Close all trades at 3:10 pm IST
if true
    strategy.close_all()

// Plot Supertrends
plot(supertrend1, 'Supertrend 1', color=color.new(color.green, 0), style=plot.style_linebr)
plot(supertrend2, 'Supertrend 2', color=color.new(color.red, 0), style=plot.style_linebr)
plot(supertrend3, 'Supertrend 3', color=color.new(color.blue, 0), style=plot.style_linebr)

// Plot labels
plotshape(buyCondition, style=shape.labelup, location=location.belowbar, color=color.new(color.green, 0), size=size.large, text='Buy Signal', textcolor=color.new(color.white, 0))
plotshape(sellCondition, style=shape.labeldown, location=location.abovebar, color=color.new(color.red, 0), size=size.large, text='Sell Signal', textcolor=color.new(color.white, 0))