SymbolInfoSessionTrade

Belirtilen sembol ve gün için, belirtilen alım-satım seanslarının başlangıç ve bitiş zamanlarının alınmasını sağlar.

bool  SymbolInfoSessionTrade(
   string            name,                // sembol ismi
   ENUM_DAY_OF_WEEK  day_of_week,         // haftanın günü
   uint              session_index,       // seans indisi
   datetime&         from,                // seans başlangıç zamanı
   datetime&         to                   // seans başlangıç zamanı
   );

Parametreler

name

[in]  Sembol ismi.

ENUM_DAY_OF_WEEK

[in]  Haftanın günü, ENUM_DAY_OF_WEEK değerlerinden biri olabilir.

uint

[in]  Başlangıç ve bitiş zamanlarını almak istediğimiz seansın sıra numarası. Seansların indislenmesine 0 ile başlanır.

from

[out]  00 saat 00 dakikadan buyana geçmiş saniyeler bazında seans açılış zamanı. Dönüş değerinde tarih gözardı edilir.

to

[out]  00 saat 00 dakikadan buyana geçmiş saniyeler bazında seans kapanış zamanı. Dönüş değerinde tarih gözardı edilir.

Dönüş değeri

Belirtilen seans, sembol ve gün için istenen veriler alınmışsa 'true', aksi durunda 'false' dönüşü yapar.

Örnek:

#define SYMBOL_NAME   Symbol()
#define SESSION_INDEX 0
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- başlığı sembol adı ve SESSION_INDEX ile yazdır ve
//--- pazartesiden cumaya kadar haftanın günlerine göre bir döngü içerisinde, işlem seansının başlangıç ve bitiş saatlerini günlüğe yazdır
   PrintFormat("Symbol %s, Trade session %d:"SYMBOL_NAMESESSION_INDEX);
   for(int i=MONDAYi<SATURDAYi++)
      SymbolInfoSessionTradePrint(SYMBOL_NAME, (ENUM_DAY_OF_WEEK)iSESSION_INDEX);
   /*
  sonuç:
   Symbol GBPUSDTrade session 0:
   - Monday     00:15 - 23:55
   - Tuesday    00:15 - 23:55
   - Wednesday  00:15 - 23:55
   - Thursday   00:15 - 23:55
   - Friday     00:15 - 23:55
   */
  }
//+------------------------------------------------------------------+
//| Belirtilen sembol ve haftanın günü için belirtilen işlem         |
//| seansının başlangıç ve bitiş saatlerini günlüğe gönder           |
//+------------------------------------------------------------------+
void SymbolInfoSessionTradePrint(const string symbolconst ENUM_DAY_OF_WEEK day_of_weekconst uint session_index)
  {
//--- işlem seansının başlangıcını ve sonunu kaydetmek için değişkenler bildir
   datetime date_from;  // seans başlangıç saati
   datetime date_to;    // seans sonu saati
   
//--- sembol ve haftanın gününe göre işlem seansına ilişkin verileri al
   if(!SymbolInfoSessionTrade(symbolday_of_weeksession_indexdate_fromdate_to))
     {
      Print("SymbolInfoSessionTrade() failed. Error "GetLastError());
      return;
     }
     
//--- numaralandırma sabitinden hafta günü adını oluştur
   string week_day=EnumToString(day_of_week);
   if(week_day.Lower())
      week_day.SetChar(0ushort(week_day.GetChar(0)-32));
 
//--- belirtilen işlem seansı için verileri günlüğe gönder
   PrintFormat("- %-10s %s - %s"week_dayTimeToString(date_fromTIME_MINUTES), TimeToString(date_toTIME_MINUTES));
  }

Ayrıca Bakınız

Sembol Özellikleri, TimeToStruct, Veri Yapıları