Stratégie de négociation croisée MACD

Auteur:ChaoZhang est là., Date: 2024-01-05 15:32:06 Je vous en prie.
Les étiquettes:

img

Résumé

La stratégie de trading MACD est une stratégie de suivi des tendances. Elle utilise le croisement des lignes moyennes mobiles rapides et lentes comme signaux d'achat et de vente.

Principe de stratégie

Cette stratégie est basée sur l'indicateur MACD. L'indicateur MACD est la différence entre deux lignes moyennes mobiles avec des paramètres différents, reflétant les changements de l'élan des prix. Plus précisément, il s'agit de la différence entre la ligne moyenne mobile rapide (paramètre par défaut est la ligne de 12 jours) et la ligne moyenne mobile lente (paramètre par défaut est la ligne de 26 jours), appelée la barre MACD. Pour éliminer les oscillations, l'indicateur MACD introduit également une ligne DEA ou une ligne de signal, généralement la moyenne mobile pondérée de 9 jours du MACD.

Lorsque la barre MACD traverse la ligne DEA de bas en haut et entre dans la zone positive, elle indique que la ligne moyenne à court terme traverse au-dessus de la ligne moyenne à long terme, ce qui indique que la tendance des prix tourne à la hausse et qu'un signal d'achat est généré.

La stratégie utilise le croisement de la barre MACD et de la ligne DEA pour déterminer le moment de l'achat et de la vente.

Analyse des avantages

Les avantages de cette stratégie sont les suivants:

  1. Capacité de suivre la tendance et de saisir les variations de prix en temps opportun.
  2. Simple et facile à comprendre et à mettre en œuvre.
  3. Paramètres relativement fixes sans ajustement fréquent.
  4. Applicable à différentes périodes.

Analyse des risques

Cette stratégie comporte également des risques:

  1. Peut générer de multiples faux signaux ou des coups de fouet sur les marchés latéraux.
  2. A un certain retard et peut manquer le meilleur moment des changements de prix.
  3. Les paramètres sont facilement sur-optimisés et les résultats réels peuvent être médiocres.

Pour réduire les risques, les paramètres peuvent être ajustés ou combinés avec d'autres indicateurs tels que les indicateurs de volume et de volatilité.

Directions d'optimisation

Cette stratégie peut être optimisée dans les aspects suivants:

  1. Optimisation des paramètres pour trouver les paramètres optimaux tout en évitant une sur-optimisation.

  2. Combiner avec d'autres indicateurs pour former des stratégies de combinaison plus puissantes.

  3. Définir des points de stop loss et de profit pour contrôler efficacement les risques.

  4. Optimisation adaptative pour appliquer cette stratégie à différents marchés et délais en fonction des conditions réelles.

Conclusion

La stratégie de trading croisée MACD capture les changements de tendance à faible coût en suivant les tendances des prix. Elle est simple, pratique et facile à mettre en œuvre, ce qui en fait une stratégie de démarrage appropriée pour les débutants. Mais cette stratégie présente également quelques défauts. En optimisant et en améliorant constamment, l'effet réel de cette stratégie peut être meilleur.


/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("MACD Strategy by Forbes",default_qty_type=strategy.percent_of_equity, default_qty_value=100, overlay=false)

fastLength = input(20)
slowlength = input(40)
MACDLength = input(4)

// === INPUT BACKTEST RANGE ===
FromYear  = input(defval = 2011, title = "From Year", minval = 2009)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2009)
ToMonth   = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 31, title = "To Day", minval = 1, maxval = 31)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"

MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350

f1 = plot(MACD,color=red)
s1 = plot(aMACD,color=blue)
plotColor = if delta > 0
    delta > delta[1] ? lime : green
else 
    delta < delta[1] ? maroon : red

plot(delta, color=plotColor, style=columns)

if (crossover(delta, 0))
    strategy.entry("Buy", true, when=window(), comment="Buy")

if (crossunder(delta, 0))
    strategy.close_all(when=window())

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Plus de