SymbolInfoSessionQuote

Permette di ricevere l'ora di inizio e fine delle sessioni quotate specificate per un simbolo e giorno della settimana specifici.

bool  SymbolInfoSessionQuote(
   string            name,                // nome simbolo
   ENUM_DAY_OF_WEEK  day_of_week,         // giorno della settimana
   uint              session_index,       // indice della sessione
   datetime&         from,                // orario di inizio della sessione
   datetime&         to                   // orario di fine della sessione
   );

Parametri

name

[in] Nome del Simbolo.

ENUM_DAY_OF_WEEK

[in] Giorno della settimana, il valore dell' enumerazione ENUM_DAY_OF_WEEK.

uint

[in] Numero ordinale di una sessione, il cui tempo di inizio e di fine tempo si desidera ricevere. L' indicizzazione delle sessioni inizia con 0.

da

[out] Deve essere ignorato nel valore della data restituito, l'orario di inizio della sessione in secondi da 00 ore 00 minuti.

a

[out] Deve essere ignorato nel valore della data restituito, l'orario di fine della sessione in secondi da 00 ore 00 minuti.

Valore restituito

Se i dati per la sessione specificata, simbolo e giorno della settimana vengono ricevuti, restituisce true, altrimenti restituisce false.

Esempio

#define SYMBOL_NAME   Symbol()
#define SESSION_INDEX 0
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//-- stampa l'intestazione con un simbolo e SESSION_INDEX e
//--- in un ciclo per giorno della settimana da Lun a Ven, stampa gli orari di inizio e fine sessione delle quotazioni nel journal
   PrintFormat("Symbol %s, Quote session %d:"SYMBOL_NAMESESSION_INDEX);
   for(int i=MONDAYi<SATURDAYi++)
      SymbolInfoSessionQuotePrint(SYMBOL_NAME, (ENUM_DAY_OF_WEEK)iSESSION_INDEX);
   /*
   risultato:
   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
   */
  }
//+--------------------------------------------------------------------------------------+
//| Invia gli orari di inizio e fine sessione di quotazione specificata |
//| per il simbolo specificato e il giorno della settimana al journal |
//+--------------------------------------------------------------------------------------+
void SymbolInfoSessionQuotePrint(const string symbolconst ENUM_DAY_OF_WEEK day_of_weekconst uint session_index)
  {
//--- dichiara le variabili per registrare l'inizio e la fine della sessione di quotazione
   datetime date_from;  // ora di inizio sessione
   datetime date_to;    // ora di fine sessione
   
//--- ottenere i dati dalla sessione di quotazione per simbolo e giorno della settimana
   if(!SymbolInfoSessionQuote(symbolday_of_weeksession_indexdate_fromdate_to))
     {
      Print("SymbolInfoSessionQuote() failed. Error "GetLastError());
      return;
     }
     
//--- creare il nome del giorno della settimana dalla costante di enumerazione
   string week_day=EnumToString(day_of_week);
   if(week_day.Lower())
      week_day.SetChar(0ushort(week_day.GetChar(0)-32));
 
//-- inviare i dati per la sessione di quotazione specificata al journal
   PrintFormat("- %-10s %s - %s"week_dayTimeToString(date_fromTIME_MINUTES), TimeToString(date_toTIME_MINUTES));
  }

Vedi anche

Proprietà Simbolo, TimeToStruct, Strutture di Dati