Sumber dimuat naik... memuat...

Sistem Perdagangan Automatik Multi-EMA dengan Kunci Keuntungan Terakhir

Penulis:ChaoZhang, Tarikh: 2024-12-04 15:35:32
Tag:EMAMA

img

Ringkasan

Strategi ini adalah sistem dagangan automatik berdasarkan pelbagai Exponential Moving Averages (EMA), menubuhkan isyarat dagangan melalui analisis hierarkis EMA 5-periode, 20-periode, dan 50-periode.

Prinsip Strategi

Strategi ini berasaskan keputusan dagangan pada pelbagai persimpangan jangka masa EMA dan hubungan kedudukan.

  1. Menggunakan EMA 5 tempoh, 20 tempoh (berdasarkan harga tinggi, rendah, dan penutupan), dan 50 tempoh
  2. Keadaan kemasukan memerlukan semua penunjuk menunjukkan keselarasan menaik yang jelas: 50EMA < 20EMA(Rendah) < 20EMA(Dekat) < 20EMA(Tinggi) < 5EMA
  3. Menghendaki harga semasa berada di atas semua EMA, mengesahkan trend yang kuat
  4. Keluar menggunakan mekanisme berganda: mengambil keuntungan apabila harga memecahkan di bawah EMA 5 tempoh, atau stop-loss apabila menyentuh EMA 20 tempoh rendah

Kelebihan Strategi

  1. Mekanisme penapisan hierarkik mengurangkan isyarat palsu dengan ketara
  2. Pengesahan silang EMA berganda meningkatkan ketepatan dagangan
  3. Posisi stop-loss dinamik disesuaikan dengan turun naik pasaran
  4. Sistem automatik sepenuhnya menghilangkan gangguan emosi
  5. Mekanisme keuntungan pengangkutan secara berkesan mengunci keuntungan yang diperoleh

Risiko Strategi

  1. Boleh menyebabkan perdagangan yang kerap semasa pasaran sampingan
  2. EMA adalah penunjuk yang lemah, mungkin terlepas titik permulaan pasaran
  3. Beberapa keadaan boleh menyebabkan kehilangan beberapa peluang perdagangan
  4. Stop-loss pada titik rendah 20EMA mungkin agak longgar

Arahan pengoptimuman

  1. Boleh menambah mekanisme pengesahan jumlah untuk meningkatkan kebolehpercayaan isyarat
  2. Pertimbangkan untuk menggabungkan penunjuk turun naik untuk saiz kedudukan dinamik
  3. Memperkenalkan skim keuntungan yang lebih fleksibel, seperti pengurangan kedudukan separa
  4. Boleh digabungkan dengan pengayun seperti RSI untuk mengoptimumkan masa kemasukan
  5. Pertimbangkan menambah penilaian kekuatan trend untuk menapis pasaran lemah

Ringkasan

Ini adalah sistem perdagangan purata bergerak berganda yang direka dengan ketat yang mengawal risiko dengan berkesan melalui penapisan hierarkis dan stop-loss dinamik. Walaupun ia mungkin terlepas beberapa pergerakan pasaran yang cepat, ia berfungsi secara konsisten di pasaran yang sedang berkembang. Ia disyorkan untuk menyesuaikan parameter mengikut ciri pasaran yang berbeza dan mempertimbangkan untuk menambah jumlah dan penunjuk tambahan lain untuk meningkatkan kebolehpercayaan. Strategi ini sesuai untuk pelabur yang mencari pulangan yang stabil dalam pelaburan jangka menengah hingga panjang.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-03 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Automated EMA Strategy with Hierarchical Conditions", overlay=true)

// Inputs for EMA lengths
length_5 = 5
length_20 = 20
length_50 = 50

// Calculating EMAs
ema_5 = ta.ema(close, length_5)
ema_20_high = ta.ema(high, length_20)
ema_20_low = ta.ema(low, length_20)
ema_20_close = ta.ema(close, length_20)
ema_50 = ta.ema(close, length_50)

// Buy condition: 50 EMA < 20 EMA (Close) < 20 EMA (High) < 20 EMA (Low) < 5 EMA
// and LTP above all EMAs
buy_condition = ema_50 < ema_20_low and ema_20_low < ema_20_close and ema_20_close < ema_20_high and ema_20_high < ema_5 and close > ema_5 and close > ema_20_close and close > ema_20_high and close > ema_20_low and close > ema_50

// Stop-loss and target levels
stop_loss = ema_20_low

// Target condition: Close below 5 EMA
target_condition = close < ema_5

// Check if there's an open position
is_in_position = strategy.position_size > 0

// Execute Buy Signal only if no position is open
if (buy_condition and not is_in_position)
    strategy.entry("Buy", strategy.long)

// Exit conditions: Stop-loss or target (close below 5 EMA)
if (is_in_position and (target_condition or close < stop_loss))
    strategy.close("Buy")

// Plotting the EMAs
plot(ema_5, color=color.blue, title="5 EMA")
plot(ema_20_high, color=color.green, title="20 EMA (High)")
plot(ema_20_low, color=color.red, title="20 EMA (Low)")
plot(ema_20_close, color=color.purple, title="20 EMA (Close)")
plot(ema_50, color=color.orange, title="50 EMA")


Berkaitan

Lebih lanjut