Articles de programmation MQL4 et MQL5

icon

Étudiez le langage MQL5 pour la programmation de stratégies de trading dans de nombreux articles publiés, écrits essentiellement par vous, les membres de la communauté. Les articles sont regroupés en catégories pour vous aider à trouver plus rapidement des réponses à toutes les questions relatives à la programmation : Intégration, Tester, stratégies de trading, etc.

Suivez nos nouvelles publications et discutez-en sur le Forum!

Ajouter un nouvel article
dernier | meilleur
Sécurisation du code MQL5 : Protection par mot de passe, générateurs de clés, délais, licences à distance et techniques avancées de cryptage des clés de licence EA
Sécurisation du code MQL5 : Protection par mot de passe, générateurs de clés, délais, licences à distance et techniques avancées de cryptage des clés de licence EA

Sécurisation du code MQL5 : Protection par mot de passe, générateurs de clés, délais, licences à distance et techniques avancées de cryptage des clés de licence EA

La plupart des développeurs doit de sécuriser leur code. Cet article présentera différentes manières de protéger le logiciel MQL5 - il présente des méthodes pour fournir des fonctionnalités de licence aux scripts, aux Expert Advisors et aux indicateurs MQL5. Il couvre la protection par mot de passe, les générateurs de clés, la licence de compte, l'évaluation du délai et la protection à distance à l'aide d'appels MQL5-RPC.
Rédaction d'un Expert Advisor à l'aide de l'approche de programmation  orientée-objet MQL5
Rédaction d'un Expert Advisor à l'aide de l'approche de programmation  orientée-objet MQL5

Rédaction d'un Expert Advisor à l'aide de l'approche de programmation orientée-objet MQL5

Cet article est axé sur l'approche orientée-objet pour faire ce que nous avons fait dans l'article « Guide étape par étape pour écrire un Expert Advisor en MQL5 pour les débutants » : créer un Expert Advisor simple. La plupart des gens pensent que c'est difficile, mais je tiens à vous rassurer qu'au moment où vous aurez fini de lire cet article, vous serez en mesure d'écrire votre propre Expert Advisor qui est orienté-objet.
Créez votre propre Expert Advisor dans l'assistant MQL5
Créez votre propre Expert Advisor dans l'assistant MQL5

Créez votre propre Expert Advisor dans l'assistant MQL5

La connaissance des langages de programmation n'est plus un prérequis pour créer des robots de trading. Auparavant, le manque de compétences en programmation était un obstacle infranchissable à la mise en œuvre de ses propres stratégies de trading, mais avec l'apparition de l'assistant MQL5, la situation a radicalement changé. Les traders débutants peuvent cesser de s'inquiéter en raison du manque d'expérience en programmation - avec le nouvel assistant, qui vous permet de générer le code Expert Advisor, ce n'est plus nécessaire.
Introduction à la méthode de décomposition en modes empiriques
Introduction à la méthode de décomposition en modes empiriques

Introduction à la méthode de décomposition en modes empiriques

Cet article a pour but de familiariser le lecteur avec la méthode de décomposition empirique des modes (EMD). C’est la partie fondamentale de la transformée de Hilbert-Huang et est destinée à l’analyse des données issues des processus non stationnaires et non linéaires. Cet article présente également une mise en œuvre logicielle possible de cette méthode ainsi qu’un bref examen de ses particularités et donne quelques exemples simples de son utilisation.
L'utilisation de ORDER_MAGIC pour trader avec différents Expert Advisors sur un seul instrument
L'utilisation de ORDER_MAGIC pour trader avec différents Expert Advisors sur un seul instrument

L'utilisation de ORDER_MAGIC pour trader avec différents Expert Advisors sur un seul instrument

Cet article examine les questions du codage de l’information, en utilisant l’identification magique, ainsi que la division, l’assemblage et la synchronisation du trading automatique des différents Expert Advisors. Cet article sera intéressant pour les débutants, ainsi que pour les traders les plus expérimentés, car il traite la question des positions virtuelles, ce qui peut être utile dans l’implémentation des systèmes complexes de synchronisation d’Expert Advisors et de diverses stratégies.
La règle d'or des Traders
La règle d'or des Traders

La règle d'or des Traders

Afin de réaliser des bénéfices basés sur des attentes élevées, nous devons comprendre trois principes de base d'un bon trading : 1) connaître votre risque en entrant sur le marché ; 2) réduisez vos pertes tôt et laissez courir vos bénéfices ; 3) connaître les attentes de votre système - tester et ajuster régulièrement. Cet article fournit un code de programme qui suit les positions ouvertes et actualise le deuxième principe d'or, car il permet aux bénéfices de courir au plus haut niveau possible.
Stratégies d’ordres. Un Expert Advisor polyvalent
Stratégies d’ordres. Un Expert Advisor polyvalent

Stratégies d’ordres. Un Expert Advisor polyvalent

Cet article se concentre sur les stratégies qui utilisent activement les ordres en attente, un métalangage qui peut être créé pour décrire formellement de telles stratégies et l'utilisation d'un Expert Advisor polyvalent dont le fonctionnement est basé sur ces descriptions.
preview
Un exemple d'assemblage de modèles ONNX dans MQL5

Un exemple d'assemblage de modèles ONNX dans MQL5

ONNX (Open Neural Network eXchange) est un format ouvert conçu pour représenter les réseaux neuronaux. Dans cet article, nous allons montrer comment utiliser simultanément 2 modèles ONNX dans un Expert Advisor.
Le marché et la physique de ses modèles globaux
Le marché et la physique de ses modèles globaux

Le marché et la physique de ses modèles globaux

Dans cet article, j'essaierai de vérifier l'hypothèse selon laquelle tout système ayant une compréhension, même limitée, du marché peut fonctionner à l'échelle mondiale. Je n'inventerai pas de théories ou de modèles, mais j'utiliserai uniquement des faits connus, que je traduirai progressivement dans le langage de l'analyse mathématique.
preview
Plusieurs indicateurs sur un même graphique (Partie 06) : Transformer MetaTrader 5 en un système RAD (II)

Plusieurs indicateurs sur un même graphique (Partie 06) : Transformer MetaTrader 5 en un système RAD (II)

Dans mon précédent article, je vous ai montré comment créer un Chart Trade en utilisant les objets MetaTrader 5 et transformer ainsi la plateforme en un système RAD. Le système fonctionne très bien. Il est certain que de nombreux lecteurs auraient créé une bibliothèque, ce qui permettrait d'avoir des fonctionnalités étendues dans le système proposé. A partir de là, il serait possible de développer un Expert Advisor plus intuitif, avec une interface plus agréable et plus facile à utiliser.
Accélération des calculs avec le réseau cloud MQL5
Accélération des calculs avec le réseau cloud MQL5

Accélération des calculs avec le réseau cloud MQL5

Combien de cœurs avez-vous sur votre ordinateur personnel ? Combien d'ordinateurs pouvez-vous utiliser pour optimiser une stratégie de trading ? Nous montrons ici comment utiliser le réseau cloud MQL5 pour accélérer les calculs en recevant la puissance de calcul à travers le monde d'un simple clic de souris. L'expression « Le temps, c'est de l'argent » devient de plus en plus d'actualité d'année en année, et nous ne pouvons pas nous permettre d'attendre des calculs importants pendant des dizaines d'heures, voire des jours.
Technique de test (optimisation) et quelques critères de sélection des paramètres de l'Expert Advisor
Technique de test (optimisation) et quelques critères de sélection des paramètres de l'Expert Advisor

Technique de test (optimisation) et quelques critères de sélection des paramètres de l'Expert Advisor

Il n'y a aucun mal à trouver le Graal de l'épreuve, il est cependant bien plus difficile de s'en débarrasser. Cet article traite de la sélection des paramètres de fonctionnement de l'Expert Advisor avec un traitement de groupe automatisé des résultats d'optimisation et de test lors d'une utilisation maximale des capacités de performance du terminal et d'une charge minimale de l'utilisateur final.
preview
Développer un Expert Advisor de trading à partir de zéro (Partie 26) : En route vers le futur (1)

Développer un Expert Advisor de trading à partir de zéro (Partie 26) : En route vers le futur (1)

Aujourd'hui, nous allons faire passer notre système d’ordres au niveau supérieur. Mais avant cela, nous devons résoudre quelques problèmes. Nous nous posons maintenant quelques questions liées à la manière dont nous voulons travailler et aux choses que nous faisons pendant notre journée de trading.
La mise en œuvre de l'analyse automatique des vagues d'Elliott dans MQL5
La mise en œuvre de l'analyse automatique des vagues d'Elliott dans MQL5

La mise en œuvre de l'analyse automatique des vagues d'Elliott dans MQL5

L'une des méthodes les plus populaires d'analyse du marché est le principe des vagues d'Elliott. Toutefois, ce processus est assez compliqué, ce qui nous amène à utiliser des outils supplémentaires. L’un de ces instruments est le marqueur automatique. Cet article décrit la création d'un analyseur automatique de vagues d'Elliott en langage MQL5.
L’algorithme de génération de ticks dans le testeur de stratégie du terminal MetaTrader 5
L’algorithme de génération de ticks dans le testeur de stratégie du terminal MetaTrader 5

L’algorithme de génération de ticks dans le testeur de stratégie du terminal MetaTrader 5

MetaTrader 5 nous permet de simuler le trading automatique, au sein d’un testeur de stratégie intégré, en utilisant l’Expert Advisors et le MQL5 language. Ce type de simulation est appelé test d’Expert Advisors, et peut être mis en œuvre en utilisant l’optimisation multithread, ainsi que simultanément sur un certain nombre d’instruments. Afin de fournir un test approfondi, une génération de ticks basée sur l’historique des minutes disponibles doit être effectuée. Cet article fournit une description détaillée de l’algorithme, par lequel les ticks sont générés pour les tests historiques dans le terminal client MetaTrader 5.
Algorithmes Génétiques - C'est Facile !
Algorithmes Génétiques - C'est Facile !

Algorithmes Génétiques - C'est Facile !

Dans cet article, l'auteur parle de calculs évolutifs à l'aide d'un algorithme génétique personnellement élaboré . Il démontre le fonctionnement de l'algorithme, à l'aide d'exemples, et fournit des recommandations pratiques pour son utilisation.
preview
Développer un Expert Advisor de trading à partir de zéro (Partie 24) : Assurer la robustesse du système (I)

Développer un Expert Advisor de trading à partir de zéro (Partie 24) : Assurer la robustesse du système (I)

Dans cet article, nous allons rendre le système plus fiable afin d’en garantir une utilisation robuste et sûre. L'un des moyens d'obtenir la robustesse souhaitée est d'essayer de réutiliser le code autant que possible afin qu'il soit constamment testé dans différents cas. Mais ce n'est qu'un moyen parmi d'autres. Une autre solution consiste la POO.
20 signaux de trade en MQL5
20 signaux de trade en MQL5

20 signaux de trade en MQL5

Cet article vous apprendra comment recevoir les signaux de trade nécessaires au fonctionnement d'un système de trading. Les exemples de formation de 20 signaux de trade sont donnés ici en tant que fonctions personnalisées distinctes qui peuvent être utilisées lors du développement d'Expert Advisors. Pour votre aisance, toutes les fonctions utilisées dans l'article sont regroupées dans un seul fichier d'inclusion mqh qui peut être facilement connecté à un futur Expert Advisor.
Utilisation des Indicateurs MetaTrader 5 avec le Cadre d'Apprentissage Automatique ENCOG pour la Prédiction de Séries Chronologiques
Utilisation des Indicateurs MetaTrader 5 avec le Cadre d'Apprentissage Automatique ENCOG pour la Prédiction de Séries Chronologiques

Utilisation des Indicateurs MetaTrader 5 avec le Cadre d'Apprentissage Automatique ENCOG pour la Prédiction de Séries Chronologiques

Cet article présente la connexion de MetaTrader 5 à ENCOG - Advanced Neural Network and Machine Learning Framework. Il comporte la description et l’implémentation d'un indicateur de réseau neuronal simple axé sur des indicateurs techniques standard et un Expert Advisor axé sur un indicateur neuronal. Tout le code source, les binaires compilés, les DLL et un réseau formé exemplaire sont joints à l'article.
Comment écrire un indicateur à partir d'un autre indicateur
Comment écrire un indicateur à partir d'un autre indicateur

Comment écrire un indicateur à partir d'un autre indicateur

Dans MQL5, vous pouvez écrire un indicateur à la fois à partir de zéro et à partir d'un autre indicateur déjà existant, intégré au terminal client ou personnalisé. Et ici, vous avez également deux manières - d'améliorer un indicateur en lui ajoutant de nouveaux calculs et styles graphiques, ou d'utiliser un indicateur intégré au terminal client ou un indicateur personnalisé via les fonctions iCustom() ou IndicatorCreate().
preview
Comment mettre en œuvre les ordres des traders et réaliser des bénéfices dans le service MQL5 Freelance

Comment mettre en œuvre les ordres des traders et réaliser des bénéfices dans le service MQL5 Freelance

MQL5 Freelance est un service en ligne où les développeurs sont payés pour créer des applications de trading commandées par les traders. Désormais, les traders comprennent la différence entre tous les services sur MQL5.com : un robot de trading prêt à l'emploi peut être acheté sur le marché MetaTrader, tandis qu'un Expert Advisor unique qui négocie sur la base d'une stratégie spécifique définie par l'utilisateur peut être commandé dans le service Freelance. Des développeurs expérimentés rivalisent pour la mise en œuvre des commandes des traders, de sorte qu'un trader puisse choisir celui qui offre les meilleures conditions de délais et de coût. Depuis le lancement du service, les traders ont payé un total de 600 000 $ pour 10 000 travaux effectués
Indicateur pour la cartographie Renko
Indicateur pour la cartographie Renko

Indicateur pour la cartographie Renko

L'article décrit un exemple de graphique Renko et sa mise en œuvre dans MQL5 en tant qu'indicateur. Des modifications de cet indicateur le distinguent d'un graphique classique. Il peut être construit à la fois dans la fenêtre de l'indicateur et sur le graphique principal. De plus, il y a l'indicateur ZigZag. Vous pouvez y trouver quelques exemples de mise en œuvre du graphique.
Générateur de signaux de trading basé sur un indicateur personnalisé
Générateur de signaux de trading basé sur un indicateur personnalisé

Générateur de signaux de trading basé sur un indicateur personnalisé

Comment créer un générateur de signal de trading basé sur un indicateur personnalisé ? Comment créer un indicateur personnalisé ? Comment accéder aux données des indicateurs personnalisés ? Pourquoi avons-nous besoin de la structure IS_PATTERN_USAGE(0) et du modèle 0 ?
Le MQL5 Wizard : Comment apprendre à un EA à ouvrir des ordres en attente à n’importe quel prix
Le MQL5 Wizard : Comment apprendre à un EA à ouvrir des ordres en attente à n’importe quel prix

Le MQL5 Wizard : Comment apprendre à un EA à ouvrir des ordres en attente à n’importe quel prix

L’article décrit une méthode de modification du code d’un module de signal de trading pour la mise en œuvre de la fonctionnalité vous permettant de définir des ordres en attente à n’importe quelle distance du prix actuel : il peut s’agir du prix close ou open de la barre précédente ou de la valeur de la moyenne mobile. Il y a beaucoup d’options. Il est important que vous puissiez définir n’importe quel prix d’ouverture pour un ordre en attente. Cet article sera utile aux traders qui tradent avec des ordres en attente.
Création d’Expert Advisors Multiples sur la base de Modèles de Trading
Création d’Expert Advisors Multiples sur la base de Modèles de Trading

Création d’Expert Advisors Multiples sur la base de Modèles de Trading

L'utilisation de l'approche orientée-objet dans MQL5 simplifie considérablement la création d'Expert Advisors multidevises/multisystèmes/multi-périodes. Imaginez seulement, votre seul EA trade sur plusieurs dizaines de stratégies de trading, sur tous les instruments disponibles et sur tous les intervalles de temps possibles ! De plus, l' EA est facilement testé dans le testeur, et pour toutes les stratégies, comprises dans sa composition, il dispose d'un ou plusieurs systèmes fonctionnels de gestion de l'argent.
Le MQL5 Cookbook : Commandes de la sous-fenêtre d'indicateur - Boutons
Le MQL5 Cookbook : Commandes de la sous-fenêtre d'indicateur - Boutons

Le MQL5 Cookbook : Commandes de la sous-fenêtre d'indicateur - Boutons

Dans cet article, nous examinerons un exemple de développement d'une interface utilisateur avec des commandes de bouton. Pour transmettre l'idée d'interactivité à l'utilisateur, les boutons changeront de couleur lorsque le curseur les survolera. Avec le curseur sur un bouton, la couleur du bouton sera légèrement assombrie, devenant nettement plus sombre lorsque le bouton est cliqué. De plus, nous ajouterons des info-bulles à chaque bouton, créant ainsi une interface intuitive.
Livre de recettes MQL5 - Expert Advisor multi-devises et utilisation des commandes en attente dans MQL5
Livre de recettes MQL5 - Expert Advisor multi-devises et utilisation des commandes en attente dans MQL5

Livre de recettes MQL5 - Expert Advisor multi-devises et utilisation des commandes en attente dans MQL5

Cette fois, nous allons créer un Expert Advisor multi-devises avec un algorithme de trading basé sur le travail avec les ordres en attente Buy Stop et Sell Stop. Cet article aborde les questions suivantes : négocier dans une plage de temps spécifiée, passer/modifier/supprimer des ordres en attente, vérifier si la dernière position a été fermée au Take profit ou au Stop Loss et contrôler l'historique des transactions pour chaque symbole.
Conseils pour l'achat d'un produit sur le marché. Guide détaillé
Conseils pour l'achat d'un produit sur le marché. Guide détaillé

Conseils pour l'achat d'un produit sur le marché. Guide détaillé

Ce guide détaillé fournit des astuces pour mieux comprendre et rechercher un produit requis. L'article tente de découvrir différentes méthodes de recherche d'un produit approprié, de tri des produits indésirables, de détermination de l'efficacité et de l'essentialité du produit pour vous.
Better Programmer (Partie 04): Comment devenir un développeur plus rapide
Better Programmer (Partie 04): Comment devenir un développeur plus rapide

Better Programmer (Partie 04): Comment devenir un développeur plus rapide

Chaque développeur veut pouvoir écrire du code plus rapidement, et être capable de coder plus rapidement et efficacement n'est pas une sorte de capacité spéciale avec laquelle seules quelques personnes sont nées. C'est une compétence qui peut être apprise par chaque codeur, indépendamment des années d'expérience sur le clavier.
preview
Plusieurs indicateurs sur un même graphique (partie 02) : Premières expériences

Plusieurs indicateurs sur un même graphique (partie 02) : Premières expériences

Dans l'article précédent "Plusieurs indicateurs sur un même graphique", j'ai présenté le concept et les bases de l'utilisation de plusieurs indicateurs sur un même graphique. Dans cet article, je vais vous fournir le code source et l'expliquer plus en détail.
Comment commander un Expert Advisor et obtenir le résultat escompté
Comment commander un Expert Advisor et obtenir le résultat escompté

Comment commander un Expert Advisor et obtenir le résultat escompté

Comment rédiger correctement les spécifications des exigences ? Que doit-on et ne doit-on pas attendre d'un programmeur lorsqu'il commande un Expert Advisor ou un indicateur ? Comment maintenir un dialogue, quels sont les moments auxquels il faut prêter une attention particulière ? Cet article donne les réponses à ces questions, ainsi qu'à de nombreuses autres questions, qui souvent ne semblent pas évidentes à beaucoup de gens.
Simulink : un guide pour les développeurs d'Expert Advisors
Simulink : un guide pour les développeurs d'Expert Advisors

Simulink : un guide pour les développeurs d'Expert Advisors

Je ne suis pas un programmeur professionnel. Et donc, le principe de « passer du simple au complexe » est d’une importance capitale pour moi lorsque je travaille sur l’élaboration d’un système de trading. Qu’est-ce qui est précisément simple pour moi? Tout d’abord, il s’agit de la visualisation du processus de création du système et la logique de son travail. En outre, il s’agit d’un minimum de code manuscrit. Dans cet article, je tenterai de créer et de tester le système de trading, basé sur un package Matlab, puis écrire un Expert Advisor pour MetaTrader 5. Les données historiques de MetaTrader 5 seront utilisées pour le processus de test.
Marche Aléatoire et l’Indicateur de Tendance
Marche Aléatoire et l’Indicateur de Tendance

Marche Aléatoire et l’Indicateur de Tendance

Marche Aléatoire ressemble beaucoup aux données réelles du marché, mais elle présente des caractéristiques importantes. Dans cet article, nous examinerons les propriétés de Marche Aléatoire, simulées à l’aide du jeu de lancer de pièces. Pour étudier les propriétés des données, l’indicateur de tendance est élaboré.
preview
Plusieurs indicateurs sur un seul graphique (Partie 04) : Passer à un Expert Advisor

Plusieurs indicateurs sur un seul graphique (Partie 04) : Passer à un Expert Advisor

Dans mes articles précédents, j'ai expliqué comment créer un indicateur utilisant plusieurs sous-fenêtres, ce qui est intéressant lorsqu'on utilise des indicateurs personnalisés. Cette fois-ci, nous allons voir comment ajouter plusieurs fenêtres à un même Expert Advisor.
OpenCL : Le Pont vers les Mondes Parallèles
OpenCL : Le Pont vers les Mondes Parallèles

OpenCL : Le Pont vers les Mondes Parallèles

Fin janvier 2012, la société de développement de logiciels à l'origine de l’élaboration de MetaTrader 5 a annoncé la prise en charge native d'OpenCL dans MQL5. À l'aide d'un exemple illustratif, l'article présente les bases de la programmation en OpenCL dans l'environnement MQL5 et fournit quelques exemples d'optimisation naïve du programme pour augmenter la vitesse de fonctionnement.
Les bases de la programmation MQL5 : Variables globales du terminal
Les bases de la programmation MQL5 : Variables globales du terminal

Les bases de la programmation MQL5 : Variables globales du terminal

Cet article met en évidence les capacités orientées objet du langage MQL5 pour créer des objets facilitant le travail avec les variables globales du terminal. Comme exemple pratique, je considère un cas où des variables globales sont utilisées comme points de contrôle pour la mise en œuvre des étapes du programme.
Better Programmer (Partie 01): Vous devez arrêter de faire ces 5 choses pour devenir un programmeur MQL5 performant
Better Programmer (Partie 01): Vous devez arrêter de faire ces 5 choses pour devenir un programmeur MQL5 performant

Better Programmer (Partie 01): Vous devez arrêter de faire ces 5 choses pour devenir un programmeur MQL5 performant

Il y a beaucoup de mauvaises habitudes que prennent les débutants et même les programmeurs avancés qui les empêchent de devenir le meilleur possible dans leur carrière de codage. Nous allons en discuter et les aborder dans cet article. Cet article est une lecture incontournable pour tous ceux qui souhaitent devenir un développeur à succès dans MQL5.
Création d’EA de réseau de neurones en utilisant MQL5 Wizard et Hlaiman EA Generator
Création d’EA de réseau de neurones en utilisant MQL5 Wizard et Hlaiman EA Generator

Création d’EA de réseau de neurones en utilisant MQL5 Wizard et Hlaiman EA Generator

L’article décrit une méthode de création automatisée d’EA de réseau de neurones en utilisant MQL5 Wizard et Hlaiman EA Generator. Il vous montre comment vous pouvez facilement commencer à travailler avec des réseaux de neurones, sans avoir à apprendre tout le corps des informations théoriques et à écrire votre propre code.
Graphiques et diagrammes en HTML
Graphiques et diagrammes en HTML

Graphiques et diagrammes en HTML

Aujourd’hui, il est difficile de trouver un ordinateur qui n’a pas de navigateur Web installé. Depuis longtemps, les navigateurs évoluent et s’améliorent. Cet article traite du moyen simple et sûr de créer des graphiques et des diagrammes, axés sur les informations obtenues à partir du terminal client MetaTrader 5 pour les afficher dans le navigateur.
Better Programmer (Part 06) : 9 habitudes qui mènent à un codage efficace
Better Programmer (Part 06) : 9 habitudes qui mènent à un codage efficace

Better Programmer (Part 06) : 9 habitudes qui mènent à un codage efficace

Il ne s'agit pas toujours d'écrire le code qui mène à un codage efficace. Il existe certaines habitudes qui, par expérience, conduisent à un codage efficace. Nous allons discuter de certaines d'entre elles en détail dans cet article. Il s'agit d'un article incontournable pour tous les programmeurs qui souhaitent améliorer leur capacité à écrire des algorithmes complexes avec moins de tracas.