Strategi ini adalah strategi EMA trend following yang khas. Ini menggunakan salib emas dari EMA cepat dan EMA lambat untuk menentukan uptrends, dan salib kematian untuk menentukan downtrends, untuk perdagangan panjang dan pendek sesuai. Strategi ini dapat diandalkan melacak tren jangka menengah hingga panjang dan cocok untuk perdagangan swing.
Logika inti adalah:
Menggunakan EMA dengan kecepatan yang berbeda dapat secara efektif mendeteksi perubahan tren. EMA cepat bereaksi dengan cepat terhadap perubahan harga untuk deteksi tren awal, sementara EMA lambat menyaring sinyal palsu untuk memastikan konfirmasi tren.
Pembebasan dari EMA yang cepat membantu menghentikan kerugian secara tepat waktu.
Pengurangan:
Strategi ini dapat ditingkatkan di bidang-bidang seperti:
Pembelajaran mesin untuk menyesuaikan parameter EMA secara otomatis untuk fleksibilitas yang lebih baik
Ukuran posisi berdasarkan volatilitas untuk menyesuaikan dengan volatilitas pasar
Osilator seperti RSI untuk menyempurnakan titik masuk
Menambahkan trailing stop, profit taking stop untuk manajemen risiko yang lebih baik
Analisis volume untuk mengukur arus masuk/arus keluar dana untuk verifikasi tren
Kombinasi portofolio dengan strategi yang tidak berkorelasi untuk mengurangi penarikan dan meningkatkan stabilitas laba
EMA trend following strategy adalah cara sederhana dan praktis untuk melacak tren jangka menengah hingga panjang. Ini menggunakan EMA cepat dan lambat untuk waktu masuk. Mudah diterapkan, juga dapat diperluas dalam beberapa dimensi untuk fleksibilitas yang lebih besar. Sangat cocok untuk pasar tren perdagangan swing.
/*backtest start: 2023-09-11 00:00:00 end: 2023-09-18 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © HomoDeus666 //@version=5 strategy("EMA12/26 with date backtest range (BTCpair)", overlay=true,initial_capital = 1,commission_type = strategy.commission.percent,currency = currency.BTC) //input date and time useDateFilter = input.bool(true, title="Filter Date Range of Backtest", group="Backtest Time Period") backtestStartDate = input(timestamp("1 Jan 2021"), title="Start Date", group="Backtest Time Period", tooltip="This start date is in the time zone of the exchange " + "where the chart's instrument trades. It doesn't use the time " + "zone of the chart or of your computer.") backtestEndDate = input(timestamp("1 Jan 2022"), title="End Date", group="Backtest Time Period", tooltip="This end date is in the time zone of the exchange " + "where the chart's instrument trades. It doesn't use the time " + "zone of the chart or of your computer.") //check date and time option inTradeWindow = true /// plot and indicator fastEMA = ta.ema(close,12), slowEMA=ta.ema(close,26) plot(fastEMA,color=color.green,linewidth = 2) plot(slowEMA,color=color.red,linewidth=2) //entry when condition longCondition = ta.crossover(fastEMA,slowEMA) if (longCondition) and inTradeWindow strategy.entry("buy", strategy.long) if ta.crossunder(ta.ema(close, 12), ta.ema(close, 26)) and inTradeWindow strategy.close("buy") // trades and cancel all unfilled pending orders if not inTradeWindow and inTradeWindow[1] strategy.cancel_all() strategy.close_all(comment="Date Range Exit")