Les ressources ont été chargées... Je charge...

La stratégie de négociation intelligente G-Trend EMA ATR

Auteur:ChaoZhang est là., Date: 2024-06-14 à 15h35
Les étiquettes:Le taux d'intérêtATR

img

Résumé

Cette stratégie utilise l'indicateur G-Channel pour identifier la direction de la tendance du marché, tout en incorporant des indicateurs EMA et ATR pour optimiser les points d'entrée et de sortie. L'idée principale est: aller long lorsque le prix dépasse la bande supérieure de la G-Channel et est en dessous de l'EMA; aller court lorsque le prix dépasse la bande inférieure et est au-dessus de l'EMA. Pendant ce temps, l'ATR est utilisé pour définir des niveaux de stop-loss et de take-profit dynamiques, avec le stop-loss à 2 fois l'ATR et le take-profit à 4 fois l'ATR. Cette approche peut capturer plus de profits sur les marchés en tendance tout en contrôlant strictement les risques.

Principes de stratégie

  1. Calcul des bandes supérieures et inférieures du canal G: utiliser le prix de clôture actuel et les prix hauts et bas précédents pour calculer les bandes supérieures et inférieures du canal G.
  2. Déterminer la direction de la tendance: observer la relation entre le prix et les bandes G-Channel pour déterminer la tendance haussière ou baissière.
  3. Calcul de l'EMA: calculer la valeur de l'EMA pour la période spécifiée.
  4. Calcul de l'ATR: calculer la valeur de l'ATR pour la période spécifiée.
  5. Déterminer les conditions d'achat/de vente: déclencher une position longue lorsque le prix dépasse la bande supérieure et est inférieur à la EMA; déclencher une position courte lorsque le prix dépasse la bande inférieure et est supérieur à la EMA.
  6. Le montant de la garantie est calculé à partir du montant de la garantie.ATR, le bénéfice est le prix d'entrée + 4ATR (long); le stop-loss est le prix d'entrée + 2ATR, le bénéfice est le prix d'entrée - 4ATR (courte)
  7. Exécution de la stratégie: lorsque les conditions d'achat/de vente sont remplies, exécuter l'opération d'entrée correspondante et définir le stop-loss et le take-profit en conséquence.

Les avantages de la stratégie

  1. Suivi des tendances: la stratégie capte efficacement les tendances du marché en utilisant le canal G, adapté aux tendances des marchés.
  2. L'ATR est utilisé pour ajuster dynamiquement les niveaux d'arrêt des pertes et de prise de profit, en s'adaptant mieux à la volatilité du marché.
  3. Contrôle des risques: le stop-loss est fixé à 2 fois l'ATR, contrôlant strictement le risque de chaque transaction.
  4. Simple et facile à utiliser: la logique de la stratégie est claire et directe, adaptée à la plupart des investisseurs.

Risques stratégiques

  1. Marché à variation: sur les marchés à variation, les signaux de négociation fréquents peuvent entraîner une augmentation des pertes.
  2. Optimisation des paramètres: différents instruments de négociation et délais peuvent exiger des paramètres différents; une application aveugle peut entraîner des risques.
  3. Événements de cygne noir: dans des conditions de marché extrêmes avec des fluctuations de prix drastiques, les stop-loss peuvent ne pas être exécutés efficacement.

Directions d'optimisation de la stratégie

  1. Filtrage des tendances: ajouter des conditions de filtrage des tendances telles que le croisement MA, le DMI, etc., pour réduire les transactions sur des marchés variés.
  2. Optimisation des paramètres: optimiser les paramètres pour différents instruments et délais afin de trouver la meilleure combinaison de paramètres.
  3. Gestion des positions: ajustement dynamique des positions en fonction de la volatilité du marché pour améliorer l'utilisation du capital.
  4. Combinaison de stratégies: combiner cette stratégie avec d'autres stratégies efficaces pour améliorer la stabilité.

Résumé

Cette stratégie construit un système de trading simple et efficace suivant les tendances en utilisant des indicateurs tels que le G-Channel, l'EMA et l'ATR. Elle peut obtenir de bons résultats sur les marchés en tendance, mais présente des performances moyennes sur les marchés en évolution.


/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// Full credit to AlexGrover: https://www.tradingview.com/script/fIvlS64B-G-Channels-Efficient-Calculation-Of-Upper-Lower-Extremities/
strategy ("G-Channel Trend Detection with EMA Strategy and ATR", shorttitle="G-Trend EMA ATR Strategy", overlay=true)

// Inputs for G-Channel
length = input(100, title="G-Channel Length")
src = input(close, title="Source")

// G-Channel Calculation
var float a = na
var float b = na
a := max(src, nz(a[1])) - (nz(a[1] - b[1]) / length)
b := min(src, nz(b[1])) + (nz(a[1] - b[1]) / length)
avg = (a + b) / 2

// G-Channel Signals
crossup = b[1] < close[1] and b > close
crossdn = a[1] < close[1] and a > close
bullish = barssince(crossdn) <= barssince(crossup)
c = bullish ? color.lime : color.red

// Plot G-Channel Average
p1 = plot(avg, "Average", color=c, linewidth=1, transp=90)
p2 = plot(close, "Close price", color=c, linewidth=1, transp=100)
fill(p1, p2, color=c, transp=90)

// Show Buy/Sell Labels
showcross = input(true, title="Show Buy/Sell Labels")
plotshape(showcross and not bullish and bullish[1] ? avg : na, location=location.absolute, style=shape.labeldown, color=color.red, size=size.tiny, text="Sell", textcolor=color.white, transp=0, offset=-1)
plotshape(showcross and bullish and not bullish[1] ? avg : na, location=location.absolute, style=shape.labelup, color=color.lime, size=size.tiny, text="Buy", textcolor=color.white, transp=0, offset=-1)

// Inputs for EMA
emaLength = input(50, title="EMA Length")
emaValue = ema(close, emaLength)

// Plot EMA
plot(emaValue, title="EMA", color=color.blue, linewidth=1)

// ATR Calculation
atrLength = input(14, title="ATR Length")
atrValue = atr(atrLength)

// Strategy Conditions
buyCondition = bullish and close < emaValue
sellCondition = not bullish and close > emaValue

// Stop Loss and Take Profit Levels
longStopLoss = close - 2 * atrValue
longTakeProfit = close + 4 * atrValue
shortStopLoss = close + 2 * atrValue
shortTakeProfit = close - 4 * atrValue

// Execute Strategy with ATR-based stop loss and take profit
if (buyCondition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Sell", "Buy", stop=longStopLoss, limit=longTakeProfit)

if (sellCondition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=shortStopLoss, limit=shortTakeProfit)

// Plot Buy/Sell Signals on the chart
plotshape(series=buyCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", offset=-1)
plotshape(series=sellCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", offset=-1)


Relationnée

Plus de