Le trading Forex démarre ici
FR /fr/interesting-articles/mt4-bots/write-trading-bot/
AR Arabic
AZ Azerbaijan
CS Czech
DA Danish
DE Deutsche
EL Greek
EN English
ES Spanish
ET Estonian
FI Finnish
FR French
HE Hebrew
HI Hindi
HU Hungarian
IND Indonesian
IT Italian
JA Japan
KK Kazakh
KM Khmer
KO Korean
MS Melayu
NB Norwegian
NL Dutch
PL Polish
PT Portuguese
RO Romanian
... Русский
SV Swedish
TH Thai
TR Turkish
UA Ukrainian
UZ Uzbek
VI Vietnamese
ZH Chinese

Comment construire un robot de trading ?
Guide du débutant

Note éditoriale : Bien que nous adhérions à une stricte intégrité éditoriale, cet article peut contenir des références à des produits de nos partenaires. Voici comment nous gagnons de l'argent. Aucune des données et des informations contenues dans cette page Web ne constitue un conseil en investissement, conformément à notre clause de non-responsabilité.

Comment écrire le code d'un robot de trading :

La construction d'un robot de trading peut sembler une tâche ardue, mais avec les bons conseils, c'est réalisable. Les robots de trading, ou systèmes de trading automatisés, vous permettent d'exécuter des transactions sur la base de stratégies prédéfinies. Ils éliminent ainsi la nécessité d'une surveillance constante et d'une intervention manuelle. Nous vous expliquons étape par étape comment créer votre propre robot de trading : du choix de la plateforme et du langage de programmation au codage, aux tests et à l'optimisation. Que vous soyez novice en matière de programmation ou que vous débutiez dans le trading algorithmique, ce guide vous aidera à jeter les bases d'un robot adapté à votre style de trading.

Comment écrire le code d'un robot de trading

Un robot de trading est un logiciel permettant d'automatiser le processus de trading sur les marchés financiers. Il analyse les données du marché et exécute automatiquement des opérations sur la base d'algorithmes et de stratégies spécifiques. L'utilisation de robots de trading permet aux traders de répondre rapidement aux changements du marché et de minimiser l'influence du facteur humain.

Il existe deux principaux types de robots de trading :

  • Automatiques - ils analysent le marché de manière totalement indépendante et exécutent des transactions sans la participation du trader.

  • Semi-automatiques ( conseillers ) - ils fournissent des recommandations sur les transactions, laissant la décision finale au trader.

Il existe trois façons de créer un robot de trading :

Option 1 : contacter un spécialiste

Vous pouvez trouver des programmeurs pour écrire un robot de trading sur les plateformes MQL5 ou les bourses de freelance.

Avantages :

  • Mise en œuvre rapide de l'idée 

  • Possibilité de choisir un spécialiste.

Option 2 : écrire le code soi-même

Cette option convient à ceux qui souhaitent apprendre le processus de création d'un robot. Même un robot simple peut être écrit après une formation de base, et les ressources en ligne disponibles aideront à développer les compétences.

Avantages :

  • La possibilité de mettre en œuvre les idées une par une ;

  • Comprendre le travail du robot au niveau du code ;

  • Confidentialité totale de l'idée.

Option 3 : Utiliser un générateur de code

La création d'un robot de trading pour MetaTrader 4 peut être simplifiée en utilisant des générateurs de code en ligne. Ces plateformes vous permettent de développer un robot de trading simple au format ex4, compatible avec MT4.

Create a trading robot online for freeCréer un robot de trading en ligne gratuitement

Le processus consiste généralement à

  1. Ajouter des indicateurs. Sélectionnez les indicateurs techniques qui vous aideront à prendre vos décisions de trading.

  2. Créer des conditions. Définir les critères ou les règles spécifiques qui déclencheront les transactions sur la base des indicateurs choisis.

  3. Mettre en œuvre une stratégie de gestion du capital. Établir des lignes directrices pour gérer la taille des transactions, les niveaux de risque et l'allocation globale du capital.

  4. Exportation du robot de trading. Générer le fichier final ex4, qui peut être téléchargé sur votre plateforme MT4 pour exécution.

Avantages :

  • Vous obtiendrez rapidement votre robot s'il peut être mis en œuvre à l'aide des fonctionnalités existantes du concepteur.

Beaucoup de ces outils sont gratuits, ce qui les rend accessibles aux traders qui n'ont pas de compétences en programmation.

Par où commencer ?

Commencez par chercher des idées. Par exemple, vous remarquez que le marché fait souvent des fausses annonces :

  • vous remarquez que le marché fait souvent des fausses cassures de niveaux ronds ;

  • vous avez découvert des dépendances dans l'interaction entre les prix et les volumes de transactions ;

  • vous avez lu la description d'une stratégie de trading dans un livre.

Si l'idée peut être clairement décrite dans des instructions étape par étape, elle peut être transformée en code de programme.

Quel est le meilleur compte de courtage pour les robots ?

Une fois que vous avez mis au point le code de votre robot de trading, intégrez-le à une plateforme de trading appropriée. Il peut s'agir d'une plateforme comme TradingView, d'un courtier Forex ou d'une bourse de crypto-monnaies, en fonction de vos préférences en matière de trading. La plateforme doit également prendre en charge l'intégration de API, la connectivité des robots, les frais réduits et la liquidité afin de garantir des spreads réguliers et des prix compétitifs. ECN la liquidité pour garantir des spreads cohérents et un slippage minimal.

Des courtiers pour travailler avec des bots
Spread ECN EUR/USD Commission ECN API Les robots de trading ( EA ) VPS gratuit Ouvrir un compte

Plus500

Non Non Non Oui Non OUVREZ UN COMPTE
Votre capital à risque

Pepperstone

0,1 3 Oui Oui Oui OUVREZ UN COMPTE
Votre capital est en danger.

OANDA

0,15 3,5 Oui Oui Oui OUVREZ UN COMPTE
Votre capital est en danger.

Test et optimisation de l'historique

Après avoir créé un robot, il est nécessaire de le tester ( backtesting ) et d'optimiser ses paramètres.

Le backtesting consiste à tester le robot sur des données historiques. Cela signifie que vous prenez des données de 2017 à 2019, par exemple, et que vous examinez les transactions que le robot aurait effectuées conformément aux règles au cours de cette période du passé. Les données relatives aux transactions sont ensuite traitées et présentées sous la forme d'un rapport qui indique

  • Le nombre de transactions exécutées.

  • Le profit ou la perte totale.

  • Le ratio bénéfices/pertes.

  • Des mesures supplémentaires pour évaluer la qualité du robot.

Pour ouvrir le panneau de test sur MT4, appuyez sur Ctrl+T.

Test panel in MT4Panneau de test dans MT4

Ensuite, vous devez :

  • Sélectionnez le robot que vous allez tester. Le fichier ex4 du robot doit se trouver dans le dossier MQL4Experts. Dans l'exemple ci-dessus, nous avons sélectionné le robot de trading sur les moyennes mobiles. Il est livré avec le terminal MT 4.

  • Sélectionnez la paire de devises que vous allez tester. Par exemple, vous pouvez sélectionner EUR/USD.

  • Sélectionnez la précision du test ( plus le test est précis, plus il prendra de temps ).

  • Sélectionnez la période de test. Plus le nombre de données historiques traitées est important, plus le résultat sera fiable.

  • Sélectionnez l'horizon temporel ( 5 ).

  • Spécifiez la valeur de l'écart ( la différence entre le prix d'achat et le prix de vente ). Current signifie que la valeur de l'écart sera chargée automatiquement.

  • Sélectionnez les paramètres du robot. Par exemple, les périodes de la moyenne mobile, la taille du dépôt initial.

  • Exécutez le test. L'onglet Résultats affichera les transactions effectuées par le robot pendant le test.

Par conséquent, si vous avez tout fait correctement, vous obtiendrez avec une forte probabilité l'image suivante dans l'onglet Graphique :

Example of testing a trading robotExemple de test d'un robot de trading

Cela signifie que le robot de trading perd lentement le dépôt car :

  • Probabilité mathématique de gain = 50/50 ;

  • La perte finale est due au spread ( commission ) payé pour chaque transaction.

Pour tenter de corriger ce résultat, vous pouvez essayer de " jouer " avec les périodes de la moyenne mobile, le cadre temporel, les paires de devises. Mais tous ces "jeux" ne donneront probablement pas le résultat escompté à long terme.

Mais il est tout à fait possible qu'après de nombreuses expériences avec les stratégies et l'optimisation ( recherche des meilleurs paramètres pour le robot de trading ), vous verrez une courbe impressionnante, comme dans la figure ci-dessous.

L'onglet Rapport vous donne des informations plus détaillées.

Dans l'exemple ci-dessus, le rapport indique ce qui suit :

  • Précision du test = 99,9 % et erreurs du test = 0. Il s'agit d'un niveau de confiance élevé, qui peut être atteint avec une base de données de prix de qualité.

  • Avec 9 395 transactions, le bot a réussi à faire croître les 20 000 $ initiaux à 1,1 million de dollars entre février 2019 et janvier 2023.

  • Le drawdown relatif = 40 % est certes élevé. Et dans la vraie vie, il serait éprouvant pour les nerfs.

Optimiser pour trouver des paramètres sur une période ( par exemple, sur les données de 2015-2018 ) et les tester sur une autre ( pour 2019-2023 ). C'est ce qu'on appelle le test direct.

Il est utile de rappeler que vous ne pouvez pas vous fier à 100 % aux résultats des tests. En effet, vous ne serez pas en mesure de simuler pleinement les conditions réelles et de prendre en compte les dérapages et les changements de spreads. Un problème majeur est la granularité des données pour une minute, qui est la plus petite période de temps dans l'environnement MetaTrader. Mais la façon dont le prix évolue au cours de la minute peut déterminer si la transaction sera clôturée au niveau du take profit ou du stop. En fait, MT4 simplifie ce qui se passe pendant la minute afin d'optimiser la base de données, et le terminal fonctionne plus rapidement.

Mais un professionnel a besoin d'une précision maximale, c'est pourquoi il achète de grandes bases de données de ticks sur près de 20 ans, que votre courtier ne vous fournira probablement pas. Les données historiques " lissées " de votre courtier peuvent être la raison pour laquelle le robot affiche des bénéfices dans l'historique et subit des pertes en temps réel.

Tests sur un compte de démonstration

Une fois que vous avez terminé les tests et l'optimisation du robot, ne vous précipitez pas pour passer à un compte réel. Testez-le d'abord sur un compte de démonstration pendant quelques mois. Cela permettra au robot de traverser des périodes d'actualité importantes et d'identifier les améliorations possibles.

Ce à quoi il faut faire attention :

  • Matériel et connexion : assurez-vous que votre équipement et votre connexion Internet n'interfèrent pas avec le fonctionnement du robot. Pour minimiser les risques, il est intéressant d'envisager l'utilisation d'un VPS.

  • Qualité du code : après avoir observé les résultats, vous souhaiterez probablement apporter des modifications au code afin de prendre en compte davantage de situations de marché.

  • Qualité du courtier : utilisez des comptes de démonstration de différents courtiers pour comprendre si leur choix affecte l'efficacité du robot.

Supposons que le robot ait effectué 40 transactions sur un compte de démonstration en 4 mois, augmentant le dépôt de 7,45 % avec un drawdown de 6 %. Exécutez-le en mode de test historique pour la même période afin de vérifier la concordance des résultats. Il est normal qu'il y ait de petites différences entre les résultats. Il est important que la différence soit minime ; dans ce cas, les résultats peuvent être considérés comme fiables.

Lancement sur un compte réel

Si vous avez tout fait correctement et que vous avez atteint cette étape, vous êtes objectivement très bien. En effet, les débutants sont généralement trop prompts à placer des robots de trading obtenus à la hâte sur un compte réel afin de réaliser des bénéfices le plus rapidement possible. Malheureusement, cette méthode s'accompagne de la perte des dépôts. L'essentiel est de faire preuve de prudence et de protéger son capital. Si vous traitez avec un robot sur un compte réel, commencez par allouer une petite somme d'argent à vos premières opérations de test.

Voyez ensuite si les résultats obtenus sur le compte réel s'écartent des résultats obtenus sur le compte de démonstration et de l'historique. Vous obtiendrez peut-être une situation comme la suivante :

Deux comptes - démo et réel - fonctionnent en parallèle chez un courtier réputé. Mais le compte de démonstration affiche un bénéfice et le compte réel une perte, alors que tout y est identique.

Cette situation est typique des robots de scalping qui réalisent des transactions lors de mouvements de prix impulsifs. La durée des transactions est mesurée en secondes, et la qualité de l'exécution devient critique. Elle diffère selon qu'il s'agit d'un compte réel ou d'un compte de démonstration. Par conséquent, lorsque vous développez votre robot, préférez fortement les idées qui ne sont pas liées aux opérations de scalping.

Comment créer un robot de trading pour MT4

Les systèmes automatisés qui exécutent des transactions pour les traders peuvent être créés à l'aide de la plateforme MetaTrader 4 ( MT4 ). Celle-ci dispose de tous les outils nécessaires à la programmation. Ce processus peut être résumé en six étapes :

  1. Définir une stratégie. Il s'agit tout d'abord de déterminer les actifs et l'approche de la négociation. Les décisions sur le temps et les conditions de trading basées sur l'analyse fondamentale et technique affecteront de manière significative l'efficacité du robot.

  2. Choisissez un langage de programmation. MT4 prend en charge MQL 4, qui est populaire pour la création de robots. Pour les fonctions avancées, vous pouvez utiliser MQL 5, qui convient également à la plateforme MT5.

  3. Apprenez les bases de MQL 4. Maîtrisez le concept des variables, de la syntaxe et de la logique de base. La pratique de l'écriture de scripts simples vous aidera à approfondir votre compréhension et à améliorer vos compétences.

  4. Écrire du code. Synthétiser la stratégie en code. Définir les paramètres d'entrée et de sortie des transactions, la gestion de l'argent et les variables pour une personnalisation flexible.

  5. Optimisez le robot. Identifiez les paramètres clés, testez l'algorithme pour voir comment il fonctionne dans des conditions simulées.

  6. Testez sur un compte de démonstration. Utilisez un compte de démonstration pour tester les performances du robot sur les données actuelles du marché. Une fois que les tests sont concluants, vous pouvez passer à la négociation réelle.

Combien d'argent puis-je gagner ?

Soyez réaliste, ne construisez pas de châteaux dans le ciel et ne pensez pas qu'une simple stratégie peut vous rendre riche. Voici des données provenant d'un site réputé qui vend des stratégies conçues par des experts pour gérer des actifs sur le marché boursier. La colonne " Performance " indique des rendements de 6 à 18 % par an. C'est ce qui est réaliste.

Un robot de trading peut-il fonctionner en mode automatique ?

En théorie, oui. Mais le laisser sans surveillance est risqué. Il est conseillé de le tester et de l'optimiser sur des données historiques mises à jour au fil du temps afin que les paramètres du robot correspondent aux conditions actuelles du marché. Les marchés évoluent en fonction des cycles macroéconomiques mondiaux.

Erreurs commises par les traders d'algos

Lors de la création de robots de trading, les débutants commettent souvent plusieurs erreurs courantes.

  • Une confiance excessive dans les performances historiques. Partir du principe que les succès passés garantissent les profits futurs peut conduire à un excès de confiance. Les conditions du marché évoluent et les stratégies doivent s'adapter.

  • Tests insuffisants. L'utilisation de robots sur des comptes réels sans avoir procédé à des tests rétrospectifs et à des essais de démonstration approfondis peut entraîner des pertes. Des tests appropriés permettent de détecter les problèmes avant de risquer de l'argent réel.

  • Confiance aveugle dans les stratégies " boîte noire ". Il peut être risqué de se fier à des systèmes sans savoir comment ils fonctionnent. Il est important de comprendre les mécanismes d'une stratégie pour juger de son potentiel.

  • La sur-optimisation. En ajustant trop finement un robot pour qu'il corresponde aux données historiques, on risque d'aboutir à un ajustement à la courbe, c'est-à-dire à un système qui fonctionne bien dans le passé, mais qui échoue sur les marchés réels. Veillez à ce que vos stratégies soient simples et fiables.

  • Choisir le mauvais courtier. Le choix d'un courtier qui ne prend pas en charge le trading algorithmique ou dont les conditions sont médiocres peut nuire aux résultats. Assurez-vous que le courtier répond à vos besoins en matière de trading.

  • Attentes irréalistes en matière de bénéfices. S'attendre à des gains rapides, en particulier avec les robots scalpeurs, peut conduire à la déception et à un comportement risqué. Fixez-vous des objectifs réalistes et soyez conscient des risques.

  • Ignorer les événements du marché. L'exécution de robots pendant des communiqués de presse importants peut les exposer à des mouvements volatils et imprévisibles. Utilisez des mesures de protection ou interrompez vos opérations à ces moments-là.

  • Mauvaise utilisation de la stratégie Martingale. Cette stratégie consiste à doubler la taille de l'opération après une perte pour la récupérer avec une victoire. Cette stratégie nécessite un capital important et peut épuiser rapidement les comptes pendant les périodes de pertes. Cette approche risquée n'est généralement pas recommandée.

Il est essentiel de se plonger dans les nuances de la microstructure du marché

Anastasiia Chabaniuk Auteur, expert financier chez Traders Union

Pour concevoir un robot de trading efficace, il est essentiel de se plonger dans les nuances de la microstructure du marché. Il s'agit de comprendre les mécanismes du flux d'ordres, de la liquidité et des comportements des différents acteurs du marché. En analysant la manière dont les grands ordres institutionnels influencent les mouvements de prix et en identifiant les schémas d'exécution des transactions, vous pouvez développer des algorithmes qui anticipent les fluctuations à court terme du marché avec plus de précision que les indicateurs techniques traditionnels. Cette connaissance approfondie permet à votre robot de trading de prendre des décisions plus éclairées, ce qui améliore ses performances dans les environnements de trading en direct.

Un autre aspect essentiel est l'intégration de mécanismes d'apprentissage adaptatif dans votre robot de trading. L'intégration de modèles d'apprentissage automatique permet au système d'évoluer en fonction des conditions changeantes du marché. Par exemple, la mise en œuvre de l'apprentissage par renforcement permet au robot d'apprendre de ses résultats de trading, en affinant continuellement ses stratégies sur la base d'un retour d'information en temps réel. Cette adaptabilité dynamique garantit que votre robot de trading reste robuste et efficace, même lorsque la dynamique du marché évolue, ce qui lui confère un avantage significatif par rapport aux systèmes statiques basés sur des règles.

Conclusion

Construire un robot de trading est un processus passionnant qui ouvre de nouvelles possibilités pour le trading automatisé. En suivant les étapes décrites, vous serez en mesure de construire un modèle de base, de le tester et de l'optimiser progressivement. Il est important de se rappeler qu'un bon robot nécessite des mises à jour régulières et une adaptation aux conditions changeantes du marché. Commencez par des stratégies simples et développez-les progressivement pour minimiser les risques. Avec de la patience et de la pratique, un robot de trading peut devenir un outil fiable pour atteindre vos objectifs financiers.

Foire aux questions

Comment choisir une période de temps pour tester un robot ?

Il est recommandé de tester le robot sur plusieurs années de données, y compris des périodes de forte volatilité et de marchés calmes. Cela montrera à quel point le robot est stable dans différentes conditions et permettra d'éviter d'optimiser uniquement pour les tendances actuelles.

Puis-je utiliser plusieurs stratégies dans un même robot ?

Oui, il est possible de combiner plusieurs stratégies afin que le robot puisse s'adapter à différentes conditions de marché. Par exemple, la combinaison d'une stratégie de tendance avec une stratégie de contre-tendance peut aider à atténuer les pertes dans les phases de marché défavorables.

A quelle fréquence dois-je mettre à jour l'algorithme du robot ?

Il est conseillé de revoir et d'optimiser l'algorithme au moins une fois par trimestre ou lors de changements soudains sur le marché. Cela vous permettra de prendre en compte les nouvelles conditions du marché et de minimiser l'obsolescence du robot.

Quels sont les risques liés à l'utilisation d'un robot de trading ?

Les principaux risques sont la dépendance à l'égard de l'infrastructure technique, les erreurs dans le code et les changements soudains des conditions du marché. Il est recommandé d'utiliser des stop loss, de surveiller régulièrement les performances du robot et d'éviter les stratégies trop agressives.

L'équipe qui a travaillé sur l'article

Andreï Mastykine
Auteur, expert financier de Traders Union

Andrey Mastykin est un auteur, un rédacteur et un stratège de contenu expérimenté qui travaille pour Traders Union depuis 2020. En tant que rédacteur, il est méticuleux en ce qui concerne la vérification des faits et l'exactitude de toutes les informations publiées sur la plateforme Traders Union. Andrey se concentre sur l'éducation des lecteurs sur les récompenses potentielles et les risques impliqués dans le trading des marchés financiers.

Il est fermement convaincu que l'investissement passif est une stratégie plus adaptée à la plupart des individus. L'approche conservatrice d'Andrey et l'importance qu'il accorde à la gestion des risques trouvent un écho auprès de nombreux lecteurs, ce qui fait de lui une source d'informations financières digne de confiance.

De plus, Andrey est membre de l'Union nationale des journalistes d'Ukraine (carte de membre n°4574, certificat international UKR4492).

Glossaire pour les traders débutants
Take-Profit

L'ordre Take-Profit est un type d'ordre de négociation qui demande à un courtier de clôturer une position une fois que le marché a atteint un niveau de profit spécifié.

Analyse fondamentale

L'analyse fondamentale est une méthode ou un outil utilisé par les investisseurs pour déterminer la valeur intrinsèque d'un titre en examinant les facteurs économiques et financiers. Elle prend en compte des facteurs macroéconomiques tels que l'état de l'économie et les conditions du secteur.

Trading algorithmique

La négociation algorithmique est une méthode avancée qui s'appuie sur un codage et des formules avancés basés sur un modèle mathématique. Toutefois, par rapport aux méthodes de négociation traditionnelles, le processus diffère par son caractère automatisé.

Courtier

Un courtier est une personne morale ou physique qui sert d'intermédiaire pour effectuer des transactions sur les marchés financiers. Les investisseurs privés ne peuvent pas négocier sans courtier, car seuls les courtiers peuvent exécuter des transactions sur les marchés boursiers.

Volatilité

La volatilité désigne le degré de variation ou de fluctuation du prix ou de la valeur d'un actif financier, tel que les actions, les obligations ou les crypto-monnaies, sur une période donnée. Une volatilité plus élevée indique que le prix d'un actif connaît des fluctuations plus importantes et plus rapides, tandis qu'une volatilité plus faible suggère des mouvements de prix relativement stables et progressifs.