MQL5 Trading Algorithmique
36.3K subscribers
1.44K photos
1.44K links
Les meilleures publications de la plus grande communauté de traders algorithmiques.

Abonnez-vous pour rester au courant des dernières technologies et du développement des programmes de trading.
Download Telegram
La méthode de croisement de deux moyennes mobiles reste une approche classique dans le trading. Elle utilise une moyenne mobile à court terme et une autre à long terme pour signaler des opportunités de marché. Par exemple, des moyennes mobiles sur 50 et 200 jours sont souvent employées. Lorsque la moyenne à court terme dépasse celle à long terme, un signal d'achat est déclenché, indiquant potentiellement le début d'une tendance haussière. À l'inverse, une inversion de cette configuration peut signaler un moment opportun pour vendre.

La gestion du risque est cruciale. L'instauration de stop loss peut protéger contre les fluctuations défavorables. Par exemple, fixer un seuil de stop loss comme pourcentage du prix actuel aide à limiter les pertes potentielles en situations d'instabilité.

👉 Lis ça | AlgoBook | @mql5fr
2👌1
Un script calcule le prix de Stop Out et le prix où la Marge Libre devient négative. La taille de position pour le symbole actuel est ajustable via EnterVolume. Par défaut, EnterVolume=0 utilise le volume de la position ouverte pour les calculs. Si EnterVolume est supérieur à 0, le calcul est effectué pour une position longue du volume spécifié. Pour une valeur inférieure à 0, le calcul concerne une position courte de ce volume. Ces paramètres permettent aux traders d'évaluer les risques associés à des variations spécifiques des prix du marché. Il est essentiel de paramétrer correctement ces valeurs pour éviter des pertes significatives et gérer efficacement les positions ouvertes.

👉 Lis ça | Market | @mql5fr
1
Un exemple d'application pratique de la DLL pour le Memory Mapping s'articule autour de l'utilisation des fonctions File Mapping. Comparable à la variante MQL4, l'expert advisor crée un fichier virtuel pour mettre à jour les cotations de symboles. D'autres experts sur divers terminaux peuvent ouvrir ce fichier et synchroniser leurs cotations, permettant un échange de données cohérent entre conseillers. Une démonstration avec les chaînes de caractères a été intégrée, relevant le besoin de compatibilité des transmissions entre MT4 et MT5 via la conversion en tableau d'un seul octet. Cela garantit la cohérence des échanges de cotations entre MetaTrader 4 et 5. La mise en œuvre nécessite le transfert des fichiers MemMap32/64.dll dans le répertoire terminal spécifié. Le code contient diverses notes explicatives et enregistrements des données intermédiaires pour un suivi détaillé.

👉 Lis ça | CodeBase | @mql5fr
3👍1
Le projet Visual C++ 2010 se concentre sur l'utilisation de la mémoire virtuelle à travers deux classes : CMemMapApi et CMemMapFile. Ces classes permettent de manipuler la mémoire comme un fichier traditionnel, facilitant ainsi la création, l'écriture, la lecture et l'échange de données entre applications. Cela inclut la compatibilité avec MetaTrader 4 et 5. Un avantage majeur réside dans l'amélioration de la vitesse d'échange d'informations, essentielle pour des applications telles que les copieurs de transactions ou l'échange de cotations pour les experts en arbitrage.

CMemMapApi agit principalement comme une enveloppe des fonctions WinApi, offrant la possibilité de gérer plusieurs fichiers mémoire simultanément. En revanche, CMemMapFile se distingue en stockant des détails spécifiques comme le nom du fichier et son identifiant, tout en garantissant la gestion correcte de la taill...

👉 Lis ça | Market | @mql5fr
1
L'indicateur minimaliste affiche, sur le symbole en cours, la fluctuation en pourcentage du prix depuis le début de la journée de trading. Un prix supérieur à celui d'ouverture se traduit par une valeur positive, tandis qu'une baisse se reflète par une valeur négative. Cet indicateur est positionné sous forme de texte dans le coin inférieur droit du graphique de prix. Il offre une manière simple et directe de suivre l'évolution du marché sans surcharge d'informations visuelles. Cette fonctionnalité est conçue pour analyser rapidement la performance des actifs au sein d'une session de marché donnée.

👉 Lis ça | CodeBase | @mql5fr
L'indicateur Forex Sessions met en lumière les sessions du marché des changes en tenant compte des horaires de trading locaux. Les horaires varient par région, de 8h à 17h sur la plupart des marchés, et à Sydney de 7h à 16h ou de 9h à 18h. Cet outil colorie les sessions de Sydney, Tokyo, Londres et New York sur les graphiques de devises et d'or, en respectant les décalages horaires GMT et l'heure d'été. Il affiche également une horloge supplémentaire du courtier avec l'heure du serveur et le décalage GMT, ainsi qu'une fonction de débogage graphique en synergie avec la bibliothèque TimeZoneInfo. Pour les courtiers utilisant des horaires spécifiques, le symbole XAUUSD peut être utilisé pour estimer l'heure du serveur. Les utilisateurs peuvent ajuster le paramètre pour utiliser d'autres symboles selon les besoins.

👉 Lis ça | Calendrier | @mql5fr
4
La dernière mise à jour inclut un portage complet de C++ à MQL5 pour le mappage de mémoire. Ce package comprend un script exemplaire pour illustrer son utilisation. Une gestion des terminaux en versions 32 et 64 bits est maintenant intégrée dans un seul fichier, simplifiant l'implémentation. Grâce au modèle de traitement des pointeurs retournés, il est possible d'élargir significativement l'utilisation de MQL5 pour l'interaction avec diverses fonctions API. Cela élimine le besoin de développer des DLL personnalisées. Cette avancée souligne l'efficacité de MQL5 dans l'optimisation des intégrations API, consolidant ainsi sa position en tant qu'outil puissant pour les développeurs expérimentés.

👉 Lis ça | Signaux | @mql5fr
1
La classe CBandsOnArray est utilisée pour calculer des Bandes de Bollinger® via un tampon d'indicateur. Pour l'application, dans la fonction OnInit() de l'indicateur, la méthode Init() est initialisée avec les paramètres requis: aPeriod pour la période, aMethod pour la méthode de calcul de la moyenne, et aDeviation pour la largeur en écarts types. Dans OnCalculate(), la méthode Solve() est utilisée avec les paramètres nécessaires tels que aRatesTotal, aPrevCalc, ainsi que les tampons aData, aMA, aUpper, et aLower pour les données et valeurs calculées.

Les Bandes de Bollinger ajustent leur largeur en fonction de la volatilité du marché, offrant une mesure dynamique par rapport aux enveloppes classiques. Elles sont construites sur la base de l'écart-type, régulant ainsi automatiquement leur largeur en fonction des conditions de marché volatiles ou stables. L'exemple d'utilisation se tr...

👉 Lis ça | Calendrier | @mql5fr
1
La classe CEnvelopesOnArray est utilisée pour calculer les valeurs de l'indicateur Envelopes en utilisant un tampon d'indicateur. Pour initialiser l'indicateur, la méthode Init() est appelée dans la fonction OnInit() avec les paramètres suivants : la période de l'indicateur, la méthode de calcul de la moyenne mobile (MA), et la largeur des barres. Dans la fonction OnCalculate(), la méthode Solve() est utilisée pour obtenir les valeurs de la ligne supérieure et inférieure de l'indicateur en fonction des données calculées.

Le fichier Test_EnvelopesOnArray.mq5 illustre l'utilisation pratique de cette classe. Le fichier doit résider dans le dossier approprié du terminal pour fonctionner correctement. Il est également essentiel de posséder la classe CMAOnArray pour un calcul précis. L'indicateur Envelopes se compose de deux moyennes mobiles, la volatilité du marché influençant le décalage...

👉 Lis ça | Documentación | @mql5fr
2
Ce script illustre la création systématique d'objets graphiques standard dans MetaTrader 5. Il permet de tester la fonction ObjectCreate() et les méthodes associées pour définir les propriétés des objets : coordonnées, tailles, polices, couleurs, et paramètres supplémentaires. Lors de son exécution sur un graphique actif, le script supprime l'objet précédent pour en créer un nouveau, selon le type sélectionné dans les paramètres. Les types supportés incluent lignes, canaux, outils Gann et Fibonacci, vagues Elliot, et éléments d'interface.

Chaque objet dispose d'une fonction de création dédiée, configurée avec tous les attributs nécessaires : niveaux de prix, angles, directions, textes, images, et autres propriétés. Les fonctions auxiliaires simplifient la manipulation des coordonnées, tandis que d'autres fonctions automatisent la sélection des coordonnées basées sur le graphique vis...

👉 Lis ça | Documentación | @mql5fr
3
L'indicateur ajuste les objets "Ligne de tendance" désignés en les rendant parallèles à l'axe horizontal. Ce processus modifie la coordonnée du prix du second point de référence de la ligne de tendance. Par défaut, ce point est placé à droite du graphique. Cette fonctionnalité facilite l'analyse en stabilisant visuellement les lignes de tendance, permettant ainsi une évaluation plus précise des niveaux de support et de résistance. Les critères de sélection incluent la couleur et le style des lignes, offrant ainsi un contrôle précis sur l'apparence et le comportement des lignes de tendance sur le graphique.

👉 Lis ça | Cotations | @mql5fr
4
Un canal de Bandes de Bollinger® est présenté en style DRAW_FILLING avec un fond coloré, rendant l'analyse visuelle plus intuitive dans de nombreux contextes. L'indicateur repose sur une moyenne mobile universelle avec deux moyennes, offrant des choix variés pour la ligne médiane, y compris SMA, EMA, SMMA, LWMA, JJMA, JurX, ParMA, T3, VIDYA et AMA. Chaque type de moyenne introduit ses propres spécificités, avec des paramètres comme Phase1 et Phase2 ayant des significations diversifiées selon l'algorithme sélectionné. Par exemple, pour JMA, "Phase" varie de -100 à +100 tandis que pour T3, il désigne un facteur de calcul. VIDYA utilise la période de l'oscillateur CMO et AMA se base sur la période EMA lente, la période EMA rapide étant fixée à 2. L'indicateur intègre des classes de SmoothAlgorithms.mqh, comme détaillé dans un article sur le calcul des moyennes des séries temporelles.

👉 Lis ça | Calendrier | @mql5fr
1
Depuis la version 581, l'ajout du support natif pour l'interface OpenCL permet d'exploiter la puissance du GPU. Cela optimise les performances des applications nécessitant des calculs intensifs, comme les fractales de Mandelbrot. Un exemple simple d'utilisation d'OpenCL montre une accélération significative, augmentant la vitesse de calcul d'environ 100 fois par rapport aux implémentations logicielles classiques. Cela représente une avancée notable pour ceux qui cherchent à maximiser l'efficacité de leurs développements dans des environnements exigeants. L'intégration d'OpenCL est une étape importante pour tirer parti des capacités du matériel graphique moderne dans des applications diverses.

👉 Lis ça | AlgoBook | @mql5fr
3
Le signal de trading se forme à la fermeture de la barre, indiquant l'opportunité d'ouvrir des positions avec une flèche colorée de l'indicateur Sidus. Pour assurer le bon fonctionnement du conseiller expert, l'indicateur Sidus.ex5 doit être présent dans le dossier terminal correspondant. La création d'un robot de trading à partir de ce module est détaillée dans l'article "MQL5 Wizard for Dummies". L'idée de base pour structurer un module de signaux de trading se trouve dans l'article sur les systèmes de trading simples utilisant des indicateurs sémaphores. Les tests réalisés en 2011 avec des paramètres par défaut sur XAUUSD H4 n'ont pas inclus de Stop Loss ou Take Profit. Les résultats montrent que le conseiller expert prend ses décisions selon le "vote" des modules, y compris le module principal dont les méthodes LongCondition() et ShortCondition() restent inactives. Les seuils doiv...

👉 Lis ça | CodeBase | @mql5fr
3🔥1
Un indicateur technique se concentre sur la pente de la moyenne mobile et un nuage qui l'entoure. Il fournit deux types de signaux pour aider à l'analyse du marché. Le premier, pré-levée, est représenté par un point, indiquant une tendance potentielle ou un changement. Le second, entrée, est signalé par une flèche, suggérant un moment propice pour prendre position. Ces signaux sont conçus pour aider les analystes à interpréter les changements de tendance et à identifier les opportunités d'investissement. Une compréhension approfondie de leur comportement peut améliorer les stratégies de trading en fournissant des indications précieuses. L'étude de cet indicateur aide à renforcer la prise de décision basée sur des données objectives.

👉 Lis ça | AlgoBook | @mql5fr
4🎉1
Les exemples actualisés du fichier Comm.mqh, version 1.09, disponibles depuis le 3 février 2025, facilitent l'extraction des informations du service et leur affichage sur le premier graphique du terminal. La possibilité de spécifier l'ID du graphique dans le commentaire a été intégrée, améliorant la précision des visualisations. La mise à jour au 31 mai 2025, version 1.10, introduit des modifications mineures pour assurer la compatibilité avec le nouveau compilateur. Ces ajustements visent à maintenir le bon fonctionnement de votre environnement de développement, garantissant une expérience utilisateur fluide et efficace. Ces évolutions illustrent l'engagement envers l'amélioration continue des outils.

👉 Lis ça | NeuroBook | @mql5fr
2
Un signal est généré lorsque la barre clôture, marqué par l'apparition d'une flèche colorée de l'indicateur Stalin. Pour que le conseiller expert fonctionne correctement, l'indicateur Stalin.ex5 doit être présent dans le répertoire MQL5\Indicators. Créer un robot de trading avec ce module de signaux est simple et décrit dans "MQL5 Wizard for Dummies". Les bases de la construction d'un module de signaux sont expliquées dans "Les systèmes de trading les plus simples utilisant des indicateurs sémaphores". Les tests ont utilisé les paramètres par défaut de l'Expert Advisor sans Stop Loss ni Take Profit. En 2011, sur USDCHF H4, les résultats montrent que les décisions d'ouverture ou de fermeture reposent sur un "vote" des modules de signaux. Les valeurs de Signal_ThresholdOpen et Signal_ThresholdClose doivent être ajustées : 40 pour ouvrir et 20 pour fermer.

👉 Lis ça | Calendrier | @mql5fr
4
Le signal pour ouvrir une position est généré à la fermeture d'une barre par l'indicateur SuperTrend. Pour assurer le bon fonctionnement du conseiller expert, l'indicateur SuperTrend.ex5 doit être présent dans le répertoire des indicateurs de MQL5. Construire un robot de trading via ce module de signal est bien documenté dans l'article "MQL5 Wizard for Dummies". Une analyse détaillée de la création de modules de signaux est également disponible dans "Les systèmes de trading les plus simples utilisant des indicateurs sémaphores".

Les tests sur USDCHF H4 en 2011 ont utilisé les paramètres par défaut de l'Expert Advisor, sans Stop Loss ni Take Profit. Le conseiller prend ses décisions par "vote" des modules de signaux ajoutés. Le module principal influence ce vote, ses méthodes LongCondition() et ShortCondition() restant à 0, nécessitant des ajustements des seuils Signal_ThresholdOpen à...

👉 Lis ça | Market | @mql5fr
4
Le signal se forme à la clôture de la barre. L'ouverture des positions est déclenchée par l'apparition de la flèche colorée de l'indicateur Go. Pour que le conseiller expert fonctionne correctement, le fichier Go.ex5 doit être présent dans le répertoire MQL5\Indicators. La construction d'un robot de trading à partir de ce module ne présente pas de complexités particulières. Les méthodes et étapes sont détaillées dans l'article « MQL5 Wizard for Dummies » et dans « Les systèmes de trading les plus simples utilisant des indicateurs sémaphores ». Lors des tests, les paramètres par défaut de l'Expert Advisor ont été maintenus, sans utilisation de Stop Loss ou Take Profit. Le système de décision repose sur un "vote" entre les modules de signaux ajoutés. Après code, ajuster Signal_ThresholdOpen et Signal_ThresholdClose à 40 et 20 respectivement pour garantir un fonctionnement optimal.

👉 Lis ça | Freelance | @mql5fr
5
Un indicateur technique pour MetaTrader 5 propose une combinaison du RSI et d'une moyenne mobile afin d'identifier des signaux de suivi de tendance. Deux critères précisent les signaux. Un signal d'achat indique une tendance haussière lorsque le cours de clôture dépasse la moyenne mobile et que le RSI est supérieur à 50. À l'inverse, un signal de vente pointe une tendance baissière si le cours est en deçà de la moyenne mobile et que le RSI est en dessous de 50.

Cet indicateur est utile pour les traders manuels ou en tant que source de signaux pour un Expert Advisor. Il présente un code bien structuré et documenté. Les paramètres tels que la période du RSI et de la MA sont ajustables. Il intègre les tampons standard MT5 pour intégrer facilement les signaux via iCustom() dans un EA.

👉 Lis ça | Cotations | @mql5fr