Stratégie de tendance de moyenne mobile avec croisement de moyennes mobiles


Date de création: 2024-01-12 10:56:57 Dernière modification: 2024-01-12 10:56:57
Copier: 0 Nombre de clics: 502
1
Suivre
1617
Abonnés

Stratégie de tendance de moyenne mobile avec croisement de moyennes mobiles

Aperçu

Cette stratégie de négociation est basée sur un simple système de suivi de tendance des moyennes mobiles et des moyennes croisées. Elle utilise des croisements de moyennes mobiles rapides et de moyennes mobiles lentes de différentes périodes comme signal de prise de plus ou de moins.

Principe de stratégie

La stratégie utilise une moyenne mobile simple à cycles rapides comme 60 jours et une moyenne mobile simple à cycles lents comme 200 jours. Les moyennes mobiles rapides répondent plus rapidement aux variations de prix, reflétant les tendances de prix à court terme; les moyennes mobiles lentes répondent plus lentement aux variations de prix, reflétant les tendances à moyen et long terme.

Lorsque la courte moyenne périodique traverse la courte moyenne périodique depuis le bas, cela signifie que les prix à court terme commencent à monter et entrent dans le marché à plusieurs têtes, ce qui est plus. Lorsque la courte moyenne périodique traverse la longue moyenne périodique depuis le haut vers le bas, cela signifie que les prix à court terme commencent à baisser et entrent dans le marché à vide, ce qui est à vide.

La stratégie utilise le principe de la croix de la ligne de parité pour déterminer la direction de la tendance. Lorsque les prix à court terme augmentent plus rapidement, la ligne de parité à court terme pousse la ligne de parité à long terme vers le haut et la traverse par le bas. Cela indique que le marché est entré dans une tendance à la hausse et devrait faire plus.

La stratégie utilise un croisement de la moyenne rapide et de la moyenne lente pour capturer les points de basculement des tendances de prix et ajuster les positions ouvertes en conséquence. C’est le principe principal de la stratégie qui détermine les tendances et génère des signaux de négociation.

Analyse des forces stratégiques

  • L’analyse des tendances majeures à l’aide d’un croisement des moyennes, afin de ne pas être induit en erreur par le bruit du marché à court terme.
  • Il est plus stable et plus fiable en tenant compte des deux dimensions temporelles, à court et à moyen terme.
  • Il permet de suivre les tendances de manière simple et efficace, par exemple en faisant plus dans les tendances haussières et moins dans les tendances baissières.
  • Les moyennes mobiles sont largement utilisées, faciles à comprendre et les paramètres sont flexibles.
  • Les paramètres de gestion de fonds sont réglables et les risques sont contrôlés.

Analyse stratégique des risques

  • Cette stratégie repose sur une tendance claire des prix et peut échouer en cas de forte volatilité du marché.
  • Il y a des signaux erronés pendant les périodes de fluctuation des prix, avec des ouvertures et des fermetures fréquentes.
  • Les moyennes mobiles sont en retard et risquent de manquer le point de basculement.
  • Si les paramètres sont mal réglés, que le point d’arrêt est trop petit ou que le point d’arrêt est trop grand, le joueur quitte le terrain trop tôt ou est à plat.
  • Les paramètres raisonnables doivent être optimisés en fonction des caractéristiques spécifiques des différentes variétés.

Il est possible d’adapter la fréquence des fluctuations aux différentes variétés en ajustant les paramètres périodiques des moyennes mobiles; d’améliorer les stratégies de stop loss et stop loss, en utilisant des indicateurs plus complexes pour réduire les signaux erronés; d’ajouter des méthodes telles que le filtrage du volume des transactions pour optimiser la stratégie et améliorer la stabilité de la stratégie.

Orientation de l’optimisation de la stratégie

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

  1. Optimiser les paramètres de la moyenne mobile pour les cycles rapides et lents, adaptés à différentes variétés de fréquences d’oscillation. Plus de combinaisons peuvent être testées pour trouver les meilleurs paramètres.

  2. Modifier les conditions d’entrée sur le terrain et filtrer davantage d’indicateurs, tels que la hausse du volume des transactions, afin de réduire les signaux erronés.

  3. Améliorer les stratégies de stop-loss, telles que le suivi des stops ou des stops dynamiques, pour améliorer l’efficacité des gains.

  4. Les coûts de transaction, tels que les frais de traitement, sont pris en compte et un module d’évaluation des coûts est ajouté pour rendre la simulation plus réaliste.

  5. La recherche de la meilleure combinaison de paramètres pour les différentes caractéristiques de la variété.

  6. Augmentation de l’identification des caractéristiques locales, aide à déterminer le point de basculement de la tendance, améliore la saisie du moment de l’ouverture et de la clôture des positions.

L’optimisation stratégique du système permet d’améliorer considérablement la rentabilité et la stabilité du placement et de réduire les retraits.

Résumer

Cette stratégie de négociation est basée sur la transition de la tendance des prix à la croisée des courbes, et fait partie de la stratégie de suivi de tendance typique. Elle utilise la croisée des différentes courbes périodiques comme un signal de multiplication et de réduction, pour déterminer la direction de la tendance grâce à une combinaison de courbes moyennes rapides et de courbes moyennes lentes, permettant une capture de tendance efficace.

Code source de la stratégie
/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 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/
// © thebearfib
//
//@version=5
//

strategy("x-over 150d_200d_sma - Free", overlay = true)

repaint = input.bool(defval = false, title = "[RePaint] Uncheck to see real time results") //when you deselect it - it shows what would have happened in real time while trading the system
srcmc   = request.security(syminfo.tickerid, 'D', open, lookahead= repaint ? barmerge.lookahead_on : barmerge.lookahead_off, gaps=barmerge.gaps_off)

fast_length         = input(title="Fast Length", defval=60)
slow_length         = input(title="Slow Length", defval=275)

_fast               = ta.sma(srcmc,  fast_length)
_slow               = ta.sma(srcmc,  slow_length)

plot(_fast, 
  title="Fast SMA", 
  color=color.red,
  linewidth = 1) 

plot(_slow, 
  title="Slow SMA", 
  color=color.white,
  linewidth = 3)
//
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Calculating  —————————————————————————————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
//
longProfitPerc      = input.float(title="Long Take Profit (%)", minval=0.01, step=1.0, defval=42) * .01
longStopPerc        = input.float(title="Long Stop (%)",        minval=0.01, step=1.0, defval=13)  * .01
//
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Stop Conditions   ————————————————————————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
longExitPrice  = strategy.opentrades > 0 ? strategy.position_avg_price * (1 + longProfitPerc) : srcmc *  (1 + longProfitPerc)
longStopPrice = strategy.opentrades  > 0 ? strategy.position_avg_price * (1 - longStopPerc)   : srcmc *  (1 - longStopPerc)
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// ————————————————————————————————— Long Conditions   ————————————————————————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
longCondition   = srcmc > _slow and  ta.crossover(_fast, _slow)
closeCondition  =  ta.crossover(srcmc, _slow)  

if (longCondition)
    strategy.entry("Entry (long)", strategy.long, comment="→ 𝗟𝗴 𝗘𝗻𝘁𝗿𝘆")

if (closeCondition)
    strategy.close("Entry (long)", comment=" 𝗟𝗴 𝗘𝘅𝗶𝘁 ←")

if (strategy.position_size > 0)
    strategy.exit(id="XL", limit=longExitPrice, stop = longStopPrice, comment_profit = "Take Profit", comment_loss = "Stop Loss")
//
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
// —————————————————————————————————  Never the End Just the beginning    —————————————————————————————————————————————————
// ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
//