bugs et dysfonctionnements - page 2

 
angevoyageur:

Vous ne devez pas vous attendre à autre chose que ce qui est décrit dans la documentation.

Le nombre de tampons dans un indicateur doit être déclaré à l'avance en utilisant les directives du compilateur, par exemple :

#propertyindicator_buffers 3// Nombre de tampons
#propertyindicator_plots 2// Nombre de tracés

Le nombre de tampons utilisés pour le tracé dépend du type d'indicateur. Ce type peut être défini dynamiquement. Le compilateur n'a donc aucun moyen de déterminer l'utilisation correcte de vos tampons. La déclaration ci-dessus pourrait être utilisée avec 2 tracés de 1 buffer, le troisième avec INDICATOR_CALCULATIONS, ou 1 tracé de 1 buffer et 1 de 2 buffers, ou...

MQL5 vous donne une grande flexibilité, c'est à vous de lier votre tampon logiquement avec votre/vos indicateur(s). Ce n'est pas un bug.

je n'appellerais pas cela un bug, c'est un dysfonctionnement. je préciserai à partir de maintenant si je considère le rapport comme un bug ou un dysfonctionnement.

je comprends le concept de #pragma, mais si je déclare à travers des #pragmas

#property indicator_buffers 3
#property indicator_plots   3

cela ne signifie pas que je vais utiliser 3 buffers et 3 plots, cela signifie que j'ai limité l'utilisation des ressources à un maximum de 3 buffers avec un maximum de 3 plots, pour que le système sache combien de mémoire et/ou d'autres ressources il doit réserver au démarrage de mon indicateur.

Donc, indépendamment des maximums que j'ai déclarés, l'utilisation réelle est déterminée par l'allocation dynamique.
Ainsi, lorsque je déclare untampon indicateur commetamponINDICATOR_CALCULATIONS, je ne m'attends pas à ce qu'il soit visible sur le graphique.

 
angevoyageur:

Quels objets dessinez-vous, le premier semble être une ligne de tendance, mais le second n'a que 2 points d'ancrage?

Quel est votre réglage de la sensibilité de l'aimant ?

C'est l'expansion de fibonacci, la sensibilité de l'aimant est réglée sur 50. Mais cela ne fonctionne pas correctement sur des valeurs inférieures, comme 20.

et d'autres types d'objets aussi, comme les lignes de tendance.

 
graziani:

g #4

l'aimant (outils->options->charts->sensibilité de l'aimant) ne fonctionne pas correctement avec les bougies.

les points sélectionnés ne sont pas placés sur les points typiques des bougies (haut/bas/...), mais dans l'espace intermédiaire.

à côté de cela, si vous déplacez un point, les autres sont également déplacés, alors que vous ne vouliez en déplacer qu'un seul.

Je pense que le snap ne fonctionne que lorsque vous lâchez le point d'ancrage, pas pendant que vous le faites glisser. je sais que cela fonctionne différemment dans, par exemple, Ninja, mais je pense que c'est un comportement habituel pour MetaTrader.
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
  • www.mql5.com
Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding - Documentation on MQL5
 
RaptorUK:
Je pense que le snap ne fonctionne que lorsque vous lâchez le point d'ancrage, et non pendant que vous le faites glisser. Je sais que cela fonctionne différemment dans Ninja, par exemple, mais je pense que c'est le comportement habituel de MetaTrader.
Non, dans MT4, cela fonctionne correctement.
 
graziani:

je n'appellerais pas cela un bug, c'est un dysfonctionnement. je préciserai dorénavant si je considère le rapport comme un bug ou un dysfonctionnement.

je comprends le concept de #pragma, mais si je déclare par #pragmas

cela ne signifie pas que je vais utiliser 3 buffers et 3 plots, cela signifie que j'ai limité l'utilisation des ressources à un maximum de 3 buffers avec un maximum de 3 plots, pour que le système sache combien de mémoire et/ou d'autres ressources il doit réserver au démarrage de mon indicateur.

Ainsi, indépendamment des maximums que j'ai déclarés, l'utilisation réelle est déterminée par l'allocation dynamique.
Ainsi, lorsque je déclare untampon d'indicateur commetamponINDICATOR_CALCULATIONS, je ne m'attends pas à ce qu'il soit visible sur le graphique.

Pouvez-vous montrer le bout de code que vous avez utilisé pour ce "dysfonctionnement" ?
 
RaptorUK:
Je pense que l'accrochage ne fonctionne que lorsque vous lâchez le point d'ancrage, et non pendant que vous le faites glisser. Je sais que cela fonctionne différemment dans Ninja, par exemple, mais je pense que c'est le comportement habituel de MetaTrader.
Ah je vois, l'accrochage sur l'axe X fonctionne lorsque vous le déplacez dans MT4 mais pas dans MT5.
 
graziani:

c'est l'expansion de fibonacci, la sensibilité de l'aimant est réglée sur 50. mais il ne fonctionne pas correctement aussi sur des valeurs inférieures, comme 20.

et d'autres types d'objets aussi, comme les lignes de tendance.

Je ne suis pas très habitué à ce genre d'outil, mais il me semble que cela fonctionne, non ?

Sensibilité de l'aimant

 
angevoyageur:
Pouvez-vous montrer le bout de code que vous avez utilisé pour ce "dysfonctionnement" ?

OK, il semble que nous nous éloignons maintenant de mon idée de signaler ce "dysfonctionnement".

Le point est que lorsque vous définissez un tableau dynamique avec SetIndexBuffer(int, double,ENUM_INDEXBUFFER_TYPE), il est logique de supposer (car ce n'est pas spécifié dans la documentation) qu'en définissant

   SetIndexBuffer(0, all, INDICATOR_DATA);
   SetIndexBuffer(1, up, INDICATOR_DATA);
   SetIndexBuffer(2, down, INDICATOR_CALCULATIONS);

il ne sera pas possible de voir l'existence du troisième buffer où que ce soit : sur le graphique, les propriétés de l' indicateur, ou depuis l'EA utilisant cet indicateur.
D'autant plus que vous êtes FORCÉ de définir la nature de l'utilisation de ce tableau alloué dynamiquement.
(Pour répéter une fois de plus, définir le nombre de tampons et de graphiques par le biais de #pragmas ne signifie pas que vous les utiliserez tous. )

Mais outre le fait que ce n'est pas vrai, il semble que ce n'est pas non plus évident pour les programmeurs expérimentés, donc je ne vois pas l'intérêt pour l'instant de signaler des 'dysfonctionnements' comme celui-ci.

Alors ... dois-je signaler ce genre de choses ou non ?

Je vais essayer une fois de plus avec quelque chose de similaire que j'ai en tête, mais pour le moment, cela semble être une perte de temps (pas seulement pour moi) ;)

 
angevoyageur:

Je ne suis pas très habitué à ce genre d'outil, mais il me semble que ça marche, non ?


je ne peux pas croire que vous ne pouvez pas reproduire cet échec dès le premier essai.

mettez juste la sensibilité à 20/50 et essayez de déplacer les points d'ancrage de la ligne de tendance, du fibo ou de tout autre objet.

Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
  • www.mql5.com
Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding - Documentation on MQL5
 
RaptorUK:
Ah je vois, l'accrochage sur l'axe X fonctionne lorsque vous le déplacez dans MT4 mais pas dans MT5.

oui !

et il s'enclenche sur un niveau incorrect !

et quand vous déplacez d'autres points, tous les points qui ne sont pas enclenchés bougent aussi, alors qu'ils ne devraient pas.

Comment se fait-il que je sois le premier à remarquer cela ?

J'ai remarqué ce comportement irritant après avoir utilisé MT5 pendant 10 minutes il y a 6 mois.