Stratégie de suivi de tendance basée sur la moyenne mobile simple améliorée Momentum et le RSI

SMA RSI MA SL TP Trend momentum CROSSOVER
Date de création: 2025-02-24 10:19:03 Dernière modification: 2025-02-24 10:19:03
Copier: 1 Nombre de clics: 450
2
Suivre
319
Abonnés

Stratégie de suivi de tendance basée sur la moyenne mobile simple améliorée Momentum et le RSI Stratégie de suivi de tendance basée sur la moyenne mobile simple améliorée Momentum et le RSI

Aperçu

Cette stratégie est un système de suivi des tendances qui combine une moyenne mobile simple (SMA) avec un indicateur relativement faible (RSI). Il identifie la direction de la tendance par le croisement des moyennes mobiles à court et à long terme et utilise le RSI pour la confirmation de la dynamique afin de rechercher des opportunités de transactions à forte probabilité sur le marché. La stratégie contient également un module complet de gestion des risques permettant de contrôler efficacement le risque de chaque transaction.

Principe de stratégie

La logique de base de la stratégie repose sur l’utilisation combinée de deux indicateurs techniques :

  1. Système bi-médian: avec des moyennes mobiles simples de 8 cycles et de 21 cycles, les variations de tendance sont identifiées par des moyennes croisées. Des signaux de plus sont générés lorsque la moyenne à court terme traverse la moyenne à long terme vers le haut et des signaux de moins lorsqu’elle traverse vers le bas.
  2. Filtre RSI: confirme la dynamique à l’aide de l’indicateur RSI à 14 cycles. L’exécution d’un surplus est effectuée uniquement lorsque le RSI est inférieur à 70 et l’exécution d’un short est effectuée lorsque le RSI est supérieur à 30 afin d’éviter de négocier dans des zones trop achetées ou trop vendues.
  3. Contrôle des risques: Un niveau de stop loss de 1% et de stop loss de 2% est défini pour chaque transaction afin de protéger la sécurité des fonds et de bloquer les bénéfices.

Avantages stratégiques

  1. Avantages du portefeuille d’indicateurs: Le suivi des tendances et les indicateurs de dynamique permettent d’identifier plus précisément les points de retournement du marché.
  2. Gestion des risques: des mécanismes d’arrêt et d’arrêt intégrés permettent de contrôler efficacement les risques.
  3. Flexibilité des paramètres: tous les paramètres clés peuvent être optimisés en fonction des différentes conditions du marché.
  4. Large portée: utilisable sur plusieurs marchés et périodes.
  5. La logique est claire et simple: les règles de stratégie sont claires, faciles à comprendre et à appliquer.

Risque stratégique

  1. Risque de choc du marché: les faux signaux peuvent être fréquents dans les marchés à choc horizontal.
  2. Risque de retard: Les moyennes mobiles sont elles-mêmes retardées et risquent de manquer certaines opportunités de profit.
  3. Sensitivité des paramètres: les paramètres peuvent être ajustés pour maintenir l’efficacité de la stratégie dans différents environnements de marché.
  4. La dépendance à la tendance: la stratégie fonctionne mieux dans les marchés à forte tendance, mais peut être moins efficace dans d’autres environnements.

Orientation de l’optimisation de la stratégie

  1. Introduction de mécanismes d’identification des environnements de marché qui utilisent différentes combinaisons de paramètres dans différentes conditions de marché.
  2. L’augmentation du nombre de transactions comme signal de confirmation auxiliaire.
  3. Optimiser le mécanisme de freinage de l’arrêt des pertes, en envisageant l’utilisation d’un schéma d’arrêt des pertes dynamique.
  4. Ajout d’un filtre de force de tendance, permettant de négocier uniquement sur des marchés en forte tendance.
  5. Développer des mécanismes d’ajustement des paramètres d’adaptation pour améliorer l’adaptabilité des stratégies.

Résumer

Il s’agit d’une stratégie de suivi de tendance structurée et logiquement claire. La combinaison des SMA et des RSI permet à la fois de capturer la tendance et d’éviter de négocier dans des zones de survente. Le mécanisme de gestion des risques intégré assure la stabilité de la stratégie.

Code source de la stratégie
/*backtest
start: 2025-02-16 00:00:00
end: 2025-02-23 00:00:00
period: 6m
basePeriod: 6m
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/

//@version=6
strategy("WEN - SMA with RSI Strategy", overlay=true)

// Define input parameters
// SMA Inputs
shortLength = input(8, title="Short MA Length")
longLength = input(21, title="Long MA Length")

// RSI Inputs
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(70, title="RSI Overbought")
rsiOversold = input(30, title="RSI Oversold")

// Calculate indicators
// Moving Averages
shortMA = ta.sma(close, shortLength)
longMA = ta.sma(close, longLength)

// RSI
rsi = ta.rsi(close, rsiLength)

// Plot indicators
plot(shortMA, title="Short MA", color=color.blue)
plot(longMA, title="Long MA", color=color.red)
// RSI is typically plotted in a separate panel in trading platforms

// Entry conditions with RSI confirmation
smaLongCondition = ta.crossover(shortMA, longMA)
smaShortCondition = ta.crossunder(shortMA, longMA)

rsiLongCondition = rsi < rsiOverbought  // Not overbought for long entry
rsiShortCondition = rsi > rsiOversold   // Not oversold for short entry

// Combined entry conditions
longCondition = smaLongCondition and rsiLongCondition
shortCondition = smaShortCondition and rsiShortCondition

// Execute trades
if (longCondition)
    strategy.entry("Long", strategy.long)
if (shortCondition)
    strategy.close("Long")
    strategy.entry("Short", strategy.short)

// Set stop loss and take profit
stopLoss = input(1, title="Stop Loss (%)") / 100
takeProfit = input(2, title="Take Profit (%)") / 100

longStopLossPrice = strategy.position_avg_price * (1 - stopLoss)
longTakeProfitPrice = strategy.position_avg_price * (1 + takeProfit)
shortStopLossPrice = strategy.position_avg_price * (1 + stopLoss)
shortTakeProfitPrice = strategy.position_avg_price * (1 - takeProfit)

strategy.exit("Take Profit / Stop Loss", from_entry="Long", stop=longStopLossPrice, limit=longTakeProfitPrice)
strategy.exit("Take Profit / Stop Loss", from_entry="Short", stop=shortStopLossPrice, limit=shortTakeProfitPrice)