APPRENDRE LES BASES DU TUTORIEL MQL5 – 10 COMMENT CODER UNE FONCTION PERSONNALISÉE SIMPLE

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.

YouTube privacy policy

If you accept this notice, your choice will be saved and the page will refresh.

 

Avec MQL5, nous pouvons coder une fonction personnalisée pour automatiser Metatrader. Dans cette vidéo, nous allons créer notre propre fonction qui peut renvoyer une valeur entière à la fonction principale OnTick…

Dans cette vidéo, nous allons utiliser MQL5 pour créer une fonction personnalisée qui doublera une valeur de compteur à chaque fois que le prix change.
Pour ce faire, cliquez sur le petit bouton ici dans Metatrader ou appuyez sur F4 sur votre clavier et maintenant vous devriez voir la fenêtre Metaeditor et ici vous voulez cliquer sur : „Fichier/ Nouveau/ Expert Advisor (modèle)“ à partir du modèle, „Continuer“, je vais appeler ce fichier : „SimpleFunction“, cliquez sur „Continue“, „Continue“ et „Finish“ et maintenant vous pouvez supprimer tout ce qui se trouve au-dessus de la fonction „OnTick“ et supprimons également les deux lignes de commentaires.
Nous commençons par créer une variable statique pour notre „counter“ ; „static“ est quelque chose que vous n’avez peut-être pas vu auparavant, dans notre cas nous utilisons „static“ pour créer une variable locale qui n’existera que dans notre fonction et nous voulons passer la variable à une autre fonction qui sera appelée : „DoubleTheValue“ (Double La Valeur), elle n’existe pas jusqu’à présent donc nous devons la créer et à l’intérieur des accolades nous passerons la valeur de notre „compteur“ actuel et ensuite pour avoir quelque chose sur l’écran nous utiliserons la fonction „Comment“ pour sortir les mots : „La valeur du compteur“ et la valeur actuelle du „compteur“, donc quand je compile le code maintenant, je vais obtenir une erreur parce que la fonction „DoubleTheValue“ n’est pas définie, alors faisons-le.
Pour créer une fonction personnalisée vous commencez par définir ce que la fonction va retourner – dans notre cas la fonction retournera une valeur entière (int) -, c’est le nom de la fonction personnalisée, je l’appelle : „DoubleTheValue“ (Double la valeur) et voici ce que la fonction va prendre comme paramètre.
Nous passons le „compteur“ – c’est un entier (int) – je l’appelle „CounterValue“ dans la fonction personnalisée – vous n’avez pas besoin d’utiliser le même nom – notre fonction aura besoin de deux accolades et lorsque j’essaie de la compiler cette fois-ci, nous obtenons une autre erreur car notre fonction ne va rien retourner.
Donc, doublons d’abord la valeur passée que nous avons appelée „CounterValue“, donc nous prenons „CounterValue“, la multiplions par 2 et le résultat sera stocké dans une nouvelle variable appelée : „DoubleValue“ et maintenant nous pouvons utiliser l’opérateur „return“ pour renvoyer la valeur au programme appelant, cela se fait en utilisant „return DoubleValue ;“, donc compilons le code une fois de plus et maintenant nous ne voyons pas d’erreurs ici et si c’est le cas vous pouvez cliquer sur le petit bouton ici ou appuyer sur F4 pour revenir à Metatrader.
Et dans Metatrader vous voulez cliquer sur : „View/ Strategy Tester“ ou appuyez sur CTRL et R, veuillez choisir le nouveau fichier : „SimpleFunction.ex5“, cochez l’option de visualisation ici et commencez un test et maintenant vous devriez voir que la valeur du compteur est doublée chaque fois qu’un nouveau tick entre, donc chaque fois que le prix change notre fonction personnalisée est appelée.
C’était un exemple très simple, nous n’avons passé qu’une seule valeur et nous n’avons effectué qu’une seule opération, mais vous pouvez également utiliser le même type de logique pour faire des choses plus compliquées, par exemple vous pouvez passer en revue toutes les positions ouvertes, calculer le profit pour une paire de devises et renvoyer la valeur à la fonction principale en utilisant l’opérateur „return“. Dans cette petite vidéo, vous avez appris à créer une fonction personnalisée dans MQL5 et vous l’avez codée vous-même avec quelques lignes de code MQL5.