Sommaire MQL4 pour les nuls 1. Introduction 2. MetaEditor 3. Les types de donné

Sommaire MQL4 pour les nuls 1. Introduction 2. MetaEditor 3. Les types de données 4. Les variables 5. Expressions et opérateurs 6. Les fonctions 7. Instructions conditionnelles et boucles 8. Indentations, commentaires et syntaxe 9. Les préprocesseurs 10.Votre premier expert advisor #1 11.Votre premier expert advisor #2 12.Fonctions sur les barres 13.Fonctions temporelles (date et heure) 14.Votre premier expert advisor #3 15.Fonctions sur les objets (texte et graphique) 16.Votre premier expert advisor #4 17.Fonctions de trading 18.Votre premier expert advisor #5 19.Fonctions communes 20.Votre premier expert advisor #6 01 - Introduction MQL4 est l'abréviation utilisée pour désigner MetaQuotes Language 4. MetaQuotes est la compagnie qui a développé la plate forme de trading Metatrader. Pour rendre cette plateforme encore plus attractive que celle de ses concurrents, MetaQuotes a également développé un langage de programmation interne et propre au programme permettant aux utilisateurs de programmer leurs propres stratégies de trading. Tout comme la plateforme de trading MetaTrader, le langage a lui aussi évolué. Les prédécesseurs du MQL4 était le MQL puis par la suite le MQL II avant l'arrivée du MQL4. Des rumeurs annoncent d'ailleurs le lancement du MQL5 au courant de l'année 2009. Bien que propre au programme, ce langage est très similaire dans sa structure au C ou au C++ comme vous pourrez le voir par la suite pour ceux qui connaissent déjà l’un de ces langages. La création d'un programme sur MetaTrader se révèle un peu plus complexe que sur certaines plateformes (on pensera notamment à Visual Chart ou TradeStation) mais le MQL4 n’en demeure pas moins l'un des langages les plus élaborées (on pensera ici à Visual Trading et ses limitations) et des plus répandus sur internet à en juger par la la quantité de programmes libres, forum, tutoriels et support de la part des concepteurs ou autres. La plupart de ses ressources sont souvent en anglais ou en russe (MetaQuotes étant une compagnie russe) mais nous espérons que notre portail pourra vous apporter toutes les ressources dont vous pourriez avoir besoin et ce en français. Le MQL4 vous permet de créer les 3 types de programmes suivants : • Experts Consultants ou EA (Expert Advisors en anglais) L’EA est un programme permettant d’automatiser vos stratégies de trading en passant automatiquement les ordres basés sur votre stratégie, en gérant vos trades existants ou encore en générant des signaux de trading. • Indicateur MetaTrader dispose déjà d’une bibliothèque très complète d’indicateurs techniques mais vous laisse également la possibilité de modifier des indicateurs existants ou encore d’en créer de nouveau. Un indicateur sert à analyser et interpréter les données du marché pour vous aider à prendre vos décisions d’entrées ou sorties. • Script Un script est un programme destiné à exécuter un nombre d’action précis de façon ponctuelle. En effet, contrairement à un EA qui analyse le marché à chaque tick (= changement de cotation), le script n’est actif que lorsque l’utilisateur en fait la demande et ne fonctionnera qu’une fois. Un script peut donc être utilisé pour effectuer une opération que l’on ne désire pas voir se répéter à moins d’en faire la demande comme par exemple la clôture de toutes les positions ouvertes. Pour résumer, un EA est un programme capable de passer des ordres sans intervention humaine et qui va fonctionner tant et aussi longtemps que son algorithme lui permet de le faire. Un script est également à même de passer des ordres mais il nécessite une exécution manuelle et ne fonctionnera qu’une seule et unique fois. Un indicateur, quant à lui, ne peut pas passer d’ordres mais fonctionnera tant et aussi longtemps que son algorithme le lui permettra. Nous reviendrons par la suite sur la définition d’algorithme et la structure d’un programme en MQL4 mais retenez simplement pour l’instant qu’il s’agit d’une suite d’instructions compréhensibles par MetaTrader visant à la résolution d’un problème ou réalisation d’une action. En fait, il s’agit tout simplement de la logique de fonctionnement que devra suivre le programme que vous avez écrit. Pour exemple, ci-dessous, la logique de fonctionnement possible pour un EA. Ceci clôture donc notre introduction - dans le prochain article de cette série, nous parlerons plus en détails du compilateur et éditeur de code intégré à MetaTrader, j’ai nommé MetaEditor. 02 - MetaEditor Présentation : Par défaut, peu importe la version ou le courtier, l’installation de MetaTrader comprend un IDE (Integrated Development Environment) appelé MetaEditor et qui comprend les fonctions suivantes : • Un éditeur de code capable d’identifier et mettre en évidence les différentes composantes et fonction du langage MQL4. • Un compilateur intégré et très simple d’utilisation. • Un dictionnaire sur les différentes fonctions et commandes en MQL4. • Un accès direct à la base de données du site mql4.com comprenant aussi bien des experts, des indicateurs que des scripts ou des articles avec la possibilité de télécharger directement dans MetaEditor ces fichiers. Ci-dessous, une capture d’écran de la fenêtre principale par défaut de MetaEditor. Comme vous pouvez le voir sur l’image, l’écran est divisé en 3 fenêtres principales. 1 qui nous sert à coder, 2 pour voir les erreurs de compilation lorsqu’il y en a, avoir accès à la librairie en ligne et au dictionnaire. 3 sert à visualiser le contenu du dossier experts propre à votre installation de MetaTrader et donne également un accès facile au dictionnaire et au moteur de recherche de ce dernier. Lancement : Pour lancer MetaEditor, plusieurs options s’offrent à vous, vous pouvez soit aller chercher directement le fichier exécutable dans les dossiers d’installation de MetaTrader. Le fichier MetaEditor.exe se trouve à la racine même de l’installation. Vous pouvez également utiliser le raccourci présent dans votre menu démarrer ou bien utiliser l’icône de lancement rapide présente dans MetaTrader dans la barre d’outils en haut. Compilation : Les menus de MetaEditor sont suffisamment ressemblant à n’importe quel traitement de texte ou application windows que j’estime qu’il n’est pas nécessaire de les passer en revue. Néanmoins, il est une fonction sur laquelle on ne peut pas faire l’impasse : "Compiler". Pour compiler vos programmes dans MetaEditor, vous pouvez soit cliquer sur F5, soit cliquez sur le bouton “Compiler” situé dans la barre d’outils en haut comme vous pouvez le voir ci-dessous. Pourquoi donc est-ce nécessaire de compiler vos programmes ? Plusieurs raisons à cela. Premièrement, MetaTrader est incapable d’interpréter les fichiers dont l’extension est *.mq4 qui se trouve être l’extension de tous vos programmes non compilés et de la plupart des experts et indicateurs que vous trouverez sur internet. Ce format vous permet d’ouvrir le fichier dans MetaEditor et voir le code source du programme. Pour pouvoir être lu par MetaTrader, un expert ou tout autre programme doit avoir l’extension *.ex4. Lorsque vous compilez un fichier, vous conservez donc votre fichier source en *.mq4 et vous obtenez un nouveau fichier en *.ex4. Il n’est pas nécessaire de disposer du fichier source pour que le fichier compilé fonctionne et c’est là la deuxième raison à la compilation. Si vous désirez protéger votre code des regards indiscrets mais que vous désirez tout de même partager votre programme, il suffit de le compiler et de distribuer le fichier *.ex4 impossible à ouvrir. Attention, le fait de le compiler ne protège votre code que de façon sommaire. En effet, il est relativement aisé pour un programmeur de coder un décompilateur qui viendra à bout de votre fichier *.ex4 et qui plus est, ce n’est pas illégal au sens de la loi. Nous reviendrons là dessus plus loin lorsque nous décrirons les différents types de protections possibles. L’étape de compilation est très utile aussi notamment pour vérifier la fiabilité de votre code. En effet, si ce dernier comporte des erreurs, celles-ci apparaîtront dans la fenêtre du bas (2) vous permettant de voir ainsi plus facilement le type d’erreur et la ligne de code en question. Utilisation : Pour ouvrir un programme existant, il suffit simplement de repérer celui-ci dans la fenêtre de droite (3) si celui-ci se trouve dans votre dossiers experts ou de cliquez deux fois dessus. L’extension est par défaut assigné à MetaEditor. Pour créer un nouveau programme, cliquez sur fichier puis sur nouveau. Une fenêtre apparaîtra alors avec la possibilité de choisir quels types de programmes vous désirez programmer. Cette démarche permet de simplifier votre tâche en vous fournissant une page préformatée avec la structure pour votre futur programme. Une fois que vous aurez choisi votre type de programme et cliquer sur suivant, une nouvelle fenêtre apparaîtra vous permettant de compléter les informations sur votre programme tels que le nom, les informations de droits d’auteur et aussi les paramètres pour votre programme. Nous verrons dans la partie suivante quels sont les types de paramètres permis et comment le MQL4 y fait référence. 03 - Les types de données Le MQL4 étant un dérivé du C/C++ est par définition un langage typé. Cela signifie que le programme ne peut interpréter et utiliser que des données appartenant à des types spécifiques et que certaines opérations ne peuvent être effectuées qu’entre données du même type (un réel uploads/S4/ mql4-pour-les-nuls.pdf

  • 23
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Dec 03, 2022
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 1.1069MB