Comment démarrer avec Metatrader 5 - page 121
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Bonjour
Je suis un débutant qui veut suivre la stratégie du couper-coller. Comment puis-je commencer ? J'ai besoin d'une approche étape par étape
s'il vous plaît
Bonjour
Je suis un débutant qui veut suivre la stratégie du couper-coller. Comment puis-je commencer ? J'ai besoin d'une approche étape par étape
s'il vous plaît
D'où est-ce que je commence ?
https://www.mql5.com/en/forum/212020
----------------
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading.
Comment commencer avec Metatrader 5
Sergey Golubev, 2013.09.20 08:21
Résumés :
====
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Quelques questions sur les signaux
Sergey Golubev, 2016.12.30 20:14
Juste quelques informations sur le service de signaux :
Voici les informations sur l'endroit où commencer.
------------
A partir desrègles-
Le sujet des réseaux neuronaux de Kohonen a été abordé dans certains articles du site mql5.com, tels queUsing Self-Organizing Feature Maps (Kohonen Maps) in MetaTrader 5 etSelf-Organizing Feature Maps (Kohonen Maps) - Revisiting the Subject. Ils ont présenté aux lecteurs les principes généraux de la construction de réseaux neuronaux de ce type et de l'analyse visuelle des chiffres économiques des marchés à l'aide de ces cartes.
Cependant, en termes pratiques, l'utilisation des réseaux de Kohonen uniquement pour le trading algorithmique s'est limitée à une seule approche, à savoir la même analyse visuelle des cartes topologiques construites pour les résultats d'optimisation de l'EA. Dans ce cas, le jugement de valeur d'une personne, ou plutôt sa vision et sa capacité à tirer des conclusions raisonnables d'une image, s'avère être, peut-être, le facteur crucial, mettant de côté les propriétés du réseau concernant la représentation des données en termes de questions pratiques.
En d'autres termes, les caractéristiques des algorithmes de réseaux neuronaux n'ont pas été exploitées au maximum, c'est-à-dire qu'elles ont été utilisées sans extraire automatiquement des connaissances ou soutenir la prise de décision par des recommandations spécifiques. Dans cet article, nous considérons le problème de la définition des ensembles optimaux de paramètres de robots d'une manière plus formelle. De plus, nous allons appliquer le réseau de Kohonen à la prévision de plages économiques. Cependant, avant de passer à ces problèmes appliqués, nous devons réviser les codes sources existants, corriger certains points et apporter quelques améliorations.
Il est fortement recommandé de lire d'abord les articles ci-dessus, si vous n'êtes pas familier avec les termes tels que "réseau", "couche", "neurone" ("nœud"), "lien", "poids", "taux d'apprentissage", "plage d'apprentissage", et autres notions liées aux réseaux de Kohonen. Ensuite, nous devrons nous saturer en la matière, donc réapprendre les notions de base rallongerait considérablement cette publication.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Nouvelle plateforme MetaTrader 5 build 2005 : calendrier économique, applications MQL5 en tant que services et API en langage R
MetaQuotes Software Corp. , 2019.02.20 17:20
La mise à jour de la plateforme MetaTrader 5 sera publiée le 21 février 2019. La nouvelle version comporte les changements suivants :
- Terminal : calendrier économique intégré entièrement révisé.
- Terminal : Ajout d'un nouveau type d'applications MQL5 — Services. Ce nouveau type permet de créer des flux de prix personnalisés pour le terminal, c'est-à-dire d'implémenter la livraison des prix à partir de systèmes externes en temps réel, tout comme il est implémenté sur les serveurs de trading des courtiers.
- Terminal : Un programme d'apprentissage a été ajouté.
- Terminal : L'historique du compte de trading peut être présenté sous forme de positions. La plateforme collecte des données sur les transactions liées au poste (ouverture, augmentation de volume, clôture partielle ou totale) et regroupe les informations dans un seul enregistrement. Ainsi, vous pouvez accéder aux détails de la position : heure d'ouverture et de clôture, volume, prix et résultat. Cette forme de présentation efficace est désormais disponible dans les rapports d'historique exportés vers des fichiers.
- Terminal : Ajout d'une nouvelle API permettant de demander les données du terminal MetaTrader 5 via des applications utilisant le langage R.
R CMD INSTALL --build MetaTrader
- MT5Initialize initialise et établit la connexion avec le terminal MetaTrader 5. Si nécessaire, le terminal est lancé lors de l'exécution de la commande.
- MT5Shutdown se désinitialise et se déconnecte de MetaTrader 5.
- MT5Version obtient la version du terminal MetaTrader 5.
- MT5TerminalInfo obtient l'état et les paramètres de connexion du terminal au serveur d'un courtier (numéro de compte et adresse du serveur).
- MT5WaitTerminal attend que le terminal MetaTrader 5 se connecte au serveur d'un courtier.
- MT5CopyTicksFrom(symbol, from, count, flags) copie le nombre de ticks spécifié à partir de la date spécifiée. La date est spécifiée en millisecondes depuis le 01.01.1970.
- MT5CopyTicksRange(symbol, from, to, flags) copie les ticks à partir de la période spécifiée. Les dates sont spécifiées en millisecondes depuis le 01.01.1970.
- MT5CopyRatesFrom(symbol, timeframe, from, count) copie le nombre spécifié de barres d'une minute à partir de la date spécifiée. La date est spécifiée en secondes depuis le 01.01.1970.
- MT5CopyRatesFromPos(symbol, timeframe, start_pos, count) copie les barres d'une minute à partir de la position spécifiée par rapport à la dernière barre.
- MT5CopyRatesFromRange(symbol, timeframe, date_from, date_to) copie les barres à partir de la période spécifiée. Les dates sont spécifiées en secondes depuis le 01.01.1970.
- Terminal : boîte de dialogue Close By optimisée utilisée pour fermer une position par une position opposée. Désormais, le dialogue n'est pas ralenti même si vous avez un grand nombre de positions ouvertes.
- Terminal : Correction des erreurs de calcul de symboles synthétiques , en raison desquelles des données pouvaient parfois être ignorées.
- Terminal : lorsqu'un symbole personnalisé est supprimé, les fichiers stockant son historique de ticks et de barres sont également supprimés. Cela évite l'accumulation de données inutilisées sur le disque dur.
- Terminal : Correction de l'affichage des résultats de recherche sur les écrans High DPI.
- MQL5 : Accès implémenté aux données du calendrier économique des programmes MQL5.
- MQL5 : Corrections et améliorations de la vitesse de fonctionnement liées à l'historique des ticks et des barres.
- MQL5 : Corrections et améliorations significatives de la vitesse de fonctionnement liées aux fonctions de modification de l'historique des ticks et des barres des symboles de trading personnalisés, CustomTicks* et CustomRates* .
- MQL5 : Nouvelles fonctions de conversion de données.
- Ajout de la fonction MathSwap pour changer l'ordre des octets dans les valeurs ushort, uint et ulong.
- MQL5 : Fonctions réseau ajoutées pour créer des connexions TCP vers des hôtes distants via des sockets système :
- SocketCreate crée une socket avec des drapeaux spécifiés et renvoie son handle
- SocketClose ferme le socket
- SocketConnect se connecte au serveur, avec contrôle du délai d'attente
- SocketIsConnected vérifie si le socket est actuellement connecté
- SocketIsReadable obtient le nombre d'octets pouvant être lus à partir du socket
- SocketIsWritable vérifie si l'écriture de données sur ce socket est possible à l'heure actuelle
- SocketTimeouts définit les délais de réception et d'envoi des données pour l'objet socket système
- SocketRead lit les données d'un socket
- SocketSend écrit des données dans un socket
- SocketTlsHandshake initie une connexion sécurisée TLS (SSL) avec l'hôte spécifié à l'aide du protocole TLS Handshake
- SocketTlsCertificate reçoit des informations concernant le certificat utilisé pour la connexion réseau sécurisée
- SocketTlsRead lit les données d'une connexion TLS sécurisée
- SocketTlsReadAvailable lit toutes les données disponibles à partir d'une connexion TLS sécurisée
- SocketTlsSend envoie des données à l'aide d'une connexion TLS sécurisée
L'adresse de l'hôte, auquel la connexion à l'aide des fonctions réseau est établie, doit être explicitement ajoutée à la liste des adresses autorisées dans les paramètres du terminal.
- ERR_NETSOCKET_INVALIDHANDLE (5270) : handle de socket invalide passé à la fonction
- ERR_NETSOCKET_TOO_MANY_OPENED (5271) : trop de sockets ouverts (maximum 128)
- ERR_NETSOCKET_CANNOT_CONNECT (5272) : erreur lors de la connexion à l'hôte distant
- ERR_NETSOCKET_IO_ERROR (5273) : erreur lors de l'envoi/de la réception de données depuis le socket
- ERR_NETSOCKET_HANDSHAKE_FAILED (5274) : erreur d'établissement de connexion sécurisée (prise de contact TLS)
- ERR_NETSOCKET_NO_CERTIFICATE (5275) — aucune donnée sur le certificat utilisé pour la connexion sécurisée
- MQL5 : Ajout de nouvelles fonctions pour les opérations sur les chaînes :
- MQL5 : Ajout d'une nouvelle fonction pour les opérations sur les tableaux :
- MQL5 : Un nouveau paramètre "uint count" a été ajouté dans les fonctions CustomRatesUpdate , CustomRatesReplace , CustomTicksAdd et CustomTicksReplace . Il permet de spécifier le nombre d'éléments du tableau passé, qui seront utilisés pour ces fonctions. La valeur WHOLE_ARRAY est utilisée pour le paramètre par défaut. Cela signifie que l'ensemble du réseau sera utilisé.
- MQL5 : Ajout de la fonction CustomBookAdd pour transmettre le statut du Depth of Market pour un symbole personnalisé. La fonction permet de diffuser le Depth of Market comme si les prix arrivaient du serveur d'un courtier.
- MQL5 : Ajout de la surcharge de la fonction CustomSymbolCreate . Cela permet la création d'un symbole de trading personnalisé basé sur un symbole existant. Après la création, toute propriété de symbole peut être modifiée à l'aide des fonctions correspondantes.
- La fonction StringToTime convertissant la chaîne avec date/heure en une valeur datetime a été mise à jour. Désormais, il prend en charge les formats de date suivants :
- aaaa.mm.jj [hh:mi]
- aaaa.mm.jj [hh:mi:ss]
- aaaammjj [hh:mi:ss]
- aaaammjj [hhmiss]
- aaaa/mm/jj [hh:mi:ss]
- aaaa-mm-jj [hh:mi:ss]
- MQL5 : Nouvelle propriété TERMINAL_VPS dans l'énumération ENUM_TERMINAL_INFO_INTEGER ; il montre que le terminal est en cours d'exécution sur le serveur d' hébergement virtuel MetaTrader (MetaTrader VPS). Si une application s'exécute sur un serveur d'hébergement, vous pouvez désactiver toutes ses fonctions visuelles, car le serveur virtuel n'a pas d'interface utilisateur graphique.
- MQL5 : Nouvelle propriété SYMBOL_EXIST dans l'énumération ENUM_SYMBOL_INFO_INTEGER , signifie que le symbole sous ce nom existe.
- MQL5 : Correction du typage lors de l'utilisation des pré-déclarations de fonction de modèle.
- MQL5 : Ajout de la réinitialisation des indicateurs lors du changement de compte de trading.
- MQL5 : Fonction StringSplit optimisée.
- MQL5 : correction d'erreurs dans le fonctionnement standard de la bibliothèque.
- Testeur : Ajout de la fonction TesterStop — arrêt anticipé de routine d'un Expert Advisor sur un agent de test. Désormais, vous pouvez arrêter de force les tests après avoir atteint le nombre spécifié de transactions perdantes, un niveau de retrait prédéfini ou tout autre critère.
- Testeur : capacité désactivée de tester et d'optimiser les Expert Advisors via MQL5 Cloud Network en mode tick réel. Ce mode ne peut être utilisé que sur des agents locaux et des fermes de réseau local.
- Testeur : Amélioration du travail avec les indicateurs lors des tests visuels. Désormais, le graphique des prix et les lignes de l'indicateur sont dessinés de manière synchrone, même pour la vitesse de visualisation maximale.
- Testeur : tests et optimisation optimisés et considérablement accélérés.
- Testeur : Correction du débogage des indicateurs sur les données historiques. Maintenant, les fonctions d'indicateur OnInit et OnDeinit peuvent être correctement déboguées.
- Testeur : implémentation d'un accès plus rapide aux données historiques lors des tests d'experts-conseils multidevises.
- Testeur : Correction du blocage occasionnel du testeur visuel lors du débogage sur les données historiques.
- Testeur : Implémentation d'un démarrage plus rapide des passes d'optimisation lors du traitement d'un package de tâches par un agent.
- Testeur : modification de la politique de distribution des packages de tâches aux agents de test. La taille du package a été augmentée et, par conséquent, la consommation de ressources sur les opérations réseau a été considérablement réduite.
- Testeur : modification du comportement des options permettant l'utilisation d'agents locaux, réseau et cloud. Désormais, lorsque vous désactivez les options, les agents terminent le traitement des tâches reçues, alors qu'aucune nouvelle tâche ne leur est confiée. Dans les versions antérieures, le comportement était similaire à la commande "Désactiver", qui arrêtait immédiatement le fonctionnement de l'agent.
- MetaEditor : ajout de la prise en charge des caractères non ANSI dans le débogueur. Désormais, les expressions s'affichent correctement même si le nom de la variable est spécifié en cyrillique.
- MetaEditor : Correction de l'affichage des résultats de recherche sur les écrans High DPI.
- Ajout de la traduction de l'interface utilisateur en croate.
- La documentation a été mise à jour.
La mise à jour sera disponible via le système LiveUpdate.Le calendrier économique est notre solution propriétaire. Vous y trouverez plus de 600 actualités financières et indicateurs liés aux 13 plus grandes économies mondiales : États-Unis, Union européenne, Japon, Royaume-Uni, Canada, Australie, Chine, entre autres. Les données pertinentes sont collectées à partir de sources ouvertes en temps réel.
La nouvelle version propose des contenus mis à jour et des filtres d'événements avancés : par heure, priorité, devises et pays.
Les données du calendrier sont désormais accessibles à partir des programmes MQL5. Veuillez voir ci-dessous pour plus de détails.
Contrairement aux Expert Advisors, aux indicateurs et aux scripts, les services ne sont pas liés à un graphique spécifique. Ces applications s'exécutent en arrière-plan et sont lancées automatiquement au démarrage du terminal (sauf si une telle application a été arrêtée de force).
Les services peuvent être gérés à partir d'une nouvelle section dans la fenêtre du navigateur :
Comment créer des services
Pour créer un modèle de service, utilisez l'option correspondante de l'assistant MQL5 . Les services ont un point d'entrée OnStart , similaire aux scripts. À ce stade, vous pouvez implémenter un cycle sans fin de réception et de traitement des données à l'aide des fonctions réseau .
Comment lancer des services
Pour exécuter plusieurs copies d'Expert Advisor ou d'indicateurs avec différents paramètres, vous devez les lancer sur différents graphiques. Dans ce cas, différentes instances de programme sont créées, qui fonctionnent alors indépendamment. Les services ne sont pas liés aux graphiques, c'est pourquoi un mécanisme spécial a été mis en place pour la création d'instances de service.
Sélectionnez un service dans le Navigateur et cliquez sur "Ajouter un service" dans son menu contextuel. Cela ouvrira une boîte de dialogue standard du programme MQL5, dans laquelle vous pouvez activer/désactiver le trading et l'accès aux paramètres du signal, ainsi que définir divers paramètres.
Une instance de service peut être lancée et arrêtée à l'aide du menu d'instance approprié. Pour gérer toutes les instances, utilisez le menu de service.La nouvelle fonctionnalité aidera les débutants à apprendre à interagir avec la plateforme. Nous avons ajouté plus de 100 astuces interactives concernant les principales fonctionnalités de la plateforme.
- Les conseils sont affichés de manière transparente sous forme de barre de progression sur la barre d'outils et ne distraient donc pas l'utilisateur.
- Les conseils n'apparaissent que pour les actions que vous n'avez jamais effectuées sur la plateforme.
- Tous les conseils incluent des liens interactifs, par lesquels vous pouvez naviguer vers les éléments d'interface pertinents. Par exemple, une boîte de dialogue de trading ou un menu avec le programme souhaité peut être lancé directement à partir de la pointe.
La zone remplie de la barre de progression augmente chaque fois que vous effectuez des actions appropriées et que vous poursuivez l'entraînement.Nous avons préparé un package MetaTrader spécial. Il contient des DLL pour les interactions entre R et le terminal MetaTrader 5, de la documentation et des fichiers r auxiliaires. Nous terminons l'enregistrement du package dans le référentiel CRAN , après quoi il sera disponible pour téléchargement et installation.
Le package peut être installé à l'aide d'une commande spéciale :
Les commandes suivantes liées à la demande de données sont disponibles :
La liste des commandes prises en charge sera encore élargie.
Nouvelles fonctions
CalendarCountryById — obtient la description du pays par identifiant.
CalendarEventById — obtient la description de l'événement par identifiant.
CalendarValueById — obtient la description de la valeur de l'événement par identifiant.
CalendarEventByCountry — obtient le tableau des événements disponibles pour le pays.
CalendarEventByCurrency — obtient le tableau des événements disponibles pour la devise affectée.
CalendarValueHistoryByEvent — obtient le tableau de valeurs pour la période spécifiée, par identifiant d'événement.
CalendarValueHistory — obtient le tableau de valeurs pour la période spécifiée pour tous les événements, filtrés par pays et/ou devise.
CalendarValueLastByEvent — obtient un tableau des dernières valeurs d'événement par identifiant. Cette fonction permet de demander les valeurs apparues depuis la précédente demande. Le paramètre d'entrée/sortie "change_id" est également utilisé pour cette opération.
Chaque fois que la base de données du calendrier change, la propriété "change_id" (l'identifiant du dernier changement) est mise à jour. Lors de la demande de données, vous spécifiez "change_id" et le terminal renvoie les événements qui sont apparus après cette heure, ainsi que la valeur actuelle de "change_id", qui peut être utilisée pour la prochaine demande. Lors du premier appel de la fonction, spécifiez le "change_id" nul : la fonction ne renverra aucun événement, mais renverra le "change_id" actuel pour les requêtes ultérieures.
CalendarValueLast — obtient le tableau des dernières valeurs pour tous les événements, filtrés par pays et/ou devise. Cette fonction permet de demander les valeurs apparues depuis la précédente demande. Comme pour CalendarValueLastByEvent, la propriété "change_id" est utilisée pour la requête.
Nouveaux ouvrages
MqlCalendarCountry — description du pays.
MqlCalendarEvent — description de l'événement.
MqlCalendarValue — description de la valeur de l'événement.
Nouvelles énumérations
Nouveaux codes d'erreur
CharArrayToStruct copie un tableau uchar dans une structure POD.
StructToCharArray copie une structure POD dans un tableau uchar.
De nouveaux codes d'erreur ont été ajoutés pour les opérations avec les fonctions réseau :
StringReserve réserve pour une chaîne la mémoire tampon de la taille spécifiée.
StringSetLength définit la longueur de chaîne spécifiée en caractères.
ArrayRemove supprime d'un tableau le nombre spécifié d'éléments commençant par l'index spécifié.
ArrayInsert insère dans un tableau récepteur le nombre spécifié d'éléments à partir du tableau source, en commençant par l'index spécifié.
ArrayReverse inverse dans un tableau le nombre spécifié d'éléments commençant par l'index spécifié.
Le nom du symbole, à partir duquel les propriétés du symbole personnalisé doivent être copiées, est spécifié dans le paramètre "symbol_origin".
Les tests effectués à l'aide de cette fonction sont considérés comme réussis. Après l'appel de la fonction, l'historique de trading obtenu lors des tests et toutes les statistiques de trading sont transmis au terminal.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Paquet R de MetaTrader - le résumé
Sergey Golubev, 2019.02.22 06:47
L'étude principale
Les articles
Le Forum
----------------
plus à suivre ...
Forum sur le trading, les systèmes de trading automatisés et le test des stratégies de trading
Liens/threads/outils utiles.
Sergey Golubev, 2017.10.05 12:33
Expert Advisors multi-devises dans MT5 - backtesting et optimisation
Les fils/posts
Les articles
Des résultats intéressants peuvent également être obtenus en exécutant un EA multi-devises dans le testeur de stratégie. A titre d'exemple, leMulticurrency Expert gratuit de la CodeBase a été utilisé. En outre, le fichier "#include <DistributionOfProfits.mqh>" a été spécifié et la variable "CDistributionOfProfits ExtDistribution" a été déclarée dans l'en-tête de l'EA, et la fonction "OnTester()" a été ajoutée à la fin du code. Après une seule exécution, les statistiques suivantes ont été reçues : "TestAnalysis.htm".
l'optimiser surtous les symboles sélectionnés dans Market Watch
Documentation
...et voici l'exemple du code de CodeBase -
----------------
Multidevise iMA Trend- expert pour MetaTrader 5
The multi-symbol adviser uses the MA Trend 2 adviser as the base advisor, while the advisor itself is rewritten as a class.
Ce conseiller est sous la forme d'une classe la première version, donc, pour l'instant, les symboles ("EURUSD", "USDCAD", "USDJPY") sont spécifiés dans le code dur. Aussi, tous les paramètres d'entrée sont les mêmes pour chacun des trois symboles (Stop Loss, Take Profit, etc...).
Un bon article a été publié -
----------------
Application pratique des corrélations dans le trading
La corrélation est une relation statistique entre deux ou plusieurs variables aléatoires (ou des quantités qui peuvent être considérées comme aléatoires avec un certain degré de précision acceptable). Les changements d'une ou plusieurs variables entraînent des changements systématiques d'autres variables liées. La mesure mathématique de la corrélation de deux variables aléatoires est le coefficient de corrélation. Si le changement d'une variable aléatoire n'entraîne pas un changement régulier de l'autre variable aléatoire mais entraîne un changement d'une autre caractéristique statistique de cette variable aléatoire, une telle relation n'est pas considérée comme une corrélation, bien qu'elle soit statistique.
Table des matières
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Par où dois-je commencer ?
Sergey Golubev, 2018.09.20 15:43
Utilisez des conseils - l'instruction sur le HowTo
=========
----------------
----------------
----------------
Il y a un fil de discussion sur le forum -
Possibilités de la toile.
C'est un fil très utile.
Et voici un outil très intéressant qui est entièrement lié à ce fil de discussion.
----------------
Système d'équations algébriques linéaires sur chaque barre- indicateur pour MetaTrader 5
This work has 3 goals: