
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.
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.
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.
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.
Cette stratégie peut être optimisée dans les domaines suivants:
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.
/*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")