Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1497
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
Bonjour à tous !
Question sur l'instruction for() dans mql4. L'en-tête de cet opérateur effectue une diminution et une augmentation séquentielles de la valeur d'une variable.
for(int A=14 ; A>=0;A--) ou for(int A=0 ; A<14;A++) ou for(int A=0 ; A<14;A=+2) On suppose que les tailles de la variable A augmentent ou diminuent toujours de la même manière dans les exemples 1 ou 2.
QUESTION : Si une variable est une valeur de timeframe (1 (minute),5,15,30,60,240,1440), il est évident que les tailles d'augmentation ou de diminution de cette variable ne peuvent pas être égales. Dans ce cas, comment formater l'en-tête for de manière à ce que la variable A commence par 1 et soit ensuite incrémentée à chaque itération du nombre de minutes requis, de manière non uniforme.
L'exemple avec la variable A est un cas particulier. En général, comment puis-je formater une boucle si le changement de la variable dans l'en-tête de la boucle doit se faire de manière non uniforme aux intervalles souhaités.
Ou existe-t-il un autre opérateur à utiliser pour ces cas ? Mais comme il me semble que les autres opérateurs sont très encombrants par rapport à for. S'il vous plaît, aidez-moi à résoudre mon problème exactement avec l'aide de l'instruction for, et exactement avec son en-tête. Parce que pour résoudre mon problème à l'intérieur du corps de l'instruction for, vous pouvez bien sûr utiliser des instructions if, mais ce sera très lourd et l'instructionfor devra faire 1440 itérations pour filtrer 7 valeurs correctes.
Merci.
Il y a une erreur ici. Cela devrait être for(int A=0 ; A<14;A+=2)
La chose la plus simple à laquelle je pense est de mettre les périodes dans le tableau
La chose la plus simple qui me vient à l'esprit est de noter les périodes dans un tableau
Merci, je pourrais en avoir besoin aussi)
Il y a une erreur ici. Cela devrait être for(int A=0 ; A<14;A+=2)
La solution la plus simple à laquelle je pense est de stocker les périodes dans un tableau.
Merci beaucoup pour le conseil. Il s'est avéré que c'était beaucoup plus simple que je ne le pensais.
Je ne comprends pas une seule chose. Le nom du tableau est per. Et ENUM_TIMEFRAMES est un identifiant d'un type de variable ? Je n'ai pas trouvé un tel identifiant dans la référence mql4. Il n'y a que
Merci beaucoup pour le conseil. Il s'est avéré que c'était beaucoup plus facile que je ne le pensais.
Il y a juste une chose que je n'ai pas comprise. Le nom du tableau par. Et ENUM_TIMEFRAMES est un identifiant du type de variable ? Je n'ai pas trouvé un tel identifiant dans la référence mql4. Il n'y a que
ici
ici
Ai-je bien compris que vous m'avez envoyé des informations sur mql 5 ? Ou cette information s'applique-t-elle également à mql 4 ?
Ai-je bien compris que vous m'avez envoyé des informations sur mql 5 ? Ou cette information s'applique-t-elle également à mql 4 ?
Je l'ai corrigé.
Merci.
Merci.
Petite recommandation : habituez-vous immédiatement à ENUM_TIMEFRAMES et oubliez la représentation numérique comme nombre de minutes.
Premièrement, PERIOD_W1 est plus informatif que 10080, il est plus clair qu'il s'agit d'une semaine.
Deuxièmement, dans mql5 la période ne correspond pas au nombre de minutes et ce ne sera pas un problème inutile lors de la migration vers mql5, et c'est inévitable.
Eh bien, si vous avez vraiment besoin du nombre de minutes dans une période, alors vous pouvez