Stratégie de trading à moyenne mobile double


Date de création: 2024-01-24 15:24:13 Dernière modification: 2024-01-24 15:24:13
Copier: 0 Nombre de clics: 557
1
Suivre
1617
Abonnés

Stratégie de trading à moyenne mobile double

Aperçu

L’idée centrale de cette stratégie est d’utiliser les moyennes mobiles rapides et les moyennes mobiles lentes pour juger de la tendance du marché et réaliser des transactions à faible risque. Lorsque le marché peut entrer dans une tendance à la hausse en traversant la moyenne mobile lente au-dessus de la moyenne mobile rapide, faites plus; lorsque le marché peut entrer dans une tendance à la baisse en traversant la moyenne mobile lente au-dessous de la moyenne mobile rapide, faites plus.

Principe de stratégie

Cette stratégie utilise les moyennes mobiles indicielles des prix. Les moyennes mobiles sont un indicateur d’analyse de la tendance qui permet d’aplanir les données de prix pour déterminer les mouvements des prix. Les moyennes mobiles rapides ont de plus petits paramètres, ce qui permet de répondre plus rapidement aux changements de prix. Les moyennes mobiles lentes ont de plus grands paramètres, ce qui permet de répondre plus lentement aux changements de prix.

Plus précisément, la stratégie définit deux moyennes mobiles indexées, avec une moyenne mobile rapide de 21 cycles et une moyenne mobile lente de 55 cycles. La stratégie décide de l’entrée en jeu en jugant les deux moyennes mobiles. Lorsque vous traversez la moyenne mobile lente sur la moyenne mobile rapide, faites plus; lorsque vous traversez la moyenne mobile lente sous la moyenne mobile rapide, faites vide.

En outre, la stratégie utilise également l’indicateur de volatilité ATR pour définir les arrêts et les arrêts. L’ATR permet d’évaluer efficacement la volatilité du marché. L’arrêt est fixé à 1,5 fois le prix de l’ATR. L’arrêt est fixé à 1 fois le prix de l’ATR.

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. Les idées sont claires, faciles à comprendre et à mettre en œuvre.
  2. L’indicateur de la moyenne mobile est utilisé pour déterminer la tendance des prix et permettre des transactions à faible risque.
  3. La combinaison des moyennes mobiles rapides et des moyennes mobiles lentes permet de filtrer efficacement le bruit du marché et d’identifier les tendances des prix.
  4. L’indicateur ATR est utilisé pour définir de manière dynamique le stop loss, permettant d’ajuster les positions en fonction de la volatilité du marché.
  5. Il n’est pas nécessaire d’ajuster fréquemment les paramètres, la stabilité de la stratégie est élevée.

Analyse des risques

Cette stratégie comporte aussi des risques:

  1. Les moyennes mobiles sont sujettes à des signaux erronés et peuvent entraîner des pertes inutiles en cas de fortes fluctuations des prix.
  2. Cette stratégie est basée sur des indicateurs techniques uniquement et ne prend pas en compte les facteurs fondamentaux.
  3. Le seuil de stop-loss fixé par l’indicateur ATR ne convient pas nécessairement à tous les environnements de marché et peut être trop souple ou trop pressant.
  4. La définition d’une moyenne mobile périodique n’est pas la seule solution optimale. Différentes combinaisons de paramètres périodiques produisent des effets différents.

Nous pouvons optimiser pour ces risques de plusieurs façons:

  1. Il est utilisé en combinaison avec d’autres indicateurs tels que le MACD, le RSI, etc. pour confirmer les signaux de trading et éviter les entrées erronées.
  2. Réduire la marge de stop-loss de manière appropriée pour réduire les pertes individuelles.
  3. Optimisation dynamique des paramètres cycliques des moyennes mobiles pour les rendre plus adaptés aux différentes phases du marché.

Direction d’optimisation

Cette stratégie peut être optimisée en profondeur dans les domaines suivants:

  1. L’optimisation automatique des paramètres des moyennes mobiles par des méthodes d’apprentissage automatique rend les stratégies plus adaptables.

  2. Ajouter des facteurs fondamentaux comme conditions de filtrage, pour éviter de faire aveuglément plus de blanchiment lorsque des informations importantes sur les profits et les pertes arrivent. Par exemple, la résolution des taux d’intérêt de la Réserve fédérale américaine, la publication de données macro importantes, etc.

  3. Il est recommandé de fixer des limites à la volatilité et de suspendre la négociation lorsque l’ATR est trop élevé ou trop faible, afin d’éviter les pertes dans des conditions de marché extrêmes.

  4. Le stop-loss dynamique est défini en combinant les indicateurs fondamentaux des actions, tels que le taux d’intérêt du marché des actions, l’effet d’amplification du volume des transactions, etc.

  5. Augmentation des mécanismes de gestion des positions, réduction progressive des positions lorsque le taux de profit atteint un certain niveau; suspension de la négociation pendant un certain temps en cas de pertes importantes, etc.

Résumer

L’approche globale de cette stratégie est simple et claire. Elle juge les tendances du marché par la croisée de deux moyennes mobiles. C’est une stratégie de suivi de tendance typique.

Code source de la stratégie
/*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=3
strategy(title="No-Nonsense Strategy Template [WM]", overlay = true)

price = close

//
// ATR stuff
//

atrLength = input(14, "ATR Length")
slMultiplier = input(1.5, "SL")
tpMultiplier = input(1, "TP1")

atr = atr(atrLength)

//
// Strategy under test. MA crossover
// 

fastInput = input(21)
slowInput = input(55)

fast = ema(price, fastInput)
slow = ema(price, slowInput)

plot(fast, color = red)
plot(slow, color = blue)

goLong = crossover(fast, slow)
goShort = crossunder(fast, slow)

if (goLong)
    sl = price - atr * slMultiplier
    tp = price + atr * tpMultiplier
    strategy.entry("Long", strategy.long)
    strategy.exit("Long Exit", "Long", stop = sl, limit = tp)
    
if (goShort)
    sl = price + atr * slMultiplier
    tp = price - atr * tpMultiplier
    strategy.entry("Short", strategy.short)	 
    strategy.exit("Short Exit", "Short", stop = sl, limit = tp)