
Cette stratégie est une stratégie de suivi de la tendance basée sur le croisement de multiples moyennes mobiles d’indices (EMA). Elle utilise les trois lignes EMA des 20, 50 et 100 jours pour juger de la tendance du marché et effectuer des opérations d’achat et de vente lorsque certaines conditions sont remplies. La stratégie vise à capturer les tendances à moyen et long terme tout en améliorant la fiabilité du signal en croisant plusieurs périodes de temps.
Conditions d’achat :
Conditions de vente :
La logique de la stratégie:
Confirmation de plusieurs périodes: l’utilisation de trois périodes EMA différentes peut fournir une confirmation de tendance plus fiable et réduire les fausses ruptures.
Mécanisme de confirmation en continu: les conditions d’achat doivent être remplies deux jours de suite, ce qui permet de réduire les erreurs dans les marchés en crise.
Suivi des tendances: en suivant la direction de la rupture des EMA, la stratégie permet de capturer les tendances à moyen et long terme.
Gestion des risques: un objectif de profit de 20% est fixé, permettant de verrouiller les bénéfices en temps opportun.
Un mécanisme de sortie flexible: vous pouvez vous retirer lorsque le prix tombe au-dessus de n’importe quelle EMA, ce qui aide à arrêter les pertes en temps opportun.
Visualisation: La stratégie utilise trois lignes EMA sur le graphique pour faciliter l’analyse visuelle de la situation du marché.
Le retard: L’EMA est un retard en soi, qui peut entraîner des délais d’entrée et de sortie insuffisants.
Les marchés de choc ont un mauvais rendement: les faux signaux peuvent être fréquents dans les marchés de choc horizontal.
Le pourcentage fixe d’arrêt: 20% de l’arrêt fixe peut être abandonné prématurément dans un contexte de forte tendance.
Manque de mécanisme de blocage des pertes: la stratégie n’a pas de paramètre de blocage des pertes clairement défini, ce qui peut entraîner des pertes plus importantes en cas de revirement radical de la situation.
Sensitivité des paramètres: le choix de la période EMA peut avoir un impact significatif sur la performance de la stratégie.
Introduction d’EMA adaptative: On peut envisager d’utiliser l’EMA adaptative pour ajuster dynamiquement la périodicité des moyennes mobiles afin de s’adapter à différentes conditions de marché.
Ajout d’indicateurs quantifiés: en combinaison avec des indicateurs tels que le RSI, le MACD, etc., il est possible d’améliorer la précision des entrées et des sorties.
Optimisation des stop-loss: l’optimisation de la gestion des risques peut être envisagée à l’aide de stop-loss suivi ou de stop-loss dynamique basé sur l’ATR.
Filtre d’environnement de marché: ajouter un indicateur de force de tendance tel que l’ADX pour effectuer des transactions uniquement dans un marché en forte tendance.
Construction et réduction de stock en lots: il est possible d’envisager de créer plusieurs positions de stockage de paix pour réduire le risque d’un seul point de prix.
Optimisation de la rétroaction: la rétroaction est effectuée sur différentes combinaisons de cycles EMA pour trouver les paramètres optimaux.
Conditions d’augmentation du volume des transactions: envisagez d’ajouter la confirmation du volume des transactions pour améliorer la fiabilité du signal.
La stratégie de suivi des tendances croisées multi-EMA est un système de suivi des tendances à moyen et à long terme combinant plusieurs périodes de temps. La stratégie améliore la fiabilité du signal en demandant aux prix de franchir plusieurs EMA et de confirmer de manière continue. Cependant, la stratégie présente également certaines limites inhérentes, telles que la performance dans les marchés en turbulence et la rétrogradation potentielle.
/*backtest
start: 2023-06-15 00:00:00
end: 2024-06-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Strategy", overlay=true)
// Define EMAs
ema20 = ta.ema(close, 20)
ema50 = ta.ema(close, 50)
ema100 = ta.ema(close, 100)
// Variables to track consecutive days condition
var bool buy_condition = false
var bool prev_buy_condition = false
// Buy condition logic
if (close > ema20 and close > ema50 and close > ema100)
prev_buy_condition := buy_condition
buy_condition := true
else
buy_condition := false
// Buy only if condition is true for 2 consecutive days
buy_signal = buy_condition and prev_buy_condition
// Sell conditions
sell_condition = close < ema20 or close < ema50 or close < ema100 or strategy.netprofit / strategy.equity * 100 >= 20
// Plot EMAs
plot(ema20, color=color.blue, title="EMA 20")
plot(ema50, color=color.red, title="EMA 50")
plot(ema100, color=color.green, title="EMA 100")
// Execute strategy orders
if (buy_signal)
strategy.entry("Buy", strategy.long)
if (sell_condition)
strategy.close("Buy")