Limitations du module de Backtest de Metatrader

Cet article prend la suite de l’article intitulé “Fonctionnement du backtest avec Metatrader“.

Introduction

Cet article rentre plus en détail dans les caractéristiques et limitations du backtesteur de stratégie MetaTrader4.

Caractéristiques spéciales du testeur de stratégies sur des données historiques :

  • Certaines fonctions sont exécutés sans sorties. Ce sont Sleep(), Alert(), SendMail(), PlaySound(), MessageBox(), WindowFind(), WindowHandle(), WindowIsVisible()
  • Le trading est permis pour la paire sous test seulement. Il n’y a pas de possibilité de backtest pour un portefeuille entier. Les tentatives de trade utilisant d’autres paires retourneront une erreur.
  • La taille des lots incluant la taille initiale, l’incrément, les commissions et les swaps sont ceux des caractéristiques du compte actif. Avant de lancer le backtest, vérifiez qu’il y ait au moins un compte activé dans la liste de la fenêtre “Navigator” du terminal.
  • Tous les swaps, les obligations de marge, les expirations et les ordres GTC sont modélisés. Le backtest est réalisé de manière la plus porche des conditions du serveur de trading. Mais il peut arriver des inexactitudes d’estimation des marges nécessaires sur une paire à cause d’un manque d’informations précises sur les prix à chaque instant.
  • Le début d’une bougie d’une autre échelle de temps pour la même paire sous tests est modélisée approximativement : Open = correct Open, Close = correct Close, Low = min (Open,Close), High = max (Open,Close), Volume = final Volume (false).
  • Le mode d’Exécution Instantannée est considérée comme utilisée durant les trades, réalisé sans slippage.
  • Réalisation des ordres d’ouverture et de fermeture des trades sans slippage.
  • Test des stops après StopOut.
  • Les échelles de temps Hebdomadaires, Mensuelles et d’autres irrégulières ne sont pas testées.
  • La monnaie du dépôt peut être changée, mais les taux de conversion sont établis et le taux de change courant est utilisé.
  • Il n’y a pas de délais dans l’exécution des trades. Un délai de setup est prévu d’être rajouté dans l’exécution des transactions.
  • L’historique du compte est complètement disponible et ne dépends pas de la configuration.
  • Si d’autres paires et pèriodes sont très utilisées, il est préférable de les télécharger toutes les profondeurs possibles. I
  • Au niveau de modélisation “tous les ticks”, le backtesteur utilise toutes les échelles de temps de la paire sous tests de manière indépendante.
  • L’utilisation de la fonction MarketInfo génère des erreurs ERR_FUNCTION_NOT_ALLOWED_IN_TESTING_MODE(4059), cependant, les informations correctes à propos des prix courants de la paire testée, de la dimension des nieveaux de stop, de la taille des points et du spread de chaque paire est fournie.

Caractéristiques spéciales du Processus d’Optimisation

 

  • Rien n’est écrit dans le journal ou par la fonction Print(). Ce choix a été fait pour accélérer le backtest et sauver de l’espace disque. Si les logs complets étaient, ils prendraient des centaines de Mo.
  • Les objets dessinés ne sont pas réellement réalisés. Les objets sont désactivés afin d’accélérer le backtest.
  • La fonction “Sauter les résultats inutiles “est utilisée. Afin de ne pas surcharger le tableau et le graphique avec les résultats des test, la possibilité de laisser tomber les mauvais résultats est utilisée. Cette fonction peut être activée dans le menu contextuel “Résultats d’Optimisation”-> “Skip useless results”.

     

Traduction: Nicolas Vitale
Source: http://articles.mql4.com/72
“MQL4 is a trade mark of MetaQuotes Software Corp. and all related materials are reserved for MetaQuotes”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>