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
Je ne comprends pas ce qui ne va pas. C'est une ligne de minima.
Juste au cas où, recopiez le code, je l'ai modifié périodiquement, vous avez peut-être une ancienne version.
Oui oui, je dois changer la version lors de l'édition du code.
AUDUSD semble être OK.
Je vais passer en revue l'EURUSD pour les années de soudure. Ce sera long.
J'aimerais ajouter la semaine et le mois en une seule fois, si cela ne pose pas trop de problèmes ? et décaler les étiquettes comme dans l'exemple.
Pour ne pas regarder le graphique dix fois. (je connais déjà l'histoire par cœur).
Je pense que je peux gérer 8 paires en un mois.
Je n'entrerai pas dans votre code moi-même ( je vais étudier le processus tranquillement avec les classes et ainsi de suite en utilisant votre exemple).
Presque oublié (pour faire une alerte comme un avertissement s'il n'y a pas d'historique ou si la ligne n'a pas changé ses valeurs)
Nouvelle version. Ici, il dessine trois périodes : jour, semaine et mois. Il y a un mais, je l'écrirai plus loin.
La nuance est que dans un cas, nous comparons le jour précédent à l'historique et dans l'autre, nous comparons la semaine précédente. Il s'avère que la journée d'hier peut appartenir à la semaine en cours, mais que son maximum peut être supérieur à celui de la semaine précédente.
Et comme nous comparons des jours à des jours et des semaines à des semaines, il se peut que les lignes des sommets de jour soient plus élevées que les sommets de semaine. Comme ici :
Mais c'est votre logique, pensez si vous en avez besoin ou pas.
Au fait, il y a aussi une erreur hors de la matrice:
La boucle parcourt le tableau des barres quotidiennes, et nous sélectionnons des éléments dans le tableau des barres hebdomadaires.
Merci à Dmitry Fedoseev pour l'idée d'obtenir le numéro de la semaine de l'année.
Je l'ai trouvé dans cet article: https://www.mql5.com/ru/articles/599
Bien joué, Dima !Au fait, il y a aussi une erreur hors de la matrice:
La boucle parcourt le tableau des barres quotidiennes, tandis que nous sélectionnons des éléments dans le tableau des barres hebdomadaires.
Il y a une erreur évidente ici, cette ligne a été ajoutée dans le processus de discussion et le copier-coller a joué son rôle.
Il en a été ainsi dès le début et sortir du cadre est toujours d'actualité.
Il semble que nous ayons oublié l'erreur array out of range dans , car vous n'avez pas eu la flemme de fournir un code beaucoup plus avancé (merci beaucoup à vous pour cela).
Mais je veux encore comprendre quel est le problème (puisque ce tableau est accessible à partir d'autres endroits de l'EA, et ce qui se passe ici reste un mystère).
J'ai remarqué (Où est enregistrée la valeur retournée du type int ? Tu as passé toutes les données dans la fonction, mais tu n'en as pas profité) J'ai ajouté .
C'était comme ça :
ArrayCopyRates(Bar_data_D1,_Symbol,PERIOD_D1) ; // Copie les données des barres du graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
ArrayCopyRates(Bar_data_W1,_Symbol,PERIOD_W1) ; // Copie les données des barres d'un graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
ArrayCopyRates(Bar_data_MN1,_Symbol,PERIOD_MN1) ; // Copie les données des barres d'un graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
Maintenant, ça ressemble à ça :
ACR_D1 = ArrayCopyRates(Bar_data_D1,_Symbol,PERIOD_D1) ; // Copie les données des barres du graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
ACR_W1 = ArrayCopyRates(Bar_data_W1,_Symbol,PERIOD_W1) ; // Copie les données des barres d'un graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
ACR_MN1 = ArrayCopyRates(Bar_data_MN1,_Symbol,PERIOD_MN1) ; // Copie les données des barres d'un graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
Sortie de la valeur dans le som
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1 : i = 1001 Bar_data_D1 [i][2] = 0.7633799999999999
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1 : i = 1002 Bar_data_D1 [i][2] = 0.76147
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1 : i = 1003 Bar_data_D1 [i][2] = 0.75097
2020.12.12 16:51:31.536 2020.02.10 00:05:00 _Test AUDUSD,H1 : tableau hors limites dans '_Test.mq4' (150,59)
2020.12.12 16:51:31.537 2020.02.10 00:05:00 La passe de test a été interrompue en raison d'une erreur critique dans l'EA.
2020.12.12 16:51:31.537 AUDUSD,H1 : 65147 événements tick (73 barres, 9291875 états de barre) traités en 0:00:02.407 (temps total 0:00:05.672)
Pourquoi l'histoire est-elle si peu copiée dans le tableau ?
Et d'où et comment ces valeurs viennent-elles en premier lieu ?
Au fait, il y a aussi une erreur hors de la matrice:
La boucle parcourt le tableau des barres quotidiennes, et nous sélectionnons des éléments dans le tableau des barres hebdomadaires.
Nous devrions immédiatement comprendre la taille du tableau du TF quotidien et le chronométrer et ne pas dépasser le temps.
Je résoudrais probablement les barres hebdomadaires différemment. J'obtiendrais des niveaux de prix avec des dates hebdomadaires, s'ils sont nécessaires, et je les remplirais dans un tableau séparé et je les comparerais avec ce tableau. Ou plutôt, c'est comme ça que je le fais. Pour chaque TF, mon propre tableau d'extrema.
Je ne fais pas de comparaisons, je parle de tableaux.
Et comprendre immédiatement la taille du tableau quotidien de TF et le chronométrer et rester à l'heure.
Je résoudrais probablement les problèmes hebdomadaires de manière différente. J'obtiendrais des niveaux de prix avec des dates hebdomadaires, s'ils sont nécessaires, et je les remplirais dans un tableau séparé et je les comparerais avec ce tableau. Ou plutôt, c'est comme ça que je le fais. Pour chaque TF, j'ai mon propre tableau d'extrema.
Je ne fais pas de comparaisons, je parle de tableaux.
(J'obtiendrais les niveaux de prix avec les dates, s'ils sont nécessaires, et les remplirais dans un tableau séparé et les comparerais avec ce tableau)
Nous ne savons pas quels sont ceux dont nous avons besoin et ceux dont nous n'avons pas besoin, nous avons besoin de tous les historiques possibles de tous les bars.
Taux de copie des tableaux
Copie les données des barres du graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
intArrayCopyRates(
MqlRates&rates_array[],// tableau MqlRates passé par la référence
stringsymbol=NULL,// l'outil
inttimeframe=0// cadre temporel
) ;
Où est-ce que ce n'est pas clair ?
Je n'arrive pas à comprendre la connexion
Il voit 323 mois, ce qui est proche de 27 ans, 1403 semaines et 7015 jours.
Historique de l'AUDUSD depuis 1993, 2020-1993= 27
(Obtenez les niveaux de prix avec les dates, si nécessaire, et mettez-les dans un tableau séparé et comparez avec ce tableau).
Nous ne savons pas quels sont ceux dont nous avons besoin et ceux dont nous n'avons pas besoin, nous avons besoin de tous les historiques possibles de tous les bars.
Taux de copie des tableaux
Copie les données des barres du graphique spécifié dans un tableau et renvoie le nombre de barres copiées.
intArrayCopyRates(
MqlRates&rates_array[],// tableau MqlRates passé par la référence
stringsymbol=NULL,// l'outil
inttimeframe=0// cadre temporel
) ;
Où est-ce que ce n'est pas clair ?
Je n'arrive pas à comprendre la connexion
Il voit 323 mois, ce qui est proche de 27 ans, 1403 semaines et 7015 jours.
Historique de l'AUDUSD depuis 1993, 2020-1993= 27
Aucune idée de ce qui peut être mesuré ou déterminé. D'abord nous mesurons la portée et nous savons.
Si nous notons tous les extrema dans les données quotidiennes sur 27 ans et identifions les égaux, ils seront trop nombreux. La tâche est similaire à l'identification des copies sur un disque, mais plus simple.