
Une stratégie de négociation quantitative basée sur les tendances qui utilise les moyennes mobiles indicielles de différents cycles (EMA) pour identifier les signaux de entrée et de sortie potentiels du marché des crypto-monnaies. En suivant les croisements entre les différentes EMA, on peut trouver des opportunités de reprise et d’entrée de tendance pour maximiser les gains potentiels tout en contrôlant les risques.
La stratégie utilise 4 EMA de différentes périodes, soit 8, 12, 24 et 72 EMA. Ils indiquent la direction de la tendance sur le graphique. Lorsqu’un prix de clôture franchit une ligne lente, il s’agit d’une opportunité d’achat.
Signaux d’entréeIl y en a deux:
Signaux de sortieIl y en a trois:
Le plus grand avantage de cette stratégie réside dans la possibilité de saisir à la fois des occasions de reprise et de tendance. Utiliser une combinaison de ligne rapide et de ligne lente pour éviter d’être trompé par les fluctuations à court terme. L’EMA est également efficace pour filtrer le bruit des fluctuations anormales des prix et capturer les tendances à long terme.
Cette stratégie comporte aussi des risques à éviter:
Les mesures suivantes peuvent être prises pour contrer ces risques:
Il y a encore de la place pour l’optimisation de cette stratégie, principalement dans les domaines suivants:
Cette stratégie de suivi de la trajectoire EMA est une stratégie de suivi de la tendance dans son ensemble. Elle prend en compte à la fois le suivi et le redressement, et détermine le moment d’entrée sur le marché grâce à l’intersection EMA.
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
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("Cornoflower Trend Following Crypto", overlay=true)
// Input Settings
lenEma8 = input(8, title="Length of 8 EMA")
lenEma12 = input(12, title="Length of 12 EMA")
lenEma24 = input(24, title="Length of 24 EMA")
lenEma72 = input(72, title="Length of 72 EMA")
// Calculate the EMAs
ema8 = ta.ema(close, lenEma8)
ema12 = ta.ema(close, lenEma12)
ema24 = ta.ema(close, lenEma24)
ema72 = ta.ema(close, lenEma72)
// Entry Conditions
pullbackEntry = ta.crossover(close, ema12) and ta.crossover(close, ema24) and ta.crossover(close, ema72)
initialEntry = ta.crossover(close, ema72) and ta.crossover(ema8, ema12) and ta.crossover(ema8, ema24)
// Exit Conditions
profitTarget = 100 // Example target in pips, adjust according to your preference
trailingStop = 50 // Example trailing stop value in pips, adjust according to your preference
exitCondition = ta.crossunder(ema12, ema24)
// Execute Strategy
if pullbackEntry
strategy.entry("Pullback Entry", strategy.long)
if initialEntry
strategy.entry("Initial Entry", strategy.long)
if strategy.position_size > 0
strategy.exit("Profit Target", "Pullback Entry", limit=close + (profitTarget * syminfo.mintick))
strategy.exit("Trailing Stop", "Pullback Entry", stop=close - (trailingStop * syminfo.mintick), trail_points=trailingStop)
strategy.exit("Exit Condition", "Initial Entry", stop=close, when=exitCondition)
// Plot EMAs
plot(ema8, color=color.yellow, title="8 EMA", linewidth=1, style=plot.style_line)
plot(ema12, color=color.purple, title="12 EMA", linewidth=1, style=plot.style_line)
plot(ema24, color=color.blue, title="24 EMA", linewidth=1, style=plot.style_line)
plot(ema72, color=color.rgb(235, 255, 59), title="72 EMA", linewidth=1, style=plot.style_line)