MetaTrader 4 Build 529 beta publié avec un nouveau compilateur - page 39
![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
Voici le code.
Voici le résultat de l'exécution dans le terminal Version 4.0 Build 536
2013.11.11 22:53:08 Test EURJPY,M1 : prevClose0 !!!!! = 133.02 iClose(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:53:08 Test EURJPY,M1 : prevVolume0 !!!!! = 133.02 iVolume(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:53:08 Test EURJPY,M1 : prevtime0 !!!!! = 2013.11.11 22:38:00 iTime(NULL,PERIOD_M1,0) =2013.11.11 22:38:00
2013.11.11 22:52:25 Test EURJPY,M1 :
2013.11.11 22:52:25 Test EURJPY,M1 : prevClose0 !!!!! = 133.02 iClose(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:52:25 Test EURJPY,M1 : prevVolume0 !!!!! = 133.02 iVolume(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:52:25 Test EURJPY,M1 : prevtime0 !!!!! =2013.11.11 22:38:00 iTime(NULL,PERIOD_M1,0) =2013.11.11 22:38:00
Comme vous pouvez le voir, ni iClose, ni iVolume, ni iTime ne changent.
Je suppose que oui, tout comme les autres fonctions qui commencent par i.
De même, la fonction iVolume dans cet exemple ne montre clairement pas de Volume.
Au même moment dans le testeur, tout fonctionne et change sauf iVolume. Ça ne marche pas là non plus.
Note.
Voici le code.
Voici le résultat de l'exécution dans le terminal Version 4.0 Build 536
2013.11.11 22:53:08 Test EURJPY,M1 : prevClose0 !!!!! =133.02 iClose(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:53:08 Test EURJPY,M1 : prevVolume0 !!!!! =133.02 iVolume(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:53:08 Test EURJPY,M1 : prevtime0 !!!!! =2013.11.11 22:38:00 iTime(NULL,PERIOD_M1,0) =2013.11.11 22:38:00
2013.11.11 22:52:25 Test EURJPY,M1 :
2013.11.11 22:52:25 Test EURJPY,M1 : prevClose0 !!!!! =133.02 iClose(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:52:25 Test EURJPY,M1 : prevVolume0 !!!!! =133.02 iVolume(NULL,PERIOD_M1,0) =133.02
2013.11.11 22:52:25 Test EURJPY,M1 : prevtime0 !!!!! =2013.11.11 22:38:00 iTime(NULL,PERIOD_M1,0) =2013.11.11 22:38:00
Comme vous pouvez le voir, ni iClose, ni iVolume, ni iTime ne changent.
Je suppose que les autres fonctions qui commencent par i ne changent pas non plus.
De même, la fonction iVolume dans cet exemple ne montre clairement pas de volume.
Au même moment dans le testeur, tout fonctionne et change sauf iVolume. Ça ne marche pas là non plus.
Note.
Eh bien, je l'ai fait. Qu'est-ce qu'il y a ?
Bien...
La fonction iTime(NULL,PERIOD_M1,0) donne l'heure erronée du terminal de gauche.
Le terminal donne 2013.11.11 22:53:08, iTime donne 2013.11.11 22:38:00, et devrait donner
2013.11.11 22:53:00
iVolume(NULL,PERIOD_M1,0) devrait renvoyer un nombre entier, par exemple 1, 2, 3, 100, pas
comme dans cet exemple 133.02
iClose devrait donner 133,02 dans le premier cas, et 133,03 dans le second.
Toutes ces fonctions fonctionnent un peu différemment, à la minute près. Votre impression fonctionne en ticks. Le temps en MT est compté en secondes.
Et le deuxième terminal, en général, à gauche :)
Toutes ces fonctions fonctionnent un peu différemment, à la minute près. Votre impression fonctionne en ticks. Le temps en MT est compté en secondes.
Et le deuxième terminal, en général, à gauche :)
Ecoute, je comprends que tu n'aies personne à qui parler le soir.
Je sais que le procès-verbal, c'est pourquoi dans l'impression du résultat et a montré SPECIAL
deux résultats à des minutes différentes.
Et d'ailleurs, ce message n'était pas pour vous, mais pour les développeurs.
iVolume(NULL,PERIOD_M1,0) devrait retourner un entier, par exemple 1, 2, 3, 100, mais pas
comme dans cet exemple 133.02
Il semble que iVolume renvoie effectivement le dernier prix(prix de clôture) au lieu du volume.
Mais j'ai été très amusé par la description de l'aide (la première est tirée du fichier, et la seconde du site web).
1
2
Bien...
La fonction iTime(NULL,PERIOD_M1,0) donne l'heure erronée du terminal de gauche.
Le terminal affiche 2013.11.11 22:53:08, iTime affiche 2013.11.11 22:38:00 et devrait afficher
2013.11.11 22:53:00
iVolume(NULL,PERIOD_M1,0) devrait renvoyer un nombre entier, par exemple 1, 2, 3, 100, pas
comme dans cet exemple 133.02
iClose devrait sortir 133.02 dans le premier cas, et 133.03 dans le second.
Essayez d'utiliser RefreshRates(), OnTick a le même problème, le temps et les prix ne sont pas mis à jour dans le testeur, mais en utilisant RefreshRates() tout est ok ....
Comme vous pouvez le constater, ni iClose, ni iVolume, ni iTime ne changent.
Je suppose que les autres fonctions qui commencent par i ne le font pas non plus.
De même, la fonction iVolume dans cet exemple ne montre clairement pas de Volume.