Stratégie de croisement des moyennes mobiles

Auteur:ChaoZhang est là., Date: le 28 septembre 2023 à 15h54
Les étiquettes:

Résumé

Cette stratégie utilise la croix d'or et la croix de la mort des moyennes mobiles pour déterminer les tendances et identifier les opportunités d'achat et de vente potentielles.

La logique de la stratégie

La stratégie utilise deux moyennes mobiles avec des délais différents. Le premier MA a un délai plus court, fixé à 20 jours, pour capturer les mouvements de prix à court terme. Le deuxième MA a un délai plus long, fixé à 120 jours, pour mesurer la tendance à long terme.

Lorsque le MA plus rapide traverse le MA plus lent, une croix dorée se produit, signalant une tendance à la hausse à court terme, et un signal d'achat est généré.

La stratégie utilise ta.crossover et ta.crossunder pour détecter le croisement des MA. Une fois qu'un croisement est identifié, un signal d'achat ou de vente correspondant est déclenché.

Analyse des avantages

Les moyennes mobiles sont parmi les outils d'analyse technique les plus courants et faciles à comprendre même pour les non-professionnels.

Comparativement aux indicateurs plus complexes, les MAs sont relativement simples à mettre en œuvre dans une stratégie.

En outre, la stratégie d'AM offre une certaine souplesse, les paramètres pouvant être ajustés pour différents produits et délais, de long terme à court terme.

Analyse des risques

Le risque majeur réside dans le fait que les fouets génèrent de fréquents faux signaux lorsque la tendance oscille.

Un autre risque potentiel réside dans le fait que les MAs sont en retard, car il leur faut du temps pour refléter les nouvelles tendances, ce qui peut entraîner des dérapages.

En outre, la stratégie ne prend pas en compte l'impact d'événements soudains comme les grandes nouvelles.

Directions d'optimisation

La stratégie peut être renforcée par:

  1. Ajouter des filtres comme le volume pour éviter de faux signaux sur les marchés à plage.

  2. Utilisation d'AM adaptatives qui ajustent les périodes en fonction de la volatilité.

  3. Combiner d'autres indicateurs comme le MACD et le Stochastique pour confirmer les signaux.

  4. Mettre en place des canaux de prix et ne prendre en compte que les signaux sur les évasions.

  5. Mettre en œuvre un stop loss et un profit pour augmenter la robustesse.

Conclusion

En résumé, la stratégie de croisement MA génère des signaux en croisant des MA rapides et lents. Elle est facile à utiliser et identifie les tendances, mais comporte également des risques de faux signaux et de délais. Avec des paramètres optimisés, des filtres ajoutés et des combinaisons d'indicateurs, elle peut grandement améliorer la viabilité. Dans l'ensemble, la stratégie MA est un système pratique de suivi des tendances qui mérite d'être étudié et appliqué pour les traders.


/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © brandlabng

//@version=5
//study(title="Holly Grail FX", overlay = true)
strategy('HG|E30m', overlay=true)
src = input(close, title='Source')

price = request.security(syminfo.tickerid, timeframe.period, src)
ma1 = input(20, title='1st MA Length')
type1 = input.string('EMA', '1st MA Type', options=['EMA'])

ma2 = input(120, title='2nd MA Length')
type2 = input.string('EMA', '2nd MA Type', options=['EMA'])

price1 = if type1 == 'EMA'
    ta.ema(price, ma1)

price2 = if type2 == 'EMA'
    ta.ema(price, ma2)


//plot(series=price, style=line,  title="Price", color=black, linewidth=1, transp=0)
plot(series=price1, style=plot.style_line, title='1st MA', color=color.new(#219ff3, 0), linewidth=2)
plot(series=price2, style=plot.style_line, title='2nd MA', color=color.new(color.purple, 0), linewidth=2)


longCondition = ta.crossover(price1, price2)
if longCondition
    strategy.entry('Long', strategy.long)

shortCondition = ta.crossunder(price1, price2)
if shortCondition
    strategy.entry('Short', strategy.short)

Plus de