L'indicateur se corrompt - page 4

 
RaptorUK:

Si je recherche des lignes qui semblent être déconnectées des barres du graphique (comme dans votre premier message), je n'ai aucun problème.

La quatrième capture d'écran semble intéressante. D'après ce que je vois, le code réduit devrait dessiner une ligne toutes les 25 minutes, entre le bas/haut des 20 dernières barres. Par conséquent, une série de lignes avec un écart de 5 minutes entre elles. Mais dans votre dernière capture d'écran, les lignes se chevauchent. Cela pourrait potentiellement être causé par des choses comme la recompilation de l'indicateur lorsqu'il est déjà attaché à un graphique, mais avez-vous une idée de ce qui a réellement causé cela ?
 
jjc:
Cela pourrait potentiellement être causé par des choses comme la recompilation de l'indicateur lorsqu'il est déjà attaché à un graphique, mais avez-vous une idée de ce qui a causé cela ?
L'indicateur était attaché et rien d'autre... pas de redémarrage pour une raison quelconque.
 
jjc:
La quatrième capture d'écran semble intéressante.
Il y a des barres manquantes, à partir de 17:08 la prochaine barre est 17:15, la barre de 17:00 est manquante aussi . . .
 
RaptorUK:
Il y a des barres manquantes, à partir de 17:08 la prochaine barre est 17:15, la barre de 17:00 manque aussi...
Oui, bien sûr, cela explique cela. Les lignes sont tracées toutes les 25 minutes, pas toutes les 25 barres M1. Elles peuvent donc se chevaucher. Ignorez-moi ; mon observation n'a rien à voir avec le phénomène principal - que vous ne pouvez pas (encore) reproduire - des lignes qui se détachent des barres.
 
jjc:
Ignorez-moi ; mon observation n'avait rien à voir avec le phénomène principal - que vous ne pouvez pas (encore) reproduire - des lignes qui se détachent des barres.
...en supposant, bien sûr, que cet indicateur réduit est censé être capable de reproduire le phénomène original des lignes qui se détachent, et que le chevauchement des lignes est un problème attendu plutôt que quelque chose qui est considéré comme un bug et la preuve qu'il y a un problème.
 
J'ai une idée... mais je dois sortir maintenant, j'ai ajouté l'indicateur à un nouveau graphique, je testerai mon idée à mon retour et je posterai les résultats.
 
RaptorUK:
J'ai une idée... mais je dois sortir maintenant, j'ai ajouté l'indicateur à un nouveau graphique, je testerai mon idée à mon retour et je posterai les résultats.
J'attendrais la confirmation d'AnkaSoftware que cet indicateur réduit reproduit le problème original (lignes détachées), plutôt que le chevauchement des lignes qui est supposé être une indication d'un problème.

J'aurais dû m'en apercevoir immédiatement car j'ai pensé "Utilisation de TimeCurrent() dans un indicateur ? Comme c'est étrange". C'est évidemment étrange précisément parce que - comme ici - il est presque inévitablement lié à une hypothèse invalide qu'il y aura une série ininterrompue de barres. Si vous utilisez TimeCurrent() dans un exemple réduit tel que celui-ci, cela indique probablement que vous avez également fait quelque chose de similaire dans le code original, et donc qu'il y aura des problèmes autour des lacunes dans la séquence de barres.

Je ne vois toujours pas comment le code réduit pourrait conduire à des lignes détachées sans qu'il y ait effectivement un problème MT4 de quelque sorte, mais l'utilisation de TimeCurrent() me rend plus suspect que jamais qu'il s'agit du type de bogue qui était impliqué par les captures d'écran précédentes.
 
jjc:
J'attendrais la confirmation d'AnkaSoftware que cet indicateur réduit reproduit le problème original (lignes détachées), plutôt que le chevauchement des lignes qui est supposé être une indication d'un problème.

J'aurais dû m'en apercevoir immédiatement car j'ai pensé "Utilisation de TimeCurrent() dans un indicateur ? Comme c'est étrange". C'est évidemment étrange précisément parce que - comme ici - il est presque inévitablement lié à une hypothèse invalide qu'il y aura une série ininterrompue de barres. Si vous utilisez TimeCurrent() dans un exemple réduit tel que celui-ci, cela indique probablement que vous avez également fait quelque chose de similaire dans le code original, et donc qu'il y aura des problèmes autour des lacunes dans la séquence de barres.

Je ne vois toujours pas comment le code réduit pourrait conduire à des lignes détachées sans qu'il y ait effectivement un problème MT4 de quelque sorte, mais l'utilisation de TimeCurrent() me rend plus suspect que jamais qu'il s'agit du type de bogue qui était impliqué par les captures d'écran précédentes.

Sur mon système, le code réduit est capable de reproduire le problème original des lignes détachées.

Si vous parcourez le fichier xls avec le vidage du tableau des indicateurs, les indices des données des lignes d'indicateurs se déplacent dans le tableau. Ainsi, une ligne d'indicateur qui était valide entre les barres t1 et t2, est déplacée vers les barres t3 et t4 et apparaît détachée.

TimeCurrent n'est utilisé que pour obtenir un signal pour dessiner les lignes à des intervalles spécifiés. Les barres sont toujours dessinées de T - 1 à T - 20.

Raptor - Quel est votre paramètre 'Max bars on chart' ? Essayez avec un paramètre de 10 000.

 
AnkaSoftware:

Sur mon système, le code réduit est capable de reproduire le problème original des lignes détachées. [...]

Si vous voulez un autre bug MT4 possible à poursuivre, que se passe-t-il si vous utilisez Low[i] et High[i] plutôt que iLow() et iHigh() ?
 
AnkaSoftware:
Vous trouverez ci-joint un exemple d'indicateur, qui reproduira le problème. Sur une plateforme Windows 64 bit, attachez l'indicateur à un graphique M1, et laissez-le fonctionner pendant 4+ heures.

Qu'entendez-vous par "corruptions" ? Je viens d'attacher votre indicateur à EURUSD M1 et je ne vois aucune valeur.