Strategi ini adalah strategi trend following berdasarkan EMA crossover untuk menghasilkan sinyal trading. Strategi ini menggunakan crossover antara EMA cepat dan lambat untuk menentukan perubahan tren harga dan masuk ke pasar pada awal tren dan keluar di akhir, untuk mendapatkan keuntungan.
Strategi ini menggunakan EMA yang lebih cepat dengan periode 20, yang bereaksi sensitif terhadap perubahan harga, dan EMA yang lebih lambat dengan periode 50, yang merespons lebih lancar.
Ketika EMA yang lebih cepat melintasi di atas EMA yang lebih lambat, itu menandakan tren harga naik, menunjukkan peluang untuk membeli.
Berdasarkan sinyal ini, kita dapat membuat keputusan perdagangan yang sesuai: pergi panjang ketika sinyal beli muncul dan pergi pendek ketika sinyal jual muncul.
Solusi:
Strategi ini dapat ditingkatkan dalam hal berikut:
Mengoptimalkan parameter EMA dengan menguji kombinasi yang berbeda untuk menemukan parameter yang paling menguntungkan.
Tambahkan kondisi penyaringan menggunakan indikator lain seperti MACD, KDJ untuk menghindari sinyal palsu.
Menggabungkan mekanisme stop loss seperti stop tetap atau trailing untuk mengendalikan kerugian perdagangan tunggal.
Pertimbangkan untuk menggabungkan dengan strategi lain, seperti mengikuti tren untuk naik momentum, atau berarti kemunduran untuk mengambil posisi pembalikan ketika harga melampaui.
Ini adalah tren yang sangat tipikal mengikuti strategi. Ini menangkap tren harga secara efektif melalui penyeberangan EMA cepat dan lambat yang sederhana. Ada juga beberapa masalah seperti keterlambatan masuk, kerugian whipsaw. Tapi semua masalah ini memiliki solusi. Secara keseluruhan, ini memberikan kerangka strategi yang baik yang dapat ditingkatkan lebih lanjut melalui penyesuaian parameter, penyaringan, stop loss dll untuk kinerja praktis yang baik.
/*backtest start: 2023-02-20 00:00:00 end: 2024-02-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Habitrade EMA Cross Strategy"), overlay=true //Input for EMA lengths emaShortLength = input.int(20, title="Short EMA Length") emaLongLength = input.int(50, title="Long EMA Length") //Calculate EMAs based on inputs emaShort = ta.ema(close, emaShortLength) emaLong = ta.ema(close, emaLongLength) //Plot the EMAs plot(emaShort, color=color.blue, linewidth=2, title="EMA Short") plot(emaLong, color=color.orange, linewidth=2, title="EMA Long") //Generate long and short signals longCondition = ta.crossover(emaShort, emaLong) shortCondition = ta.crossunder(emaShort, emaLong) //Enter long positions if (longCondition) strategy.entry("Long", strategy.long) //Enter short positions if (shortCondition) strategy.entry("Short", strategy.short) //Close long positions if (shortCondition) strategy.close("Long") //Clos short positions if (longCondition) strategy.close("Short")