Citations maximales et minimales visibles - page 2

 
-
obtenir la taille verticale et horizontale du graphique actuel en pixels ;
Avec les outils MQL4 - pas possible. Seulement en important la fonction appropriée.

- obtenir les cotations maximales et minimales visibles du graphique en cours ;
Cela a déjà été fait quelque part.
Une combinaison des fonctions Highest(), Lowest(), BarsPerWindow() et FirstVisibleBar().

- obtenir le nombre total de graphiques développés dans la fenêtre.
Aussi avec l'aide des bibliothèques du système uniquement.

J'ai besoin de ces paramètres pour contrôler la sortie des objets graphiques.
Lisez "MQL4 : Storing and Displaying Information". peut être utile.
 
Chers développeurs !

Je n'ai toujours pas obtenu de réponse à ma question :

Pourquoi, juste après la compilation, FirstVisibleBar( ) renvoie 9104, mais

après le premier tick, FirstVisibleBar( ) = 409, soit 22 fois moins.

Il faut parfois attendre environ une minute pour que le premier tic arrive.

La fonction BarsPerWindow() n'a pas cette étrangeté.
 
komposter, merci pour le tuyau. L'approche est intéressante, mais elle ne résout pas tous les problèmes de contrôle de sortie.

Quelles fonctions et bibliothèques du système doivent être connectées à
- obtient la taille verticale et horizontale du graphique actuel en pixels ;
- obtenir les cotations maximales et minimales visibles du graphique actuel ;
- pour obtenir le nombre total de graphiques développés dans la fenêtre ?

Peut-être serait-il judicieux de compléter le langage MQL4 par des fonctions appropriées ?
 
Chers développeurs ! <br / translate="no">Je n'ai toujours pas reçu de réponse à ma question de votre part :

Vous n'obtiendrez pas de réponse tant que vous n'aurez pas soumis votre code.

En outre, il serait bon de connaître les paramètres du graphique concerné.
 
Pour la pureté de l'expérience, il n'y a qu'un seul opérateur dans l'indicateur personnalisé :

Comment ( " ", BarsPerWindow(), " ", FirstVisibleBar( ), " ", Bars ) ;

L'effet du saut de FirstVisibleBar( ) se produit immédiatement après que l'indicateur soit attaché au graphique et lors du passage d'une période plus grande à une plus petite. Il apparaît sur n'importe quelle paire de devises.

Quels sont les paramètres graphiques qui vous intéressent ?
 
Je vous ai parlé de l'échange de données. Lorsque vous passez à une autre période, il est possible d'échanger les données.

Lorsque vous basculez, vous essayez de placer la carte sur son point de positionnement. C'est aussi le saut dont je vous parlais.

La fonction FirstVisibleBar renvoie simplement le numéro de la première barre visible. Rien de plus.
 
Alors pourquoi BarsPerWindow() ne nécessite-t-il pas de pagination des barres ?
 
<br / translate="no">Alors pourquoi BarsPerWindow() ne nécessite-t-il pas un échange de barres ?

Parce que c'est une valeur constante. Tant que vous ne modifiez pas la taille de la fenêtre du graphique ou son échelle.
 
La valeur de BarsPerWindow( ) dépend de la taille horizontale du graphique et de l'échelle définie.

La valeur de FirstVisibleBar( ) dépend de BarsPerWindow() et du retrait de la bordure droite du graphique.

Pourquoi ces fonctions doivent-elles échanger des données ? Lorsque l'on change de période, la valeur du retrait par rapport au bord droit du graphique ne change pas.
 
Ces fonctions n'échangent pas de données !!!
Les données sont pompées automatiquement lorsque l'horizon temporel est modifié.