Strategi ini adalah sistem perdagangan mengikut trend berdasarkan isyarat silang purata bergerak eksponen 9 hari dan 20 hari (EMA). Ia menangkap pembalikan trend pasaran dengan memantau hubungan silang antara EMA cepat (9 hari) dan EMA perlahan (20 hari). Strategi ini menggunakan perdagangan berprogram untuk mencapai operasi automatik sepenuhnya, dengan berkesan mengelakkan gangguan emosi manusia.
Inti strategi menggunakan dua EMA dengan tempoh yang berbeza untuk mengenal pasti arah trend dan titik perubahan. Apabila EMA 9 hari melintasi di atas EMA 20 hari, sistem menghasilkan isyarat panjang; apabila EMA 9 hari melintasi di bawah EMA 20 hari, sistem menghasilkan isyarat pendek. EMA memberikan berat badan yang lebih besar kepada harga baru-baru ini, membolehkan tindak balas cepat terhadap perubahan harga dan menangkap pembalikan trend tepat pada masanya.
Strategi ini adalah sistem trend berikut klasik yang menangkap peluang pembalikan trend melalui persilangan EMA. Logik strategi adalah mudah dan jelas, menjadikannya mudah difahami dan dilaksanakan. Walau bagaimanapun, untuk perdagangan langsung, disyorkan untuk menggabungkannya dengan penunjuk teknikal lain dan kaedah pengurusan wang untuk meningkatkan lagi sistem perdagangan. Di samping itu, mengoptimumkan parameter mengikut ciri pasaran yang berbeza 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")