Pour entrer tout de suite dans le vif du sujet, prenons un exemple d' indicateur.
Le Code :
#property copyright "Forex Automatique 2011" // copyright
#property link "http://forex-automatique.blogspot.com/"
#property indicator_chart_window // s' affiche sur le graphique
#property indicator_buffers 1 // nombre de Buffers
double Buff1[];
int init()
{
SetIndexBuffer(0, Buff1); // assignation de l' array Buff1 au buffer
SetIndexStyle(0, DRAW_LINE, EMPTY, 2, Red);
return;
}
int start()
{
int i = Bars; // nombre de périodes
while(i >= 0)
{
Buff1[i] = High[i]; // valeur du Buffer pour chaque période
i--;
}
return;
}
Explications :
Dans ce code, le mot "Buffer" apparaît plusieurs fois. Les buffers sont indispensables pour créer des indicateurs en MQL4. Ce sont des espaces mémoire qui contiennent toutes les valeurs que prend un indicateur.
Le buffer est un array, sa déclaration est réalisée par :
double Buff1[];
et
SetIndexBuffer(0, Buff1);
La fonction SetIndexStyle définit la forme de l' indicateur.
SetIndexStyle(int index, int type, int style=EMPTY, int width=EMPTY, color = CLR_NONE)
- index est le numéro du buffer de l' indicateur associé ( doit être compris entre 0 et 7 ).
- type est la forme sous laquelle doit se présenter l' indicateur. Au choix parmi :
Constante | Valeur | Description |
---|---|---|
DRAW_LINE | 0 | Ligne |
DRAW_SECTION | 1 | Sections |
DRAW_HISTOGRAM | 2 | Histogramme |
DRAW_ARROW | 3 | Symboles |
DRAW_ZIGZAG | 4 | Zig-Zag |
DRAW_NONE | 12 | Ne rien dessiner |
- style voir en-dessous.
- width est la grosseur des lignes ( 1, 2, 3, 4, ou 5 ).
Si width est égal à 1 et que l' indicateur est une ligne, la variable style peut prendre les valeurs suivantes :
Constante | Valeur | Description |
---|---|---|
STYLE_SOLID | 0 | Ligne continue |
STYLE_DASH | 1 | Ligne discontinue |
STYLE_DOT | 2 | Pointillés |
STYLE_DASHDOT | 3 | |
STYLE_DASHDOTDOT | 4 |
- color est la couleur que prendra l' indicateur.
Dans notre exemple de code, l' indicateur est une courbe attachée au graphique qui suit le plus haut de chaque période. Pour l' installer, cliquez sur 'Compile'. L' indicateur se trouve alors dans l' onglet 'Indicateurs Programmés' de la fenêtre 'Navigateur'.
Si on modifie certaines parties du code, la forme de l' indicateur change radicalement...
Avec des symboles à la place de la courbe :
Dans une fenêtre séparée :
( remplacement de #property indicator_chart_window par #property indicator_separate_window ).
En histogramme :
Aucun commentaire:
Enregistrer un commentaire