
Ringkasan
Strategi ini adalah strategi multi-headed yang didasarkan pada crossover EMA. Strategi ini juga menggabungkan Stop Loss (SL), Target Profit (TP) dan Tracking Stop Loss (TSL) sebagai langkah manajemen risiko tambahan untuk mengendalikan potensi risiko downside dan mengunci profit.
Prinsip Strategi
- Hitung EMA periode yang ditentukan (seperti 20)
- Ketika harga menembus EMA dari bawah, melakukan multiple entry.
- Setel harga stop loss sebagai persentase tertentu dari harga masuk (misalnya 1%) below.
- Tetapkan target harga keuntungan sebagai persentase tertentu dari harga masuk (misalnya 2%) di atas.
- Setting Tracking Stop Loss to a certain percentage of the current price (misalnya 0.5%) below, dan move up as the price goes up.
- Ketika harga jatuh dari atas EMA, atau ketika mencapai harga stop loss, harga target profit atau harga tracking stop loss, posisi kosong keluar.
Keunggulan Strategis
- Sederhana dan mudah dipahami: Strategi ini didasarkan pada indikator teknis EMA yang digunakan secara luas dan mudah dipahami dan diterapkan.
- Trend Following: Strategi ini dapat menangkap peluang tren potensial dengan masuk saat harga menembus EMA.
- Pengelolaan risiko: Pengendalian risiko, seperti penghentian loss, target profit, dan tracking loss, membantu mengendalikan risiko downside dan mengunci profit.
- Fleksibilitas: Parameter seperti siklus EMA, persentase stop loss, persentase target profit, dan persentase stop loss yang dapat dilacak dapat disesuaikan secara fleksibel sesuai dengan pasar dan gaya perdagangan yang berbeda.
Risiko Strategis
- False breakout: Harga dapat berbalik dengan cepat setelah melewati EMA, menyebabkan sinyal palsu dan potensi kerugian.
- Ketinggalan: Sebagai indikator keterlambatan, EMA mungkin hanya memberi sinyal setelah tren telah dimulai, kehilangan kesempatan masuk lebih awal.
- Pasar yang bergoyang: Dalam kondisi pasar yang bergoyang, seringnya EMA-crossing dapat menyebabkan overtrading dan potensi kerugian.
- Parameter sensitif: pengaturan parameter yang tidak tepat (misalnya siklus EMA atau persentase) dapat menyebabkan kinerja kebijakan yang buruk.
Arah optimasi strategi
- Kombinasi dengan indikator lain: Pertimbangkan untuk menggabungkan EMA dengan indikator teknis lainnya (seperti RSI, MACD, dll.) untuk meningkatkan keandalan sinyal dan menyaring sinyal palsu.
- Stop loss dan profit yang dinamis: Tujuan stop loss dan profit disesuaikan secara dinamis dengan volatilitas pasar atau tingkat harga, bukan menggunakan persentase tetap.
- Konfirmasi tren: Setelah EMA melintasi, menunggu bukti lebih lanjut untuk mengkonfirmasi tren yang telah terbentuk (seperti titik tinggi yang lebih tinggi atau titik rendah yang lebih tinggi) untuk mengurangi risiko false breakout.
- Analisis multi-frame waktu: observasi EMA yang bersilang pada berbagai frame waktu (seperti garis matahari, 4 jam, dll.) untuk mencari konfirmasi konsistensi tren pada beberapa frame waktu.
Meringkaskan
Strategi ini memberikan metode trading yang sederhana dan efektif berdasarkan EMA silang, dengan mengikuti tren potensial untuk menembus EMA, dan menggunakan langkah-langkah pengendalian risiko seperti stop loss, target profit, dan tracking stop loss. Namun, strategi ini memiliki risiko seperti false breakout, lag sinyal, kinerja pasar yang tidak baik dan sensitivitas parameter. Strategi optimasi dapat dipertimbangkan dalam kombinasi dengan indikator lain, pengaturan stop loss profit, identifikasi tren, dan analisis frame waktu ganda.
Kode Sumber Strategi
/*backtest
start: 2023-04-23 00:00:00
end: 2024-04-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Long Entry on EMA Cross with Risk Management", overlay=true)
// Parameters
emaLength = input(20, title="EMA Length")
stopLossPercent = input(1, title="Stop Loss %")
targetPercent = input(2, title="Target %")
trailingStopLossPercent = input(0.5, title="Trailing Stop Loss %")
// Calculate EMA
ema = ema(close, emaLength)
// Long Entry Condition
longCondition = crossover(close, ema)
// Exit Condition
exitCondition = crossunder(close, ema)
// Stop Loss, Target Profit, Trailing Stop Loss
stopLossLevel = strategy.position_avg_price * (1 - stopLossPercent / 100)
targetProfitLevel = strategy.position_avg_price * (1 + targetPercent / 100)
trailingStopLossLevel = close * (1 - trailingStopLossPercent / 100)
trailingStopLossLevel := max(trailingStopLossLevel, nz(trailingStopLossLevel[1]))
// Submit Long Order
strategy.entry("Long", strategy.long, when=longCondition)
// Submit Exit Orders
strategy.exit("Exit", "Long", stop=stopLossLevel, limit=targetProfitLevel, trail_offset=trailingStopLossLevel, when=exitCondition)
// Plot EMA
plot(ema, color=color.blue, linewidth=2)
// Plot Stop Loss, Target Profit, and Trailing Stop Loss Levels
plot(stopLossLevel, title="Stop Loss", color=color.red, linewidth=2)
plot(targetProfitLevel, title="Target Profit", color=color.green, linewidth=2)
plot(trailingStopLossLevel, title="Trailing Stop Loss", color=color.orange, linewidth=2)