int _AppliedTo

La variable _AppliedTo permet de trouver le type des données utilisées pour le calcul de l'indicateur :

Type de Données

Signification

Description des données utilisées pour le calcul de l'indicateur.

0

L'indicateur utilise la 2ème forme de l'appel à OnCalculate() - les données pour le calcul ne sont pas spécifiées par un buffer ou par un tableau de données donné

Close

1

Prix de clôture

Open

2

Prix d'ouverture

High

3

Prix les plus hauts

Low

4

Prix les plus bas

Prix médians (HL/2)

5

Prix médians = (High+Low)/2

Prix typiques (HLC/3)

6

Prix typiques = (High+Low+Close)/3

Prix pondérés (HLCC/4)

7

Prix pondérés = (Open+High+Low+Close)/4

Données de l'Indicateur Précédent

8

Les données de l'indicateur qui a été placé sur le graphique juste avant cet indicateur

Données du Premier Indicateur

9

Les données de l'indicateur qui a été placé en premier sur le graphique

Handle de l'indicateur

10+

Les données de l'indicateur qui a été passé à la fonction iCustom() en utilisant le handle de l'indicateur. La valeur de _AppliedTo contient le handle de l'indicateur

 

Exemple :

//+------------------------------------------------------------------+
//| Fonction d'initialisation d'un indicateur personnalisé           |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- mapping des buffers des indicateurs
   SetIndexBuffer(0,Label1Buffer,INDICATOR_DATA);
// Récupère le type des données utilisées pour le calcul de l'indicateur
   Print("_AppliedTo=",_AppliedTo);
   Print(getIndicatorDataDescription(_AppliedTo));
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Description des données utilisées pour le calcul de l'indicateur |
//+------------------------------------------------------------------+
string getIndicatorDataDescription(int data_id)
  {
   string descr="";
   switch(data_id)
     {
      case(0):descr="C'est le 1er type de OnCalculate() - aucun buffer de données";
         break;
      case(1):descr="L'indicateur est calculé sur les prix Close";
         break;
      case(2):descr="L'indicateur est calculé sur les prix Open";
         break;
      case(3):descr="L'indicateur est calculé sur les prix High";
         break;
      case(4):descr="L'indicateur est calculé sur les prix Low";
         break;
      case(5):descr="L'indicateur est calculé sur les prix médians (HL/2)";
         break;
      case(6):descr="L'indicateur est calculé sur les prix typiques (HLC/3)";
         break;
      case(7):descr="L'indicateur est calculé sur les prix pondérés (HLCC/4)";
         break;
      case(8):descr="L'indicateur est calculé sur les Données de l'Indicateur Précédent";
         break;
      case(9):descr="L'indicateur est calculé sur les Données du Premier Indicateur";
         break;
      default: descr="L'indicateur est calculé sur les données de l'indicateur avec le handle = "+string(data_id);
         break;
     }
//---
   return descr;
  }

Voir aussi

ENUM_APPLIED_PRICE