Sumber dimuat naik... memuat...

Sistem Dagangan Crossover Triple EMA dengan Pengurusan Stop Loss berasaskan Smart R2R

Penulis:ChaoZhang, Tarikh: 2025-01-06 16:53:36
Tag:EMAR2R

img

Ringkasan

Ini adalah sistem perdagangan mengikut trend berdasarkan isyarat silang Exponential Moving Average (EMA) berganda. Sistem ini menggabungkan EMA8, EMA21, dan EMA89 untuk menjana isyarat perdagangan melalui crossover, dan mengintegrasikan pengurusan stop-loss pintar berdasarkan nisbah risiko-ke-balasan, mencapai pengurusan risiko automatik.

Prinsip Strategi

Sistem ini terdiri daripada modul fungsi teras berikut:

  1. Modul Generasi Isyarat: Menggunakan persilangan antara EMA8 pantas dan EMA21 sederhana untuk menentukan arah perdagangan, sementara memerlukan harga berada di atas atau di bawah EMA89 perlahan untuk mengesahkan trend utama
  2. Modul Pelaksanaan Perdagangan: Secara automatik membuka kedudukan apabila syarat panjang atau pendek dipenuhi, menetapkan tahap stop-loss awal dan mengambil keuntungan
  3. Modul Pengurusan Risiko: Memindahkan stop-loss secara automatik ke titik impas apabila pergerakan harga mencapai nisbah risiko-ke-balasan 1: 1, memastikan keuntungan bebas risiko
  4. Modul Visualisasi: Menggambar tiga EMA, titik kemasukan, dan penanda pergerakan stop-loss pada carta

Kelebihan Strategi

  1. Validasi Jangka Masa Berbilang: Memastikan trend melalui tiga EMA dari tempoh yang berbeza, meningkatkan kebolehpercayaan perdagangan
  2. Pengurusan Risiko Pintar: Mekanisme Stop-Loss berdasarkan nisbah risiko ke ganjaran mengurangkan pengeluaran sambil melindungi keuntungan
  3. Automasi Tinggi: Proses automatik sepenuhnya dari penjanaan isyarat hingga pengurusan kedudukan, mengurangkan campur tangan manusia
  4. Parameter yang boleh disesuaikan: Parameter utama seperti tempoh EMA dan peratusan stop-loss boleh dioptimumkan untuk ciri pasaran yang berbeza

Risiko Strategi

  1. Risiko pasaran yang berbelit-belit: Boleh menghasilkan isyarat pecah palsu yang kerap di pasaran sampingan
  2. Risiko slippage: Pelaksanaan stop-loss mungkin mengalami slippage di pasaran yang bergerak pantas
  3. Risiko Sistemik: Pergerakan pasaran tiba-tiba boleh menjadikan stop-loss tidak berkesan Penyelesaian:
  • Tambah penapis trend untuk mengenal pasti pasaran bergelombang
  • Tetapkan penyangga stop-loss yang munasabah
  • Melaksanakan mekanisme penyesuaian turun naik

Arahan Pengoptimuman Strategi

  1. Memasukkan Penunjuk Volume: Tambah pengesahan jumlah kepada isyarat silang EMA untuk meningkatkan kualiti isyarat
  2. Membangunkan Stop-Loss Dinamik: Sesuaikan jarak stop-loss berdasarkan turun naik pasaran untuk meningkatkan kebolehsesuaian strategi
  3. Mengoptimumkan Mekanisme Break-Even: Melaksanakan hentian trailing selepas mencapai sasaran R2R untuk menangkap lebih banyak keuntungan berpotensi
  4. Tambah penapis persekitaran pasaran: Reka bentuk penunjuk kekuatan trend untuk menyesuaikan parameter strategi dalam keadaan pasaran yang berbeza

Ringkasan

Strategi ini mencapai sistem dagangan trend-mengikut yang lengkap dengan menggabungkan sistem silang EMA klasik dengan kaedah pengurusan risiko moden. Kekuatan sistem terletak pada mekanisme penjanaan isyarat yang boleh dipercayai dan kaedah kawalan risiko yang pintar, tetapi parameter masih perlu dioptimumkan dan fungsi diperluaskan berdasarkan ciri pasaran tertentu dalam aplikasi praktikal. Melalui peningkatan dan pengoptimuman berterusan, strategi ini mempunyai potensi untuk mengekalkan prestasi yang stabil di pelbagai keadaan pasaran.


/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA Crossover with SL to BE", shorttitle="OmegaGalsky", overlay=true)

// Входни параметри
ema8_period = input.int(8, title="EMA 8 Period")
ema21_period = input.int(21, title="EMA 21 Period")
ema89_period = input.int(89, title="EMA 89 Period")
fixed_risk_reward = input.float(1.0, title="Risk/Reward Ratio (R2R)")
sl_percentage = input.float(0.001, title="Stop Loss Percentage", step=0.0001)
tp_percentage = input.float(0.0025, title="Take Profit Percentage", step=0.0001)

// Изчисляване на EMA
ema8 = ta.ema(close, ema8_period)
ema21 = ta.ema(close, ema21_period)
ema89 = ta.ema(close, ema89_period)

// Условия за BUY
buy_condition = ta.crossover(ema8, ema21) and close > ema89 and close > open

// Условия за SELL
sell_condition = ta.crossunder(ema8, ema21) and close < ema89 and close < open

// Вход в BUY позиция
if (buy_condition)
    stop_loss = close * (1 - sl_percentage)
    take_profit = close * (1 + tp_percentage)
    strategy.entry("BUY", strategy.long)
    strategy.exit("TP/SL", from_entry="BUY", stop=stop_loss, limit=take_profit)

// Вход в SELL позиция
if (sell_condition)
    stop_loss = close * (1 + sl_percentage)
    take_profit = close * (1 - tp_percentage)
    strategy.entry("SELL", strategy.short)
    strategy.exit("TP/SL", from_entry="SELL", stop=stop_loss, limit=take_profit)

// Логика за преместване на стоп към BE
if (strategy.position_size > 0)
    entry_price = strategy.position_avg_price
    // За LONG позиция
    if (strategy.position_size > 0 and high  >= entry_price + (entry_price * sl_percentage * fixed_risk_reward))
        strategy.exit("SL to BE", from_entry="BUY", stop=entry_price)
        label.new(bar_index, high, "SL moved to BE", color=color.green)
    // За SHORT позиция
    if (strategy.position_size < 0 and low <= entry_price - (entry_price * sl_percentage * fixed_risk_reward))
        strategy.exit("SL to BE", from_entry="SELL", stop=entry_price)
        label.new(bar_index, low, "SL moved to BE", color=color.red)

// Чертеж на EMA
plot(ema8, color=color.orange, title="EMA 8")
plot(ema21, color=color.blue, title="EMA 21")
plot(ema89, color=color.purple, title="EMA 89")


Berkaitan

Lebih lanjut