Strategi ini adalah sistem perdagangan mengikuti tren berdasarkan sinyal silang dari rata-rata bergerak eksponensial (EMA) 9 hari dan 20 hari. Strategi ini menangkap pembalikan tren pasar dengan memantau hubungan silang antara EMA cepat (9 hari) dan EMA lambat (20 hari). Strategi ini menggunakan perdagangan terprogram untuk mencapai operasi otomatis sepenuhnya, secara efektif menghindari gangguan emosional manusia.
Inti dari strategi ini menggunakan dua EMA dengan periode yang berbeda untuk mengidentifikasi arah tren dan titik balik. Ketika EMA 9 hari melintasi di atas EMA 20 hari, sistem menghasilkan sinyal panjang; ketika EMA 9 hari melintasi di bawah EMA 20 hari, sistem menghasilkan sinyal pendek. EMA memberikan bobot yang lebih besar pada harga baru-baru ini, memungkinkan respons cepat terhadap perubahan harga dan menangkap pembalikan tren tepat waktu.
Strategi ini adalah sistem trend following klasik yang menangkap peluang pembalikan tren melalui crossover EMA. Logika strategi sederhana dan jelas, membuatnya mudah dimengerti dan diimplementasikan. Namun, untuk perdagangan langsung, disarankan untuk menggabungkannya dengan indikator teknis lainnya dan metode manajemen uang untuk lebih meningkatkan sistem perdagangan. Selain itu, mengoptimalkan parameter sesuai dengan karakteristik pasar yang berbeda dapat meningkatkan kepraktisan strategi.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-04 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Strategy with Buttons", overlay=true) // Input parameters for EMAs shortEmaLength = input(9, title="Short EMA Length") longEmaLength = input(20, title="Long EMA Length") // Calculate EMAs shortEma = ta.ema(close, shortEmaLength) longEma = ta.ema(close, longEmaLength) // Plot EMAs plot(shortEma, color=color.blue, title="9 EMA") plot(longEma, color=color.red, title="20 EMA") // Buy and Sell Logic longCondition = ta.crossover(shortEma, longEma) shortCondition = ta.crossunder(shortEma, longEma) // Buy Button if (ta.change(longCondition)) if (longCondition) strategy.entry("Buy", strategy.long) // Sell Button if (ta.change(shortCondition)) if (shortCondition) strategy.entry("Sell", strategy.short) // Alert Conditions alertcondition(longCondition, title="Buy Alert", message="Buy Signal") alertcondition(shortCondition, title="Sell Alert", message="Sell Signal")