APPRENDRE LES BASES DU TUTORIEL MQL5 – 40 ACHAT SIMPLE ARRÊT DU SEUIL DE RENTABILITÉ

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 et Metatrader5, nous créons un Expert Advisor Break Even Stop Loss automatisé qui fixera le Stop Loss au-dessus du prix d’achat lorsque le prix va dans notre sens…

Dans cette vidéo nous allons créer des stops break-even pour les trades d’achat, ceci est le stop-loss initial pour ce trade et lorsque le prix monte dès qu’il dépasse le prix d’achat vous verrez la petite ligne rouge apparaître sur le graphique donc découvrons comment faire cela avec mql5.
Nous commençons par cliquer sur cette petite icône ici ou nous pouvons également appuyer sur F4 sur le clavier, maintenant vous devriez voir la fenêtre Metaeditor et ici vous pouvez cliquer sur fichier, nouveau fichier, conseiller expert à partir d’un modèle, continuer, j’appellerai ce fichier achat simple break-even stop, cliquez sur continuer, continuer et terminer.
Maintenant vous pouvez supprimer tout ce qui se trouve au-dessus de la fonction on tick et les deux lignes de commentaire ici, nous commençons par inclure le fichier trade dot mqh qui est fourni avec mql5 et nous allons utiliser une instance de ctrade appelée trade pour ouvrir une position de test. Vous ne feriez pas cela sur un compte réel mais nous devons ouvrir une position de test afin de pouvoir définir le break-even stop.
Pour une position d’achat, nous devons trouver le prix demandé, ce qui est fait en utilisant symbol info double pour le symbole actuel sur le graphique, nous utilisons symbol underscore ask – tout en majuscules – et avec normalize double et underscore digits nous calculons automatiquement le bon nombre de chiffres derrière le point.
Je n’ai besoin que d’une seule position de test, je vérifie donc si la valeur de retour de la fonction positions totales est égale à zéro et si c’est le cas, nous utilisons trade dot buy pour ouvrir la position de test pour dix micro-lots.
Nous définissons également un stop loss et une valeur de take profit ici et à la fin de la fonction on tick, nous voulons appeler une autre fonction qui sera appelée check buy break-even stop, nous avons passé le ask price comme paramètre et cette fonction n’existe pas jusqu’à présent donc nous devons la coder maintenant.
Notre fonction personnalisée n’a pas de valeur de retour et elle prendra le prix demandé comme paramètre, nous utiliserons une boucle for, notre compteur est un nombre entier pour le numéro de la position et nous décompterons le nombre total de positions jusqu’à ce qu’il n’y ait plus de positions.
Pour chaque position, nous devons obtenir le numéro du ticket, ce qui est fait en utilisant position get integer, position underscore ticket, cette valeur sera stockée dans une variable appelée position ticket, c’est une variable longue non signée et c’est un peu fou parce que nous utilisons position get integer donc vous vous attendez à une valeur entière ici, mais lorsque vous marquez position ticket et appuyez sur F1, vous verrez qu’il renvoie en fait une valeur longue ici.
Nous devons également obtenir le prix d’achat de la position ou peut-être devrais-je dire le prix d’ouverture de la position, ce qui est fait en utilisant position get double et nous utilisons position underscore price, underscore open, répétons cela deux fois de plus parce que nous voulons également connaître la valeur stop loss et la valeur take profit de la position, les deux peuvent être calculées en utilisant position get double et pour obtenir la direction de la position, nous utilisons position get integer pour position underscore type, cela nous donnera la direction parce que nous devons savoir si c’est une position d’achat ou de vente.
Pour s’assurer que la position appartient au graphique actuel, nous utilisons position get symbol pour le numéro de position actuel et maintenant nous pouvons vérifier les conditions, nous voulons seulement déplacer le stop-loss si le symbole actuel sur le graphique est égal au symbole de la position, nous voulons aussi nous assurer que le type de position est égal à position underscore type, underscore buy, c’est le cas lorsque nous avons une transaction d’achat, nous voulons seulement déplacer le stop break-even si le stop-loss de la position actuelle est inférieur au prix d’achat de la position.
Et enfin, je veux savoir si le prix de demande actuel est supérieur au prix d’achat de la position plus trente points ; c’est à ce moment-là que je veux fixer mon stop de rupture.
Si toutes ces conditions sont vraies, j’utilise trade dot position modify pour modifier la position actuelle pour le ticket de position actuel et je veux déplacer le stop-loss actuel à quatre points au-dessus du prix d’achat de la position, c’est le prix que nous avons payé lorsque nous avons ouvert la position d’achat et dans ce cas, je laisse la valeur du take profit de la position inchangée. Reformatons le code ici, nous devons fermer la boucle for et nous devons terminer la fonction, ce devrait être tout.
Si vous n’avez aucune idée de ce que fait le code ici ou si cela a été trop rapide pour vous, vous voudrez peut-être regarder d’abord les autres vidéos de cette série de vidéos de base ou peut-être même le cours premium sur le site Web qui pourrait vous intéresser, pour l’instant, cliquez sur le bouton de compilation, je n’ai pas eu d’erreurs ici, juste un avertissement sur la perte possible de données en raison d’une conversion de type et si c’est également le cas pour vous, vous pouvez cliquer sur un petit bouton ici ou vous pouvez appuyer sur F4 pour revenir à Metatrader.
Et dans Metatrader, nous cliquons sur vue, testeur de stratégie ou nous appuyons sur contrôle et r, veuillez choisir le nouveau fichier simple break-even stop point ex5, marquer l’option de visualisation ici et commencer un test.