Stratégie de croisement à double moyenne mobile suivant la tendance combinée à un système de filtrage des tendances SMA

EMA SMA MA RSI RR
Date de création: 2025-02-21 14:35:29 Dernière modification: 2025-02-21 14:35:29
Copier: 3 Nombre de clics: 395
2
Suivre
319
Abonnés

Stratégie de croisement à double moyenne mobile suivant la tendance combinée à un système de filtrage des tendances SMA Stratégie de croisement à double moyenne mobile suivant la tendance combinée à un système de filtrage des tendances SMA

Aperçu

Cette stratégie est un système de trading quantitatif qui combine la croisée des moyennes mobiles (MA) et le suivi de la tendance. Elle utilise la moyenne mobile simple (SMA) à 15 cycles comme filtre de tendance, tout en utilisant la croisée des moyennes mobiles à 9 cycles et à 21 cycles (EMA) pour générer un signal de négociation. La stratégie utilise des conditions d’entrée strictes et un ratio de risque/bénéfice fixe de 1:4 pour gérer le risque.

Principe de stratégie

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

  1. Confirmation de la tendance: utilisation de la SMA à 15 cycles comme principal indicateur de tendance. Le prix au-dessus de la SMA à 15 est considéré comme une tendance à la hausse, au lieu d’une tendance à la baisse.
  2. Signal de transaction: Le signal de transaction est déclenché par la croisée des 9EMA et 21EMA. Un signal de commutation est généré lorsque 9EMA dépasse 21EMA et remplit d’autres conditions. Un signal de commutation est généré lorsque 9EMA dépasse 21EMA et remplit d’autres conditions.
  3. Conditions de confirmation: la multiplication nécessite deux lignes de soleil consécutives, et les deux EMAs sont au-dessus de 15 SMA; la négation nécessite une ligne de soleil, et les deux EMAs sont en dessous de 15 SMA.
  4. Gestion des risques: le système calcule automatiquement les objectifs de stop loss et de profit en fonction des points d’entrée, en utilisant un ratio de risque/bénéfice de 1:4.

Avantages stratégiques

  1. Une forte capacité de suivi des tendances: grâce à un mécanisme de filtrage des tendances de 15 SMA, il est possible d’éviter efficacement de négocier en cours de paire ou en contrepartie.
  2. Mécanisme de confirmation multiple: combinaison de conditions multiples, telles que la croix de la même ligne, la confirmation de la forme du graphique et de la tendance, pour réduire le risque de faux signaux.
  3. Gestion des risques: Ratio de risque/bénéfice fixe et paramètre de stop-loss automatique, favorisant la stabilité à long terme.
  4. Retour visuel clair: le système fournit des indications visuelles claires, y compris le marquage des signaux de transaction et l’affichage du niveau de stop loss.

Risque stratégique

  1. Risque de retard: les moyennes mobiles sont essentiellement des indicateurs retardés, qui peuvent ne pas réagir rapidement lorsque le marché évolue rapidement.
  2. Risque de fausse rupture: un faux signal de croisement peut être généré dans un marché horizontal.
  3. Limites du ratio de risque fixe: un ratio de risque fixe à un rapport de rendement de 1:4 peut ne pas convenir à tous les environnements de marché.
  4. Risque de pertes continues: les pertes continues peuvent survenir dans un marché en crise.

Orientation de l’optimisation de la stratégie

  1. Optimisation des cycles dynamiques: les cycles des moyennes mobiles peuvent être ajustés automatiquement en fonction des fluctuations du marché.
  2. Introduction d’un filtre de volatilité: ajout d’ATR ou d’autres indicateurs de volatilité pour optimiser le moment d’entrée.
  3. Gestion dynamique des risques: Adaptez dynamiquement le risque-rendement en fonction des conditions du marché.
  4. Augmentation du jugement sur les conditions du marché: l’introduction d’indicateurs de force de tendance pour optimiser les conditions de négociation.

Résumer

Il s’agit d’une stratégie de suivi des tendances conçue de manière rationnelle et logiquement rigoureuse. La stratégie présente une bonne utilité en combinant plusieurs indicateurs techniques et une gestion rigoureuse des risques. Bien que certains risques inhérents existent, la stabilité et la rentabilité de la stratégie peuvent être encore améliorées par une orientation d’optimisation recommandée.

Code source de la stratégie
/*backtest
start: 2024-02-21 00:00:00
end: 2024-12-19 00:00:00
period: 4d
basePeriod: 4d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("EMA Crossover Strategy with 15 SMA Trend", overlay=true, margin_long=100, margin_short=100)

// Calculate Indicators
sma15 = ta.sma(close, 15)
ema9 = ta.ema(close, 9)
ema21 = ta.ema(close, 21)

// Trend Detection
uptrend = close > sma15
downtrend = close < sma15

// Crossover Conditions
goldenCross = ta.crossover(ema9, ema21)
deathCross = ta.crossunder(ema9, ema21)

// Candle Conditions
twoBullish = (close > open) and (close[1] > open[1])
bearishCandle = (close < open)

// Entry Conditions
longCondition = goldenCross and uptrend and twoBullish and (ema9 > sma15) and (ema21 > sma15)
shortCondition = deathCross and downtrend and bearishCandle and (ema9 < sma15) and (ema21 < sma15)

// Risk Management
var float longStop = na
var float longTarget = na
var float shortStop = na
var float shortTarget = na

if longCondition
    longStop := low
    longTarget := close + 4*(close - longStop)
    strategy.entry("Long", strategy.long)
    strategy.exit("Long Exit", "Long", stop=longStop, limit=longTarget)

if shortCondition
    shortStop := high
    shortTarget := close - 4*(shortStop - close)
    strategy.entry("Short", strategy.short)
    strategy.exit("Short Exit", "Short", stop=shortStop, limit=shortTarget)

// Visual Elements
plot(sma15, "15 SMA", color=color.orange)
plot(ema9, "9 EMA", color=color.blue)
plot(ema21, "21 EMA", color=color.red)

// Plot trading levels
plot(longCondition ? longStop : na, "Long Stop", color=color.red, style=plot.style_linebr)
plot(longCondition ? longTarget : na, "Long Target", color=color.green, style=plot.style_linebr)
plot(shortCondition ? shortStop : na, "Short Stop", color=color.red, style=plot.style_linebr)
plot(shortCondition ? shortTarget : na, "Short Target", color=color.green, style=plot.style_linebr)

// Signal Markers
plotshape(longCondition, "Buy", shape.triangleup, location.belowbar, color=color.green, size=size.small)
plotshape(shortCondition, "Sell", shape.triangledown, location.abovebar, color=color.red, size=size.small)