TimeCurrent

Gibt die letzte bekannte Serverzeit, die Zeit des Eintreffens des letzten Kurses eines der im Marktübersicht-Fenster ausgewählten Symbole zurück. Im Event Handler OnTick() gibt diese Funktion die Zeit des empfangenen verarbeiteten Ticks zurück. In den anderen Fällen (z.B. Aufruf in den Event Handlern OnInit(), OnDeinit(), OnTimer()usw) das ist die Zeit des Eintreffens des letzten Kurses für jedes Symbol, das in der Marktübersicht verfügbar ist. Die Zeit, die in der Überschrift dieses Fensters angezeigt wird. Der Zeitwert wird auf dem Handelsserver gebildet und hängt nicht von den Zeiteinstellungen auf dem PC ab. Es gibt zwei Varianten der Funktion.  

Aufruf ohne Parameter

datetime  TimeCurrent();

Aufruf mit dem Parameter vom Typ MqlDateTime

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // Variable des Typs der Zeitstruktur
   );

Parameter

dt_struct

[out]  Variable des Typs der Struktur MqlDateTime.

Rückgabewert

Der Wert vom Typ datetime

Hinweis

Wenn die Variable des Typs der Struktur MqlDateTime als Parameter übergeben wurde, wird sie entsprechend ausgefüllt.

Um einen hochauflösenden Zähler und Timer einzurichten, muss die Funktion GetTickCount() verwendet werden, die die Werte in Millisekunden ausgibt.

Im Strategietester wird die Zeit des letzten Kurses TimeCurrent() in Übereinstimmung mit historischen Daten modelliert.

Beispiel:

void OnStart()
  {
//--- Deklarieren der Variable MqlDateTime, die mit Datums-/Zeitdaten gefüllt werden soll und die Zeit des letzten Kurses aus dem Fenster der Marktübersicht
   MqlDateTime tm={};
   datetime    time1=TimeCurrent();    // erste Form des Aufrufs: Zeitpunkt des letzten Kurses für eines der Symbole im Fenster der Marktübersicht
 Datetime time2=TimeCurrent(tm); // zweite Form des Aufrufs: Zeitstempel des letzten Preises für eines der Symbole im Fenster der Marktübersicht, die der Struktur MqlDateTime übergeben wird.
   
//--- Ausgabe des Ergebnisses des Empfangs von Datum/Uhrzeit und der Zuweisung der entsprechenden Daten zur Struktur im Protokoll
   PrintFormat("Tick time: %s\n- Year: %u\n- Month: %02u\n- Day: %02u\n- Hour: %02u\n- Min: %02u\n- Sec: %02u\n- Day of Year: %03u\n- Day of Week: %u (%s)",
               (string)time1tm.yeartm.montm.daytm.hourtm.mintm.sectm.day_of_yeartm.day_of_weekEnumToString((ENUM_DAY_OF_WEEK)tm.day_of_week));
  /*
  Ergebnis:
   Tick time2024.04.18 15:40:06
   - Year2024
   - Month04
   - Day18
   - Hour15
   - Min40
   - Sec06
   - Day of Year108
   - Day of Week4 (THURSDAY)
  */
  }