Momentum Trend Synergy Strategy menggabungkan Relative Momentum Index (RMI) dan indikator tren saat ini yang disesuaikan menjadi satu pendekatan perdagangan yang kuat.
RMI adalah variasi dari Relative Strength Index (RSI) yang mengukur momentum pergerakan naik dan turun relatif terhadap perubahan harga sebelumnya selama periode tertentu.
RMI = 100 - 100/(1 + Rata-rata Meningkat/Rata-rata Menurun)
Nilai RMI berkisar dari 0 hingga 100. Angka yang lebih tinggi menunjukkan momentum naik yang lebih kuat sementara nilai yang lebih rendah menunjukkan momentum turun yang lebih kuat.
Indikator currentTrend menggabungkan Average True Range (ATR) dengan moving average untuk menentukan arah tren dan tingkat support/resistance dinamis. presentTrend selama M periode dan multiplier F adalah:
Band atas: MA + (ATR x F)
Band bawah: MA - (ATR x F)
MA adalah rata-rata pergerakan penutupan selama M periode.
ATR adalah rentang rata-rata yang benar selama periode M.
F adalah pengganda untuk menyesuaikan sensitivitas.
Arah tren berubah ketika harga melintasi band tren saat ini, menandakan titik masuk atau keluar potensial.
Syarat masuk:
Kondisi keluar dengan Dynamic Trailing Stop:
Persamaan untuk Dynamic Trailing Stop:
Analisis ganda momentum RMI dan arah tren saat ini / trailing stop adalah kekuatan strategi ini.
Keuntungan dari strategi ini meliputi:
Potensi risiko yang perlu dipertimbangkan:
Optimasi parameter yang tepat, keselarasan tren, dan penyempurnaan logika masuk dapat mengurangi risiko di atas.
Bidang untuk peningkatan strategi meliputi:
Momentum Trend Synergy Strategy menyediakan pendekatan berlapis-lapis, menggabungkan indikator momentum dan tren untuk perdagangan yang akurat dan dikelola risiko. Kustomisasi tinggi dari strategi ini memungkinkan pedagang untuk menyesuaikannya dengan gaya pribadi dan lingkungan pasar mereka. Ketika dioptimalkan, ia dapat sepenuhnya memanfaatkan kemampuan menangkap tren untuk kinerja yang kuat. Dengan demikian, ini merupakan tambahan yang direkomendasikan untuk sebagian besar kotak alat perdagangan.
/*backtest start: 2024-01-19 00:00:00 end: 2024-02-18 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © PresentTrading //@version=5 strategy("PresentTrend RMI Synergy - Strategy [presentTrading]", shorttitle="PresentTrend RMI Synergy - Strategy [presentTrading]", overlay=false) // Inputs tradeDirection = input.string("Both", title="Trade Direction", options=["Long", "Short", "Both"]) lengthRMI = input.int(21, title="RMI Length") lengthSuperTrend = input.int(5, title="presentTrend Length") multiplierSuperTrend = input.float(4.0, title="presentTrend Multiplier") // RMI Calculation up = ta.rma(math.max(ta.change(close), 0), lengthRMI) down = ta.rma(-math.min(ta.change(close), 0), lengthRMI) rmi = 100 - (100 / (1 + up / down)) // PresentTrend Dynamic Threshold Calculation (Simplified Example) presentTrend = ta.sma(close, lengthRMI) * multiplierSuperTrend // Simplified for demonstration // SuperTrend for Dynamic Trailing Stop atr = ta.atr(lengthSuperTrend) upperBand = ta.sma(close, lengthSuperTrend) + multiplierSuperTrend * atr lowerBand = ta.sma(close, lengthSuperTrend) - multiplierSuperTrend * atr trendDirection = close > ta.sma(close, lengthSuperTrend) ? 1 : -1 // Entry Logic longEntry = rmi > 60 and trendDirection == 1 shortEntry = rmi < 40 and trendDirection == -1 // Exit Logic with Dynamic Trailing Stop longExitPrice = trendDirection == 1 ? lowerBand : na shortExitPrice = trendDirection == -1 ? upperBand : na // Strategy Execution if (tradeDirection == "Long" or tradeDirection == "Both") and longEntry strategy.entry("Long Entry", strategy.long) strategy.exit("Exit Long", stop=longExitPrice) if (tradeDirection == "Short" or tradeDirection == "Both") and shortEntry strategy.entry("Short Entry", strategy.short) strategy.exit("Exit Short", stop=shortExitPrice) // Visualization plot(rmi, title="RMI", color=color.orange) hline(50, "Baseline", color=color.white) hline(30, "Baseline", color=color.blue) hline(70, "Baseline", color=color.blue)