Stratégie de suivi de tendance adaptative combinée à un système de contrôle de retracement dynamique

RSI EMA DD SL TP
Date de création: 2024-12-20 16:59:37 Dernière modification: 2024-12-20 16:59:37
Copier: 2 Nombre de clics: 431
1
Suivre
1617
Abonnés

Stratégie de suivi de tendance adaptative combinée à un système de contrôle de retracement dynamique

Aperçu

La stratégie est un système de trading intégré qui combine le suivi de la tendance et le contrôle du risque. Elle utilise l’indice de 200 cycles, les moyennes mobiles (EMA) comme filtre de tendance, l’indicateur relativement faible (RSI) comme signal d’entrée, tout en intégrant les mécanismes de contrôle des arrêts, des arrêts et des retraits maximaux. La principale caractéristique de la stratégie est de maintenir l’avantage de suivi de la tendance tout en contrôlant strictement le risque par le suivi des retraits dynamiques.

Principe de stratégie

La logique centrale de la stratégie comprend les éléments clés suivants:

  1. Identification des tendances: utilisez l’EMA à 200 cycles comme principal indicateur de tendance et ne considérez que les prix au-dessus de l’EMA.
  2. Confirmation de la dynamique: l’utilisation de l’indicateur RSI comme outil de confirmation de la dynamique, l’entrée est autorisée lorsque la valeur RSI dépasse le seuil de réglage (default 50).
  3. Gestion des risques :
    • Réglage des pourcentages d’arrêt (défault 20%) et d’arrêt (défault 40%)
    • Système de suivi des retraits dynamiques, qui se démarque automatiquement de tous les détenteurs de positions lorsque la retraite globale de la stratégie dépasse la limite de réglage (default 30%)
  4. Gestion des positions: le contrôle des positions est effectué à l’aide du pourcentage d’intérêt du compte (par défaut 10%).

Avantages stratégiques

  1. Adaptabilité: grâce à une combinaison d’EMA et de RSI, la stratégie peut s’adapter à différentes conditions du marché
  2. Contrôle des risques: un mécanisme de contrôle des risques à plusieurs niveaux comprenant des limites de perte, d’arrêt et de retrait
  3. Science de la gestion des fonds: utilisez les pourcentages de droits et intérêts du compte pour gérer les positions et éviter les risques liés aux mains fixes
  4. Logique stratégique claire, des signaux clairs et une exécution automatique facile
  5. Scalabilité: les composants de base peuvent être ajustés indépendamment pour une optimisation supplémentaire

Risque stratégique

  1. Risque de renversement de tendance: l’EMA en tant qu’indicateur de retard peut ne pas réagir suffisamment rapidement en cas de renversement de tendance
  2. Risque de choc: les faux signaux peuvent être fréquents dans les marchés à choc horizontal
  3. Sensitivité des paramètres: les effets de stratégie sont sensibles aux paramètres et nécessitent un ajustement soigneux
  4. Effets des points de glissement: les ordres stop-loss peuvent présenter un risque de points de glissement en cas de forte volatilité du marché Solution:
  • Le renforcement des mécanismes de confirmation des tendances
  • Mise en place d’un système de reconnaissance de l’environnement du marché
  • Optimisation avec des paramètres d’adaptation
  • Stratégies d’exécution de commande intelligentes

Orientation de l’optimisation de la stratégie

  1. Identification de l’environnement du marché: augmentation des indicateurs de volatilité et adaptation des paramètres stratégiques en fonction des différentes conditions du marché
  2. Optimisation dynamique des paramètres: introduction d’algorithmes d’apprentissage automatique permettant un ajustement adaptatif des paramètres
  3. Optimisation du filtrage du signal: augmentation des indicateurs auxiliaires tels que le volume de trafic, amélioration de la qualité du signal
  4. Renforcement du contrôle des risques: introduction d’un mécanisme d’arrêt dynamique, permettant d’ajuster la position de l’arrêt en fonction des fluctuations du marché
  5. Analyse de plusieurs périodes: intégrer des signaux de plusieurs périodes pour améliorer la précision des décisions de négociation

Résumer

La stratégie construit un système de trading complet en combinant le suivi des tendances et un contrôle rigoureux des risques. Son avantage central réside dans l’intégrité de la gestion des risques et la clarté de la logique de la stratégie. Grâce à un mécanisme de contrôle des risques à plusieurs niveaux, la stratégie est capable de contrôler efficacement les retraits tout en poursuivant les gains.

Code source de la stratégie
/*backtest
start: 2024-11-19 00:00:00
end: 2024-12-19 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Disruptor Trend-Following (Drawdown < 30%)", shorttitle="DisruptorStrategyDD", overlay=true)

//-----------------------------------------------------
// User Inputs
//-----------------------------------------------------
emaLen         = input.int(200,  "Long EMA Length",    minval=1)
rsiLen         = input.int(14,   "RSI Length",         minval=1)
rsiThreshold   = input.float(50, "RSI Buy Threshold",  minval=1, maxval=100)
stopLossPerc   = input.float(20, "Stop-Loss %",        minval=0.1, step=0.1)
takeProfitPerc = input.float(40, "Take-Profit %",      minval=0.1, step=0.1)
ddLimit        = input.float(30, "Max Drawdown %",     minval=0.1, step=0.1)

//-----------------------------------------------------
// Indicators
//-----------------------------------------------------
emaValue       = ta.ema(close, emaLen)
rsiValue       = ta.rsi(close, rsiLen)

//-----------------------------------------------------
// Conditions
//-----------------------------------------------------
longCondition  = close > emaValue and rsiValue > rsiThreshold
exitCondition  = close < emaValue or rsiValue < rsiThreshold

//-----------------------------------------------------
// Position Tracking
//-----------------------------------------------------
var bool inTrade = false

if longCondition and not inTrade
    strategy.entry("Long", strategy.long)

if inTrade and exitCondition
    strategy.close("Long")

inTrade := strategy.position_size > 0

//-----------------------------------------------------
// Stop-Loss & Take-Profit
//-----------------------------------------------------
if inTrade
    stopPrice       = strategy.position_avg_price * (1 - stopLossPerc / 100)
    takeProfitPrice = strategy.position_avg_price * (1 + takeProfitPerc / 100)
    strategy.exit("Exit", from_entry="Long", stop=stopPrice, limit=takeProfitPrice)

//-----------------------------------------------------
// Dynamic Drawdown Handling
//-----------------------------------------------------
var float peakEquity = strategy.equity
peakEquity := math.max(peakEquity, strategy.equity)

currentDrawdownPerc = (peakEquity - strategy.equity) / peakEquity * 100
if currentDrawdownPerc > ddLimit
    strategy.close_all("Max Drawdown Exceeded")

//-----------------------------------------------------
// Plotting
//-----------------------------------------------------
plot(emaValue, title="EMA 200", color=color.yellow, linewidth=2)
plotchar(rsiValue, title="RSI", char='•', location=location.bottom, color=color.new(color.teal, 60))