
La stratégie est un système de trading quantitatif basé sur les croisements de courbes et les indicateurs MACD, combinant plusieurs indicateurs techniques pour optimiser les heures d’entrée et de sortie. La stratégie utilise principalement les croisements d’EMA9 et WMA30 comme signal d’entrée et de confirmation en combinaison avec l’indicateur MACD. Les conditions de sortie sont plus complexes et prennent en compte la relation entre les prix et les courbes et les variations de l’indicateur MACD.
Conditions d’entrée :
Conditions de sortie: [qui remplit l’une des conditions suivantes]:
Indicateurs auxiliaires
L’idée centrale de la stratégie est d’utiliser le croisement de la moyenne courte (EMA9) avec la moyenne moyenne à moyen terme (WMA30) pour capturer une tendance à la hausse potentielle, tout en utilisant l’indicateur MACD pour filtrer les faux signaux. Les conditions de sortie sont conçues pour arrêter ou verrouiller les bénéfices en temps opportun et éviter les retraits causés par une position excessive.
L’analyse intégrée multi-indicateurs: elle combine plusieurs indicateurs techniques tels que la moyenne, le MACD et le VWAP pour fournir une perspective plus complète de l’analyse du marché et aider à améliorer l’exactitude des décisions de négociation.
Un mécanisme d’entrée flexible: la confirmation MACD par la combinaison croisée des EMA et des WMA permet de capturer les phases précoces de la tendance et de filtrer efficacement certains faux signaux.
Contrôle rigoureux des risques: l’utilisation de conditions de sortie multiples, y compris des baisses successives de la moyenne courte et des signaux de retournement MACD, aide à arrêter les pertes en temps opportun et à contrôler les risques.
Prendre en compte les différentes périodes de temps: l’introduction de la SMA de 200 jours et de l’EMA de 21 jours permet aux stratégies d’analyser dans différentes périodes de temps, ce qui améliore l’adaptabilité des stratégies.
Références de prix basées sur le volume des transactions: l’indicateur VWAP, qui prend en compte le facteur volume des transactions, fournit une référence plus représentative de la tendance des prix.
Risque de transaction fréquente: les stratégies de croisement de la même ligne peuvent entraîner des transactions fréquentes, augmenter les coûts de transaction et affecter les bénéfices globaux.
Risque de retard: Les moyennes mobiles sont essentiellement des indicateurs en retard qui peuvent ne pas être capables de saisir les points de basculement en temps opportun dans des marchés très volatils.
Risque de fausse rupture: il peut y avoir de fréquents signaux de fausse rupture au cours de la phase d’élaboration du tableau de bord, entraînant des pertes continues.
Dépendance à la tendance: Cette stratégie fonctionne mieux dans les marchés clairement en tendance, mais peut être moins efficace dans les marchés en turbulence.
Sensitivité des paramètres: les effets de la stratégie peuvent être très sensibles aux paramètres (comme les périodes de moyenne, les paramètres MACD, etc.) et nécessitent des ajustements fréquents.
Introduction d’indicateurs de volatilité: envisager l’ajout d’indicateurs ATR (Average True Range) afin d’ajuster les positions d’arrêt en fonction des fluctuations du marché et d’améliorer la flexibilité de la gestion des risques.
Optimisation du mécanisme de sortie: l’ajout d’un trailing stop ou d’un stop dynamique basé sur la volatilité peut être envisagé pour mieux bloquer les bénéfices.
Ajout d’un filtre de trafic: une analyse de trafic combinée est utilisée lors de la confirmation d’un signal d’entrée pour réduire le risque de fausse rupture.
Classification des états du marché: développer un modèle de classification des états du marché en utilisant différents paramètres ou stratégies de négociation pour différents états du marché (trends, oscillations).
Analyse de plusieurs périodes: Étendre la stratégie à plusieurs périodes, améliorer la précision de l’admission en confirmant le signal à différentes périodes.
Optimisation de l’apprentissage automatique: optimiser dynamiquement les paramètres de la stratégie à l’aide d’algorithmes d’apprentissage automatique pour améliorer la capacité d’adaptation de la stratégie aux changements du marché.
La “stratégie croisée EMA/WMA renforcée et les conditions de sortie intégrées” est un système de négociation quantitative combinant plusieurs indicateurs techniques pour capturer les tendances du marché par le biais d’une croisée de ligne uniforme et d’un indicateur MACD et contrôler les risques à l’aide de conditions multiples. L’avantage de la stratégie réside dans sa perspective d’analyse de marché complète et son mécanisme de gestion des risques rigoureux, mais elle est également confrontée à des défis tels que l’arriération et la sensibilité aux paramètres.
/*backtest
start: 2023-07-25 00:00:00
end: 2024-07-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//X version 11
strategy("EMA9/WMA30 Crossover Strategy with Enhanced Exit Conditions", shorttitle="EMA9/WMA30 Enhanced Exit", overlay=true)
// Inputs
lengthEma = input.int(9, title="Length for EMA")
lengthWma = input.int(30, title="Length for WMA")
fastLength = input.int(12, title="Fast Length for MACD")
slowLength = input.int(26, title="Slow Length for MACD")
macdLength = input.int(9, title="Signal Smoothing for MACD")
pointsGainGoal = input.float(33.00, title="Points Gain Goal")
pointsLossGoal = input.float(-50.00, title="Points Loss Goal")
// Calculating EMA, WMA, and MACD
EMA9 = ta.ema(close, lengthEma)
WMA30 = ta.wma(close, lengthWma)
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, macdLength)
// Adding 200 SMA, 21 EMA, and VWAP
SMA200 = ta.sma(close, 200)
EMA21 = ta.ema(close, 21)
VWAPValue = ta.vwap(close)
// Buy Signal based on EMA/WMA Crossover and MACD confirmation
crossover = ta.crossover(EMA9, WMA30)
buySignal = crossover and macdLine > signalLine
// Entry
var float entryPrice = na
if (buySignal)
strategy.entry("Buy", strategy.long)
entryPrice := close
// Counters for consecutive closes below EMA9 and WMA30
var int belowEMA9Count = 0
var int belowWMA30Count = 0
belowEMA9Count := close < EMA9 ? belowEMA9Count + 1 : 0
belowWMA30Count := close < WMA30 ? belowWMA30Count + 1 : 0
// Exit Conditions
MACDBearishCross = ta.crossunder(macdLine, signalLine)
exitCondition1 = belowEMA9Count >= 2 and belowWMA30Count >= 1
exitCondition2 = MACDBearishCross
// Exit
if (strategy.position_size > 0)
if (exitCondition1 or exitCondition2)
strategy.close("Buy")
entryPrice := na
belowEMA9Count := 0
belowWMA30Count := 0
// Visualization
plot(EMA9, title="EMA 9", color=color.blue)
plot(WMA30, title="WMA 30", color=color.red)
plot(SMA200, title="SMA 200", color=color.orange)
plot(EMA21, title="EMA 21", color=color.purple)
plot(VWAPValue, title="VWAP", color=color.green)