SymbolInfoSessionQuote

Ermöglicht den Empfang von Anfangs- und Endzeitpunkt der angegebenen Kurssitzung für ein bestimmtes Symbol und einen bestimmten Wochentag.

bool  SymbolInfoSessionQuote(
   string            name,                // Symbolname 
   ENUM_DAY_OF_WEEK  day_of_week,         // Wochentag
   uint              session_index,       // Nummer der Notierungssitzung
   datetime&         from,                // Anfang der Notierungssitzung
   datetime&         to                   // Ende der Notierungssitzung
   );

Parameter

name

[in] Symbolname.

ENUM_DAY_OF_WEEK

[in]  Wochentag, ein Wert aus der Enumeration ENUM_DAY_OF_WEEK.

uint

[in]  Ordnungszahl einer Sitzung, deren Anfangs- und Endzeit wir erhalten möchten. Die Indizierung der Sitzungen beginnt mit 0.

from

[out]  Uhrzeit des Sitzungsbeginns in Sekunden ab 00 Stunden 00 Minuten, im zurückgegebenen Wert sollte das Datum ignoriert werden.

to

[out]  Uhrzeit des Sitzungsendes in Sekunden ab 00 Stunden 00 Minuten, im zurückgegebenen Wert sollte das Datum ignoriert werden.

Rückgabewert

Wenn die Daten für die angegebene Kurssitzung, Symbol und Wochentag erhalten wurden, wird true zurückgegeben, anderenfalls false.

Beispiel:

#define SYMBOL_NAME   Symbol()
#define SESSION_INDEX 0
 
//+------------------------------------------------------------------+
//| Skript Programm Start Funktion                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- Ausdruck der Kopfzeile mit einem Symbol und dem SESSION_INDEX und
//--- die Ausgabe in einer Schleife von jedem Wochentag von Mo. bis Fr. und der Anfangs- und Endzeit der Notierungssitzung im Journal ausgeben
   PrintFormat("Symbol %s, Quote session %d:"SYMBOL_NAMESESSION_INDEX);
   for(int i=MONDAYi<SATURDAYi++)
      SymbolInfoSessionQuotePrint(SYMBOL_NAME, (ENUM_DAY_OF_WEEK)iSESSION_INDEX);
   /*
  Ergebnis:
   Symbol RU000A103661Quote session 0:
   - Monday     06:45 - 00:00
   - Tuesday    06:45 - 00:00
   - Wednesday  06:45 - 00:00
   - Thursday   06:45 - 00:00
   - Friday     06:45 - 00:00
   */
  }
//+------------------------------------------------------------------+
//| Sende Anfang und Ende der angegebenen Notierungssitzung          |
//| des angegebenen Symbols und Wochentags an das Journal            |
//+------------------------------------------------------------------+
void SymbolInfoSessionQuotePrint(const string symbolconst ENUM_DAY_OF_WEEK day_of_weekconst uint session_index)
  {
//--- Deklarieren der Variablen, um den Beginn und das Ende der Notierungssitzung aufzuzeichnen
   datetime date_from;  // Anfang der Sitzung
   datetime date_to;    // Ende der Sitzung
   
//--- Abrufen der Daten aus der Kurssitzung nach Symbol und Wochentag
   if(!SymbolInfoSessionQuote(symbolday_of_weeksession_indexdate_fromdate_to))
     {
      Print("SymbolInfoSessionQuote() failed. Error "GetLastError());
      return;
     }
     
//--- den Namen des Wochentags aus dem Enumerationswert erstellen
   string week_day=EnumToString(day_of_week);
   if(week_day.Lower())
      week_day.SetChar(0ushort(week_day.GetChar(0)-32));
 
//--- Daten für die angegebene Notierungssitzung an das Journal senden
   PrintFormat("- %-10s %s - %s"week_dayTimeToString(date_fromTIME_MINUTES), TimeToString(date_toTIME_MINUTES));
  }

Siehe auch

Information über das Symbol, TimeToStruct, Datumstruktur