Système de trading hybride à moyenne mobile et analyse de la continuité des tendances

EMA RSI ATR VOL
Date de création: 2025-02-18 15:27:29 Dernière modification: 2025-02-18 15:27:29
Copier: 2 Nombre de clics: 336
1
Suivre
1617
Abonnés

Système de trading hybride à moyenne mobile et analyse de la continuité des tendances

Aperçu

La stratégie est un système de trading hybride basé sur de multiples indicateurs techniques, combinant une moyenne ((EMA), un indicateur relativement faible ((RSI) et une super tendance ((SuperTrend) pour capturer les tendances du marché. La stratégie utilise des paramètres fixes, optimisés spécifiquement pour les périodes de 2 heures, pour identifier les tendances à travers le système de courbe uniforme 21/55/200, tout en combinant RSI ((14) Filtre de dynamique et SuperTrend ((3,14) Stop Loss pour gérer le risque.

Principe de stratégie

La logique de base de la stratégie repose sur un cadre d’analyse technique à plusieurs niveaux:

  1. Le système de reconnaissance de tendances utilise la triple ligne moyenne ((cycle 21/55/200), qui détermine la direction de la tendance par la croisée de la ligne moyenne et la relation de position
  2. Le système de confirmation de la dynamique utilise l’indicateur RSI ((14)), combiné à sa ligne uniforme pour filtrer les fausses percées
  3. Le système de contrôle des risques intègre l’indicateur SuperTrend comme arrêt dynamique et met en place une période de refroidissement de 6 heures
  4. Les conditions de déclenchement des transactions exigent un volume de transactions supérieur à 1,5 fois la moyenne de 20 cycles, et l’ATR doit être supérieur à sa moyenne de 48 cycles.

Avantages stratégiques

  1. Optimisation des paramètres: utilisation de paramètres fixes optimisés à l’avance, sans besoin d’ajustements fréquents
  2. Capture des tendances: une combinaison de plusieurs indicateurs techniques permettant de saisir efficacement les tendances persistantes
  3. Contrôle des risques: un système de refroidissement intégré pour éviter les transactions excessives
  4. Adaptation au marché: excellence dans un marché plus volatile
  5. Confirmation de transaction: filtrage de conditions multiples pour améliorer la fiabilité du signal de transaction

Risque stratégique

  1. Risque de sursaut: risque de sursaut sur un marché qui fonctionne 24 heures sur 24
  2. Influence de l’actualité: les événements d’actualité majeurs peuvent entraîner des fluctuations importantes des prix et affecter la performance de la stratégie.
  3. Rigidité d’arrêt de perte: les réglages d’arrêt de perte fixes peuvent ne pas être assez flexibles
  4. Dépendance aux conditions du marché: les faux signaux peuvent apparaître fréquemment lors de la correction du marché
  5. Risque de glissement: risque de glissement plus important dans un marché moins fluide

Orientation de l’optimisation de la stratégie

  1. Ajustement des paramètres dynamiques: paramètres qui peuvent être automatiquement ajustés en fonction de la volatilité du marché
  2. Identification de l’environnement de marché: ajout d’un module de jugement de l’environnement de marché, avec différents paramètres de réglage dans différents états de marché
  3. Optimisation des arrêts de perte: introduction d’un mécanisme d’arrêt de perte dynamique qui s’adapte à la position de perte en fonction des fluctuations du marché
  4. Amélioration de l’analyse des volumes de transactions: ajout d’un modèle d’analyse des volumes de transactions plus sophistiqué pour améliorer la précision des signaux de transaction
  5. Optimisation de la gestion des risques: mise en place d’un système de gestion des positions dynamique, permettant d’ajuster le volume des positions en fonction des conditions du marché

Résumer

La stratégie utilise une combinaison de multiples indicateurs techniques pour construire un système de négociation relativement complet. Son avantage réside dans sa capacité à capturer efficacement les tendances du marché et à améliorer la fiabilité des transactions grâce à des filtres multiconditionnels. Bien qu’il y ait des risques inhérents, il existe une marge d’amélioration de la performance globale de la stratégie grâce à l’optimisation et à l’amélioration.

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

//@version=6
strategy("Hybrid Trend Momentum Strategy by Biege ver. 1.0", overlay=true)

// ———— SUPERTREND FIX ————
supertrendWrapper(factor, atrPeriod) =>
    [stLine, stDir] = ta.supertrend(factor, atrPeriod)
    [stLine, stDir]

// ———— GLOBAL EMA CALCULATIONS ————
fastEMA = ta.ema(close, 21)
slowEMA = ta.ema(close, 55)
trendEMA = ta.ema(close, 200)
atrVal = ta.atr(14)
atrEMA = ta.ema(atrVal, 48)
rsiVal = ta.rsi(close, 14)
rsiEMA = ta.ema(rsiVal, 14)
volumeEMA = ta.ema(volume, 20)
[supertrendLine, supertrendDir] = supertrendWrapper(3, 14)

// ———— TRADE THROTTLING SYSTEM ————
var int lastTradeTime = na
tradeCooldown = input.int(360, "Cooldown (minutes)", minval=60, step=15) * 60 * 1000

// ———— ENHANCED ENTRY CONDITIONS ————
entryCondition = 
     ta.crossover(fastEMA, slowEMA) and
     rsiVal > rsiEMA + 10 and
     close > supertrendLine and
     close > trendEMA and
     volume > volumeEMA * 1.5 and
     atrVal > atrEMA and
     (na(lastTradeTime) or time - lastTradeTime >= tradeCooldown)

// ———— ULTRA-OPTIMIZED EXIT CONDITIONS ————
exitCondition = 
     ta.crossunder(fastEMA, slowEMA) or                   // Main EMA cross remains
     ta.crossunder(rsiVal, rsiEMA - 15) or                // Increased from -10 to -15 (harder trigger)
     ta.crossunder(close, supertrendLine * 0.98)          // Changed from 1.01 to 0.98 (2% buffer below)

// ———— TRADE EXECUTION ————
if entryCondition
    strategy.entry("Buy", strategy.long)
    lastTradeTime := time

if exitCondition
    strategy.close("Buy")

// ———— VISUALS ————
plot(fastEMA, "Fast EMA", color.new(#2962FF, 0), 2)
plot(slowEMA, "Slow EMA", color.new(#FF6D00, 0), 2)
plot(trendEMA, "Trend EMA", color.new(#AA00FF, 0), 2)
plot(supertrendLine, "SuperTrend", color.new(#00C853, 0), 2)

plotshape(entryCondition, "Buy", shape.triangleup, 
  location.belowbar, color.new(#00E676, 0), size=size.small)
plotshape(exitCondition, "Sell", shape.triangledown, 
  location.abovebar, color.new(#FF1744, 0), size=size.small)