Stratégie de suivi dynamique longue et courte


Date de création: 2023-10-17 15:55:41 Dernière modification: 2023-10-17 15:55:41
Copier: 0 Nombre de clics: 650
1
Suivre
1617
Abonnés

Stratégie de suivi dynamique longue et courte

Aperçu

La stratégie de suivi dynamique multifonctionnel est une stratégie qui utilise des moyennes dynamiques pour suivre la tendance des prix. Elle permet de déterminer la tendance actuelle en calculant des moyennes mobiles des prix les plus élevés et les plus bas d’une certaine période, et de réaliser un stop-loss dynamique en combinaison avec l’ATR.

Principe de stratégie

La stratégie commence par calculer la moyenne mobile des prix les plus élevés et les plus bas d’une période donnée (par défaut 200 jours) et prend le milieu des deux comme ligne de référence. Ensuite, elle calcule la déviation du prix par rapport à la ligne de référence. Elle est considérée comme étant en hausse lorsque le prix est supérieur à la ligne de référence avec un ATR (par défaut 0,5 fois l’ATR des 10 jours) et est considérée comme étant en baisse lorsque le prix est inférieur à la ligne de référence avec un ATR.

Un signal d’exit est généré lorsque le prix revient à la ligne de référence. De plus, les variations dynamiques de l’ATR peuvent prolonger progressivement les arrêts de perte avec une tendance majeure, réduisant ainsi la sur-fréquence des transactions causées par des fluctuations non tendancielles.

Avantages stratégiques

  1. Les moyennes dynamiques permettent d’aplanir efficacement les données sur les prix et d’identifier les tendances à long terme.
  2. L’arrêt ATR permet à la ligne d’arrêt de suivre dynamiquement les grandes tendances et d’éviter d’être trop sensible
  3. Capturer en temps opportun le renversement de tendance et réduire le gaspillage de fonds
  4. Les principes sont simples et faciles à mettre en œuvre.

Risques et couvertures

  1. Des transactions erronées dans un marché en crise
  2. Les paramètres mal définis peuvent manquer le moment de la reprise de tendance
  3. Il y a un risque de dérivation entre les marchés boursiers et les actions individuelles, en tenant compte de l’excédent d’actions.

Il est possible de réduire la sensibilité au stop loss en ajustant le paramètre ATR de manière appropriée ou en ajoutant d’autres indicateurs pour filtrer le moment de la transaction avec une certaine certitude. Il est également possible d’évaluer l’appétit au risque en combinaison avec la tendance du grand marché et de choisir de ne faire plus que dans le cas d’un grand marché.

Optimiser les idées

  1. On peut envisager une deuxième confirmation par d’autres indicateurs, tels que l’indicateur KDJ, après le signal d’entrée.
  2. Paramètres d’optimisation pouvant être combinés avec les conditions fondamentales des actions, tels que des actions à forte volatilité avec une gamme d’ATR appropriée
  3. La taille du multiplicateur ATR peut être optimisée en fonction des résultats du test de retour, en équilibrant le facteur de gain et le taux de change
  4. Un ajustement dynamique de la volatilité peut être envisagé dans le mécanisme d’arrêt-d’arrêt
  5. Paramètres qui peuvent être optimisés automatiquement grâce à l’apprentissage automatique

Résumer

La stratégie de suivi dynamique multifonctionnel est une stratégie de suivi de tendance simple et pratique. Elle détermine la direction de la tendance à l’aide de moyennes dynamiques et utilise l’ATR pour réaliser des arrêts de perte dynamiques, ce qui permet de contrôler efficacement les risques. La stratégie est adaptée à un environnement de marché où la tendance est évidente.

Code source de la stratégie
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Trend Following Long Only Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length")
smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length")
atr_length = input(10, type=input.integer, minval=1, title="ATR Length")
atr_multiplier = input(0.5, type=input.float, minval=0.5, title="ATR Multiplier")

vola = atr(atr_length) * atr_multiplier
price = sma(close, 3)

l = ema(lowest(low, lookback_length), smoother_length)
h = ema(highest(high, lookback_length), smoother_length)
center = (h + l) * 0.5
upper = center + vola
lower = center - vola
trend = ema(price > upper ? 1 : (price < lower ? -1 : 0), 3)
c = trend < 0 ? upper : lower

pcenter = plot(center, transp=100)
pclose = plot(close, transp=100)
pc = plot(c, transp=100)

buy_signal = crossover(trend, 0.0) 
sell_signal = crossunder(trend, 0.0)

strategy.entry("Buy", strategy.long, when=buy_signal)
strategy.close("Buy", when=sell_signal)

bgcolor(trend >= 0 ? color.green : color.red, transp=95)
fill(pc, pclose, color=trend >= 0 ? color.green : color.red)