Strategi mengikut arah aliran berdasarkan stop loss EMA dan ATR


Tarikh penciptaan: 2023-12-11 16:00:09 Akhirnya diubah suai: 2023-12-11 16:00:09
Salin: 0 Bilangan klik: 794
1
fokus pada
1621
Pengikut

Strategi mengikut arah aliran berdasarkan stop loss EMA dan ATR

Gambaran keseluruhan

Strategi ini menggunakan golden cross EMA rata-rata untuk menghasilkan isyarat perdagangan, iaitu isyarat beli apabila melintasi garis EMA perlahan pada garis EMA cepat, dan isyarat jual apabila melintasi garis EMA perlahan di bawah garis EMA cepat. Strategi ini merupakan strategi pengesanan trend yang tipikal. Pada masa yang sama, strategi ini menggunakan indikator ATR untuk menetapkan stop loss yang dinamik, dan mengawal risiko sambil memastikan keuntungan.

Prinsip Strategi

  1. Tentukan kitaran purata EMA pantas 13 dan kitaran purata EMA perlahan 48.
  2. Apabila garis EMA cepat melintasi garis EMA perlahan, ia menghasilkan isyarat beli; apabila garis EMA cepat melintasi garis EMA perlahan, ia menghasilkan isyarat jual.
  3. Fungsi ta.crossover dan ta.crossunder untuk menentukan sama rata garpu linear.
  4. Menggunakan indikator ATR untuk mengira titik berhenti dinamik, 1.5 kali ATR dari jarak dekat.
  5. Tanda-tanda perdagangan dan titik-titik berhenti ditunjukkan secara visual melalui perubahan warna, tanda jual beli, dan garis berhenti.

Analisis kelebihan strategi

  1. Fork mati emas berdasarkan garis rata-rata EMA menghasilkan isyarat, mengelakkan kehilangan trend utama pasaran, dan memperoleh keuntungan yang cukup besar.
  2. ATR dinamik menjejaki hentian kerugian, kedua-dua memastikan keuntungan yang mencukupi, dan mengawal risiko penarikan balik, dan keuntungan risiko keseluruhan adalah seimbang.
  3. Tampilan isyarat dan stop loss yang intuitif, mudah dikendalikan, sesuai untuk kebanyakan orang.
  4. Lebih sedikit parameter yang boleh disesuaikan, lebih mudah dipelajari dan dioptimumkan.

Analisis risiko strategi

  1. Ia boleh menyebabkan kejatuhan yang tidak dijangka.
  2. Isyarat tidak aktif mungkin berlaku dalam keadaan gegaran.
  3. Tetapan parameter yang tidak betul boleh menyebabkan terlalu keras memasuki padang atau terlalu longgar.
  4. Parameter EMA dan ATR perlu dioptimumkan dengan sewajarnya.

Penyelesaian:

  1. Peningkatan ATR boleh dikurangkan dengan sewajarnya untuk memastikan bahawa terdapat penampan terhadap paras terendah.
  2. Mekanisme pengesahan selepas isyarat dihasilkan boleh dipertimbangkan, seperti harga sebelum penembusan tertinggi.
  3. Ia disyorkan untuk mengoptimumkan parameter dengan mempertimbangkan pelbagai keadaan pasaran secara menyeluruh.

Arah pengoptimuman strategi

  1. Anda boleh menguji kombinasi parameter yang berbeza untuk mencari parameter terbaik.
  2. Anda boleh mempertimbangkan untuk menapis isyarat dengan penunjuk lain, seperti penunjuk jumlah lalu lintas, penunjuk kadar turun naik, dan sebagainya, untuk meningkatkan kualiti isyarat.
  3. Parameter EMA boleh disesuaikan mengikut trend peringkat besar untuk menangkap trend utama.
  4. Anda boleh mempertimbangkan untuk menyesuaikan ATR Stop Loss Multiple secara dinamik, dan meluaskan jangkauan Stop Loss dalam keadaan trend.
  5. Parameter pengoptimuman penyesuaian diri boleh digabungkan dengan algoritma pembelajaran mesin.

ringkaskan

Strategi ini secara keseluruhannya lebih mudah digunakan, berdasarkan EMA rata-rata menghasilkan isyarat, berturut-turut, ditambah dengan penunjuk ATR untuk mengesan hentikan, boleh mengawal risiko dengan berkesan. Walaupun akan ada isyarat palsu, tetapi keupayaan untuk menangkap trend utama yang kuat, keuntungan yang lebih stabil, sesuai sebagai salah satu strategi asas untuk perdagangan kuantitatif.

Kod sumber strategi
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © byee322

/// This strategy uses the EMA to generate buy and sell signals with a 1.5x ATR stop loss
//@version=5
strategy("EMA Strategy with ATR Stop Loss", overlay=true)

// Define the EMA lengths as input parameters
emaLength1 = input(13, "EMA Length 1")
emaLength2 = input(48, "EMA Length 2")

// Define the moving averages
ema1 = ta.ema(close, emaLength1)
ema2 = ta.ema(close, emaLength2)

// Buy signal: EMA 1 crosses above EMA 2
buy = ta.crossover(ema1, ema2)

// Sell signal: EMA 1 crosses below EMA 2
sell = ta.crossunder(ema1, ema2)

// Define the state variable
state = 0
state := buy ? 1 : sell ? -1 : nz(state[1])

// Change the color of the candles
color = state == 1 ? color.green : state == -1 ? color.red : na

// Plot the colored candles
plotcandle(open, high, low, close, color=color)

// Plot the signals on the chart with text labels
plotshape(buy, style=shape.triangleup, color=color.new(color.green, 50), location=location.belowbar, text="Buy")
plotshape(sell, style=shape.triangledown, color=color.new(color.red, 50), location=location.abovebar, text="Sell")

// Calculate the ATR
atrVal = ta.atr(14)

// Calculate the stop loss level for buy
stopLossBuy = buy ? close[1] - 1.5 * atrVal : na

// Calculate the stop loss level for sell
stopLossSell = sell ? close[1] + 1.5 * atrVal : na

// Plot the stop loss level for buy
plot(stopLossBuy,  color=color.new(color.green, 50), linewidth=3)

// Plot the stop loss level for sell
plot(stopLossSell, color=color.new(color.red, 50), linewidth=3)

if buy
    strategy.entry("Enter Long", strategy.long)
else if sell
    strategy.entry("Enter Short", strategy.short)