programmation
Maintenant vous lisez
MQL pratiquement. Basics and Market Puls [Cours de programmation]
0

MQL pratiquement. Basics and Market Puls [Cours de programmation]

établi Radek SzafronMars 12 2019

Dans le cycle MQL pratiquement nous vous fournirons les connaissances nécessaires pour commencer à travailler avec des applications écrites en MQL 4 pour la plate-forme Meta Trader. Bien sûr, le sujet de la programmation est très vaste, mais le but de ce cycle n’est pas de soulever toutes les questions possibles et de vous couvrir d’une théorie compliquée. Le but de ce cycle est de vous montrer comment commencer à utiliser MQL et de vous fournir des connaissances qui vous permettront de vous développer dans ce spectre.

Le but des tâches que nous allons effectuer ensemble est une installation séparée de la plate-forme MetaTrader 4, sur laquelle seul le compte de démonstration de tout courtier est installé. Nous ne voulons pas gâcher un vrai projet de loi. Cela peut être la version originale de la plate-forme MT4.

TELECHARGER METATRADER 4

Fonctions de base

Commençons par les bases, à partir de quoi la fenêtre de la plate-forme MT4 ressemble et les fonctions qu’elle contient pour les applications écrites en MQL. Jetons un coup d'oeil à l'image ci-dessous.

experts_config

MQL pratiquement - Fig.1

A la place marquée avec celle il y a une fenêtre "Navigator" (Ctrl + N). Le panneau nous permet d’accéder à tous les outils MQL installés sur une plate-forme donnée et est divisé en « indicateurs », « Stratégies » i "Scripts". Nous exécutons les programmes en les faisant glisser vers le graphique sélectionné et en configurant les paramètres de l'application donnée dans la fenêtre qui apparaît. À la place marquée des deux, nous pouvons voir un exemple de la fenêtre de configuration. Tous les paramètres que nous pouvons configurer pour l'application sont disponibles ici, mais concentrons-nous sur les éléments de base communs à tous les programmes. terrain "Let trade" est souvent négligée par les utilisateurs, et l’oiseau détermine si l’algorithme sera en mesure de conclure des transactions. Cette fonction vous permet de désactiver et d'activer la fonctionnalité de transaction pour chaque algorithme, par opposition à une fonction. "Autotrading", marqué d’un triangle, est un basculement global de la possibilité de conclure des transactions par tous les outils travaillant sur une plate-forme Meta Trader donnée.

Je pense qu'il n'est pas nécessaire de vous déranger avec des fonctions supplémentaires à ce stade. Les informations ci-dessus nous suffisent pour lancer avec succès notre premier programme.

Nous pouvons commencer à penser à la programmation. La plate-forme MetaTrader intègre un environnement de développement d'applications. L'environnement est disponible à partir du menu "Outils / Editeur de langage MQL4".

metaeditor_launch

MQL pratiquement - Fig.2

Après avoir sélectionné l'option dans le menu, une nouvelle application s'ouvre - "MetaEditor". À ce stade, nous allons écrire des algorithmes pour la plate-forme MT4. Arrêtons-nous un instant ici et apprenons à connaître les éléments les plus importants de l'éditeur.

metaeditor_basic

MQL pratiquement - Fig.3

Sur le côté gauche de la fenêtre, tout comme dans le MT4 lui-même, il y a un panneau "Navigator". À l'emplacement indiqué sur le dessin ci-dessus, nous avons développé le contenu du catalogue Experts, puis, en double-cliquant sur le nom du programme, nous avons ouvert son code source, qui apparaît dans la partie de la fenêtre portant le numéro deux. C'est dans cette partie que nous créons et éditons des algorithmes. Lorsque nous avons fini d’écrire l’application, nous devons la transformer en une forme lisible par ordinateur, c’est-à-dire compiler le programme en sélectionnant l’option « Compiler » (F7), marqué d’un triangle. L'algorithme compilé se trouve dans le panneau "Navigator" MT4 et exécutez en faisant glisser sur le graphique sélectionné. Exactement comme dans la partie précédente de cet article.

jeune arbre "Navigator" il reflète la structure des fichiers du répertoire MQL4, c’est-à-dire le répertoire dans lequel la plate-forme stocke toutes les applications écrites en MQL. Si vous souhaitez installer l’application, par exemple une application mise à disposition dans le cadre de notre cycle, c’est dans le répertoire MQL4 que vous devez copier le fichier, en vous rappelant que « Stratégies » nous mettons dans le catalogue "MQL4 \ Experts"un « indicateurs » dans le catalogue "MQL4 \ Indicators" et que chaque copie de la plate-forme Meta Trader 4 installée sur votre ordinateur possède son propre répertoire MQL4. Comment trouver le catalogue MQL4 d'une plate-forme donnée est présenté dans l'image ci-dessous (dans l'icône MQL4, cliquez sur le bouton droit de la souris).

metaeditor_mql_folder

MQL pratiquement - Fig.4

Nous savons déjà comment exécuter, installer et écrire des applications pour Meta Trader 4. Passons aux mérites et commençons à apprendre la programmation.


conseillers experts


Nous créons la première application

Pour vous permettre de faire les premiers pas en tant que programmeur, nous allons écrire ensemble une petite application dont la tâche sera de nous informer sur l’activité actuelle du marché. Nous l'appellerons "Puls Rynku"et nous utiliserons beaucoup de temps à parcourir la presse en prévision de l’apparition de la variabilité souhaitée, ce que nous entendrons grâce au changement de la fréquence des sons générés par notre algorithme.

En pièce jointe à cet article, sous Ce lien vous trouverez un fichier son "Pulse_beep.wav". S'il vous plaît, mettez-le dans le catalogue « Sons »qui se trouve dans le catalogue principal de la plate-forme MT4. catalogue « Sons » vous pouvez localiser en ouvrant les propriétés de raccourci exécutant le terminal, comme dans l’illustration ci-dessous.
mt4_location

MQL pratiquement - Fig.5

Les images suivantes montrent comment créer un nouveau fichier de stratégie automatique, presque vide. Dans la fenêtre MetaEditor, sélectionnez la fonction « Nouveau »puis sélectionnez "Conseiller expert", choisissez le nom du programme et cliquez sur "Prochain" tant que le modèle ouvert du nouveau programme apparaît dans l'éditeur.

metaeditor_new_1

Rys.6

 

metaeditor_new_2

Rys.7

 

metaeditor_new_3

Rys.8

Nous n'allons pas de manière simple et supprimons tout le contenu du fichier dans la fenêtre marquée d'un dans la dernière image. Nous allons écrire le code entier de notre application par nous-mêmes. Commençons.


              // Puls Rynku.mq4
              // Copyright 2019, Mistrz Programowania
              // https://www.mistrz.ty
            

En tapant "//" au début de la ligne, nous créons des commentaires, c'est-à-dire des fragments qui nous servent de programmeur pour créer toutes sortes d'informations et de notes dans le code. Les commentaires n'affectent pas le fonctionnement du programme. À l'aide de commentaires, vous pouvez créer l'en-tête de votre application, qui fournira, par exemple, des données sur l'auteur, des informations sur l'application elle-même ou le droit d'auteur. Créons un en-tête (ou non), puis mettons le code suivant sur la nouvelle ligne.

          
              #property strict
            

Les paramètres de type "#propriété" permettent de fournir à la plate-forme des informations supplémentaires sur le programme en cours de création. Le paramètre "#property strict", placé au début de la ligne, informe la plate-forme que l'algorithme est créé à l'aide de la dernière syntaxe du langage MQL4.

A l'étape suivante, entrez l'opération suivante dans la nouvelle ligne.

    
              input string Plik_dzwiekowy =  "pulse_beep.wav";
            

mot « Entrée » informe le programme que nous créons un paramètre nous permettant de saisir les paramètres nécessaires à l'exécution du programme. sur « Entrée » Nous spécifions toujours le type de données saisies, le voici "String" c'est du texte. Ensuite, nous créons le nom de la variable, ce qui signifie, sous une forme simplifiée, le nom du fragment de mémoire de l'ordinateur auquel nous pourrons nous référer ultérieurement afin de lire les données saisies. Nous appelons notre variable "Plik_dzwiekowy", c’est-à-dire qu’il nous permettra de saisir dans le programme le texte que nous utiliserons comme nom du fichier son à utiliser par notre algorithme.

Nous voyons le signe égal après le nom de la variable. Cela signifie que vous souhaitez affecter du texte à notre variable "Pulse_beep.wav". Cette valeur sera utilisée dans ce cas comme valeur par défaut et peut être modifiée après avoir fait glisser le programme sur le graphique dans la fenêtre de configuration. Nous venons de définir l'opération d'affectation de données. C'est une opération simple qui se termine par un point-virgule.

À ce stade, arrêtez-vous un instant pour en savoir plus sur les types de données. Dans la ligne ci-dessus, nous avons utilisé le type de données "String"mais il y a beaucoup plus de types et ils sont une partie fondamentale du langage qui ne peut pas être contournée. Je place une adresse sur un fragment de la documentation décrivant les types de données de langage MQL4.
Comme vous pouvez le voir dans les fragments ci-dessus, une seule ligne est très importante dans la programmation et vous devez faire très attention à ce que nous écrivons dans le code source, car même la plus petite erreur empêchera la compilation de l'algorithme.

Nous écrivons plus loin.


                void OnTick()   
                {
                
                PlaySound(Plik_dzwiekowy);
                
                }
          

L'enregistrement ci-dessus définit la fonction "OnTick ()". Les fonctions sont des éléments de l'algorithme chargé d'effectuer les opérations qui leur sont confiées. Dans ce cas, nous voyons la fonction intégrale du langage MQL, qui a pour tâche d'effectuer l'opération lorsque le cours de l'instrument sur lequel notre algorithme fonctionne change. La plate-forme appellera cette fonction chaque fois qu'un nouveau tick apparaît. Les opérations à effectuer par chaque fonction que nous écrivons sont définies par nous-mêmes. Nous avons une liberté totale et pratiquement aucune restriction ici. Cette fois, cependant, nous serons restreints et ne recréerons que le fichier son défini précédemment avec le paramètre « Entrée ». Nous allons utiliser une autre fonction, également intégrée au langage MQL 4 - "PlaySound (nom de fichier de la chaîne)"La tâche qui consiste à reproduire le fichier son avec le nom qu’elle recevra en utilisant une variable du type de données "chaîne" qu’elle attend entre les crochets après le nom de la fonction. Fonctionnement de l'appel de fonction "PlaySound" nous terminons par un point-virgule, car l'opération de mappage de données est une opération simple.

Comme vous le savez probablement, voici le sujet des opérations disponibles dans la syntaxe du langage.

Nous pressons compiler!

metaeditor_compile_ok

Rys.9

Je croise les doigts pour que tout ressemble à celui ci-dessus. Si c'est le cas, la compilation s'est bien déroulée. Si le résultat ressemble davantage à un dessin du numéro 10, nous devons localiser l'erreur à l'aide des informations affichées dans le panneau inférieur, apparues après la tentative de compilation. Sur le côté gauche du panneau, nous pouvons lire ce qui concerne les erreurs et sur la droite dans quelle rangée elles se trouvent. Double-cliquer sur une ligne avec une erreur nous mènera à la partie appropriée du code source. Insérez les points-virgules et les crochets manquants et appuyez à nouveau sur « Compiler ».

metaeditor_compile_ups

Rys.10

Prêt! Nous pouvons aller à MT4 et faire glisser notre premier algorithme vers n’importe quel graphique.

Bip Bip ... 😉

A la semaine prochaine. Nous allons écrire un nouveau programme et explorer des fonctions langagières plus avancées.

CODE FINAL - IMPULSION DE MARCHÉ

Qu'en penses-tu?
Je
68%
intéressant
28%
Heh ...
6%
Shock!
11%
Je n'aime pas
15%
blessure
3%
À propos de l'auteur
Radek Szafron
L'auteur de cette publication est Radek Szafron, propriétaire de la société Expert Advisors, qui accompagne les investisseurs depuis de nombreuses années en fournissant des technologies dédiées au marché des changes. L'auteur est diplômé de la Warsaw School of Economics avec la spécialisation "marchés financiers" et programmeur avec une expérience estivale proche de 20. La société implémente des conceptions d'algorithmes et d'applications écrites dans toutes les langues de la famille "C", y compris les plateformes populaires Meta Trader 4 et 5. Des conseillers experts peuvent être trouvés sur www.expertadvisors.pl.