Cette stratégie génère des signaux de négociation basés sur la croix d'or et la croix de la mort de trois lignes EMA avec des périodes différentes afin de tirer parti des forces de chacune d'elles et d'obtenir de meilleures performances de négociation.
La stratégie calcule trois lignes EMA avec des périodes de 8, 50 et 200 et génère des signaux lorsque l'EMA plus rapide traverse au-dessus ou au-dessous de l'EMA plus lente.
Calculer les lignes EMA à 8 périodes, 50 périodes et 200 périodes.
Passez long lorsque l'EMA à 8 périodes dépasse l'EMA à 50 périodes (croix d'or), fermez position lorsque l'EMA à 50 périodes dépasse l'EMA à 8 périodes (croix de mort).
Optionnellement, n'allez long que lorsque le prix est supérieur à l'EMA à 200 périodes pour éviter les coups de fouet.
Une ligne EMA optionnelle de prise de bénéfices peut être définie pour fermer les positions lorsque le prix dépasse cette ligne.
L'EMA rapide identifie les fonds, l'EMA moyenne détermine la tendance et l'EMA lente filtre le bruit.
L'EMA à 8 périodes capte les bas courts, l'EMA à 50 périodes détermine la tendance à moyen terme et l'EMA à 200 périodes filtre le bruit.
Il suffit d'aller bien au-dessus de l'EMA de 200 périodes pour éviter les coups de fouet.
L'EMA à prise de bénéfices personnalisable fixe des objectifs de bénéfices raisonnables.
Les personnalisations visuelles comme les couleurs de barres et la trace EMA améliorent la flexibilité.
La logique simple de la croix dorée/mort est facile à comprendre.
Réduire les périodes EMA ou les combiner avec des indicateurs comme le MACD.
Utilisez des EMA plus longues pour filtrer ou ajouter des conditions.
L'objectif de profit fixe n'est pas adaptatif. Utilisez des sorties dynamiques basées sur l'ATR, etc.
Aucun arrêt signifie un risque illimité.
Optimiser les périodes EMA pour les meilleurs paramètres.
Ajoutez des indicateurs comme le MACD pour le timing.
Mettre en œuvre une prise de profit dynamique basée sur la volatilité.
Ajouter une logique de stop-loss, de suivi ou de valeur fixe.
Améliorer les conditions d'entrée, par exemple les filtres à volume.
Cette stratégie capitalise sur le filtrage de tendance de l'EMA pour identifier les mouvements à forte probabilité.
/*backtest start: 2023-09-18 00:00:00 end: 2023-09-20 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Long only EMA CROSS 8/50/200 Backtest", shorttitle="Golden Cross Tri EMA", overlay=true) // EMA 8/50/200 Cross TEST // Input switch1=input(true, title="Enable Bar Color?") switch2=input(true, title="Show 8 EMA") switch3=input(true, title="Show 50 EMA") switch4=input(true, title="Show 200 EMA") switch5=input(false, title="Show profit level EMA") bool_Long_EMA200=input(false, title="Long only above EMA200") movingaverage_8 = ema(close, input(8)) movingaverage_50 = ema(close, input(50)) movingaverage_market_signal = ema(close, input(200)) movingaverage_profitlvl = ema(close, input(50)) // Calculation bullish_cross = if bool_Long_EMA200 == true crossover(movingaverage_8, movingaverage_50) and movingaverage_8 > movingaverage_market_signal else bullish_cross = crossover(movingaverage_8, movingaverage_50) bearish_cross = crossunder(close, movingaverage_profitlvl) // Strategy if bullish_cross strategy.entry("long", strategy.long) strategy.close("long", when = bearish_cross ) // Colors bartrendcolor = close > movingaverage_8 and close > movingaverage_50 and change(movingaverage_50) > 0 ? green : close < movingaverage_8 and close < movingaverage_50 and change(movingaverage_50) < 0 ? red : blue barcolor(switch1?bartrendcolor:na) // Output plot(switch2?movingaverage_8:na,color = change(movingaverage_8) > 0 ? green : red,linewidth=2, title="EMA8") plot(switch3?movingaverage_50:na,color = change(movingaverage_50) > 0 ? green : red,linewidth=2,title="EMA50") plot(switch4?movingaverage_market_signal:na,color = change(movingaverage_market_signal) > 0 ? green : red,linewidth=3,title="EMA200") plot(switch5?movingaverage_profitlvl:na,color = change(movingaverage_profitlvl) > 0 ? green : red,linewidth=3, title="EMA Profit LVL") // alertcondition(bullish_cross, title='Golden Cross (bullish)', message='Bullish') alertcondition(bearish_cross, title='Death Cross (bearish)', message='Bearish')