Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 444
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
le conseiller a été fait pour vérifier la possibilité elle-même, il s'ouvre correctement, mais dans l'indicateur il ne voit pas du tout les valeurs des deux buffers proches de l'indicateur "Arrow v.3".
Vous avez donc un indicateur en dehors du tableau dans la boucle. Regardez quelle limite, et quelles valeurs il y a dans les boucles imbriquées. À quoi l'index il se réfère lorsque la limite == taux_total-2 ?
Comment le voyez-vous ?
Voir votre code
Voyez quelle est la limite, et quelles sont les valeurs dans les cycles imbriqués.
imprime le numéro de barre de la première et de la deuxième flèche, en alternance.
Vérifiez votre code
Cela fait trois jours que je le regarde, je ne sais pas ce qui ne va pas).
Aidez-moiimprime le numéro de barre de la première et de la deuxième flèche, en alternance.
Quel genre de cycle bizarre est-ce de toute façon ?
Pourquoi aller du début à la fin de l'histoire et revenir trois cents mesures en arrière dans une boucle imbriquée à chaque itération de la première boucle ?
Vous êtes probablement sauvé par iCustom(), qui ne donne pas de valeurs en dehors des données de l'historique.
Eh bien, regardez par vous-même. Supposons que vous ayez un historique de seulement 1000 barres : rates_total dans ce cas vous avez 1000. Limite, 1000-2=998. Ainsi, la première barre d'historique est exclue de la boucle. Ne t'inquiète pas pour ça.
Vous mettez d'abord un indice sur la barre avec le numéro 998 (taux_total-2 = 1000-2 = 998),
et ensuite, que faites-vous ? Puis vous intégrez la boucle à partir de la valeur i, égale à 998+1=999 - c'est la première mesure de l'histoire - il n'y a plus rien à gauche - c'est vide. Et vous faites la boucle de 999 à 999+300. Il n'y a pas de données ici - c'est en dehors du tableau.
Ainsi, la limite dans cette situation devrait être telle que la boucle intégrée au tout début atteigne la barre 999. Il s'agit de rates_total-2-300. Puis, puisque vous commencez la boucle imbriquée à partir de i+1, c'est à ce moment-là qu'il n'y aura pas de dépassement du tableau : i=1000-2-300 = 698. Dans la boucle imbriquée, li=i+1 = 698+1=699, et jusqu'à li=i+300 = 698+300=998. Là encore, la toute première barre est exclue du calcul. Mais il n'y a pas de dépassement du tableau.
Apparemment, vous ne savez pas vraiment ce que vous faites.
Ceci est indiqué par une boucle très étrange en général.
Vous n'avez pas besoin de boucles imbriquées ici. Si vous cherchez un certain nombre de valeurs dans le tampon de l'indicateur personnalisé, faites le cycle de zéro à une certaine valeur. Mais pas plus que le taux_total.
Quel genre de cycle bizarre est-ce de toute façon ?
Pourquoi aller du début à la fin de l'histoire et revenir trois cents mesures en arrière dans une boucle imbriquée à chaque itération de la première boucle ?
Vous êtes probablement sauvé par iCustom(), qui ne donne pas de valeurs en dehors des données de l'historique.
Eh bien, regardez par vous-même. Supposons que vous ayez un historique de seulement 1000 barres : rates_total dans ce cas vous avez 1000. Limite, 1000-2=998. Ainsi, la première barre d'historique est exclue de la boucle. Laisse faire.
Vous mettez d'abord un indice sur la barre avec le numéro 998 (taux_total-2 = 1000-2 = 998),
et ensuite, que faites-vous ? Puis vous intégrez la boucle à partir de la valeur i, égale à 998+1=999 - c'est la première mesure de l'histoire - il n'y a plus rien à gauche - c'est vide. Et vous faites la boucle de 999 à 999+300. Il n'y a pas de données ici - c'est en dehors du tableau.
Ainsi, la limite dans cette situation devrait être telle que la boucle intégrée au tout début atteigne la barre 999. Il s'agit de rates_total-2-300. Puis, puisque vous commencez la boucle imbriquée à partir de i+1, c'est à ce moment-là que vous ne dépasserez pas le tableau : i=1000-2-300 = 698. Dans la boucle imbriquée, li=i+1 = 698+1=699, et jusqu'à li=i+300 = 698+300=998. Là encore, la toute première barre est exclue du calcul. Mais il n'y a pas de dépassement du tableau.
Apparemment, vous ne savez pas vraiment ce que vous faites.
Ceci est indiqué par une boucle très étrange en général.
Merci, c'est très clair.
Ceci est indiqué par une boucle très étrange en général.
Vous n'avez pas besoin de boucles imbriquées ici. Si vous recherchez un certain nombre de valeurs de tampon d'indicateur personnalisé, faites une boucle de zéro à une certaine valeur. Mais pas plus que le taux_total.
Pourquoi à partir de zéro ?
J'ai besoin de mettre un point si sur la troisième ou "N" barre il y a une flèche de l'indicateur appelé. Sur l'ensemble de l'histoire
Quel est le cycle correct ?
Pourquoi à partir de zéro ?
J'ai besoin de savoir s'il y a une flèche sur la troisième ou "N" barre de l'indicateur à appeler. Sur l'ensemble de l'histoire.
Quel est le cycle correct ?
Où cela doit-il être fait ? Dans un indicateur ? Dans une EA ?
Où cela doit-il être fait ? Dans un indicateur ? Dans une EA ?
Dans un indicateur
Dans l'indicateur
Donc, lisez iCustom() à droite de l'index de la première boucle.
Une autre question est que vous avez besoin des données de la barre actuelle vers la gauche. C'est pourquoi je dis - lisez de zéro à la valeur trouvée, mais pas plus que rates_total-1.
Et en lecture seule lorsque la limite>1
Sinon, il n'y a pas de nouvelles données et l'indice de la barre dont vous avez besoin ne changera pas.