
Cette stratégie permet de déterminer la direction de la tendance en combinant l’utilisation de moyennes mobiles de différentes périodes et de prédire un point de revers possible à l’aide d’un coefficient de variation limitée approximatif. La stratégie s’applique aux paires de devises à faible volatilité au niveau horaire.
La stratégie utilise simultanément des moyennes mobiles simples à 20, 40 et 80 périodes. Une tendance est définie lorsque le prix de clôture est supérieur aux trois moyennes mobiles; une tendance est définie lorsque le prix de clôture est inférieur aux trois moyennes mobiles. Une tendance est confirmée uniquement lorsque le prix le plus bas est supérieur ou inférieur aux trois moyennes mobiles.
Pour prédire les points de retournement possibles, la stratégie utilise la méthode de la différentiation limitée des moyennes mobiles à trois périodes pour approcher la première dérivée. Lorsque la première dérivée est positive, la tendance à la hausse est stable; lorsque la première dérivée est négative, la tendance à la baisse est stable.
Les règles de négociation sont les suivantes:
Lorsque la ligne rapide est supérieure à la ligne moyenne, la ligne moyenne est supérieure à la ligne lente, et la première coordonnée est supérieure à 0, faire plus;
Lorsque la ligne rapide est inférieure à la ligne moyenne, la ligne moyenne est inférieure à la ligne lente, et la première coordonnée est < 0, faire un vide;
le stop multiple lorsque la première coordonnée est <=0;
La perte de tête vide lorsque la première coordonnée est >=0
Cette stratégie présente les avantages suivants:
L’utilisation de combinaisons de moyennes mobiles multiples pour détecter les tendances est plus fiable.
L’utilisation d’un vecteur pour prédire le point de basculement permet de réduire les pertes et les retraits en temps opportun.
La logique des stratégies est simple, claire, facile à comprendre et adaptée aux débutants.
Il est important de ne pas se faire piéger et de faire un retour après la tendance, ce qui permet d’avoir une meilleure chance de gagner.
Cette stratégie comporte aussi des risques:
Les combinaisons de moyennes mobiles peuvent donner de faux signaux en cas de choc.
Le signal de retour du conducteur peut être retardé et ne peut pas être totalement évité.
Une mauvaise configuration du point de rupture peut augmenter les pertes.
Pour ces risques, nous pouvons nous améliorer en optimisant les paramètres des moyennes mobiles, en ajustant les positions de stop loss et en les combinant avec d’autres indicateurs.
Cette stratégie peut être optimisée dans les domaines suivants:
Optimiser la périodicité des moyennes mobiles pour les rendre plus adaptées aux caractéristiques des différents marchés;
Essayez différents types de moyennes mobiles, comme les moyennes mobiles indexées.
la mise en place d’un stop loss dynamique à l’aide d’indicateurs de volatilité;
Il est nécessaire de vérifier les signaux en combinaison avec d’autres indicateurs pour éviter les erreurs.
Cette stratégie de combinaison des moyennes mobiles, qui utilise plusieurs groupes de moyennes mobiles pour juger de la direction de la tendance et prédire les points de retournement à l’aide de derivatifs, permet de contrôler efficacement le risque et convient aux opérations sur les courts-circuits. La stratégie est simple à utiliser et facile à optimiser.
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Big 3",overlay=true, default_qty_type=strategy.percent_of_equity)
// enter on Arrows
// take profit on touch with 80 SMA, gray, or at discretion
fast = sma(close,20)
mid = sma(close,40)
slow = sma(close,80)
plot(fast,linewidth=1)
plot(mid,linewidth=2)
plot(slow,linewidth=4)
isUptrend = close > fast and close > mid and close > slow
isDowntrend = close < fast and close < mid and close < slow
confirmed = (low > fast and low > mid and low > slow) or (high < fast and high < mid and high < slow)
deriv = 3 * mid[0] - 4 * mid[1] + mid[2]
stableUptrend = (fast > mid) and (mid > slow) and (deriv > 0)
stableDowntrend = (fast < mid) and (mid < slow) and (deriv < 0)
barcolor(isUptrend ? green : isDowntrend ? red : gray)
plotshape(not confirmed[1] and confirmed and isUptrend ? close : na,style=shape.arrowup,location=location.belowbar,color=green)
plotshape(not confirmed[1] and confirmed and isDowntrend ? close : na,style=shape.arrowdown,location=location.abovebar,color=red)
stop = na
//stop = input(1000, "Stop")
strategy.entry("long", strategy.long, when=(stableUptrend), stop=stop)
strategy.close("long", when=(deriv <= 0))
strategy.entry("short", strategy.short, when=(stableDowntrend), stop=stop)
strategy.close("short", when=(deriv >= 0))