Please accept YouTube cookies to play this video. By accepting you will be accessing content from YouTube, a service provided by an external third party.
If you accept this notice, your choice will be saved and the page will refresh.
Avec MQL5 pour Metatrader5, nous voulons créer un Expert Advisor pour compter le nombre de positions d’achat ouvertes pour une paire de devises sur le graphique forex. L’EA peut être codé dans Metaeditor en 5-10 minutes…
Dans cette vidéo, nous allons découvrir combien de positions d’achat nous avons. C’est une question qui m’a été posée par l’un de mes membres du cours premium.
Nous avons plusieurs positions d’achat et de vente ici, classons-les par type et nous avons 1, 2, 3, 4, 5, 6, 7, 8 positions d’achat, c’est ce que dit le texte ici, alors découvrons comment calculer cela avec MQL5.
Pour ce faire, veuillez cliquer sur le petit bouton ici ou appuyez sur F4 dans votre Metatrader maintenant vous devriez voir la fenêtre Metaeditor et ici vous voulez cliquer sur : „Fichier/ Nouveau fichier/ Expert Advisor (modèle)“ à partir du modèle, „Continuer“, je vais appeler ce fichier : „SimpleBuyPositionCount“, cliquez sur „Continuer“, „Continuer“ et „Terminer“.
Maintenant vous pouvez supprimer tout ce qui se trouve entre la fonction „OnTick“ et la fonction „OnInit“, nous supprimons également les lignes de commentaires ici, c’est tout ce qui est gris.
Nous commençons par importer un fichier „Trade.mqh“ – c’est une bibliothèque – elle comprend plusieurs fonctions de trading et elle nous permet de créer une instance de la classe „CTrade“ qui sera appelée : „trade“, à l’intérieur de la fonction „OnInit“ je vais appeler une fonction personnalisée qui s’appelle : open test positions (OpenTestPositions).
Vous ne feriez pas cela sur un compte réel mais j’ai besoin d’ouvrir quelques positions de test pour avoir quelque chose à compter.
À l’intérieur de la fonction „OnTick“, nous allons faire une chose et utiliser l’instruction „Comment“ pour sortir le nombre de positions que nous obtiendrons en appelant une fonction personnalisée appelée positions d’achat et nous allons coder cela maintenant.
En fait, rendons cela un peu plus convivial et créons la fonction personnalisée appelée count buy positions (CountBuyPositions), celle-ci renverra un nombre entier, il s’agit donc d’une valeur entière.
Nous allons commencer par créer une variable locale appelée nombre de positions d’achat (NumberOfBuyPositions), la valeur est 0 (zéro) pour le moment parce que nous voulons calculer ce nombre de positions d’achat et pour ce faire, nous utilisons une boucle „for“, à l’intérieur de la boucle „for“ nous allons utiliser la fonction „PositionsTotal“ et tant que la valeur de notre compteur est supérieure à 0 (zéro), nous allons parcourir toutes les positions ouvertes et voici ce que nous allons faire ; Tout d’abord, nous voulons créer une chaîne de caractères pour la paire de devises et affecter la valeur pour „PositionGetSymbol“ de la valeur actuelle du compteur qui identifiera la paire de devises, ensuite nous voulons obtenir le type de position, ce qui est fait en utilisant „PositionGetInteger“ et le paramètre que nous utilisons est „POSITION_TYPE“ – tout en majuscules – maintenant nous vérifions si le symbole actuel sur le graphique est égal à la paire de devises de notre position et une autre chose que nous voulons savoir est si la direction de la position est égale au type de position acheter (POSITION_TYPE_BUY) – également en majuscules.
Et si c’est le cas, nous voulons prendre la valeur actuelle du nombre de positions d’achat et l’augmenter de un. Nous devons terminer la boucle „for“ ici et maintenant nous voulons renvoyer le nombre de positions d’achat à la fonction principale, ce qui est fait en utilisant l’instruction „return“ et nous allons renvoyer la valeur du nombre calculé de positions d’achat (NumberOfBuyPositions) ici.
Il manque encore une parenthèse pour fermer toute la fonction, c’est à peu près tout.
Je vais vous montrer ma fonction pour ouvrir des positions de test (OpenTestPositions), ne l’utilisez pas sur un compte réel, j’utilise un générateur aléatoire pour calculer un nombre aléatoire, nous aurons donc jusqu’à 10 positions et ensuite j’ouvrirai des transactions d’achat et de vente juste à des fins de test, ne faites pas cela sur un compte réel.
Alors compilons le code en cliquant sur le petit bouton ici ou vous pouvez aussi appuyer sur F7.
J’ai une erreur ici, faisons de cette fonction une fonction „void“ parce que je n’ai pas besoin de vérifier la valeur de retour, recompilons le code et cette fois nous n’avons pas eu d’erreurs, donc maintenant nous pouvons cliquer sur un petit bouton ici ou appuyer sur F4 pour revenir à Metatrader.
Dans Metatrader nous cliquons sur : „View/ Strategy Tester“ ou appuyez sur CTRL et R, nous choisissons le fichier „SimpleBuyPositionCount.ex5“, marquez ici l’option de visualisation et commencez un test.
Nous y sommes ! Notre Expert Advisor nous dit que nous avons 8 positions d’achat, alors comptons : 1, 2, 3, 4, 5, 6, 7, 8, c’est correct.
Je vais arrêter le test ici, en commencer un nouveau et cette fois-ci il dit que nous avons 5 positions d’achat, 1, 2, 3, 4, 5, c’est correct.
Donc maintenant vous savez comment calculer le nombre de positions d’achat, si vous avez une question pour une vidéo comme celle-ci envoyez-moi un email mais pour l’instant, vous savez comment calculer le nombre de positions d’achat ouvertes et vous l’avez codé vous-même avec quelques lignes de code MQL5.