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
Et ce post sur la façon de trouver/réparer le zéro déviation : https://www.mql5.com/en/forum/general
Il y a quelques explications sur les fonctions :
- Collection de fonctions MT4 utiles pour le codage par wolfe.
- Fonction MM professionnelle par Nicholishen.
- Fonction de gestion de l'argent par Kalenzo.
- quelques codes MM simples.
- Fonction FILE_READ | FILE_WRITE.
- Fonction DefindTrade(..) par phoenix.
- Fonction format de date.
- fonction d'affichage d'alerte.
- Fonction sleep().
- Fonction pour le haut et le bas.
- Fonction iCustom: bon threa par Codersguru.
- liens vers les fonctions email/sms.
- toutes les fonctions par le site Codersguru.
- Fonction qui retourne un Array.
- Fonction IsStopped( ).
- Comment utiliser la fonction Hour( ).
- Fonction permettant de fermer efficacement tous les ordres.
- Alert Once.
- Alertes: nombreuses fonctions et exemples.
- Très IMPORTANT pour TOUS les indicateurs MTF.
- Easy iCustom et Alerts !: très bon fil de discussion par Codersguru.
- Le plus haut niveau.
- Comment alerter seulement à la fermeture de la bougie.
- Liens vers les fonctions iCustom.
- fixation de zéro devide.
- zero devide fixing totally.
- les autres fonctions de money management.
- comment coder un ordre par MetaTrader, ou un ordre par simbol (eurusd, gbpusd ...), ou un ordre par graphique, ou un par bougie.
touches de raccourci dans MetaTrader:
https://www.mql5.com/en/forum/178343
https://www.mql5.com/en/forum/172885
https://www.mql5.com/en/forum/176626
Si le courtier ajoutait un chiffre supplémentaire ?
https://www.mql5.com/en/forum/179191
Trouver le haut de la session en cours.
Codage d'un indicateur personnalisé sans le fichier mq4.
Erreur inhabituelle
Bonjour à tous,
J'ai codé un EA, et j'ai été confronté à une erreur peu commune. J'aimerais donc vous demander de m'aider à résoudre cette erreur sur MT4. Je pense que certains d'entre vous, de par leur expérience, ont peut-être déjà rencontré la même chose.
La lecture de l'ensemble de l'EA peut être peu pratique, le code source est très grand.
Après une compilation réussie, dans le testeur, le journal MT4 indique l'erreur suivante
Heure : 2011.01.28 23:35:36
Message : 2007.07.13 00:00 InterCandles EURUSDFXF,H4 : dépassement de pile.
Même en élevant la taille de la pile vers les cieux via
#property stacksize 167692160
qui, je crois, alloue 16MB de mémoire, l'erreur persiste.
Est-ce que quelqu'un a rencontré le même problème de"stack overflow" dans le testeur, ou peut indiquer si le problème est interne à MT4, ou dans l'EA (éventuellement dans un tableau, des déclarations imbriquées, un fichier ex4 trop grand, etc) ?
J'apprécie votre coup de main et je suis désolé de prendre votre temps.
Merci.
Solution du problème
Avant que quelqu'un ne réponde, j'ai trouvé la solution.
Avant d'utiliser la fonction, juste après que le testeur ait chargé l'EA --qui relie la bibliothèque jointe--, le message "stack overflow" est affiché dans le journal.
Problème trouvé avec la fonction nommée "power", dans le fichier joint. Mes conclusions sont les suivantes :
1) Il n'y a certainement aucun problème avec son nom ; aucune collision de fonction MQL dans la table des symboles de l'EX4. D'autres noms ont été testés.
2) Apparemment, aucune limite de fonctions n'a été atteinte. D'autres fonctions ont été ajoutées après la suppression de la fonction problématique et l'erreur ne s'est pas produite. Fonctionne correctement uniquement en supprimant cette fonction, et pas seulement en déliant dans le fichier EX4 via le compilateur MT4.
3) La récursion est exécutée via de nombreux appels et les résultats sont laissés dans la pile. La pile croît linéairement de façon asymptotique lorsque l'argument 'exposant' croît de façon exponentielle. Potentiellement, la pile peut atteindre sa limite et déborder. L'erreur "stack overflow" apparaît indépendamment de l'exécution de cette fonction.
Par conséquent, je suppose que le compilateur MT4 peut avoir un dispositif détectant [certaines classes de] récursions qui ne sont pas autorisées dans le langage, évitant ainsi un débordement potentiel de la pile pendant l'exécution de l'EA.
Détails (paramètres) de l'EA affichés sur le graphique
S'assurer qu'une commandemodify() est réussie.
Remplacement de variables globales
comment détecter si un fichier existe : Je sais que dans une EA, nous pouvons essayer de lire un fichier en utilisant FileOpen(...) et obtenir l'erreur en utilisant ...