Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 125
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
environ 25 personnes. Par exemple : 14.02.2017 EURUSD 1,0630
Malheureusement, je ne vois pas non plus de solution à ce problème uniquement avec mql.
Il suffit de créer un modèle de lettre avec les noms de tous les amis et d'envoyer un courrier
environ 25 personnes. Par exemple : 14.02.2017 EURUSD 1,0630
Bonjour.
J'ai tué toute la soirée, mais je n'ai pas pu comprendre la raison, s'il vous plaît aidez. L'indicateur devrait afficher les données à l'écran sous la forme d'une marque de texte, mais lorsque je démarre le terminal, cela ne se produit pas, la marque n'apparaît que lorsque je change de cadre temporel, puis cela fonctionne bien sur les ticks.
L'exemple est simplifié autant que possible, mais l'essence ne change pas :
int a=AccountInfoInteger(ACCOUNT_LEVERAGE) ;
intb=1000/a; // puis imprimer b à l'écran
En utilisant la méthode d'élimination, j'ai conclu que cela ne fonctionne que si je remplace la division par toute autre opération, ou si j'assigne une constante quelconque à la variable "a".
J'ai essayé d'utiliser ChartRedraw(), j'ai joué avec les types entiers et doubles, j'ai essayé MathRound() et bien d'autres choses encore, mais rien ne fonctionnait.
C'est tout à fait étrange.
Bonjour.
J'ai tué toute la soirée, mais je n'ai pas pu comprendre la raison, s'il vous plaît aidez. L'indicateur devrait afficher les données à l'écran sous la forme d'une marque de texte, mais lorsque je démarre le terminal, cela ne se produit pas, la marque n'apparaît que lorsque je change de cadre temporel, puis cela fonctionne bien sur les ticks.
L'exemple est simplifié autant que possible, mais l'essence ne change pas :
int a=AccountInfoInteger(ACCOUNT_LEVERAGE) ;
intb=1000/a; // puis imprimer b à l'écran
En utilisant la méthode d'élimination, j'ai conclu que cela ne fonctionne que si je remplace la division par toute autre opération, ou si j' assigne une constante quelconque à la variable "a".
J'ai essayé d'utiliser ChartRedraw(), j'ai joué avec les types entiers et doubles, j'ai essayé MathRound() et bien d'autres choses encore, mais rien ne fonctionnait.
C'est tout à fait étrange.
Alors, quel est le problème avec la multiplication au lieu de la division ?
intb=a*0.001 ;
Et il est également important de savoir où exactement dans le code effectuer les calculs. J'espère que ce n'est pas dans l'inite ou dans le monde ? Vous pouvez aussi diviser par zéro ;)
Bonjour.
J'ai tué toute la soirée, mais je n'ai pas pu comprendre la raison, s'il vous plaît aidez. L'indicateur devrait afficher les données à l'écran sous la forme d'une marque de texte, mais lorsque je démarre le terminal, cela ne se produit pas, la marque n'apparaît que lorsque je change de cadre temporel, puis cela fonctionne bien sur les ticks.
L'exemple est simplifié autant que possible, mais l'essence ne change pas :
int a=AccountInfoInteger(ACCOUNT_LEVERAGE) ;
intb=1000/a; // puis imprimer b à l'écran
En utilisant la méthode d'élimination, j'ai conclu que cela ne fonctionne que si je remplace la division par toute autre opération, ou si j'assigne une constante quelconque à la variable "a".
J'ai essayé d'utiliser ChartRedraw(), j'ai joué avec les types entiers et doubles, j'ai essayé MathRound() et bien d'autres choses encore, mais rien ne fonctionnait.
C'est tout à fait étrange.
Alors quel est le problème de refaire une multiplication au lieu d'une division ?
intb=a*0.001 ;
Il est également important de savoir à quel endroit précis du code les calculs doivent être effectués. J'espère que ce n'est pas dans l'inite ou dans le monde ? Vous pouvez aussi diviser par zéro ;)
Les niveaux doivent-ils être transmis exactement ? Ne serait-il pas préférable de créer un signal et de le diffuser ?
Et si vous regardez dans le journal, vous pouvez y trouver une erreur critique "division par 0".
Le carnet de bord indique bien : zéro diviseur. Je vais vérifier maintenant.
Je ne comprends pas d'où vient le 0 ? Pas de données deAccountInfoInteger(ACCOUNT_LEVERAGE) pendant l'initialisation? Et pourquoi la marque n'apparaît-elle pas sur les prochains ticks ?
Je les envoie par Whatsapp au groupe également. Je voulais juste leur faciliter la vie... ouvrir le graphique et mon niveau est déjà là. Pouvez-vous m'en dire plus sur le signal, est-il émis par MT ou par un tiers ?
Le carnet de bord indique bien : zéro diviseur. Je vais vérifier maintenant.
Je ne comprends pas d'où vient le 0 ? Pas de données deAccountInfoInteger(ACCOUNT_LEVERAGE) pendant l'initialisation? Et pourquoi la marque n'apparaît-elle pas sur les prochains ticks ?
Parce que le programme a reçu une erreur critique et ne s'exécute plus.
Peut-être, certaines sociétés de courtage ne passent-elles pas l'effet de levier ? Bien que, je ne l'ai pas vu en forex...