ChartOpen

Ouvre un nouveau graphique avec le symbole et la période indiqués.

long  ChartOpen(
   string           symbol,     // nom du symbole
   ENUM_TIMEFRAMES  period      // période
   );

Paramètres

symbol

[in]  Le symbole du graphique. NULL signifit le symbole du graphique courant (auquel l'expert est attaché).

period

[in]  La période du graphique. Peut prendre une des valeurs de l'énumération ENUM_TIMEFRAMES. 0 est la période du graphique courant.

Valeur de Retour

Retourne l'identificateur du graphique si le graphique a été ouvert avec succès. Sinon retourne 0.

Note

Le nombre possible maximum de graphiques simultanément ouverts dans le terminal ne peut pas être supérieur à la valeur CHARTS_MAX.

Exemple :

#define CHART_SYMBOL  NULL
#define CHART_PERIOD  PERIOD_CURRENT
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- définit un nouveau symbole et une période
   string symbol=CHART_SYMBOL;
   if(symbol==NULL)
      symbol=Symbol();
   ENUM_TIMEFRAMES timeframe = (CHART_PERIOD==PERIOD_CURRENT ? Period() : CHART_PERIOD);
   
//--- ouvre un nouveau graphique avec le symbole et la période spécifiés
   long chart_id=ChartOpen(symboltimeframe);
   if(chart_id==0)
     {
      Print("ChartOpen() failed. Error "GetLastError());
      return;
     }
 
//--- écrit dans le journal les paramètres du graphique ouvert
   PrintFormat("A new chart of the %s symbol has been opened with a period of %s and ChartID %I64u",
               symbolStringSubstr(EnumToString(timeframe), 7), chart_id);
   /*
   résultat :
   A new chart of the GBPUSD symbol has been opened with a period of M1 and ChartID 133346697706632016
   */
  }