
La stratégie de synchronisation de tendances dynamiques est une stratégie de négociation qui combine l’indice de dynamique relative (RMI) et un indicateur de tendance actuelle personnalisé. La stratégie utilise une approche à plusieurs niveaux qui combine l’analyse de la dynamique et le jugement des tendances, offrant aux traders un mécanisme de négociation plus flexible et plus sensible.
L’indicateur RMI est une variante de l’indicateur de force relative (RSI), qui mesure la dynamique des hausses et des baisses de prix par rapport à la variation des prix au cours d’une période précédente. Sa formule de calcul est:
RMI = 100 - 100 / 1 + moyenne des hausses / moyenne des baisses)
L’indicateur RMI se situe entre 0 et 100. Plus la valeur est élevée, plus la hausse est forte, et plus la valeur est basse, plus la baisse est forte.
L’indicateur de la tendance actuelle combine une gamme de fluctuations réelles (ATR) et une moyenne mobile pour déterminer la direction de la tendance et le niveau de soutien ou de résistance dynamique. Sa formule de calcul est:
En haut: moyenne mobile + (ATR × F)
En bas: moyenne mobile - (ATR × F)
La moyenne mobile est la moyenne des prix de clôture des cycles M précédents.
ATR est la moyenne de la vraie gamme de fluctuation des cycles passés M
F est le multiplicateur de l’ajustement de sensibilité
Lorsque le prix franchit la trajectoire ascendante ou descendante de la tendance actuelle, il indique un changement de tendance, un point de signal possible d’entrée ou de sortie.
Conditions d’entrée :
Conditions de sortie (avec un arrêt dynamique):
Formule de calcul pour le stop dynamique:
L’avantage de cette stratégie réside dans la combinaison du jugement dynamique de RMI avec la tendance et la pause dynamique de presentTrend, permettant de suivre la tendance tout en contrôlant efficacement le risque.
Cette stratégie présente les avantages suivants:
Cette stratégie comporte aussi des risques:
Il est possible de réduire ces risques en assouplissant les conditions d’entrée, en optimisant les combinaisons de paramètres et en évaluant les tendances.
Cette stratégie peut être optimisée dans les directions suivantes:
La stratégie de synchronisation des tendances dynamiques est une stratégie de négociation à plusieurs niveaux, qui prend en compte à la fois les indicateurs de dynamique et les indicateurs de tendance. Elle est caractérisée par une excellente précision de jugement et un bon contrôle du risque. La stratégie peut être ajustée de manière flexible en fonction des préférences personnelles et, une fois optimisée en profondeur, peut tirer pleinement parti de l’avantage de la capture des tendances.
/*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)