Sistem pelacakan laba-rugi perdagangan otomatis dengan rata-rata pergerakan indeks ganda

EMA MA
Tanggal Pembuatan: 2024-12-04 15:35:32 Akhirnya memodifikasi: 2024-12-04 15:35:32
menyalin: 0 Jumlah klik: 547
1
fokus pada
1617
Pengikut

Sistem pelacakan laba-rugi perdagangan otomatis dengan rata-rata pergerakan indeks ganda

Ringkasan

Strategi ini adalah sistem perdagangan otomatis yang didasarkan pada moving average multi-indeks (EMA), yang membangun sinyal perdagangan dengan penilaian bertingkat pada EMA 5 siklus, 20 siklus, dan 50 siklus. Sistem ini dirancang secara unik dengan menggunakan penilaian EMA ganda berdasarkan harga tinggi, rendah, dan ditutup, dan menggabungkan mekanisme stop loss dan tracking stop loss yang dinamis untuk mengontrol risiko secara efektif sambil mengunci keuntungan.

Prinsip Strategi

Strategi untuk membuat keputusan trading berdasarkan EMA crossover dan hubungan posisi pada periode waktu yang banyak. Secara khusus:

  1. EMA 5 siklus, 20 siklus (berdasarkan harga tertinggi, terendah, dan harga penutupan) dan 50 siklus digunakan
  2. Kondisi untuk membangun gudang mengharuskan semua indikator untuk menampilkan urutan multihead yang jelas: 50 EMA < 20 EMA (titik rendah) < 20 EMA (titik dekat) < 20 EMA (titik tinggi) < 5 EMA
  3. Pada saat yang sama meminta harga saat ini berada di atas semua garis rata-rata untuk memastikan tren yang kuat
  4. Keluar menggunakan mekanisme ganda: untung ketika harga jatuh di bawah 5 siklus EMA, atau stop loss ketika harga mencapai 20 siklus EMA

Keunggulan Strategis

  1. Mekanisme pemfilteran bertingkat secara signifikan mengurangi sinyal palsu
  2. Menggunakan multiple EMA cross-confirmation untuk meningkatkan akurasi transaksi
  3. Posisi Stop Loss Dinamis, Adaptif terhadap Fluktuasi Pasar
  4. Sistem ini sepenuhnya otomatis, menghindari gangguan emosional manusia.
  5. Menggunakan mekanisme tracking stop-loss untuk mengunci keuntungan yang telah diperoleh

Risiko Strategis

  1. Pasar yang bergoyang-goyang mungkin sering masuk dan keluar.
  2. EMA pada dasarnya adalah indikator yang tertinggal, mungkin melewatkan titik awal
  3. Beberapa kondisi dapat menyebabkan kehilangan beberapa peluang perdagangan.
  4. Stop loss set pada 20 EMA mungkin relatif longgar

Arah optimasi strategi

  1. Meningkatkan mekanisme konfirmasi pengiriman dan meningkatkan keandalan sinyal
  2. Pertimbangkan untuk menambahkan indikator volatilitas, ukuran posisi yang disesuaikan secara dinamis
  3. Mengadopsi strategi yang lebih fleksibel, seperti pengurangan batch.
  4. Optimalkan waktu masuk yang dapat dikombinasikan dengan indikator berayun seperti RSI
  5. Pertimbangan untuk menambahkan penilaian kekuatan tren, memfilter pasar yang lemah

Meringkaskan

Ini adalah sistem perdagangan multi-linear yang dirancang dengan ketat untuk mengendalikan risiko secara efektif melalui pemfilteran bertingkat dan stop loss dinamis. Meskipun mungkin melewatkan beberapa tren cepat, kinerja stabil di pasar tren disarankan untuk menyesuaikan parameter sesuai dengan karakteristik pasar yang berbeda, dan pertimbangkan untuk menambahkan indikator tambahan seperti volume transaksi untuk meningkatkan keandalan.

Kode Sumber Strategi
/*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")