Strategi ini disebut
Strategi ini menggunakan EMA 5 hari dan EMA 21 hari untuk membentuk saluran EMA. Ketika EMA 5 hari melintasi di atas EMA 21 hari, itu dianggap sebagai tanda bullish. Ketika EMA 5 hari melintasi di bawah EMA 21 hari, itu dianggap sebagai tanda bearish. Histogram MACD dapat menyaring sinyal palsu. Sinyal beli hanya dihasilkan ketika histogram MACD di atas 0. Sinyal jual hanya dihasilkan ketika histogram MACD di bawah 0. Setelah sinyal dipicu, pesanan ditempatkan dengan stop loss tetap dan mengambil keuntungan. Jika harga kembali ke saluran EMA, sinyal akan dipicu lagi untuk mengikuti tren.
Strategi ini menggabungkan identifikasi tren dan penyaringan indikator, yang dapat secara efektif mengidentifikasi arah tren jangka pendek. Menggunakan saluran EMA untuk menentukan arah tren utama dan histogram MACD untuk menyaring sinyal palsu dapat sangat meningkatkan profitabilitas. Mekanisme stop loss dan take profit tetap juga memastikan rasio risiko-manfaat yang baik. Secara keseluruhan, strategi ini cocok untuk perdagangan jangka pendek, terutama untuk saham dan forex dengan momentum yang kuat.
Strategi ini terutama cocok untuk perdagangan jangka pendek dan berkinerja buruk di pasar jangka panjang dan berkisar. Di pasar samping jangka panjang, penyeberangan saluran EMA sering terjadi tetapi sebagian besar adalah sinyal palsu. Meskipun histogram MACD dapat memainkan peran dalam penyaringan, efektivitasnya masih terbatas. Juga, stop loss tetap dan mengambil keuntungan membuat sulit untuk menangkap keuntungan tambahan dari tren jangka panjang. Jadi ini adalah risiko utama strategi ini. Solusinya adalah menyesuaikan parameter secara fleksibel berdasarkan kondisi pasar, atau beralih ke strategi lain yang lebih cocok untuk kondisi pasar saat ini.
Strategi dapat dioptimalkan dalam aspek berikut:
Mengoptimalkan parameter EMA untuk menemukan kombinasi parameter yang memaksimalkan pengembalian untuk instrumen perdagangan tertentu.
Mengoptimalkan parameter MACD untuk meningkatkan efektivitas penyaringan.
Menggabungkan indikator volatilitas untuk memperluas jangkauan stop loss ketika volatilitas pasar meningkat.
Tambahkan mekanisme stop loss trailing untuk membuat stop loss lebih dekat dengan harga, mengurangi pemicu stop loss yang tidak perlu sambil memastikan profitabilitas.
Strategi ini memiliki profitabilitas yang relatif tinggi dan sangat cocok untuk perdagangan jangka pendek. Ini adalah pilihan yang baik di antara strategi perdagangan kuantitatif frekuensi tinggi. Tetapi pedagang perlu menyesuaikan parameter secara wajar berdasarkan kondisi pasar saat menggunakannya, untuk memaksimalkan pengembalian strategi sambil mengendalikan risiko perdagangan.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m 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/ // © moondevonyt //@version=5 strategy("Scalping with EMA channel and MACD", overlay=true) // Exponential moving average inputs ema21 = ta.ema(close, 21) ema5 = ta.ema(close, 5) // MACD inputs fastLength = 18 slowLength = 34 signalSmoothing = 12 [macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing) macdHistogram = macdLine - signalLine // Buy and sell conditions buyCondition = ta.crossover(ema5, ema21) and macdHistogram > 0 sellCondition = ta.crossunder(ema5, ema21) and macdHistogram < 0 // Re-entry conditions reEntryBuyCondition = close > ema21 reEntrySellCondition = close < ema21 // Set stop loss and take profit stopLoss = 8 takeProfit = 15 // Execute Strategy if buyCondition strategy.entry("Buy", strategy.long) strategy.exit("Take Profit/Stop Loss", "Buy", stop=close - stopLoss, limit=close + takeProfit) if reEntryBuyCondition strategy.entry("Re-Enter Buy", strategy.long) strategy.exit("Take Profit/Stop Loss", "Re-Enter Buy", stop=close - stopLoss, limit=close + takeProfit) if sellCondition strategy.entry("Sell", strategy.short) strategy.exit("Take Profit/Stop Loss", "Sell", stop=close + stopLoss, limit=close - takeProfit) if reEntrySellCondition strategy.entry("Re-Enter Sell", strategy.short) strategy.exit("Take Profit/Stop Loss", "Re-Enter Sell", stop=close + stopLoss, limit=close - takeProfit) // Plotting EMAs and MACD plot(ema21, color=color.blue, title="21 EMA") plot(ema5, color=color.orange, title="5 EMA") plot(macdHistogram, color=color.red, title="MACD Histogram") // Plot buy and sell signals plotshape(series=buyCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal") plotshape(series=sellCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")