
Cette stratégie est basée sur l’indicateur de la différence de la ligne moyenne. Elle génère un signal d’achat lorsque la ligne rapide traverse la ligne lente et un signal de vente lorsque la ligne rapide traverse la ligne lente.
Cette stratégie génère un signal de transaction en calculant la différence entre les deux paramètres de l’EMA moyen, puis en calculant son propre EMA. Plus précisément, en choisissant la période périodique, en calculant le double de la période/2 de l’EMA comme ligne rapide, en calculant l’EMA périodique comme ligne lente, la différence entre les deux EMA constitue la différence.
Cette stratégie est simple et directe, elle permet de juger de la tendance des prix à l’aide d’indicateurs de différence de deux lignes de moyenne, et elle fait partie des stratégies de suivi de tendance typiques. L’effet est évident lorsque les prix sont dans un marché tendanciel; lorsque les prix oscillent, il en résulte de multiples signaux erronés.
Cette stratégie présente les avantages suivants:
Les stratégies sont simples, intuitives, faciles à comprendre et adaptées aux débutants.
L’indicateur de décalage moyen est sensible aux variations de prix et capte efficacement les changements de tendance.
Le système de gestion des données est basé sur un système de gestion de données qui est basé sur des données personnelles, et qui est basé sur des données personnelles.
une combinaison d’indicateurs à cycle long et court configurable pour s’adapter à différents environnements de marché;
Les stratégies de stop loss peuvent être configurées en fonction des préférences de risque personnelles pour réduire les pertes.
La stratégie présente également les risques suivants:
Le taux de fausses déclarations est élevé en cas de tremblement de terre, ce qui nécessite une aide pour déterminer les tendances à grande échelle.
Il y a un certain retard dans la mesure où il n’est pas possible d’évaluer efficacement le point de basculement de la tendance.
L’optimisation des paramètres de l’indicateur de l’écart-médian doit être prise en compte pour éviter une sensibilité excessive ou un retard;
Le nombre d’opérations est élevé, les coûts de transaction peuvent être élevés et la taille de la position doit être contrôlée.
La solution est la suivante:
Il est également important d’éviter de se tromper sur les tendances des marchés en cas de choc, en combinant les moyennes périodiques longues avec les grandes tendances.
Déterminer les points de vente et de vente en combinaison avec d’autres indicateurs de retournement, afin de réduire le risque de retard;
Les paramètres sont testés pour trouver les meilleurs.
Optimiser les stratégies de stop loss pour réduire les pertes individuelles.
Cette stratégie peut être optimisée dans les domaines suivants:
Tester différentes combinaisons de paramètres de la même ligne pour trouver le paramètre optimal;
L’augmentation des indicateurs de jugement des tendances et la distinction entre tendances et oscillations;
La précision de la détermination des points d’achat et de vente est améliorée par la combinaison d’indicateurs de retournement.
Optimiser les stratégies de stop-loss pour réduire les pertes.
Le test de paramètres de différentes périodes peut améliorer la stabilité de la stratégie. L’augmentation du jugement de la tendance peut réduire les fausses informations. L’indicateur de renversement peut améliorer le choix du moment de la vente.
La stratégie de suivi de la tendance basée sur l’écart moyen est claire et compréhensible. La direction de la tendance des prix est déterminée par l’écart moyen double. La stratégie est très simple et facile à mettre en œuvre.
/*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"}]
*/
//@version=5
strategy(title='Devick', overlay=true)
// Input parameters
period = input(title='Period', defval=21)
// Calculate moving averages
n2ma = 2 * ta.ema(close, math.round(period / 2))
nma = ta.ema(close, period)
diff = n2ma - nma
sqn = math.round(math.sqrt(period))
n2maPrev = 2 * ta.ema(close[1], math.round(period / 2))
nmaPrev = ta.ema(close[1], period)
diffPrev = n2maPrev - nmaPrev
sqnPrev = math.round(math.sqrt(period))
n1 = ta.ema(diff, sqn)
n2 = ta.ema(diffPrev, sqnPrev)
// Determine color based on condition
maColor = n1 > n2 ? color.green : color.red
// Plot moving average
ma = plot(n1, color=maColor, linewidth=2)
// Signals
buySignal = n1 > n2 and n1[1] <= n2[1]
sellSignal = n1 <= n2 and n1[1] > n2[1]
// Plot shapes for signals
plotshape(series=buySignal, title='Buy Signal', style=shape.arrowup, location=location.belowbar, color=color.green, size=size.small)
plotshape(series=sellSignal, title='Sell Signal', style=shape.arrowdown, location=location.abovebar, color=color.red, size=size.small)
// Alerts
alertcondition(condition=buySignal, title='Buy Signal', message='Buy Signal Detected')
alertcondition(condition=sellSignal, title='Sell Signal', message='Sell Signal Detected')
// Trading hours
openHour = 16
closeHour = 17
// Open position at 4 pm
openCondition = hour == openHour and minute == 0
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.entry("Sell", strategy.short, when=sellSignal)
// Close all positions at 5 pm
closeCondition = hour == closeHour and minute == 0
strategy.close_all(when=closeCondition)