
La stratégie est basée sur les retraits Fibonacci et les moyennes mobiles et vise à capturer les opportunités de retraits dans les tendances du marché. Elle détermine les niveaux de retraits Fibonacci en calculant les plus hauts et les plus bas des différents cycles et en utilisant les moyennes mobiles pour confirmer la direction de la tendance. La stratégie ne considère l’entrée dans des positions multiples que lorsque les prix sont supérieurs aux moyennes mobiles à long terme et à moyen terme et négocie lorsque les prix se retirent vers les niveaux critiques de Fibonacci.
Le principe central de cette stratégie est d’utiliser les niveaux de retraits de Fibonacci et les moyennes mobiles pour identifier les points d’entrée potentiels. Tout d’abord, on calcule les moyennes mobiles simples à long terme (en 200 cycles) et à moyen terme (en 50 cycles) pour déterminer la direction de la tendance globale. Ensuite, on calcule les prix les plus élevés et les plus bas pour les cycles 21, 50 et 9 et on calcule les niveaux de retraits de Fibonacci correspondants en fonction de ces prix.
La stratégie n’entre dans une position de multiples que si les conditions suivantes sont remplies: le prix est supérieur à la moyenne mobile à 200 cycles et à 50 cycles et le prix est inférieur à un niveau de rétractation égal à 50%. Une fois entrée, la position d’arrêt est définie comme le prix moyen d’ouverture de la position plus la différence entre le prix moyen d’ouverture de la position et le niveau de rétractation de 78,6% multiplié par le rapport de retour au risque.
Confirmation de tendance: cette stratégie utilise des moyennes mobiles à long terme et à moyen terme pour confirmer la direction de la tendance générale, ce qui permet d’éviter de négocier dans des marchés défavorables.
Niveaux de rétractation dynamiques: en calculant les plus hauts et les plus bas prix de différentes périodes (< 21 cycles, < 50 cycles et < 9 cycles), la stratégie est capable d’ajuster dynamiquement les niveaux de rétractation Fibonacci clés pour s’adapter à différentes conditions du marché.
Gestion des risques: La stratégie utilise des rapports de risque/rendement prédéfinis pour déterminer les niveaux de stop-loss et de stop-loss, ce qui permet de gérer les risques liés aux transactions et d’optimiser les rendements potentiels.
Aide visuelle: la stratégie trace les moyennes mobiles et les niveaux critiques de rétractation de Fibonacci sur un graphique, fournissant aux traders une référence visuelle claire pour les aider à prendre des décisions commerciales éclairées.
Entrée retardée: dans des conditions de marché en évolution rapide, attendre que les prix se retirent vers les niveaux critiques de Fibonacci peut entraîner la perte de l’option d’entrée optimale.
Faux signaux: dans certains cas, les prix peuvent brièvement dépasser les niveaux critiques de Fibonacci, mais se rétablissent rapidement, ce qui entraîne de faux signaux de trading.
Retour de tendance: la stratégie fonctionne mieux dans un marché en tendance. Si la tendance est inversée, la stratégie peut subir des pertes.
Sensitivité des paramètres: la performance de la stratégie dépend en grande partie des paramètres choisis, tels que la longueur de la moyenne mobile et le cycle de rétraction de Fibonacci. Un choix inapproprié des paramètres peut entraîner des résultats sous-optimisés.
Optimisation des paramètres dynamiques: mise en œuvre d’un mécanisme d’adaptation pour ajuster dynamiquement les paramètres de la stratégie, tels que la longueur des moyennes mobiles et les cycles de rétractation de Fibonacci, afin de s’adapter aux conditions changeantes du marché.
Analyse à plusieurs périodes: analyse combinée à plusieurs périodes afin d’obtenir une vue plus complète du marché et de confirmer les signaux de trading.
Amélioration de la gestion des risques: l’introduction de techniques de gestion des risques plus avancées, telles que l’ajustement de position basé sur la volatilité ou le suivi des arrêts de perte, pour mieux protéger le capital et gérer les risques de transaction.
Portfolio d’indicateurs: la combinaison d’autres indicateurs techniques (comme les indices de force relative ou les oscillateurs aléatoires) avec les moyennes mobiles et les niveaux de rétractation de Fibonacci existants pour améliorer l’exactitude et la fiabilité des signaux de négociation.
La stratégie de retraite Fibonacci dynamique est une méthode de négociation basée sur l’analyse technique visant à identifier les opportunités d’entrée potentielles dans un marché en tendance en utilisant les niveaux de retraite Fibonacci et les moyennes mobiles. La stratégie fournit aux traders une méthode structurée pour gérer les risques et optimiser les rendements en calculant dynamiquement les niveaux de retraite critiques et en confirmant la direction de la tendance.
/*backtest
start: 2023-06-11 00:00:00
end: 2024-06-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("50% Retracement Strategy", overlay=true)
// Input Parameters
len_200 = input.int(200, title="200-period Moving Average")
len_50 = input.int(50, title="50-period Moving Average")
len_21 = input.int(21, title="21-candle Retracement")
len_9 = input.int(9, title="9-candle Retracement")
risk_reward_ratio = input.float(2.0, title="Risk/Reward Ratio")
// Moving Averages
ma_200 = ta.sma(close, len_200)
ma_50 = ta.sma(close, len_50)
// Fibonacci Retracement Levels
var float fib_50_level = na
var float fib_786_level = na
if (close > ma_200 and close > ma_50)
// Calculate retracements for different periods
retrace_21_high = ta.highest(high, len_21)
retrace_21_low = ta.lowest(low, len_21)
retrace_21_mid = (retrace_21_high + retrace_21_low) / 2
retrace_50_high = ta.highest(high, len_50)
retrace_50_low = ta.lowest(low, len_50)
retrace_50_mid = (retrace_50_high + retrace_50_low) / 2
retrace_9_high = ta.highest(high, len_9)
retrace_9_low = ta.lowest(low, len_9)
retrace_9_mid = (retrace_9_high + retrace_9_low) / 2
// Choose the retracement to use (you can adjust this logic)
fib_50_level := (retrace_21_mid + retrace_50_mid + retrace_9_mid) / 3
fib_786_level := (retrace_21_high + retrace_50_high + retrace_9_high) / 3 - ((retrace_21_high + retrace_50_high + retrace_9_high - (retrace_21_low + retrace_50_low + retrace_9_low)) * 0.786)
// Strategy Entry
longCondition = close > ma_200 and close > ma_50 and close <= fib_50_level
if (longCondition)
strategy.entry("Long", strategy.long)
// Strategy Exit
takeProfitLevel = strategy.position_avg_price + (strategy.position_avg_price - fib_786_level) * risk_reward_ratio
stopLossLevel = fib_786_level
strategy.exit("Take Profit", "Long", limit=takeProfitLevel, stop=stopLossLevel)
// Plotting
plot(ma_200, color=color.blue, title="200-period MA")
plot(ma_50, color=color.red, title="50-period MA")
plot(fib_50_level, color=color.green, title="50% Retracement Level")
plot(fib_786_level, color=color.orange, title="78.6% Retracement Level")