Stratégie de trading révolutionnaire avec ajustement dynamique de la position de la moyenne mobile de l'indice adaptatif

EMA TP ROI
Date de création: 2024-12-20 16:33:20 Dernière modification: 2024-12-20 16:33:20
Copier: 4 Nombre de clics: 415
1
Suivre
1617
Abonnés

Stratégie de trading révolutionnaire avec ajustement dynamique de la position de la moyenne mobile de l’indice adaptatif

Aperçu

Cette stratégie est une stratégie de trading auto-adaptative basée sur un système bi-équivalent, qui identifie les signaux d’achat par la croisée des moyennes mobiles rapides (EMA25) et des moyennes mobiles lentes (EMA100) et combine des objectifs d’arrêt et de prise de profit dynamiques pour optimiser l’efficacité de la négociation. La stratégie adopte une approche de négociation de rupture, en mettant l’accent sur le contrôle du risque tout en garantissant les gains, et convient aux transactions à tendance à moyen et long terme.

Principe de stratégie

La logique de base de la stratégie comprend trois éléments clés:

  1. Système de signaux: utilise la formation de la crosse EMA100 sur EMA25 pour faire des signaux multiples, cette croisée est généralement le signe du début d’une tendance à la hausse.
  2. Contrôle du risque: avec le point le plus bas de la barre rouge la plus proche au-dessous de l’EMA100 comme point d’arrêt, ce réglage prévient efficacement les pertes causées par une fausse percée.
  3. Gestion des bénéfices: avec un ratio de risque/bénéfice de 1:3 pour fixer un objectif de rendement, le point d’arrêt est automatiquement ajusté à la ligne de coût lorsqu’un rendement de 2% est atteint, ce qui permet de détenir une position sans risque.

Avantages stratégiques

  1. La fiabilité du signal est élevée: l’utilisation d’EMA à vitesse lente comme confirmation de tendance permet de filtrer efficacement les faux signaux.
  2. Le contrôle des risques est amélioré: les paramètres d’arrêt de perte dynamiques et le mécanisme de confirmation de rupture réduisent le risque de transaction.
  3. La stabilité des caractéristiques de rendement: augmentation des rendements attendus de la stratégie en fixant un ratio de rendement raisonnable par rapport au risque.
  4. Le niveau d’automatisation est élevé: il comprend une génération de signaux complète, un stop loss et une logique de gestion de position.
  5. Adaptabilité: les paramètres peuvent être ajustés en fonction des différentes conditions du marché.

Risque stratégique

  1. Risque de choc du marché: dans le cas d’un marché à choc horizontal, des arrêts peuvent être déclenchés fréquemment.
  2. Risque de dérapage: les périodes de forte volatilité peuvent entraîner des dérapages.
  3. Risque de fausse rupture: le signal de croisement de ligne uniforme peut être faussement percé.
  4. Sensitivité des paramètres: la mise en place d’un cycle de moyenne ligne a un impact significatif sur la performance de la stratégie.

Orientation de l’optimisation de la stratégie

  1. Introduction de la confirmation de la quantité de trafic: l’ajout d’indicateurs de trafic dans le système de signaux améliore la fiabilité des percées.
  2. Optimisation des mécanismes d’arrêt des pertes: l’introduction de l’arrêt dynamique ATR peut être envisagée pour rendre l’arrêt des pertes plus adaptatif.
  3. Ajout de filtres de force de tendance: ajout d’indicateurs de force de tendance tels que l’ADX, optimisation du moment d’entrée.
  4. Amélioration de la gestion des positions: ajustement dynamique de la taille des positions en fonction de la volatilité.
  5. Adhésion au jugement du marché: introduction d’un mécanisme d’identification des régimes de marché, avec différents paramètres dans différents contextes de marché.

Résumer

La stratégie est conçue en tenant compte des besoins de la bataille et est très pratique. La stabilité et l’adaptabilité de la stratégie peuvent être encore améliorées grâce à l’orientation optimisée proposée. La stratégie est adaptée aux traders qui ont une forte tolérance au risque et qui recherchent des gains stables à moyen et long terme.

Code source de la stratégie
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-18 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA Crossover with TP and SL (Buy only) and Break-even", overlay=true)

// EMA sozlamalari
emaFastLength = input.int(25, title="Fast EMA Length")
emaSlowLength = input.int(100, title="Slow EMA Length")

// Hisoblash
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)

// Kesishishni aniqlash
bullishCross = ta.crossover(emaFast, emaSlow) // EMA 25 EMA 100 ni yuqoriga kesib o'tganda

// EMA 100 tagidagi oxirgi qizil shamning tagini olish
lastRedCandleLow = ta.valuewhen(close < open and close < emaSlow, low, 0) // EMA 100 pastidagi qizil shamning tagi

// TP va SL darajalarini hisoblash
longSL = lastRedCandleLow
longTP = close + 3 * (close - longSL) // TP SL ga nisbatan 1:2 masofada

// Savdoni ochish va 2% foyda bo'lganda SLni break-even ga o‘zgartirish
if (bullishCross)
    strategy.entry("Buy", strategy.long)  // Buy pozitsiyasini ochish
    strategy.exit("Exit Buy", "Buy", stop=longSL, limit=longTP)  // SL va TP qo'yish

    // 2% foyda bo'lganda SLni break-even ga o'zgartirish
    if (strategy.position_size > 0)
        profitPercentage = (close - strategy.position_avg_price) / strategy.position_avg_price * 100
        if (profitPercentage >= 2)
            strategy.exit("Exit Buy BE", "Buy", stop=strategy.position_avg_price) // SLni break-even ga o'zgartirish

// Signalni ko'rsatish
plotshape(bullishCross, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")

// // TP va SL chizish
// if (bullishCross)
//     line.new(x1=bar_index, y1=longSL, x2=bar_index+1, y2=longSL, color=color.red, width=1, extend=extend.none)
//     line.new(x1=bar_index, y1=longTP, x2=bar_index+1, y2=longTP, color=color.green, width=1, extend=extend.none)
//     label.new(bar_index, longSL, text="SL: " + str.tostring(longSL), style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)
//     label.new(bar_index, longTP, text="TP: " + str.tostring(longTP), style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)

// EMA chizish
plot(emaFast, color=color.blue, title="Fast EMA (25)")
plot(emaSlow, color=color.orange, title="Slow EMA (100)")

// Alert qo'shish
alertcondition(bullishCross, title="Buy Signal Alert", message="EMA 25 crossed above EMA 100! Buy Signal!")