Strategi perdagangan berdasarkan indikator KST dan indikator EMA


Tanggal Pembuatan: 2023-11-07 16:36:21 Akhirnya memodifikasi: 2023-11-07 16:36:21
menyalin: 0 Jumlah klik: 756
1
fokus pada
1621
Pengikut

Strategi perdagangan berdasarkan indikator KST dan indikator EMA

Ringkasan

Gagasan inti dari strategi ini adalah menggabungkan indikator KST dan EMA rata-rata, untuk menilai dan mengikuti tren. Beli ketika indikator KST muncul garpu emas dan di bawah 0, dan jual ketika garpu mati muncul dan di atas 0. Selain itu, dengan menggunakan EMA rata-rata sebagai resistensi pendukung, sinyal perdagangan hanya dikeluarkan ketika harga penutupan menembus garis rata-rata EMA. Strategi ini sederhana dan praktis, dapat secara otomatis melacak tren, cocok untuk memegang posisi jangka menengah dan panjang.

Prinsip Strategi

  1. Menghitung indikator KST: Menghitung indikator ROC 10, 15, 20, dan 30 hari, kemudian masing-masing dengan perkalian masing-masing, dan akhirnya mendapatkan indikator KST dengan SMA 9 hari.

  2. Hitung EMA rata-rata: Hitung EMA rata-rata dengan panjang 50

  3. Membuat sinyal beli: Membuat sinyal beli ketika garis cepat indikator KST melewati garis lambat ((golden forks) dan berada di bawah 0 dan harga penutupan berada di atas garis rata-rata EMA.

  4. Membuat sinyal jual: Membuat sinyal jual ketika garis cepat di bawah indikator KST melewati garis lambat (dead fork) dan lebih tinggi dari 0, sementara harga close-out lebih rendah dari garis rata-rata EMA.

  5. Pengaturan Stop Loss Mobile: Tracking Stop Loss disetel menjadi 1% dari nilai akun, untuk mencapai Stop Loss otomatis.

Keunggulan Strategis

  1. Indikator KST dapat mengidentifikasi perubahan tren, garis rata-rata EMA dapat mengkonfirmasi arah tren, keduanya dapat digabungkan untuk menentukan waktu ENTRY secara akurat.

  2. Menggunakan akselerasi silang 0 untuk menentukan arah indikator KST, menghindari transaksi yang tidak perlu.

  3. EMA rata-rata sebagai resistance pendukung, lebih lanjut memfilter sinyal palsu, dan hanya masuk ketika melanggar EMA.

  4. Stop loss otomatis untuk mengontrol risiko dan menjalankan keuntungan.

  5. Lebih sedikit parameter untuk strategi, lebih mudah untuk diterapkan dan dioptimalkan.

Risiko Strategis

  1. Indikator KST memiliki keterlambatan dalam menilai perubahan tren, dan mungkin melewatkan beberapa peluang. Anda dapat mempersingkat siklus perhitungan atau mengoptimalkan cara penimbangan.

  2. EMA rata-rata memiliki keterlambatan dan mungkin tidak berlaku pada titik perubahan tren. Anda dapat mencoba indikator lain atau kombinasi multi rata-rata.

  3. Stop loss yang terlalu longgar akan memperbesar kerugian; terlalu ketat akan dihentikan oleh fluktuasi besar dalam semalam. Perlu diuji dengan hati-hati untuk menemukan titik keseimbangan.

  4. Sinyal-sinyal strategi sering terjadi, dan biaya transaksi mungkin lebih tinggi.

Arah optimasi strategi

  1. Mengoptimalkan parameter siklus perhitungan KST untuk menemukan kombinasi parameter yang lebih sensitif terhadap varietas tertentu.

  2. Uji berbagai indikator atau kombinasi rata-rata, seperti MA, WMA, dan lain-lain, untuk melihat mana yang bekerja lebih baik dengan KST.

  3. Cobalah untuk menyesuaikan stop loss berdasarkan fluktuasi atau dinamika ATR.

  4. Menambahkan kondisi penyaringan, seperti peningkatan volume transaksi, dan lain-lain, untuk menghindari penarikan.

  5. Pertimbangkan untuk menggabungkan indikator lain, seperti RSI, MACD, dan lain-lain, untuk membuat strategi lebih komprehensif.

  6. Uji efek parameter dari varietas yang berbeda, membuat program optimasi yang disesuaikan dengan varietas yang berbeda.

Meringkaskan

Strategi ini secara keseluruhan ide yang jelas, dapat diandalkan, mudah diterapkan, dengan indikator KST menilai trend reversal, EMA rata-rata lebih lanjut penyaringan, risiko pengendalian kerugian, dapat secara otomatis melacak tren garis tengah panjang. Pilihan parameter yang masuk akal, ruang optimasi yang besar, pengguna dapat menyesuaikan parameter sesuai kebutuhan, berlaku untuk berbagai varietas, memiliki universal yang baik. Strategi ini baik untuk pemula belajar, tetapi juga dapat memberikan arah untuk pedagang profesional. Dengan terus mengoptimalkan pengujian, strategi ini diharapkan menjadi stabil dan dapat diandalkan tren mengikuti strategi.

Kode Sumber Strategi
/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Know Sure Thing and EMA Strategy by JLX", shorttitle="KST EMA JLX", format=format.price, precision=4, initial_capital = 1000, default_qty_type=strategy.percent_of_equity, default_qty_value = 100)
roclen1 = input(10, minval=1, title = "ROC Length #1")
roclen2 = input(15, minval=1, title = "ROC Length #2")
roclen3 = input(20, minval=1, title = "ROC Length #3")
roclen4 = input(30, minval=1, title = "ROC Length #4")
smalen1 = input(10, minval=1, title = "SMA Length #1")
smalen2 = input(10, minval=1, title = "SMA Length #2")
smalen3 = input(10, minval=1, title = "SMA Length #3")
smalen4 = input(15, minval=1, title = "SMA Length #4")
siglen = input(9, minval=1, title = "Signal Line Length")
smaroc(roclen, smalen) => sma(roc(close, roclen), smalen)
kst = smaroc(roclen1, smalen1) + 2 * smaroc(roclen2, smalen2) + 3 * smaroc(roclen3, smalen3) + 4 * smaroc(roclen4, smalen4)
sig = sma(kst, siglen)
plot(kst, color=color.green, title="KST")
plot(sig, color=color.red, title="Signal")
hline(0, title="Zero")

len = input(50, minval=1, title="Length EMA")
src = input(close, title="Source EMA")
offset = input(title="Offset", type=input.integer, defval=0, minval=-500, maxval=500)
fastEMA = ema(src, len)

delta = kst - sig

buySignal = crossover(delta, 0) and kst < 0 and close > fastEMA
sellSignal = crossunder(delta, 0) and kst > 0 and close < fastEMA

longTrailPerc = input(title="Trail Long Loss (%)", type=input.float, minval=0.0, step=0.1, defval=1) * 0.01
shortTrailPerc = input(title="Trail Short Loss (%)",type=input.float, minval=0.0, step=0.1, defval=1) * 0.01

// STEP 2:
// Determine trail stop loss prices
longStopPrice = 0.0, shortStopPrice = 0.0

longStopPrice := if (strategy.position_size > 0)
    stopValue = close * (1 - longTrailPerc)
    max(stopValue, longStopPrice[1])
else
    0
shortStopPrice := if (strategy.position_size < 0)
    stopValue = close * (1 + shortTrailPerc)
    min(stopValue, shortStopPrice[1])
else
    999999

// Submit entry orders
if (buySignal)
    strategy.entry(id="EL", long=true)

if (sellSignal)
    strategy.entry(id="ES", long=false)

// STEP 3:
// Submit exit orders for trail stop loss price
if (strategy.position_size > 0)
    strategy.exit(id="XL TRL STP", stop=longStopPrice)

if (strategy.position_size < 0)
    strategy.exit(id="XS TRL STP", stop=shortStopPrice)



alertcondition(crossover(delta, 0) and kst < 0 and close > fastEMA,'Long alert', 'You should buy')

alertcondition(crossunder(delta, 0) and kst > 0 and close < fastEMA, 'Short alert', 'You should sell')