Stratégie de trading d'inversion de retrait de moyenne mobile double : un système de suivi de tendance basé sur le croisement de l'EMA et la tolérance aux backtests

EMA FAST EMA SLOW EMA 趋势跟踪 回调交易 风险控制 双均线 风险回报比 止损
Date de création: 2025-04-21 15:58:18 Dernière modification: 2025-04-21 15:58:18
Copier: 0 Nombre de clics: 431
2
Suivre
319
Abonnés

Stratégie de trading d’inversion de retrait de moyenne mobile double : un système de suivi de tendance basé sur le croisement de l’EMA et la tolérance aux backtests Stratégie de trading d’inversion de retrait de moyenne mobile double : un système de suivi de tendance basé sur le croisement de l’EMA et la tolérance aux backtests

Aperçu

La stratégie d’opération de revers de la réplique bi-équilibrée est un système de suivi de la tendance basé sur les moyennes mobiles des indices (EMA), dont la philosophie de base est “de ne pas poursuivre chaque croisement de la réplique équilibrée, mais d’attendre la confirmation de la réplique de la réplique du marché à la ligne rapide de l’EMA pour ensuite entrer en jeu”. La stratégie combine le signal de la réplique équilibrée de la réplique du marché à la ligne rapide de l’EMA et le mécanisme de confirmation de la réplique du prix, en définissant un écart de réplique raisonnable, un rapport de retour au risque et un nombre de transactions par jour, pour effectuer des transactions à haute probabilité au point de revers après le changement de tendance.

Principe de stratégie

Les principes centraux de cette stratégie reposent sur les concepts suivants de l’analyse technique:

  1. Reconnaissance de signaux de croisement homogèneLa stratégie utilise les EMA de 200 cycles et de 800 cycles pour déterminer la direction de la tendance globale du marché. Lorsque l’EMA rapide (de 200) traverse l’EMA lente (de 800), le système le reconnaît comme une tendance à plusieurs têtes; lorsque l’EMA rapide traverse l’EMA lente (de 800), le système le reconnaît comme une tendance à vide.

  2. Suivi de l’état des tendancesLa stratégie consiste à suivre en permanence l’état actuel de la tendance à travers les variables de bull ((in_bullish_trend et in_bearish_trend) pour s’assurer que les transactions sont effectuées uniquement dans la direction de la tendance confirmée.

  3. Mécanisme de confirmation de rappel: Contrairement à la stratégie classique de croisement de la même ligne, cette stratégie n’entre pas directement dans le croisement, mais attend la correction du prix à proximité de l’EMA rapide. Plus précisément, lorsque le pourcentage d’écart entre le prix et l’EMA rapide est inférieur à la capacité de réponse prédéfinie (default 0.2%), le système considère que la correction est confirmée et déclenche un signal de transaction.

  4. Les mécanismes de contrôle des risquesLa stratégie consiste à définir un taux de stop-loss fixe par transaction (défaut: 0,5%) et un niveau de stop-loss basé sur le rapport de risque/rendement (défaut: 4:1). En même temps, il est préférable d’éviter les transactions excessives en limitant le nombre maximum de transactions par jour (défaut: 2).

  5. Retourner la dateStratégie: Réinitialiser le compteur de transactions au début de la journée pour s’assurer que les limites de fréquence de transaction sont calculées par jour.

Avantages stratégiques

En analysant le code en profondeur, cette stratégie présente les avantages suivants:

  1. Transactions après confirmation de la tendance: la stratégie consiste à ne considérer l’entrée que si la ligne moyenne est croisée pour confirmer la direction de la tendance, évitant ainsi les pertes causées par la fréquence des transactions sur le marché de la liquidation.

  2. Retour à l’entraînement pour améliorer la victoireEn attendant que le prix revienne à un support/résistance critique (EMA rapide), vous augmentez la probabilité de réussite de la transaction et évitez les risques d’entrée en cas de prolongation excessive du prix.

  3. Une gestion des risques claireChaque transaction a un niveau de stop-loss et de stop-loss prédéfini et un rapport de risque/rendement de 4:1, ce qui garantit une probabilité de profit à long terme, même si les chances de gain ne sont pas élevées.

  4. Une protection excessive contre les transactionsLa limitation du nombre maximal de transactions par jour permet de réduire les coûts de transaction et d’améliorer la stabilité de la stratégie globale.

  5. Signaux de négociation visualisésStratégie: utilisation de balises et de changements de couleur de fond pour afficher intuitivement les signaux de négociation et l’état des positions, facilitant l’analyse de retour et la surveillance en temps réel.

  6. Ajustabilité des paramètres: Tous les paramètres clés tels que la période EMA, le décalage de rétroaction, le ratio de risque-rendement, le ratio de stop-loss et le nombre maximal de transactions par jour peuvent être ajustés via les champs de saisie, ce qui rend la stratégie très adaptable.

Risque stratégique

Malgré la bonne conception de la stratégie, les risques potentiels sont les suivants:

  1. Retour sur le retard de la tendance: En raison de l’utilisation d’EMAs de plus longues périodes (> 200 et 800), la stratégie peut être en retard significatif dans l’identification d’un renversement de tendance, ce qui conduit à manquer une partie de la tendance au début de la tendance. .

  2. Risque de fausse percéeRemède: Il est possible d’ajouter des mécanismes de confirmation croisée, comme demander au prix de maintenir la direction de la tendance pendant un certain temps après la croisée, ou d’augmenter la confirmation du volume de transactions.

  3. Trigger fréquent sous une vague étroite: Dans un environnement de faible volatilité, le prix peut fluctuer fréquemment près de l’EMA, puis s’éloigner rapidement après avoir satisfait aux conditions de rétroaction, formant un signal inefficace. Solution: envisager d’ajouter un filtre de volatilité ou d’ajouter des exigences de capacité de rétroaction dans un environnement de faible volatilité.

  4. Risque de stop-loss fixeLa stratégie consiste à utiliser un pourcentage fixe de stop loss, sans tenir compte des variations de la volatilité du marché, ce qui peut entraîner un déclenchement trop petit et fréquent des arrêts de stop loss dans les marchés à forte volatilité. La solution: Vous pouvez envisager d’utiliser l’ATR pour ajuster dynamiquement le niveau de stop loss.

  5. Dépendance à un seul indicateur techniqueLa stratégie repose principalement sur l’indicateur EMA, qui manque d’analyse de marché multidimensionnelle. La solution: envisager la combinaison d’autres types d’indicateurs (tels que l’indicateur de dynamique, l’indicateur de volatilité) pour la confirmation du signal.

Orientation de l’optimisation de la stratégie

Sur la base de cette analyse, la stratégie peut être optimisée dans les directions suivantes:

  1. Ajustement des paramètres dynamiques: modifier les valeurs fixes de la marge de rétroaction et du ratio d’arrêt en fonction de la volatilité du marché (comme l’ATR) afin de s’adapter à différentes conditions de marché. La raison en est que les caractéristiques de la volatilité du marché changent avec le temps et que les paramètres fixes peuvent ne pas s’appliquer à toutes les conditions du marché.

  2. Analyse de plusieurs périodesAugmenter le jugement sur les tendances des périodes plus longues, ne négocier que dans la direction de la tendance globale et éviter de négocier en sens inverse dans les tendances globales. Cette optimisation améliore la qualité du signal et réduit le risque de négocier en sens inverse.

  3. Confirmation de la transaction: augmenter les conditions de confirmation du volume de transactions lors de la génération du signal d’entrée, comme la nécessité d’une rupture du support / résistance de la libération au point de reprise. Le volume de transactions est la source de la dynamique de la variation des prix, et l’analyse du volume de transactions peut améliorer l’efficacité du signal.

  4. Taux d’amélioration: Adaptez le rapport risque/rendement en fonction des caractéristiques de la volatilité du marché et de la dynamique de la structure des prix historiques, plutôt que d’utiliser un ratio fixe de 4:1. Cela permet de mieux adapter la stratégie aux différentes phases et caractéristiques du marché.

  5. Ajout de conditions de filtrage: Ajouter un indicateur de la force de la tendance du marché (comme l’ADX) comme filtre, et ne lancer la stratégie que dans un marché en forte tendance. Cela permet d’éviter de générer trop de faux signaux dans un marché en faible tendance ou en tremblement.

  6. Le blocage partiel des bénéfices: ajout d’une fonction d’arrêt par lots, qui bloque une partie des bénéfices lorsque le prix atteint un certain niveau de profit, le reste étant conservé pour suivre la tendance. Ce mécanisme permet d’équilibrer les besoins de suivi de la tendance à court terme et à court terme.

  7. Optimisation de la période de rétroaction: Ajouter un filtrage des périodes de négociation, éviter les périodes de forte volatilité avant l’ouverture et la fermeture du marché, ou se concentrer sur des périodes de négociation particulièrement efficaces. L’efficacité et les caractéristiques du marché varient considérablement entre les périodes, et le choix des périodes de négociation les plus adaptées à la logique de la stratégie peut améliorer la performance globale.

Résumer

La stratégie d’opération de revers de la ligne de parité est une stratégie de revers de la ligne de parité qui combine les signaux de croisement de la ligne de parité et les mécanismes de confirmation de revers de prix pour créer un système de suivi de tendance complet. La stratégie comprend non seulement une logique d’entrée et de sortie claire, mais également une bonne gestion des fonds et un mécanisme de contrôle des risques. Son avantage central réside dans la notion de “confirmation en attente”, qui améliore la probabilité de succès des transactions en évitant de poursuivre directement les signaux de croisement de la ligne de parité, mais en attendant que les prix reviennent à une position technique critique et ensuite entrer en jeu.

Cependant, les stratégies restent limitées par la dépendance à des EMA à long terme, le jugement d’un seul indicateur technique et la définition de paramètres fixes. Des mesures d’optimisation telles que l’ajustement des paramètres dynamiques, l’analyse de plusieurs périodes, la confirmation des volumes de transactions et le filtrage de la force de la tendance peuvent être introduites pour améliorer encore l’adaptabilité et la robustesse des stratégies. Ces mesures d’optimisation joueront un rôle plus important, en particulier dans des environnements de marché à forte volatilité ou avec une tendance incertaine.

En fin de compte, la stratégie représente un équilibre entre l’introduction et la stabilité de l’idée de négociation, adaptée aux traders qui ont une certaine tolérance au risque et qui recherchent des rendements stables à moyen et long terme. Grâce à des paramètres raisonnablement configurés et à une optimisation continue de la stratégie, elle peut maintenir une performance relativement stable dans divers environnements de marché.

Code source de la stratégie
/*backtest
start: 2025-04-13 00:00:00
end: 2025-04-15 10:00:00
period: 2m
basePeriod: 2m
exchanges: [{"eid":"Futures_Binance","currency":"TRX_USD"}]
*/

//@version=6
strategy("200/500 EMA Retest Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=1)

// INPUTS
ema_fast_length = input.int(200, title="Fast EMA Length")
ema_slow_length = input.int(500, title="Slow EMA Length")
retest_tolerance = input.float(0.002, title="Retest Tolerance (%)") // 0.2% by default
risk_reward_ratio = input.float(4.0, title="Risk-Reward Ratio (TP:SL)")
stop_loss_perc = input.float(0.005, title="Stop Loss % (e.g., 0.5%)") // 0.5% default
max_trades_per_day = input.int(2, title="Max Trades Per Day")

// EMA CALCULATIONS
ema_fast = ta.ema(close, ema_fast_length)
ema_slow = ta.ema(close, ema_slow_length)

// PLOT EMAs
plot(ema_fast, color=color.blue)
plot(ema_slow, color=color.orange)

// CROSS DETECTION
bullish_cross = ta.crossover(ema_fast, ema_slow)
bearish_cross = ta.crossunder(ema_fast, ema_slow)

// STATE TRACKING
var bool in_bullish_trend = false
var bool in_bearish_trend = false
var int trades_today = 0

if ta.change(time("D")) != 0

    trades_today := 0

if bullish_cross
    in_bullish_trend := true
    in_bearish_trend := false

if bearish_cross
    in_bullish_trend := false
    in_bearish_trend := true

// RETEST CONDITION
bullish_retest = in_bullish_trend and (math.abs(close - ema_fast) / ema_fast <= retest_tolerance)
bearish_retest = in_bearish_trend and (math.abs(close - ema_fast) / ema_fast <= retest_tolerance)

// ENTRIES WITH SL/TP AND TRADE LIMIT
if bullish_retest and trades_today < max_trades_per_day
    strategy.entry("Long", strategy.long)
    strategy.exit("Long TP/SL", from_entry="Long", stop=close * (1 - stop_loss_perc), limit=close * (1 + stop_loss_perc * risk_reward_ratio))
    label.new(bar_index, low, "BUY", color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small)
    trades_today += 1

if bearish_retest and trades_today < max_trades_per_day
    strategy.entry("Short", strategy.short)
    strategy.exit("Short TP/SL", from_entry="Short", stop=close * (1 + stop_loss_perc), limit=close * (1 - stop_loss_perc * risk_reward_ratio))
    label.new(bar_index, high, "SELL", color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)
    trades_today += 1

// BACKGROUND COLOR WHEN IN POSITION
bgcolor(strategy.position_size > 0 ? color.new(color.green, 90) : na)
bgcolor(strategy.position_size < 0 ? color.new(color.red, 90) : na)

// ALERTS
if bullish_retest
    alert("BUY Retest Triggered!", alert.freq_once_per_bar)

if bearish_retest
    alert("SELL Retest Triggered!", alert.freq_once_per_bar)