ChartOpen

Belirtilen sembol ve periyot ile yeni bir çizelge açar.

long  ChartOpen(
   string           symbol,     // Sembol ismi
   ENUM_TIMEFRAMES  period      // Periyot
   );

Parametreler

symbol

[in]  Çizelge sembolü. NULL değeri mevcut (Uzman Danışmanın iliştirildiği) çizelge sembolü anlamına gelir.

period

[in]  Çizelge periyodu (zaman aralığı). ENUM_TIMEFRAMES değerlerinden biri olabilir. 0 mevcut çizelge periyodu anlamına gelir.

Dönüş değeri

Başarılı ise, açılan çizelgenin kimliğine dönüş yapar. Aksi durumda 0 değerine dönüş yapar.

Not

Terminalde açılan çizelgelerin sayısı CHARTS_MAX değerini geçemez.

Örnek:

#define CHART_SYMBOL  NULL
#define CHART_PERIOD  PERIOD_CURRENT
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- yeni bir grafik sembolü ve zaman dilimi ayarla
   string symbol=CHART_SYMBOL;
   if(symbol==NULL)
      symbol=Symbol();
   ENUM_TIMEFRAMES timeframe = (CHART_PERIOD==PERIOD_CURRENT ? Period() : CHART_PERIOD);
   
//--- belirtilen sembol ve zaman dilimiyle yeni bir grafik aç
   long chart_id=ChartOpen(symboltimeframe);
   if(chart_id==0)
     {
      Print("ChartOpen() failed. Error "GetLastError());
      return;
     }
 
//--- açılan grafiğin parametrelerini günlüğe yazdır
   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);
   /*
   sonuç:
   A new chart of the GBPUSD symbol has been opened with a period of M1 and ChartID 133346697706632016
   */
  }