Stratégie de trading à court terme basée sur le canal EMA et le MACD


Date de création: 2024-01-23 14:30:02 Dernière modification: 2024-01-23 14:30:02
Copier: 0 Nombre de clics: 741
1
Suivre
1617
Abonnés

Stratégie de trading à court terme basée sur le canal EMA et le MACD

Aperçu

Cette stratégie est appelée la stratégie de négociation en ligne courte basée sur le canal EMA et le MACD. Elle combine le canal EMA et l’indicateur MACD pour identifier les tendances et donner un signal de négociation.

Principe de stratégie

La stratégie utilise l’EMA du 5e jour et l’EMA du 21e jour pour former un canal de l’EMA. Lorsque l’EMA du 5e jour traverse l’EMA du 21e jour, le marché est considéré comme entrant dans le polype, et lorsque l’EMA du 5e jour traverse l’EMA du 21e jour, le marché est considéré comme entrant dans le vide. Le graphique vertical de l’indicateur MACD peut être utilisé pour filtrer les faux signaux.

Analyse des avantages

Cette stratégie, combinant l’identification de tendances et le filtrage des indicateurs, permet d’identifier efficacement la direction des courts-circuits. L’utilisation de la voie EMA pour déterminer la direction des tendances principales, puis le filtrage des faux signaux avec l’indicateur MACD, peut considérablement augmenter la probabilité de gagner. Le mécanisme de stop-loss fixe garantit également le rapport bénéfice-risque des gains.

Analyse des risques

Cette stratégie s’applique principalement aux transactions sur les courts courants, et n’est pas très efficace dans les conditions de longue ligne et d’oscillation. Dans les marchés où les courants longs sont horizontaux, les signaux croisés des canaux EMA sont fréquents, mais la plupart sont des faux signaux, à ce moment-là, le diagramme MACD peut jouer un certain rôle de filtrage, mais l’effet est encore limité. De plus, le mécanisme de stop-loss fixe rend difficile la capture des gains supplémentaires apportés par les tendances longues.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Optimiser les paramètres de l’EMA pour trouver la combinaison de paramètres qui correspond le mieux aux variétés de transactions spécifiques et qui permettent de maximiser les rendements;
  2. Optimiser les paramètres du MACD pour améliorer ses performances de filtrage;
  3. Élargir le périmètre de stop loss lorsque la volatilité du marché augmente, combinée à des indices de volatilité;
  4. L’ajout d’un mécanisme de suivi des arrêts de perte pour rapprocher les arrêts de perte du prix et réduire la probabilité que des arrêts inutiles soient déclenchés tout en garantissant la rentabilité.

Résumer

Cette stratégie est généralement plus rentable et particulièrement adaptée aux transactions à courte durée. Elle constitue un bon choix pour les stratégies de trading quantitatif qui recherchent des transactions à haute fréquence. Cependant, les traders doivent veiller à adapter les paramètres de la stratégie en fonction des conditions du marché afin de maximiser les gains tout en contrôlant les risques de négociation.

Code source de la stratégie
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
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/
// © moondevonyt

//@version=5
strategy("Scalping with EMA channel and MACD", overlay=true)

// Exponential moving average inputs
ema21 = ta.ema(close, 21)
ema5 = ta.ema(close, 5)

// MACD inputs
fastLength = 18
slowLength = 34
signalSmoothing = 12

[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)
macdHistogram = macdLine - signalLine

// Buy and sell conditions
buyCondition = ta.crossover(ema5, ema21) and macdHistogram > 0
sellCondition = ta.crossunder(ema5, ema21) and macdHistogram < 0

// Re-entry conditions
reEntryBuyCondition = close > ema21
reEntrySellCondition = close < ema21

// Set stop loss and take profit
stopLoss = 8
takeProfit = 15

// Execute Strategy
if buyCondition
    strategy.entry("Buy", strategy.long)
    strategy.exit("Take Profit/Stop Loss", "Buy", stop=close - stopLoss, limit=close + takeProfit)
if reEntryBuyCondition
    strategy.entry("Re-Enter Buy", strategy.long)
    strategy.exit("Take Profit/Stop Loss", "Re-Enter Buy", stop=close - stopLoss, limit=close + takeProfit)

if sellCondition
    strategy.entry("Sell", strategy.short)
    strategy.exit("Take Profit/Stop Loss", "Sell", stop=close + stopLoss, limit=close - takeProfit)
if reEntrySellCondition
    strategy.entry("Re-Enter Sell", strategy.short)
    strategy.exit("Take Profit/Stop Loss", "Re-Enter Sell", stop=close + stopLoss, limit=close - takeProfit)

// Plotting EMAs and MACD
plot(ema21, color=color.blue, title="21 EMA")
plot(ema5, color=color.orange, title="5 EMA")
plot(macdHistogram, color=color.red, title="MACD Histogram")

// Plot buy and sell signals
plotshape(series=buyCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=sellCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")