Stratégie de négociation croisée de l'EMA

Auteur:ChaoZhang est là., Date: le 12 décembre 2023 à 17h09h24
Les étiquettes:

img

Résumé

La stratégie de trading crossover EMA est une stratégie de trading quantitative simple mais efficace. Elle utilise des moyennes mobiles exponentielles (EMA) et des signaux crossover pour identifier les tendances des prix et déterminer les points d'entrée et de sortie.

La logique de la stratégie

La clé réside dans l'utilisation de deux EMA avec des paramètres différents. L'EMA1 est définie à 25 jours et l'EMA2 est définie à 100 jours. Lorsque l'EMA à court terme franchit le niveau supérieur de l'EMA à long terme, c'est un signal d'achat. Lorsque l'EMA plus court franchit le niveau inférieur de l'EMA plus longue, c'est un signal de vente. Ainsi, l'EMA plus courte capture les tendances et l'élan des prix à court terme, tandis que l'EMA plus longue reflète les tendances à long terme.

Pour filtrer les faux signaux, la stratégie définit également quelques critères supplémentaires. Par exemple, il faut un modèle de bougie haussier ou un croisement se produisant au-dessus du niveau 50 RSI. Cela évite les transactions erronées dues au bruit à court terme.

Les avantages

Le plus grand avantage est la simplicité et l'intuitivité de cette stratégie, qui est beaucoup plus conviviale que les stratégies aux paramètres nombreux et à la logique complexe.

En outre, il capture les changements de tendance à court et à long terme, en utilisant l'indicateur technique classique des croisements EMA pour identifier les renversements de tendance et déterminer les entrées et les sorties.

Enfin, des filtres appropriés sont mis en place pour réduire les faux signaux et éviter d'être induit en erreur par le bruit du marché.

Les risques

Le risque principal est la divergence entre les tendances à court et à long terme. Des fluctuations dramatiques des prix peuvent déclencher des signaux croisés, mais la tendance à long terme reste inchangée, ce qui entraîne des transactions perdantes.

Les paramètres de période des EMA inappropriés pourraient également compromettre les performances de la stratégie, car leur pouvoir représentatif diminuerait, ce qui les rendrait inefficaces pour détecter les tendances et les renversements.

En outre, des filtres trop stricts peuvent entraîner la perte d'opportunités commerciales potentielles, ce qui nuit à la rentabilité.

Amélioration

La combinaison avec d'autres indicateurs tels que KDJ, MACD, etc. pourrait aider à confirmer les signaux de négociation et à éviter les faux signaux.

Tester différents ensembles de paramètres pour trouver les périodes optimales de l'EMA et ajuster les critères de filtrage pour équilibrer la fréquence et la fiabilité des transactions.

La taille dynamique des positions est également importante. Par exemple, une position plus grande lorsque les deux EMA sont plus éloignés, plus petite lorsque plus proches.

Conclusion

La stratégie de croisement EMA est une stratégie de trading quantitative simple mais pratique. Elle capitalise sur les signaux de croisement EMA pour négocier avec les tendances à court et à long terme. Facile à comprendre et à mettre en œuvre, elle minimise la complexité et convient aux traders novices. Cependant, ses risques ne doivent pas être négligés.


/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('EMA Crossover Signal', shorttitle='EMA Crossover Signal', overlay=true)
// Define input for position size as a percentage of equity
position_size_pct = input(1, title='Position Size (%)') / 100

//Input EMA
len1 = input.int(25, minval=1, title='EMA 1')
src1 = input(close, title='Source')
ema1 = ta.ema(src1, len1)
len2 = input.int(100, minval=1, title='EMA 2')
src2 = input(close, title='Source')
ema2 = ta.ema(src2, len2)
//End of format

//Format RSI
lenrsi = input(14, title='RSI length')
outrsi = ta.rsi(close,lenrsi)

bodybar1 = math.abs(close - open)
bodybar2 = math.abs(close[1] - open[1])
// Plot the EMAs
plot(ema1, color=color.new(color.blue, 0), title='EMA 1')
plot(ema2, color=color.new(color.red, 0), title='EMA 2')

// EMA Crossover conditions
emaCrossoverUp = ta.crossover(ema1, ema2)
emaCrossoverDown = ta.crossunder(ema1, ema2)
var entrybar = close  // Initialize entrybar with the current close

// Calculate crossovers outside of the if statements
emaCrossoverUpOccured = ta.crossover(close, ema1) and ema1 > ema2 and bodybar1 > bodybar2 and close > entrybar
emaCrossoverDownOccured = ta.crossunder(close, ema1) and ema1 < ema2 and bodybar1 > bodybar2 and close < entrybar

plotshape(series=emaCrossoverUpOccured, location=location.abovebar, color=color.new(color.green, 0), style=shape.triangleup, title='New Buy Order', size=size.tiny)
plotshape(series=emaCrossoverDownOccured, location=location.belowbar, color=color.new(color.red, 0), style=shape.triangledown, title='New Sell Order', size=size.tiny)

if emaCrossoverUpOccured
    strategy.entry("Enter Long", strategy.long)
else if emaCrossoverDownOccured
    strategy.entry("Enter Short", strategy.short)

Plus de