Perpindahan purata bergerak eksponen dan purata bergerak dengan strategi yang rapat

Penulis:ChaoZhang, Tarikh: 2024-01-19 14:50:50
Tag:

img

Ringkasan

EMA (Exponential Moving Average) dan Moving Average (MA) Crossover dengan Close Strategy menjana isyarat perdagangan berdasarkan pergerakan harga aset berbanding EMA 9 tempoh dan MA 20 tempoh. Ia menggunakan isyarat silang EMA dan MA untuk menentukan arah trend untuk entri dan menutup kedudukan apabila harga melintasi semula purata bergerak.

Logika Strategi

Pengiraan EMA dan MA

  • EMA9 mengira purata bergerak eksponen 9 tempoh harga penutupan.
  • ma20 mengira purata mudah bergerak harga penutupan 20 tempoh. MA adalah purata harga penutupan lebih daripada 20 tempoh.

Syarat Beli dan Jual

  • BuyCondition adalah benar apabila close > kedua-dua ema9 dan ma20. Ini ditafsirkan sebagai isyarat bullish.
  • sellCondition adalah benar apabila penutupan < kedua-dua ema9 dan ma20. Ini ditafsirkan sebagai isyarat penurunan.

Pelaksanaan Perdagangan

  • Apabila buyCondition adalah benar, melaksanakan pesanan masuk panjang.
  • Apabila sellCondition adalah benar, melaksanakan pesanan masuk pendek.
  • Apabila harga melintasi semula EMA9 atau MA20, tutup mana-mana kedudukan terbuka.

Warna Lilin

  • Lilin hijau menunjukkan keadaan beli
  • Lilin merah menunjukkan keadaan jual.
  • Lilin lain adalah putih lalai

EMA dan MA Plotting

9 EMA dan 20 MA digambarkan pada carta untuk rujukan visual.

Analisis Kelebihan

Strategi ini menggabungkan dua penunjuk yang digunakan secara meluas, mengambil kesempatan daripada EMA dan MA trend mengikuti dan kemampuan smoothing untuk menjana isyarat yang lebih boleh dipercayai.

Crossover memberikan isyarat perubahan trend yang jelas, mengelakkan perdagangan yang buruk.

Kod warna lilin secara visual menunjukkan keadaan tanpa pengiraan yang rumit.

Pelaksanaan kemasukan dan keluar secara automatik mematuhi peraturan yang telah ditentukan terlebih dahulu, membantu pengurusan risiko.

Analisis Risiko

Sebagai penunjuk trend, purata bergerak boleh menghasilkan banyak isyarat palsu semasa tempoh yang terhad.

Pergerakan harga yang cepat boleh menyebabkan kelewatan dalam nilai MA dan EMA, menyebabkan peluang yang hilang.

Parameter EMA dan MA mempunyai kesan yang ketara terhadap prestasi strategi dan harus disesuaikan untuk produk dan jangka masa yang berbeza.

Strategi automatik tidak boleh menyesuaikan diri dengan situasi yang kompleks seperti pedagang manusia.

Arahan pengoptimuman

Uji kombinasi panjang EMA dan MA yang berbeza untuk mencari parameter optimum yang memaksimumkan isyarat benar dan meminimumkan isyarat palsu.

Menggabungkan metrik turun naik seperti ATR untuk menapis persediaan risiko yang lebih tinggi dan mengawal potensi kerugian.

Gabungkan dengan penunjuk atau isyarat lain seperti jumlah dan Bollinger Bands untuk mengesahkan kebolehpercayaan isyarat.

Tambah stop loss dan ambil logika keuntungan untuk menguruskan risiko perdagangan secara aktif.

Ringkasan

EMA dan MA Crossover dengan Close Strategy menggunakan EMA dan MA crossover untuk menentukan trend dan entri isyarat. Walaupun mudah dan automatik, prestasi sangat bergantung kepada penyesuaian parameter dan keadaan pasaran. pengoptimuman tetap diperlukan untuk menyesuaikan diri dengan pasaran yang berkembang.


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

//@version=4
strategy("EMA and MA Crossover with Close Strategy", shorttitle="EMA_MA_Close", overlay=true)

// Define the length of the Exponential Moving Average and Moving Average
lengthEMA = 9
lengthMA = 20

// Calculate the 9 EMA and 20 MA
ema9 = ema(close, lengthEMA)
ma20 = sma(close, lengthMA)

// Define the buy and sell conditions
buyCondition = close > ema9 and close > ma20
sellCondition = close < ema9 and close < ma20

// Define the close position condition
closeCondition = crossover(close, ema9) or crossover(close, ma20)

// Execute buy or sell orders
if (buyCondition)
    strategy.entry("Buy", strategy.long)
else if (sellCondition)
    strategy.entry("Sell", strategy.short)

// Close any position if the close condition is met
if (closeCondition)
    strategy.close_all()

// Coloring the candles based on conditions
barcolor(buyCondition ? color.green : na)
barcolor(sellCondition ? color.red : na)

// Plotting the EMA and MA for reference
plot(ema9, color=color.blue, title="9 EMA")
plot(ma20, color=color.orange, title="20 MA")


Lebih lanjut