Sumber dimuat naik... memuat...

Strategi Stop Loss dan Take Profit Crossover Purata Bergerak Berganda

Penulis:ChaoZhang, Tarikh: 2024-06-03 11:02:26
Tag:EMAMACDKDJADX

img

Ringkasan

Strategi ini menggunakan persilangan dua purata bergerak eksponensial (EMA) dengan tempoh yang berbeza sebagai isyarat perdagangan, sambil menetapkan titik tetap stop loss dan mengambil tahap keuntungan. Apabila EMA jangka pendek melintasi di atas EMA jangka panjang, ia membuka kedudukan panjang; apabila EMA jangka pendek melintasi di bawah EMA jangka panjang, ia membuka kedudukan pendek. Strategi menetapkan titik tetap stop loss dan mengambil tahap keuntungan untuk mengawal risiko dan mengunci keuntungan.

Prinsip Strategi

  1. Mengira dua EMA dengan tempoh yang berbeza, lalai kepada 5 dan 200 tempoh.
  2. Apabila EMA 5 tempoh melintasi di atas EMA 200 tempoh, ia menghasilkan isyarat panjang; apabila EMA 5 tempoh melintasi di bawah EMA 200 tempoh, ia menghasilkan isyarat pendek.
  3. Selepas membuka kedudukan, tetapkan titik stop loss (default 50 mata) dan ambil mata keuntungan (default 200 mata).
  4. Tutup kedudukan apabila harga mencapai tahap mengambil keuntungan atau berhenti kerugian, atau kedudukan telah dipegang selama 200 tempoh dagangan.
  5. Sesuaikan titik mengambil keuntungan dan berhenti kerugian berdasarkan jumlah carta.

Kelebihan Strategi

  1. Sederhana dan mudah difahami: Logik strategi jelas dan mudah difahami dan dilaksanakan.
  2. Mengikuti trend: Menggunakan ciri-ciri trend EMA untuk menangkap trend pasaran dengan berkesan.
  3. Kawalan risiko: Menetapkan titik stop loss tetap berkesan mengawal risiko perdagangan tunggal.
  4. Fleksibiliti: mengambil keuntungan dan berhenti kehilangan titik boleh diselaraskan mengikut turun naik pasaran dan pilihan risiko peribadi.

Risiko Strategi

  1. Isyarat palsu: Perpindahan EMA boleh menghasilkan isyarat palsu, yang membawa kepada perdagangan dan kerugian modal yang kerap.
  2. Kelewatan trend: EMA adalah penunjuk yang tertinggal dan mungkin menghasilkan isyarat hanya selepas trend terbentuk, kehilangan peluang kemasukan terbaik.
  3. Pasaran terhad: Di pasaran terhad, persilangan EMA yang kerap boleh membawa kepada perdagangan yang kalah berturut-turut.
  4. Stop loss titik tetap: Stop loss titik tetap mungkin tidak menyesuaikan diri dengan perubahan dalam turun naik pasaran, mengakibatkan tahap stop loss yang tidak sesuai.

Arahan Pengoptimuman Strategi

  1. Memperkenalkan lebih banyak penunjuk: Gabungkan dengan penunjuk teknikal lain seperti MACD, RSI, dll., Untuk meningkatkan kebolehpercayaan isyarat.
  2. Mengoptimumkan parameter: Mengoptimumkan parameter seperti tempoh EMA, mengambil keuntungan dan titik berhenti kerugian, untuk meningkatkan prestasi strategi.
  3. Stop loss dinamik: Sesuaikan titik stop loss secara dinamik berdasarkan turun naik pasaran untuk menyesuaikan diri dengan perubahan pasaran.
  4. Pengurusan kedudukan: Memperkenalkan peraturan pengurusan kedudukan, seperti saiz kedudukan berasaskan risiko, untuk meningkatkan pulangan yang disesuaikan dengan risiko.
  5. Penapis: Tambah keadaan penapis isyarat dagangan, seperti jumlah dagangan, corak harga, dan sebagainya, untuk meningkatkan kualiti isyarat.

Ringkasan

Strategi stop loss dan mengambil keuntungan purata bergerak berganda adalah strategi perdagangan yang mudah dan mudah digunakan yang menjana isyarat perdagangan melalui crossover EMA sambil menetapkan stop loss titik tetap dan mengambil tahap keuntungan untuk mengawal risiko. Kelebihan strategi ini terletak pada logiknya yang jelas, pelaksanaan yang mudah, dan keupayaan untuk menangkap trend pasaran dengan berkesan. Walau bagaimanapun, ia juga menghadapi risiko seperti isyarat palsu, kelewatan trend, pasaran terhad jangkauan, dan tahap stop loss tetap. Arahan pengoptimuman termasuk memperkenalkan lebih banyak penunjuk, mengoptimumkan parameter, stop loss dinamik, pengurusan kedudukan, dan menambah penapis.


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


//@version=5
strategy("EMA5 Cross EAM200 && SL/TP 50 and 200 Point Target", overlay=true)

// Define input parameters for EMA lengths
ema_5 = input.int(5, title="Fast EMA Length")
ema_200 = input.int(200, title="Slow EMA Length")

// Define input parameters for stop loss and profit target in points
stopLossPoints = input.float(50, title="Stop Loss (Points)")
profitTargetPoints = input.float(200, title="Profit Target (Points)")

// Calculate EMAs
price = close
emafast = ta.ema(price, ema_5)
emaslow = ta.ema(price, ema_200)

// Plot EMAs on chart
plot(emafast, title="5-period EMA", color=color.black)
plot(emaslow, title="200-period EMA", color=color.blue)

// Extra lines if needed
ema_13 = input.int(13, title="13 EMA")
ema_13_line = ta.ema(price, ema_13)
plot(ema_13_line, title="13-period EMA", color=color.rgb(156, 39, 176, 90))

ema_20 = input.int(20, title="20 EMA")
ema_20_line = ta.ema(price, ema_20)
plot(ema_20_line, title="20-period EMA", color=color.red)


// Define entry conditions
longCondition = ta.crossover(emafast, emaslow)
shortCondition = ta.crossunder(emafast, emaslow)

// Counter to keep track of the number of bars since the entry
var int barCount = na

// Reset counter and enter long trade
if (longCondition)
    strategy.entry("Long", strategy.long, comment="Long")
    barCount := 0

// Reset counter and enter short trade
if (shortCondition)
    strategy.entry("Short", strategy.short, comment="Short")
    barCount := 0

// Increment counter if in trade
if (strategy.opentrades > 0)
    barCount += 1

// Calculate entry price
entryPrice = strategy.position_avg_price

// Exit long trade if stop loss, profit target hit, or 200 points have been reached
if (strategy.position_size > 0)
    strategy.exit("Take Profit/Stop Loss", "Long", stop=entryPrice - stopLossPoints, limit=entryPrice + profitTargetPoints)

// Exit short trade if stop loss, profit target hit, or 200 points have been reached
if (strategy.position_size < 0)
    strategy.exit("Take Profit/Stop Loss", "Short", stop=entryPrice + stopLossPoints, limit=entryPrice - profitTargetPoints)


Berkaitan

Lebih lanjut