Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 771
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
Mais pas ceux du calendrier. Barres de 30 jours à l'envers (dimanches, samedis)
A en juger par la fonction sans le paramètre shift, vous faites en 5 et vous avez posé la question en 4 :)
Oui, 30 barres, c'est 21 jours ouvrables si on compte à partir d'hier. (24.02.2019 - 25.01.2019)
J'ai...
Pour le mois, la taille moyenne des bougies est de 598.
Pour une semaine, taille moyenne des bougies : 519
Et iATR() donne des numéros à dix chiffres...
Je ne sais donc pas encore comment l'utiliser.
Et iATR() produit des nombres à dix chiffres...
Habituellement, il s'agit de fractions décimales (comme le prix. Pour convertir en points, vous devez diviser par _Point).
Voir illustration : euro/dollar à ce jour - 560 pips sur une base quotidienne pour le mois.
Habituellement, des fractions décimales (comme le prix. Pour convertir en points, divisez par _Point).
Voir l'illustration : euro/dollar à partir d'aujourd'hui - 560 pips sur une base quotidienne pendant un mois.
Je l'ai vérifié dans MQL4 :
Habituellement, des fractions décimales (comme le prix. Pour convertir en points, divisez par _Point).
Voir illustration : euro/dollar à partir d'aujourd'hui - 560 pips sur une base quotidienne pendant un mois.
Je l'ai vérifié dans MQL5. J'ai écrit le code suivant pour le vérifier :
C'est ce qu'il montre :
C'est-à-dire qu'il affiche une valeur, mais en affiche une autre...
Je l'ai vérifié dans MQL5. J'ai écrit ce code pour le vérifier :
Voici ce qu'il produit :
C'est-à-dire qu'il affiche une valeur, mais en montre une autre...
Dans MQL5, cette façon de travailler avec l'indicateur n'est pas appropriée.
Il faut d'abord créer un handle, et c'est fait, et ce n'est qu'après que l'on peut obtenir des valeurs duCopyBuffer.
Dans MQL5, cette façon de travailler avec l'indicateur n'est pas appropriée.
Tout d'abord, vous devez créer un handle, et c'est ce que vous avez fait maintenant, et après cela, vous pouvez obtenir des valeurs duCopyBuffer.
Merci, je vais en tenir compte et réécrire le code.
Je l'écris simplement dans MT4 et j'utilise #include <MT4Orders.mqh> pour le tester dans MT5.
Peut-être que la bibliothèque ne prend pas en charge les indicateurs.
Merci, je vais en tenir compte et réécrire le code.
Je l'écris simplement dans MT4 et utilise #include <MT4Orders.mqh> pour le tester dans MT5.
Peut-être que la bibliothèque ne prend pas en charge les indicateurs.
Oui, uniquement les fonctions commerciales.
Merci, je vais en tenir compte et réécrire le code.
Je l'écris simplement dans MT4 et utilise #include <MT4Orders.mqh> pour le tester dans MT5.
Peut-être la bibliothèque ne prend-elle pas en charge les indicateurs.
C'est un moyen très rapide de combiner deux plateformes, cela fonctionne, mais il vaut mieux ne pas le faire dans mql5.
Et appliquer l'indicateur de la même manière que dans mql4
Il s'agit d'une option très rapide pour combiner les deux plateformes, elle fonctionne, mais il est préférable de ne pas le faire dans mql5.
Et appliquer l'indicateur de la même manière que dans mql4
Merci beaucoup pour le code.
Cela a fonctionné :
Maintenant, j'ai des données moyennées au début du démarrage de l'EA. Et ces données sont recalculées à chaque fois que j'accède à la fonction.
Si je comprends bien, pour limiter les appels, je dois créer un enregistrement tampon avec les données calculées.
Nous devons donc définir la condition pour le recalcul. Les "lundis" et s'il n'y a rien dans le tampon.
Par exemple, déclarer la variable buferStep = -1 ; et dansOnTick() si buferStep <0 ou "Monday" alors recalculer.
Là encore, je suis bloqué, comment le robot peut-il déclarer qu'aujourd'hui est "lundi" ?
Merci beaucoup pour le code.
Ça s'est passé comme ça :
J'ai maintenant les données moyennées au début de l'EA. Et ces données sont recalculées à chaque fois que la fonction est appelée.
Si je comprends bien, pour limiter les appels, je dois créer un enregistrement tampon avec les données calculées.
Nous devons donc définir la condition pour le recalcul. Les "lundis" et s'il n'y a rien dans le tampon.
Par exemple, déclarer la variable buferStep = -1 ; et dansOnTick() si buferStep <0 ou "Monday" alors recalculer.
Là encore, j'ai un problème : comment Robot peut-il déclarer qu'aujourd'hui est "lundi" ?
Je ne veux pas utiliser le lundi, je veux juste le nombre de jours passés. Et je l'obtiendrais sur chaque nouvelle barre afin de ne pas charger le Conseiller Expert avec des calculs à chaque tick.