La stratégie de rebond de la moyenne mobile suit les croisements des moyennes mobiles des prix et identifie les opportunités de rebond pour effectuer des transactions contraires à la tendance lorsque des croisements dorés se produisent.
Le noyau de cette stratégie implique deux moyennes mobiles - l'EMA de 14 jours et la SMA de 56 jours. Elle déclenche un signal d'achat lorsque l'EMA de 14 jours franchit le sommet de la SMA de 56 jours par le bas. Ensuite, la stratégie regarde en arrière 20 jours pour trouver un bas swing comme support. Combiné avec le prix de clôture au point de croisement, les lignes de pullback de Fibonacci sont tracées, avec 1.272 ligne de pullback comme entrée et 0.618 comme sortie. Ainsi, la stratégie définit un point d'entrée pour faire court après les croix dorées, et tire profit si les prix reviennent vraiment à la ligne 0.618.
Les étapes clés de cette stratégie sont les suivantes:
Ce qui précède explique le flux de travail principal et la logique de cette stratégie de baisse.
Les principaux avantages de cette stratégie de baisse des moyennes mobiles sont les suivants:
En résumé, cela est très approprié pour le trading de style inversion moyenne à court terme. Il capture les chances de rebond pour réaliser des profits. La stratégie est également simple et simple à mettre en œuvre.
Malgré les avantages, il y a aussi certains risques à noter pour cette stratégie:
Pour atténuer les risques, nous pouvons définir un court délai d'arrêt des pertes pour contrôler les pertes; optimiser également les plages de la ligne de rebond pour viser des objectifs de profit raisonnables.
Il y a encore beaucoup de place pour optimiser cette stratégie de baisse de la moyenne mobile:
Testez différents paramètres sur des éléments tels que les périodes moyennes mobiles, les jours de rétrospective, les multiples de Fibonacci, etc. pour trouver l'optimum;
Ajouter des mécanismes de stop loss tels que des stops multiples ou des trailing stops pour mieux contrôler les risques;
Mettre en place d'autres indicateurs en tant que FILTRE pour éviter des conditions de marché inappropriées;
Optimiser la taille des positions et les règles de gestion des risques.
Grâce à des tests rigoureux et à une optimisation, une amélioration significative peut être réalisée pour cette stratégie commerciale.
La stratégie de retrait de la moyenne mobile est une stratégie de trading à court terme très pratique. Elle capture les opportunités de renversement de la moyenne lorsque les prix reculent à court terme. L'idée de stratégie est simple et facile à saisir. Il y a encore des risques qui doivent être abordés par l'optimisation et le contrôle des risques. Dans l'ensemble, il s'agit d'une stratégie quantitative prometteuse digne d'une recherche et d'une application ultérieures.
/*backtest start: 2022-12-12 00:00:00 end: 2023-12-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("MAC Pullback", overlay=true) // Setting up timeperiod for testing startPeriodYear = input(2014, "Backtest Start Year") startPeriodMonth = input(1, "Backtest Start Month") startPeriodDay = input(2, "Backtest Start Day") testPeriodStart = timestamp(startPeriodYear, startPeriodMonth, startPeriodDay, 0, 0) stopPeriodYear = input(2035, "Backtest Stop Year") stopPeriodMonth = input(12, "Backtest Stop Month") stopPeriodDay = input(30, "Backtest Stop Day") testPeriodStop = timestamp(stopPeriodYear, stopPeriodMonth, stopPeriodDay, 0, 0) // Moving Averages ema14 = ema(close, 14) ema28 = ema(close, 28) sma56 = sma(close, 56) // Plot plot(ema14, title="ema14", linewidth=2, color=green) plot(ema28, title="ema28", linewidth=2, color=red) plot(sma56, title="sma56", linewidth=3, color=blue) // Strategy goLong = cross(ema14, sma56) and ema14 > ema28 goShort = cross(ema14, sma56) and ema14 < ema28 // Locate Swing Lows leftBars = input(20) rightBars=input(20) swinglow = pivotlow(close, leftBars, rightBars) plot(swinglow, style=cross, linewidth=8, color=#00FF00, offset=-rightBars) if goLong == true and time >= testPeriodStart and time <= testPeriodStop // We try to make sure that we're catching the first Pullback after the crossover if ema14[12] < sma56[12] pivotpoint = lowest(40)[0] //lowest value of the month as our swing low // We calculate a Fib 1.272 extension (from the previous swing low to // the crossover long entry's open) and use this as our entry target to short the Pullback extensiontarget = ((close[1] - pivotpoint) * 1.27) + pivotpoint shorttarget = ((close[1] - pivotpoint) * 0.618) + pivotpoint strategy.order("Pullback", strategy.short, 5.0, limit=extensiontarget) // I would like to use a trailing stop but for know we just hope to get // filled if the pullback reaches all the way down to the 0.618. // We also place a tight stop loss since we trying to short an uptrend strategy.exit("Pullback Exit", "Pullback", limit=shorttarget, loss=400)