Stratégie de sortie à contre-tendance

highest Lowest TA 趋势反转 突破策略 动态退出 高低点追踪 反向信号 技术分析
Date de création: 2025-04-30 11:09:20 Dernière modification: 2025-04-30 11:09:20
Copier: 0 Nombre de clics: 318
2
Suivre
319
Abonnés

Stratégie de sortie à contre-tendance Stratégie de sortie à contre-tendance

Aperçu

La stratégie de sortie de rupture de tendance inverse est un système de trading quantitatif basé sur des hauts et des bas historiques de rupture de prix, combiné à un signal de retour de tendance comme mécanisme d’exit. La stratégie consiste à surveiller les prix les plus élevés et les plus bas des trois derniers jours de négociation, en effectuant des opérations d’entrée lorsque les prix franchissent ces niveaux critiques, et de sortie en position fixe lorsque des signaux de rupture de rupture inverse se produisent.

Principe de stratégie

Le principe de base de la stratégie est basé sur deux concepts clés: les ruptures de prix et les retournements de tendance:

  1. Calcul des hauts et des bas de trois joursLa stratégie utilise les prix les plus élevés et les plus bas des trois derniers jours de négociation (sans compter le jour de négociation en cours) comme point de référence de rupture clé.
high3 = ta.highest(high[1], 3)
low3 = ta.lowest(low[1], 3)
  1. Conditions d’entrée
    • Entrée en position multiple: entrée en position multiple lorsque le prix de clôture atteint son plus haut niveau en trois jours
    • Entrée à vide: entrer dans une position à vide lorsque le prix de clôture est inférieur au plus bas de trois jours
longEntry = close > high3
shortEntry = close < low3
  1. Suivi des positionsStratégie: Suivi en temps réel de l’état des positions du cycle de négociation actuel et du précédent afin d’exécuter correctement la logique de sortie.
isLong = strategy.position_size > 0
isShort = strategy.position_size < 0
wasLong = nz(strategy.position_size[1] > 0)
wasShort = nz(strategy.position_size[1] < 0)
  1. Retour sur le mécanisme de sortie: Lorsque des signaux opposés à la direction de la position actuelle apparaissent, la stratégie considère que la tendance a changé et se retire immédiatement.
longExit = shortEntry
shortExit = longEntry
  1. Logique d’exécution réelleLa stratégie consiste à s’assurer qu’un nouveau signal d’entrée est exécuté en l’absence d’une position et à effectuer une sortie en fonction du signal de renversement de tendance.

Avantages stratégiques

  1. Simple mais efficaceLa stratégie est basée sur des principes simples de comportement des prix, faciles à comprendre et à mettre en œuvre, sans nécessiter de mesures techniques complexes, ce qui réduit le risque de surajustement.

  2. Une grande capacité d’adaptationEn utilisant des hauts et des bas de trois jours relativement récents comme référence, la stratégie est capable de s’adapter à différents environnements de marché et conditions de volatilité sans être ni trop sensible ni trop lente.

  3. Règles claires d’entrée et de sortieLa stratégie fournit des signaux d’entrée et de sortie clairs, élimine les jugements subjectifs dans le processus de négociation et aide à maintenir la discipline de négociation.

  4. Protéger contre la rétrogradation: Utilisez le renversement de tendance comme signal de sortie pour vous débarrasser rapidement de vos positions en cas de changement de direction du marché, contrôler efficacement les retraits et protéger les profits réalisés.

  5. Une gestion complète des fondsLa stratégie consiste à gérer les positions en pourcentage de la valeur nette, une méthode plus flexible que le nombre fixe, qui permet d’ajuster automatiquement la taille des transactions en fonction de la taille du compte.

  6. Les commentaires visuels sont clairsLes traders peuvent visualiser l’exécution de la stratégie en utilisant les marqueurs d’achat, de vente et de sortie sur le graphique stratégique, ce qui facilite l’analyse et l’optimisation de la stratégie.

Risque stratégique

  1. Le risque d’une fausse percée: Il peut y avoir de fausses ruptures de courte durée sur le marché, ce qui entraîne des mouvements inverses rapides de la stratégie après l’entrée, entraînant des coûts et des pertes de transaction inutiles. Solution: Des filtres de confirmation peuvent être ajoutés, tels que la confirmation de la transaction ou l’attente d’un certain temps pour que le prix reste dans la position de rupture.

  2. Risques liés à la fréquence des transactionsRésolution: Prolonger le cycle de référence ou ajouter une période de refroidissement pour réduire la fréquence des transactions.

  3. Manque de mécanisme de préventionLa stratégie actuelle consiste à se contenter d’un retrait du signal de tendance inverse, ce qui peut entraîner des pertes plus importantes dans des conditions de marché extrêmes. La solution: ajouter un stop loss fixe ou un stop loss ajusté à la volatilité comme protection supplémentaire.

  4. Risque de pénurie de marchéRésolution: définir le point de glissement maximal autorisé ou utiliser un ordre de stop-loss.

  5. La tendance à l’absence d’environnement: Dans un environnement de marché turbulent, la stratégie de rupture de trois jours peut mal fonctionner, produisant plusieurs signaux erronés. Solution: Ajouter un filtre d’état du marché, appliquer la stratégie uniquement dans un environnement de marché où une tendance claire est identifiée.

Orientation de l’optimisation de la stratégie

  1. Optimisation du cycle de référence: Le cycle de référence de trois jours fixe actuel peut ne pas être adapté à toutes les conditions du marché. Il est recommandé de réaliser un ajustement dynamique du cycle de référence, en ajustant automatiquement la longueur du cycle de rupture en fonction de la volatilité du marché, en utilisant un cycle plus long dans les marchés à forte volatilité et un cycle plus court dans les marchés à faible volatilité.

  2. Ajouter des conditions de filtrage: Des conditions de filtrage supplémentaires peuvent être introduites pour améliorer la qualité du signal, par exemple:

    • Confirmation des transactions: assurer une percée accompagnée d’une augmentation significative des transactions
    • Confirmation de la tendance: utilisation des moyennes mobiles à long terme pour confirmer la direction de la tendance globale
    • Filtrage de volatilité: suspension des transactions dans un environnement de marché extrêmement volatile ou exceptionnellement bas
  3. Amélioration du mécanisme de retraitEn plus de l’inversion de tendance, il y a un certain nombre de mécanismes de sortie qui peuvent être ajoutés:

    • Stop fixe: un stop fixe en pourcentage basé sur le prix d’entrée
    • Tracking Stop Loss: utilisez l’ATR ou le pourcentage de suivi Stop Loss pour protéger les bénéfices
    • Stop-loss: Si la position est clôturée si elle ne se présente pas comme prévu pendant un certain temps après l’émission du signal
  4. Mise en place d’une gestion partielle des positions: La stratégie actuelle consiste à négocier à 100% de la valeur nette, en envisageant de modifier la taille de la position en fonction de la force du signal ou de la dynamique des conditions du marché, en augmentant la position sur des signaux plus positifs et en réduisant la position sur des signaux plus faibles.

  5. Ajouter un filtrage de la période: confirmer la direction de la tendance sur des périodes plus longues, et ne négocier que dans la direction qui est conforme à la tendance à long terme, afin de réduire le risque de négocier à contre-courant. Cette analyse sur plusieurs périodes peut augmenter considérablement le taux de réussite de la stratégie.

Résumer

La stratégie de sortie de rupture de tendance inverse de trois jours est un système de négociation qui combine les principes de rupture de prix et de suivi des tendances pour construire un signal d’entrée en surveillant les hauts et les bas des prix à court terme, tout en utilisant la rupture inverse comme mécanisme de sortie. L’avantage de la stratégie réside dans la simplicité de la conception, la clarté des règles et la capacité d’adaptation. Elle convient aux débutants et aux traders expérimentés.

Code source de la stratégie
/*backtest
start: 2025-03-30 00:00:00
end: 2025-04-29 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("3-Day Breakout Strategy with Trend Change Exit", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// === Calculate 3-day high/low (excluding current bar) ===
high3 = ta.highest(high[1], 3)
low3 = ta.lowest(low[1], 3)

// === Entry conditions ===
longEntry  = close > high3
shortEntry = close < low3

// === Track position state ===
isLong   = strategy.position_size > 0
isShort  = strategy.position_size < 0
wasLong  = nz(strategy.position_size[1] > 0)
wasShort = nz(strategy.position_size[1] < 0)

// === Exit conditions ===
// Exit on trend reversal (new signal)
longExit  = shortEntry  // Exit long position when a short signal occurs
shortExit = longEntry   // Exit short position when a long signal occurs

// === Execute entries ===
buySignal  = longEntry and not isLong and not isShort
sellSignal = shortEntry and not isLong and not isShort

if (buySignal)
    strategy.entry("Long", strategy.long)
if (sellSignal)
    strategy.entry("Short", strategy.short)

// === Execute exits on opposite signal (trend change) ===
if (isLong and longExit)
    strategy.close("Long")
if (isShort and shortExit)
    strategy.close("Short")

// === Exit markers (on actual exit bar only) ===
exitLongSignal  = wasLong and not isLong
exitShortSignal = wasShort and not isShort

// === Plot entry signals only on the entry bar ===
plotshape(buySignal,  title="Buy Signal",  location=location.belowbar, color=color.green,  style=shape.labelup,   text="BUY")
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red,    style=shape.labeldown, text="SELL")

// === Plot exit signals only on the exit bar ===
plotshape(exitLongSignal,  title="Exit Long",  location=location.abovebar, color=color.orange, style=shape.labeldown, text="EXIT")
plotshape(exitShortSignal, title="Exit Short", location=location.belowbar, color=color.orange, style=shape.labelup,   text="EXIT")