Stratégie de croisement de moyennes mobiles doubles Momentum


Date de création: 2023-11-17 17:00:32 Dernière modification: 2023-11-17 17:00:32
Copier: 1 Nombre de clics: 625
1
Suivre
1621
Abonnés

Stratégie de croisement de moyennes mobiles doubles Momentum

Aperçu

Cette stratégie utilise la méthode du croisement de deux courbes de dynamique pour réaliser des transactions à faible risque. Elle utilise deux courbes de dynamique différentes, la courbe rapide et la courbe lente, pour déterminer le moment d’acheter ou de vendre en fonction de leur croisement. La stratégie vise à capturer les changements de tendance et à tirer profit de la courbe longue dans les grandes tendances.

Principe de stratégie

La stratégie utilise le croisement de la ligne rapide WMA et de la ligne lente WMA pour juger des signaux d’achat et de vente. Le cycle de la ligne rapide est la moitié du cycle de la ligne lente.

Plus précisément, la logique clé de la stratégie est la suivante:

  1. Définir le prix et les paramètres: extraire les données de prix de l’OHLC; définir les paramètres de HullMA cycle z, données de prix p.

  2. Calculer la moyenne binaire: calculer la moyenne à 2 périodes n2ma, z périodes nma.

  3. Calculer la différence entre les deux moyennes.

  4. Calculer l’indicateur de dynamique: calculer la différence de la moyenne de la moyenne des cycles de déplacement n1, n2 et n3.

  5. Jugement croisé: marqué en vert si n1 porte n2, marqué en rouge si n1 ne porte pas n2.

  6. Dessiner une forme: dessiner un graphique de n1 et n2.

  7. Signal de jugement: le signal est produit lorsque trois lignes de moyenne de mouvement n1, n2 et n3 se croisent dans le même sens.

  8. Entrée et sortie: sur la ligne rapide, faites plus lorsque la ligne lente et l’indicateur de mouvement sont conformes aux exigences; sous la ligne rapide, faites moins lorsque la ligne lente et l’indicateur de mouvement sont conformes aux exigences.

Avantages stratégiques

Cette stratégie, combinée à un croisement bi-homogène et à un indicateur de dynamique, permet de filtrer efficacement les faux signaux et de produire des signaux de négociation uniquement au début d’un changement de tendance, ce qui permet d’obtenir de meilleurs résultats stratégiques.

  1. Le croisement des lignes rapides et lentes permet de déterminer le moment où la tendance change et de tirer profit de la tendance.

  2. L’ajout d’indicateurs de dynamique permet de filtrer les faux signaux et d’éviter d’être induit en erreur par les fluctuations à court terme du marché.

  3. Il est possible de réduire la fréquence des transactions inutiles en ne les effectuant que lorsque les grandes tendances changent.

  4. L’utilisation d’un cycle linéaire moyen optimisé pour les paramètres permet de rendre les indicateurs plus conformes aux caractéristiques des différentes variétés.

  5. La pyreming permet d’allonger le cycle des bénéfices.

Risque stratégique

Cette stratégie comporte également des risques à prendre en compte:

  1. Les croisements bi-équivalents sont en retard dans le jugement des changements de tendance et risquent de manquer le meilleur moment pour un changement de prix.

  2. Une mauvaise configuration des paramètres de l’indicateur de dynamique peut induire en erreur les transactions.

  3. Il existe un certain déséquilibre entre les délais de détention des positions en bourse et les délais de détention des positions en bourse.

  4. La stratégie n’a pas de mécanismes pour gérer les chocs sur le marché.

  5. Il existe un certain risque de sur-optimisation et les paramètres doivent être optimisés progressivement.

Il existe des solutions pour faire face aux risques:

  1. Vous pouvez envisager d’inclure d’autres indicateurs préliminaires pour évaluer les variations de prix et vous préparer à l’avance.

  2. Les paramètres de la dynamique doivent être optimisés de manière appropriée pour trouver la combinaison optimale de paramètres.

  3. L’ajout d’un indicateur de volatilité peut être envisagé pour aider à contrôler le temps de position.

  4. Il est possible de limiter le nombre de positions de manière appropriée pour réduire les pertes individuelles.

  5. Les paramètres doivent être vérifiés pour éviter les problèmes d’optimisation.

Orientation de l’optimisation de la stratégie

La stratégie peut également être optimisée dans les domaines suivants:

  1. Essayez différents types d’indicateurs de la moyenne pour trouver le paramètre optimal pour la variété.

  2. Le test est complété par d’autres indicateurs auxiliaires, tels que le MACD, les courbes de Bryn et les changements de tendance.

  3. Optimiser le moment de l’entrée et déterminer avec précision le point de départ d’un renversement des prix.

  4. Optimiser le temps de jeu, localiser les bénéfices en utilisant le suivi des pertes, etc.

  5. Optimisation des paramètres en fonction des caractéristiques des différentes variétés.

  6. L’apprentissage automatique est utilisé pour trouver la combinaison optimale de paramètres.

  7. Construire des mécanismes de gestion dynamique des positions et de contrôle des risques.

  8. Ajouter des indicateurs d’évaluation stratégique quantifiés tels que le ratio Sharpe, le ratio profit/perte.

  9. Utilisez une stratégie d’évaluation de moteur de rétroaction pour évaluer la performance sur les données historiques.

Résumer

En résumé, la stratégie de double équilibre dynamique utilise des points de basculement de la croix de l’équilibre et des indicateurs de dynamique pour déterminer les grandes tendances, ce qui permet de filtrer efficacement le bruit pour des transactions à faible risque. Elle présente des avantages tels que la stabilité des gains, la simplicité, mais il existe également des problèmes d’optimisation des paramètres et de contrôle du risque. Nous pouvons améliorer la stratégie en optimisant les opportunités d’entrée et de sortie, la gestion dynamique de la position, etc. afin de la rendre plus adaptée aux caractéristiques du marché.

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

//@version=2
//OCTOPUS Indicator Strategy
strategy("FAVEL corp. Indicator Strategy", shorttitle="FAVEL corp. Monarch", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=420, default_qty_value=20, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
z=input(defval=60,title="HullMA cross")
p=input(ohlc4,title="Price data")
n2ma=2*wma(p,round(z/2))
nma=wma(p,z)
diff=n2ma-nma
sqn=round(sqrt(z))
n2ma1=2*wma(p[1],round(z/2))
nma1=wma(p[1],z)
diff1=n2ma1-nma1
sqn1=round(sqrt(z))
n2ma2=2*wma(p[2],round(z/2))
nma2=wma(p[2],z)
diff2=n2ma2-nma2
sqn2=round(sqrt(z))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
n3=wma(diff2,sqn)
c=n1>n2?green:red
n1e=plot(n1, color=c, linewidth=1, offset=2)
n2e=plot(n2, color=c, linewidth=1, offset=2)
fill(n1e, n2e, color=c, transp=75)
plot(cross(n1, n2) ? n1 : na, style = circles,color=c, linewidth = 4)
closelong = p<p[1] and n1<n3
if (closelong)
    strategy.close("BUY")
closeshort = p>p[1] and n1>n3
if (closeshort)
    strategy.close("SELL")
longCondition = strategy.opentrades<1 and n1>n2 and p>p[1] and n1>n3
if (longCondition)
    strategy.entry("BUY",strategy.long)
shortCondition = strategy.opentrades<1 and n1<n2 and p<p[1] and n1<n3
if (shortCondition)
    strategy.entry("SELL",strategy.short)