Propriétés du Graphique

Les valeurs de l'énumération ENUM_CHART_PROPERTY sont utilisées comme paramètres des fonctions utilisées pour travailler avec les graphiques. L'abréviation r/o dans la colonne "Type de la Propriété" signifie que cette propriété est en lecture seule et ne peut pas être modifiée. L'abréviation w/o dans la colonne "Type de la Propriété" signifie que cette propriété est en écriture seule et qu'elle ne peut pas être récupérée. Lors de l'accès à certaines propriétés, il est nécessaire de spécifier un paramètre supplémentaire permettant d'indiquer le numéro de la sous-fenêtre du graphique. 0 signifie la fenêtre principale.

Les fonctions définissant les propriétés du graphique sont en fait utilisées pour envoyer les commandes de changement au graphique. Si ces fonctions sont excutées avec succès, la commande est ajoutée dans la queue générale des évènements du graphique. Les changements sont appliqués au graphique lors de la prise en charge des évèvenements du graphique de la queue.

N'attendez donc pas une mise à jour visuelle immédiate du graphique après l'appel à ces fonctions. Le graphique est généralement mis à jour automatiquement par le terminal suivant les changements suivants - l'arrivée d'une nouvelle cotation, le redimensionnement de la fenêtre du graphique, etc. Utiliser la fonction ChartRedraw() pour forcer la mise à jour du graphique.

Pour les fonctions ChartSetInteger() et ChartGetInteger()

ENUM_CHART_PROPERTY_INTEGER

Identifiant

Description

Type de la Propriété

CHART_SHOW

Dessin du graphique des prix. Si false, le dessin de n'importe quel attribut du graphique est désactivé et toutes les échelles des bordures du graphique sont supprimées, incluant les échelles du temps et des prix, la barre de navigation rapide, les étiquettes des évènements du Calendrier, les étiquettes des positions, les infobulles des indicateurs et des barres, les sous-fenêtres des indicateurs, les histogrammes de volume, etc.

Désactiver le dessin est la parfaite solution pour créer une interface personnalisée d'un programme utilisant les resources graphiques.

Les objets graphiques sont toujours dessinés indépendamment de la valeur de la propriété CHART_SHOW.

bool

CHART_IS_OBJECT

Identification de l'objet "Graphique" (OBJ_CHART) — retourne true pour un object graphique. Retourne false pour un graphique réel

bool   r/o

CHART_BRING_TO_TOP

Affiche le graphique par-dessus tous les autres graphiques

bool  

CHART_CONTEXT_MENU

Active/désactive l'accès au menu contextuel avec le clic droit.

Lorsque CHART_CONTEXT_MENU=false, seul le menu contextuel du graphique est désactivé. Le menu contextuel des objets du graphique reste disponible.

bool  (true par défaut)

CHART_CROSSHAIR_TOOL

Active/désactive l'accès à l'outil Croix avec le bouton du milieu.

bool  (true par défaut)

CHART_MOUSE_SCROLL

Défilement horizontal du graphique avec le bouton gauche de la souris. Le défilement vertical est également possible si la valeur de l'une des propriétés suivantes est à true : CHART_SCALEFIX, CHART_SCALEFIX_11 ou CHART_SCALE_PT_PER_BAR

Lorsque CHART_MOUSE_SCROLL=false, le défilement du graphique avec la molette de la souris n'est pas disponible.

bool

CHART_EVENT_MOUSE_WHEEL

Envoie les notifications des évènements de la molette de la souris (CHARTEVENT_MOUSE_WHEEL) à tous les programmes mql5 programs sur graphique

bool  (true par défaut)

CHART_EVENT_MOUSE_MOVE

Envoie les notifications des mouvements de la souris et des évènements de clics (CHARTEVENT_MOUSE_MOVE) à tous les programmes mql5 sur un graphique

bool

CHART_EVENT_OBJECT_CREATE

Envoi une notification d'évènement de création d'un nouvel objet (CHARTEVENT_OBJECT_CREATE) à tous les programmes mql5 sur un graphique

bool

CHART_EVENT_OBJECT_DELETE

>Envoie une notification d'évènement de suppression d'un objet (CHARTEVENT_OBJECT_DELETE) à tous les programmes mql5 sur un graphique

bool

CHART_MODE

Type du graphique (chandeliers, barres ou ligne brisée)

enum     ENUM_CHART_MODE

CHART_FOREGROUND

Graphique des prix au premier plan

bool

CHART_SHIFT

Décalage du graphique des prix du bord droit

bool

CHART_AUTOSCROLL

Déplacement automatique vers la bordure droite du graphique

bool

CHART_KEYBOARD_CONTROL

Permet de gérer le graphique avec le clavier ("Début", "Fin", "Page Précedente", "+", "-", "Flèche vers le haut", etc.). Mettre CHART_KEYBOARD_CONTROL à false désactive le défilement et la mise à l'échelle du graphique tout en laissant intacte la possibilité de reçevoir les évènements d'appui sur les touches dans la fonction OnChartEvent().

bool

CHART_QUICK_NAVIGATION

Permet au graphique d'intercepter l'appui sur les touches Espace et Entrée pour activer la barre de navigation rapide. La barre de navigation rapide apparaît automatiquement dans le bas du graphique après avoir double-cliqué avec la souris ou après avoir appuyé sur Espace/Entrée. Elle vous permet de changer rapidement de symbole, de période et de date de la première barre visible.

bool

CHART_SCALE

Echelle

int        de 0 à 5

CHART_SCALEFIX

Mode d'échelle fixe

bool

CHART_SCALEFIX_11

Mode d'échelle 1:1 mode

bool

CHART_SCALE_PT_PER_BAR

Echelle à spécifier en points par barre

bool

CHART_SHOW_TICKER

Affiche un ticker du symbole dans le coin supérieur gauche. Configurer CHART_SHOW_TICKER sur 'false' définit également CHART_SHOW_OHLC sur 'false' et désactive OHLC

bool

CHART_SHOW_OHLC

Affiche les valeurs OHLC dans le coin supérieur gauche. Configurer CHART_SHOW_OHLC sur 'true' définit également CHART_SHOW_TICKER sur 'true' et active le ticker

bool

CHART_SHOW_BID_LINE

Affichage des valeurs Bid sous forme d'une ligne horizontale dans un graphique

bool

CHART_SHOW_ASK_LINE

Affichage des valeurs Ask sous forme d'une ligne horizontale dans un graphique

bool

CHART_SHOW_LAST_LINE

Affichage des valeurs Last sous forme d'une ligne horizontale dans un graphique

bool

CHART_SHOW_PERIOD_SEP

Affichage de séparateurs verticaux entre des périodes adjacentes

bool

CHART_SHOW_GRID

Affichage de la grille dans un graphique

bool

CHART_SHOW_VOLUMES

Affichage des volumes dans le graphique

enum     ENUM_CHART_VOLUME_MODE

CHART_SHOW_OBJECT_DESCR

Affichage des descriptions des objets (non disponible pour tous les objets)

bool

CHART_VISIBLE_BARS

Le nombre de barres du graphique qui peuvent être affichées

int r/o

CHART_WINDOWS_TOTAL

Le nombre total de fenêtres, incluant les sous-fenêtres d'indicateurs

int r/o

CHART_WINDOW_IS_VISIBLE

Visibilité des sous-fenêtres

bool r/o   modificateur - numéro de la sous-fenêtre

CHART_WINDOW_HANDLE

Handle de la fenêtre du graphique (HWND)

int r/o

CHART_WINDOW_YDISTANCE

La distance entre la bordure supérieure de la sous-fenêtre de l'indicateur et la bordure supérieure de la fenêtre du graphique principal, selon l'axe vertical Y, en pixels. Dans le cas d'un évènement souris, le coordonnées du curseur sont passées sous la forme de coordonnées de la fenêtre du graphique principal, tandis que les coordonnées des objets graphiques dans une sous-fenêtre sont relatives au coin supérieur gauche de la sous-fenêtre.

La valeur est nécessaire pour convertir les coordonnées absolues du graphique principal en coordonnées locales de la sous-fenêtre pour une utilisation correcte des objets graphiques, dont les coordonnées sont relatives au coin supérieur gauche du cadre de la sous-fenêtre.

int r/o     modificateur - numéro de la sous-fenêtre

CHART_FIRST_VISIBLE_BAR

numéro de la première barre visible sur le graphique. L'indexation des barres est la même que pour les timeseries.

int r/o

CHART_WIDTH_IN_BARS

Largeur du graphique en barres

int r/o

CHART_WIDTH_IN_PIXELS

Largeur du graphique en pixels

int r/o

CHART_HEIGHT_IN_PIXELS

Hauteur du graphique en pixels

int      modificateur - numéro de la sous-fenêtre

CHART_COLOR_BACKGROUND

Couleur d'arrière plan du graphique

color

CHART_COLOR_FOREGROUND

Couleur des axes, de l'échelle et de la ligne OHLC

color

CHART_COLOR_GRID

Couleur de la grille

color

CHART_COLOR_VOLUME

Couleur des volumes et des niveaux d'ouverture des positions

color

CHART_COLOR_CHART_UP

Couleur des barres haussières, des ombres et des contours du corps des bougies haussières

color

CHART_COLOR_CHART_DOWN

Couleur des barres baissières, des ombres et des contours du corps des bougies baissières

color

CHART_COLOR_CHART_LINE

Couleur du graphique en ligne brisée et couleur des bougies japonaises en "Doji"

color

CHART_COLOR_CANDLE_BULL

Couleur du corps d'une bougie haussière

color

CHART_COLOR_CANDLE_BEAR

Couleur du corps d'une bougie baissière

color

CHART_COLOR_BID

Couleur du niveau du prix Bid

color

CHART_COLOR_ASK

Couleur du niveau du prix Ask

color

CHART_COLOR_LAST

Couleur de la ligne du prix de la dernière transaction effectuée (Last)

color

CHART_COLOR_STOP_LEVEL

Couleur des niveaux des ordres stop (Stop Loss et Take Profit)

color

CHART_SHOW_TRADE_LEVELS

Affichage des niveaux de trading sur le graphique (niveaux des positions ouvertes, des Stop Loss, des Take Profit et des ordres en attente)

bool

CHART_DRAG_TRADE_LEVELS

Autorisation de glisser les niveaux de trading sur le graphique avec la souris. Le mode de glissement est activé par défaut (valeur true)

bool

CHART_SHOW_DATE_SCALE

Affichage de l'échelle du temps sur le graphique

bool

CHART_SHOW_PRICE_SCALE

Affichage de l'échelle des prix sur le graphique

bool

CHART_SHOW_ONE_CLICK

Affichage du panneau de "Trading En Un Clic"sur le graphique

bool

CHART_IS_MAXIMIZED

La fenêtre du graphique est maximisée

bool  r/o

CHART_IS_MINIMIZED

La fenêtre du graphique est minimisée

bool  r/o

CHART_IS_DOCKED

La fenêtre du graphique est ancrée. Si définie à false, le graphique peut être déplacé en dehors de la zone du terminal

bool

CHART_FLOAT_LEFT

La coordonnée gauche de la fenêtre non-ancrée du graphique, relativement à l'écran virtuel

int

CHART_FLOAT_TOP

La coordonnée supérieure de la fenêtre non-ancrée du graphique, relativement à l'écran virtuel

int

CHART_FLOAT_RIGHT

La coordonnée droite de la fenêtre non-ancrée du graphique, relativement à l'écran virtuel

int

CHART_FLOAT_BOTTOM

La coordonnée inférieure de la fenêtre non-ancrée du graphique, relativement à l'écran virtuel

int

Pour les fonctions ChartSetDouble() et ChartGetDouble()

ENUM_CHART_PROPERTY_DOUBLE

Identifiant

Description

Type de la Propriété

CHART_SHIFT_SIZE

La taille du décalage de la barre zéro depuis le bord droit en pourcentage

double  (de 10% à 50%)

CHART_FIXED_POSITION

La position fixée du graphique depuis le bord gauche en pourcentage. La position fixée du graphique est marquée par un petit triangle gris sur l'axe horizontal du temps. Il n'est affiché que si le défilement automatique du graphique vers la droite à l'arrivée d'un tick est désactivé (voir la propriété CHART_AUTOSCROLL). La barre d'une position fixée reste à la même place lors du zoom.

double

CHART_FIXED_MAX

Maximum fixé du graphique

double

CHART_FIXED_MIN

Minimum fixé du graphique

double

CHART_POINTS_PER_BAR

Echelle en points par barre

double

CHART_PRICE_MIN

Minimum du graphique

double r/o   modificateur - numéro de la sous-fenêtre

CHART_PRICE_MAX

Maximum du graphique

double r/o   modificateur - numéro de la sous-fenêtre

Pour les fonctions ChartSetString() et ChartGetString()

ENUM_CHART_PROPERTY_STRING

Identifiant

Description

Type de la Propriété

CHART_COMMENT

Texte du commentaire dans un graphique

string

CHART_EXPERT_NAME

Le nom d'un Expert Advisor en cours d'exécution sur le graphique ayant le chart_id spécifié

string r/o

CHART_SCRIPT_NAME

Le nom d'un script en cours d'exécution sur le graphique ayant le chart_id spécifié

string r/o

Exemple :

   int chartMode=ChartGetInteger(0,CHART_MODE);
   switch(chartMode)
     {
      case(CHART_BARS):    Print("CHART_BARS");   break;
      case(CHART_CANDLES): Print("CHART_CANDLES");break;
      default:Print("CHART_LINE");
     }
   bool shifted=ChartGetInteger(0,CHART_SHIFT);
   if(shifted) Print("CHART_SHIFT = true");
   else Print("CHART_SHIFT = false");
   bool autoscroll=ChartGetInteger(0,CHART_AUTOSCROLL);
   if(autoscroll) Print("CHART_AUTOSCROLL = true");
   else Print("CHART_AUTOSCROLL = false");
   int chartHandle=ChartGetInteger(0,CHART_WINDOW_HANDLE);
   Print("CHART_WINDOW_HANDLE = ",chartHandle);
   int windows=ChartGetInteger(0,CHART_WINDOWS_TOTAL);
   Print("CHART_WINDOWS_TOTAL = ",windows);
   if(windows>1)
     {
      for(int i=0;i<windows;i++)
        {
         int height=ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS,i);
         double priceMin=ChartGetDouble(0,CHART_PRICE_MIN,i);
         double priceMax=ChartGetDouble(0,CHART_PRICE_MAX,i);
         Print(i+": CHART_HEIGHT_IN_PIXELS = ",height," pixels");
         Print(i+": CHART_PRICE_MIN = ",priceMin);
         Print(i+": CHART_PRICE_MAX = ",priceMax);
        }
     }

Voir aussi

Exemples d'Utilisation du Graphique