Code source
MQL5 CopyBuffer : handles d’indicateur et signaux sur bougies clôturées
Dans MQL5, une handle d’indicateur identifie un calcul d'indicateur. CopyBuffer récupère ses valeurs. Garder ces deux étapes séparées rend la logique EA basée sur des indicateurs plus facile à lire et à tester.
Créer et valider le handle
Un EA typique crée ses handles de référence d’indicateur lors de l’initialisation et vérifie INVALID_HANDLE. Enregistrez les paramètres de l’indicateur et le délai avec la poignée. Recréer le même indicateur pour chaque tick entrant ajoute du travail inutile et rend la gestion des erreurs plus difficile à suivre.
Vérifiez que les valeurs sont disponibles
BarsCalculated indique la quantité de données d'indicateur qui a été calculée. CopyBuffer renvoie le nombre d'éléments copiés ou un résultat d'erreur. Vérifiez que le nombre demandé a bien été renvoyé avant d'utiliser les valeurs de destination ; un tampon non prêt ne doit pas devenir silencieusement un signal de trading.
Choisissez délibérément la bougie de prix
Pour les demandes basées sur la position de trading CopyBuffer, le début de la position de trading 0 fait référence à la bougie de prix actuelle. Une règle de bougie fermée demande généralement la position de trading 1. Avec une destination à un seul élément, cette distinction est simple ; avec plusieurs éléments, vérifiez également l’ordre des tableaux. Ne présumez pas qu'un tampon copié a la même convention d'indexation qu'un autre tableau de votre programme.
Réaliser un petit dossier de diagnostic
- Utilisez un indicateur et un calendrier connu.
- Enregistrez l'heure de la bougie de prix et la valeur sélectionnée à une fréquence contrôlée.
- Comparez la valeur avec l’affichage de l’indicateur du terminal.
- Testez le démarrage avec l'historique toujours en cours de chargement, puis les bougies de prix suivantes ordinaires.
Personnalisez-le avec MQLume
MQLume transforme la lecture des sources en un parcours d'apprentissage pratique. ExplorerMy AI Gold MT5, puis utilisez une copie de travail distincte pour étudier et affiner la logique de l'indicateur que vous comprenez.