BONJOUR À TOUS ! Aide S'il vous plaît avoir un informateur, il doit être supprimé ... Puis-je faire en sorte qu'il compte le bénéfice net, sans swaps, ni commissions ? Merci d'avance
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
ENUM_TIMEFRAMES per[] = {PERIOD_M1, PERIOD_M5, PERIOD_M15, PERIOD_M30, PERIOD_H1, PERIOD_H4, PERIOD_D1, PERIOD_W1};
/********************Script program start function*******************/voidOnStart()
{
for(int i = 0; i < ArraySize(per); i++)
{
Print(EnumToString(per[i]));
}
}/******************************************************************//*****************************End program****************************/
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
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
intPeriodSeconds(
ENUM_TIMEFRAMES period=PERIOD_CURRENT// период графика
);
Si vous n'avez pas de compte, veuillez vous inscrire
Autorisez l'utilisation de cookies pour vous connecter au site Web MQL5.com.
Veuillez activer les paramètres nécessaires dans votre navigateur, sinon vous ne pourrez pas vous connecter.
Vous êtes connecté. L'authentification à deux facteurs a été désactivée. Configurez-la à nouveau et scannez un nouveau code QR, ou continuez avec l'authentification à deux facteurs désactivée.
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