La stratégie de renversement de 3 jours de la tortue est une modification de la stratégie de renversement de moyenne de 3 jours du livre Trading ETF à haute probabilité de Larry Connors et Cesar Alvarez.
Par la pratique et le backtesting, j'ai constaté que la stratégie fonctionne toujours mieux lorsque l'on utilise une EMA au lieu d'une SMA pour la ligne de tendance.
La stratégie fonctionne comme suit:
L'EMA de sortie est définie par défaut sur l'EMA de 5 jours, sa durée est réglable.
L'idée principale de la stratégie est de profiter de la réversion moyenne à court terme. Lorsque les prix baissent continuellement, ils sont susceptibles de rebondir à court terme. La stratégie identifie les opportunités de réversion moyenne en vérifiant si les prix se sont réduits pendant 3 jours consécutifs en dessous d'une EMA à court terme. Une fois que l'inversion se produit, elle sort rapidement lorsque le prix dépasse la EMA de sortie.
Comparée aux stratégies de croisement des moyennes mobiles traditionnelles, cette stratégie présente les avantages suivants:
L'utilisation d'un rétrécissement de 3 jours consécutifs pour identifier les inversions améliore la qualité du signal.
Le filtrage avec des EMA longs et courts évite de négocier sur des marchés en tendance.
L'utilisation de l'EMA au lieu de la SMA pour la ligne de tendance est plus sensible pour détecter les renversements.
La longueur réglable de l'EMA de sortie permet de personnaliser la stratégie de stop loss en fonction des conditions du marché.
Une faible fréquence de négociation avec des périodes de détention de 1-2 jours évite les risques associés aux paris directionnels longs.
La stratégie comporte également les risques suivants:
Risque d'échec de l'inversion: le prix peut ne pas rebondir et continuer à baisser après le signal d'inversion.
Risque fréquent de stop loss. Le prix pourrait frapper à plusieurs reprises le stop loss sur les marchés instables.
Le risque d'optimisation des paramètres. L'EMA de sortie et d'autres paramètres nécessitent des tests et des ajustements continus en fonction de l'évolution des marchés. La performance pourrait se dégrader sans ajustement.
Le risque de suradaptation. L'optimisation doit éviter le suradaptation. Les paramètres doivent être robustes.
Les risques peuvent être réduits par:
Suivre strictement les règles de stop loss pour contrôler les pertes d'une seule transaction.
Un réglage robuste des paramètres lors de l'optimisation pour équilibrer le risque et le rendement.
Adaptation de la taille des positions pour réduire le risque par transaction.
La stratégie peut être améliorée dans les domaines suivants:
Testez différentes longueurs EMA pour l'entrée et la sortie afin de trouver les paramètres optimaux.
Ajouter d'autres filtres comme le volume pour s'assurer que les signaux d'inversion sont plus fiables.
Améliorez le stop loss avec des méthodes telles que l'ATR ou les trailing stops pour plus de flexibilité.
Incorporer un filtre de tendance pour éviter de prendre des signaux d'inversion dans les tendances existantes.
Combiner avec d'autres stratégies d'optimisation et de diversification du portefeuille.
Utiliser l'apprentissage automatique pour le réglage adaptatif des paramètres.
La stratégie d'inversion à 3 jours de la tortue identifie les opportunités d'inversion à court terme en détectant des modèles de rétrécissement à 3 jours en dessous d'une EMA courte. Par rapport aux stratégies de moyenne mobile traditionnelles, elle a des signaux d'entrée plus fiables et une EMA de sortie réglable pour optimiser les stop-loss.
/*backtest start: 2023-10-05 00:00:00 end: 2023-10-12 00:00:00 period: 10m basePeriod: 1m 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/ // @version = 5 // Author = TradeAutomation strategy(title="ETF 3-Day Reversion Strategy", shorttitle="ETF 3-Day Reversion Strategy", process_orders_on_close=true, overlay=true, commission_type=strategy.commission.cash_per_order, commission_value=1, initial_capital = 10000000, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // Backtest Date Range Inputs // StartTime = input(defval=timestamp('01 Jan 2012 05:00 +0000'), title='Start Time') EndTime = input(defval=timestamp('01 Jan 2099 00:00 +0000'), title='End Time') InDateRange = true // Strategy Rules // DayEMA5 = ta.ema(close, 5) Rule1 = close>ta.ema(close, 200) Rule2 = close<DayEMA5 Rule3 = high<high[1] and low<low[1] and high[1]<high[2] and low[1]<low[2] and high[2]<high[3] and low[2]<low[3] ExitEMA = ta.ema(close, input.int(5, "EMA Length For Exit Strategy", tooltip = "The strategy will sell when the price crosses over this EMA")) plot(DayEMA5) plot(ExitEMA, color=color.green) // Entry & Exit Functions // if (InDateRange) strategy.entry("Long", strategy.long, when = Rule1 and Rule2 and Rule3) // strategy.close("Long", when = ta.crossunder(close, ATRTrailingStop)) strategy.close("Long", when = ta.crossover(close, ExitEMA)) if (not InDateRange) strategy.close_all()