Sumber dimuat naik... memuat...

Trend Stochastic EMA Berganda Berikutan Strategi Dagangan

Penulis:ChaoZhang, Tarikh: 2024-12-13 10:48:46
Tag:EMASMARSK

img

Ringkasan

Strategi ini adalah sistem dagangan trend-mengikuti berdasarkan EMA dua dan penunjuk Stochastic. Ia menggabungkan purata bergerak untuk menentukan trend pasaran sambil menggunakan penunjuk Stochastic untuk menangkap isyarat silang di kawasan overbought / oversold, dengan tahap stop-loss dan mengambil keuntungan dinamik untuk pengurusan risiko. Pendekatan ini memastikan kebolehpercayaan isyarat dan pengurusan ganjaran risiko yang berkesan untuk setiap perdagangan.

Prinsip Strategi

Strategi ini bergantung kepada beberapa elemen teras:

  1. Menggunakan EMA 50 dan 150 tempoh untuk menentukan arah trend pasaran
  2. Menggunakan penunjuk Stochastic (14,3,3) untuk mengenal pasti kawasan overbought/oversold
  3. Mencari isyarat persilangan Stochastic ke arah trend
  4. Menetapkan stop-loss dinamik berdasarkan tindakan harga baru-baru ini
  5. Menggunakan nisbah risiko-balasan 1: 2 untuk tahap mengambil keuntungan

Syarat pembelian memerlukan:

  • Harga penutupan di atas kedua-dua 50 dan 150 EMA
  • 50 EMA melebihi 150 EMA
  • Nilai K stokastik di bawah 30 dan garisan K melintasi di atas garisan D

Syarat jualan adalah bertentangan:

  • Harga tutup di bawah kedua-dua 50 dan 150 EMA
  • 50 EMA di bawah 150 EMA
  • Nilai K stokastik di atas 70 dan garis K menyeberang di bawah garis D

Kelebihan Strategi

  1. Mekanisme pengesahan berbilang meningkatkan kebolehpercayaan
  • Pengesahan trend melalui sistem EMA
  • Penapisan isyarat palsu menggunakan Stochastic
  • Pelbagai keadaan yang diperlukan untuk penjanaan isyarat
  1. Sistem pengurusan risiko yang komprehensif
  • Pendapatan yang diperolehi daripada pelaburan
  • Nisbah risiko-balasan tetap mengoptimumkan pulangan yang diharapkan
  • Pengesahan trend mengurangkan risiko pecah palsu
  1. Kemudahan penyesuaian yang tinggi
  • Berlaku untuk pelbagai jangka masa
  • Parameter yang boleh diselaraskan dengan ciri pasaran
  • Sesuai untuk pasaran dengan turun naik yang tinggi

Risiko Strategi

  1. Prestasi yang lemah di pasaran pelbagai
  • Perpindahan EMA yang kerap membawa kepada isyarat palsu
  • Disyorkan untuk tempoh trend yang jelas sahaja
  • Boleh diperbaiki dengan penapis trend
  1. Risiko penempatan stop-loss
  • Terlalu ketat boleh menyebabkan hentian kerap
  • Terlalu longgar boleh membawa kepada kerugian besar
  • Keperluan penyesuaian berdasarkan turun naik pasaran
  1. Risiko kelewatan
  • Sistem EMA mempunyai kelewatan yang melekat
  • Mungkin terlepas titik permulaan trend
  • Masa masuk memerlukan pertimbangan yang teliti

Arahan Pengoptimuman Strategi

  1. Tambah penapisan kekuatan trend
  • Memasukkan penunjuk ADX untuk kekuatan trend
  • Tetapkan ambang minimum kekuatan trend
  • Elakkan berdagang dalam trend yang lemah
  1. Mengoptimumkan parameter Stochastic
  • Penyesuaian parameter berdasarkan ciri pasaran
  • Pertimbangkan parameter penyesuaian
  • Tambah penunjuk teknikal tambahan untuk pengesahan
  1. Memperbaiki mekanisme stop-loss/take-profit
  • Pertimbangkan berhenti di belakang
  • Penyesuaian dinamik berdasarkan turun naik
  • Mengoptimumkan tetapan nisbah risiko-balasan

Ringkasan

Ini adalah sistem strategi lengkap yang menggabungkan trend berikut dan perdagangan momentum. Melalui gabungan sistem EMA dan penunjuk Stochastic, ia memastikan perdagangan sejajar dengan trend utama sambil memasuki tahap harga yang sesuai. Di samping itu, strategi termasuk mekanisme pengurusan risiko yang komprehensif, menggunakan stop-loss dinamik dan nisbah risiko-balasan tetap untuk mengawal risiko. Walaupun terdapat beberapa batasan yang melekat, prestasi keseluruhan strategi dapat ditingkatkan lagi melalui pengoptimuman yang dicadangkan. Dalam aplikasi praktikal, peniaga dinasihatkan untuk menyesuaikan parameter mengikut ciri pasaran tertentu dan keutamaan risiko mereka sendiri.


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

// This Pine Scriptâ„¢ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © quadawosanya

//@version=5
//indicator("My script")
//@version=5
strategy("EMA-Stochastic Strategy", overlay=true)

// EMA settings
ema50 = ta.ema(close, 50)
ema150 = ta.ema(close, 150)

// Stochastic settings
kLength = 14
dLength = 3
smoothK = 3
stochK = ta.sma(ta.stoch(close, high, low, kLength), smoothK)
stochD = ta.sma(stochK, dLength)

// Parameters for Stop Loss and Take Profit
var float stopLossLevel = na
var float takeProfitLevel = na

// Buy condition
buySignal = (close > ema50 and close > ema150) and (ema50 > ema150) and (stochK < 30 and ta.crossover(stochK, stochD))

// Sell condition
sellSignal = (close < ema50 and close < ema150) and (ema50 < ema150) and (stochK > 70 and ta.crossunder(stochK, stochD))

// Previous low for Stop Loss for Buy
lowBeforeBuy = ta.lowest(low, 5)

// Previous high for Stop Loss for Sell
highBeforeSell = ta.highest(high, 5)

// Entry and exit logic
if (buySignal)
    stopLossLevel := lowBeforeBuy
    risk = close - stopLossLevel
    takeProfitLevel := close + 2 * risk
    strategy.entry("Buy", strategy.long)
    strategy.exit("Take Profit/Stop Loss", "Buy", stop=stopLossLevel, limit=takeProfitLevel)

if (sellSignal)
    stopLossLevel := highBeforeSell
    risk = stopLossLevel - close
    takeProfitLevel := close - 2 * risk
    strategy.entry("Sell", strategy.short)
    strategy.exit("Take Profit/Stop Loss", "Sell", stop=stopLossLevel, limit=takeProfitLevel)

// Plotting EMAs
plot(ema50, color=color.blue, title="50 EMA")
plot(ema150, color=color.red, title="150 EMA")

// Visualize Buy and Sell signals
plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")

// Visualize Stop Loss and Take Profit levels
plot(stopLossLevel, color=color.red, style=plot.style_line, linewidth=2, title="Stop Loss")
plot(takeProfitLevel, color=color.green, style=plot.style_line, linewidth=2, title="Take Profit")


plot(close)


Berkaitan

Lebih lanjut