Stratégie de suivi de tendance croisée de moyenne mobile combinée à un stop loss SMA et à un mécanisme de réentrée

EMA SMA
Date de création: 2025-02-21 13:49:09 Dernière modification: 2025-02-27 16:59:13
Copier: 1 Nombre de clics: 388
2
Suivre
319
Abonnés

Stratégie de suivi de tendance croisée de moyenne mobile combinée à un stop loss SMA et à un mécanisme de réentrée Stratégie de suivi de tendance croisée de moyenne mobile combinée à un stop loss SMA et à un mécanisme de réentrée

Aperçu

La stratégie est un système de trading de suivi de tendance qui combine les moyennes mobiles indicielles (EMA) et les moyennes mobiles simples (SMA). La stratégie utilise principalement les signaux de négociation croisés entre les EMA50 et les EMA150, tout en utilisant le SMA150 comme ligne de stop-loss et en incluant un mécanisme de réentrée après le stop-loss. Cette conception permet de capturer les tendances à moyen et long terme tout en contrôlant efficacement les risques.

Principe de stratégie

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

  1. Signaux d’entrée: lorsque l’EMA50 traverse l’EMA150 vers le haut, il génère un signal de commutation; lorsque l’EMA50 traverse l’EMA150 vers le bas, il génère un signal de commutation.
  2. Le mécanisme de stop-loss: déclenche la position de stop-loss lorsque le prix est au-dessous de la SMA 150
  3. Mécanisme de réentrée: après le déclenchement d’un stop loss, si le prix franchit à nouveau l’EMA150, le réentrée fait plus; si l’EMA50 franchit à nouveau l’EMA150, l’entrée est vide.
  4. Exécution des transactions: la stratégie consiste à exécuter les transactions dans le délai indiqué et à tenir compte de la commission de 0,1% et du point de glissement de 3 points.

Avantages stratégiques

  1. Une forte capacité de suivi des tendances: capture efficacement les tendances du marché en utilisant des combinaisons de lignes moyennes de différentes périodes.
  2. Le contrôle des risques est parfait: des conditions de stop loss claires sont définies pour éviter des pertes excessives.
  3. Le mécanisme de réintégration est flexible: il permet une réintégration lorsque les conditions du marché s’améliorent, ce qui améliore les opportunités de profit.
  4. Les paramètres sont réglés de manière raisonnable: le choix des cycles EMA50 et EMA150 équilibre la sensibilité et la stabilité.
  5. Considérez le coût réel de la transaction: les commissions et les points de glissement sont inclus, ce qui est plus proche de l’environnement réel de la transaction.

Risque stratégique

  1. Risque de choc: les faux signaux de rupture peuvent être fréquents dans les marchés à choc horizontal.
  2. Risque de retard: l’indicateur de moyenne mobile est lui-même retardé et peut manquer le meilleur moment d’entrée.
  3. Risque de réentrée: dans des marchés très volatiles, le mécanisme de réentrée peut entraîner des pertes continues.
  4. Risques de gestion de fonds: la stratégie ne prévoit pas de programme de gestion de position spécifique.
  5. Dépendance de l’environnement du marché: la performance des stratégies peut varier considérablement selon les cycles du marché.

Orientation de l’optimisation de la stratégie

  1. Introduction d’indicateurs de volatilité: ATR ou Bollinger Bands peuvent être ajoutés pour ajuster la position de stop-loss et rendre le stop-loss plus adaptatif.
  2. Amélioration de la gestion des positions: ajout d’un système dynamique de gestion des positions basé sur la volatilité.
  3. Optimisation des conditions de réentrée: les indicateurs de fluctuation tels que le RSI peuvent être combinés pour améliorer la précision des signaux de réentrée.
  4. Augmentation du filtrage des conditions de marché: ajout d’indicateurs de force de tendance et réduction de la fréquence des transactions sur les marchés à faible tendance.
  5. Développer des paramètres d’adaptation: les cycles moyens peuvent être ajustés dynamiquement en fonction des fluctuations du marché.

Résumer

Il s’agit d’une stratégie de suivi de tendance conçue de manière rationnelle, qui capte les tendances par une transversalité uniforme et est équipée d’un mécanisme de contrôle des risques parfait. Les principaux avantages de la stratégie résident dans la capacité du système à suivre les tendances et la conception de la gestion des risques, mais dans la pratique, il est nécessaire de prêter attention à l’impact de l’environnement du marché sur la performance de la stratégie.

Code source de la stratégie
/*backtest
start: 2024-02-22 00:00:00
end: 2025-02-19 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/

//@version=6
strategy("EMA 50 and EMA 150 with SMA150 Stop-loss and Re-Entry #ganges", overlay=true, commission_type=strategy.commission.percent, commission_value=0.1, slippage=3)



// EMA and SMA Calculations
ema50 = ta.ema(close, 50)
ema150 = ta.ema(close, 150)
sma150 = ta.sma(close, 150)

// Conditions for Buy, Sell, and Stop-Loss
ema50CrossAboveEMA150 = ta.crossover(ema50, ema150)  // Buy signal
ema50CrossBelowEMA150 = ta.crossunder(ema50, ema150) // Sell signal
priceCrossAboveEMA150 = ta.crossover(close, ema150) // Price crosses EMA 150 from below
priceCloseBelowSMA150 = close < sma150              // Stop-loss for long positions



// Track stop-loss hit state
var bool stopLossHit = false

// Strategy Logic
// Buy Logic: EMA 50 crosses EMA 150 from below
if ema50CrossAboveEMA150 
    strategy.entry("Buy Signal", strategy.long, qty=1)
    stopLossHit := false // Reset stop-loss state when a new buy position is opened

// Sell Logic: EMA 50 crosses EMA 150 from above
if ema50CrossBelowEMA150 
    strategy.entry("Sell Signal", strategy.short, qty=1)
    stopLossHit := false // Reset stop-loss state when a new sell position is opened

// Stop-Loss for Long Positions: Close if price falls below SMA 150
if strategy.position_size > 0 and priceCloseBelowSMA150
    strategy.close("Buy Signal")
    stopLossHit := true // Mark stop-loss hit

// Re-Entry Logic After Stop-Loss
if stopLossHit 
    if priceCrossAboveEMA150 // Re-buy logic: PRICE crosses EMA 150 from below
        strategy.entry("Re-Buy Signal", strategy.long, qty=1)
        stopLossHit := false // Reset stop-loss state after re-entry
    if ema50CrossBelowEMA150 // Re-sell logic: EMA 50 crosses EMA 150 from above
        strategy.entry("Re-Sell Signal", strategy.short, qty=1)
        stopLossHit := false // Reset stop-loss state after re-entry

// Plot EMA and SMA Lines
plot(ema50, color=color.blue, title="EMA 50")
plot(ema150, color=color.red, title="EMA 150")
plot(sma150, color=color.orange, title="SMA 150")


// // Calculate Recent All-Time High
// highestHigh = ta.highest(high, 500) // Lookback period of 500 bars
// percentageFall = ((highestHigh - close) / highestHigh) * 100

// // Display Percentage Fall on the Most Recent Candle Only
// isLastBar = bar_index == ta.max(bar_index)
// if isLastBar
//     labelText = str.tostring(percentageFall, "#.##") + "% Fall from ATH"
//     labelPosition = high + ta.atr(14) * 2 // Positioning label above the candle
//     label.new(bar_index, labelPosition, labelText, color=color.red, textcolor=color.white, size=size.small, style=label.style_label_down)