Rejoignez notre page de fans
- Vues:
- 20
- Note:
- Publié:
- Mise à jour:
-
Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance
Dans Tester, lors de l'optimisation, il peut arriver que des passes se bloquent en raison d'un manque de mémoire.
Il existe une méthode pour calculer ces passes d'urgence. Cependant, il est difficile d'évaluer toutes les variantes des paramètres d'entrée pour une forte consommation de mémoire par le conseiller expert.
Vous devez trouver les configurations potentiellement problématiques des paramètres d'entrée d'un Expert Advisor existant. Et en trouver les causes.
Cette bibliothèque simple vous permet de suivre la dynamique des changements dans la consommation de mémoire d'une manière assez simple.
Exemple :
Pour illustrer notre propos, prenons un conseiller expert laconique et ajoutons-lui quelques lignes (surlignées).
#property tester_no_cache #define MEMORY_TESTER_OPTIMIZATION // Fonctionnement en mode d'optimisation du testeur. #include <fxsaber\Memory\Memory.mqh> // Surveillance de la consommation de mémoire. input int inMaxMB = 10; void OnTick() { static MqlRates Rates[]; const int SizeMB = (ArraySize(Rates) * sizeof(MqlRates)) >> 20; if (SizeMB < inMaxMB) ArrayResize(Rates, ((SizeMB + 2) << 20) / sizeof(MqlRates)); // Augmenter le tableau de ~mégaoctets. } double OnTester() { return(gMemory.GetMax()); // Consommation maximale de mémoire pendant l'exécution du programme. }
L'Expert Advisor augmente simplement son tableau.
Résultat.
L'image montre le résultat de l'optimisation.

Les mesures de consommation de mémoire sont similaires.
Une seule passe de l'ensemble supérieur produira ceci.
Core 1 OnTester result 102 Core 1 2026.02.10 23:58:58 MQL_MEMORY_USED: Min = 0 Max = 102 Last = 0 Core 1 EURUSD,M1: 80954 ticks, 1437 bars generated. Environment synchronized in 0:00:00.020. Test passed in 0:00:01.781. Core 1 EURUSD,M1: total time from login to stop testing 0:00:01.801 (including 0:00:00.020 for history data synchronization) Core 1 202 Mb memory used including 23 Mb of history data, 64 Mb of tick data
Scénarios.
La bibliothèque vous permet de détecter une consommation excessive de mémoire par l'Expert Advisor et d'en rechercher les causes en mode débogage.
Moins l'Expert Advisor consomme de ressources, plus les possibilités d'optimisation sont nombreuses : augmentation du nombre d'agents de test - rapidité de l'optimisation.
Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/69335
Indicateur de rupture de l'action sur les prix RSI
Un indicateur de renversement de tendance de haute précision combinant les zones d'épuisement du RSI et les motifs de rupture des chandeliers.
Candle Close Timer - Indicateur MT5
Description de l'indicateur - Candle Close Timer Nom : Candle Close Timer Version : 1.0 Author : BENTRADE TRADING Lien : https://www.mql5.com/en/users/dahmi_benali
Multi-timeframe RSI scanner with visual dashboard and alerts
Scanner RSI multi-cadres prêt pour la production avec un système intelligent de rappel des alertes. Il surveille jusqu'à 7 périodes simultanément, met en évidence les zones de convergence lorsque 3 TF ou plus s'alignent, et relance automatiquement les notifications en cas d'échec pour s'assurer que vous ne manquiez jamais les configurations critiques de surachat/survente.
Trend based on WPR
Cet indicateur combine le WPR et le total des profits/pertes. Je ne sais pas comment vous en dire plus sur cet indicateur mais vous pouvez l'essayer.