
Strategi sinkronisasi trend dinamik adalah strategi perdagangan yang menggabungkan indeks dinamik relatif (RMI) dan penunjuk trend semasa yang disesuaikan. Strategi ini menggunakan pendekatan bertingkat yang menggabungkan analisis dinamik dengan penilaian trend, memberikan pedagang mekanisme perdagangan yang lebih fleksibel dan sensitif.
RMI merupakan varian daripada RSI (Relative Strength Index) yang mengukur besarnya momentum kenaikan dan penurunan harga berbanding dengan perubahan harga pada masa sebelumnya. Rumusnya ialah:
RMI = 100 - 100/{1 + purata kenaikan / purata penurunan)
Indeks RMI mempunyai nilai antara 0 dan 100, nilai yang lebih besar menunjukkan peningkatan yang lebih kuat, dan nilai yang lebih kecil menunjukkan penurunan yang lebih kuat.
Indikator presentTrend menggabungkan julat turun naik sebenar (ATR) dan purata bergerak untuk menentukan arah trend dan sokongan atau rintangan dinamik. Rumus pengiraan adalah:
Laluan atas: purata bergerak + (ATR × F)
Laluan bawah: purata bergerak - (ATR × F)
Rata-rata bergerak adalah purata harga penutupan untuk kitaran M yang lalu
ATR adalah purata rentang pergerakan sebenar untuk kitaran M yang lalu
F ialah kelipatan untuk menyesuaikan sensitiviti
Apabila harga menembusi arah atas dan bawah trend, ia menunjukkan perubahan trend dan mungkin titik isyarat masuk atau keluar.
Syarat penyertaan:
Keadaan keluar ((dengan kemusnahan dinamik):
Rumus untuk dinamika henti:
Kelebihan strategi ini ialah ia menggabungkan penilaian dinamik RMI dengan trend dan hentian dinamik presentTrend, yang dapat mengawal risiko dengan berkesan sambil mengikuti trend.
Strategi ini mempunyai kelebihan berikut:
Strategi ini juga mempunyai risiko:
Risiko di atas boleh dikurangkan dengan kelonggaran syarat kemasukan yang sesuai, mengoptimumkan kombinasi parameter, digabungkan dengan penilaian trend.
Strategi ini boleh dioptimumkan dalam beberapa arah:
Strategi sinkronisasi trend dinamik adalah strategi perdagangan bertingkat, dengan mempertimbangkan indikator dinamik dan indikator trend, dengan ciri-ciri ketepatan penghakiman dan kawalan risiko yang baik. Strategi ini boleh disesuaikan secara fleksibel mengikut keutamaan peribadi, dan setelah dioptimumkan secara mendalam, dapat memanfaatkan sepenuhnya kelebihan menangkap trend, merupakan strategi perdagangan yang disyorkan.
/*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)