TimeCurrent

Rend le dernier temps connu du serveur, le temps de l'arrivée de la dernière cotation pour un des symboles choisis dans "L'aperçu du marché". Au gestionnaire OnTick() cette fonction rendra le temps du tick traité venant. Dans les autres cas (par exemple, l'appel dans les gestionnaires OnInit(), OnDeinit(), OnTimer() etc) c'est — le temps de l'arrivée de la dernière cotation selon n'importe quel symbole, accessible dans la fenêtre "L'aperçu du marché", ce temps, qui est montré dans le titre de cette fenêtre. La valeur du temps est formée sur un serveur commercial et ne dépend pas des des ajustements du temps sur l'ordinateur de l'utilisateur. Il y a 2 variantes de la fonction.

L'appel sans paramètres

datetime  TimeCurrent();

L'appel avec le paramètre du type MqlDateTime

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // variable du type de la structure
   );

Paramètres

dt_struct

[out]  La variable du type de la structure MqlDateTime.

La valeur rendue

La valeur du type datetime

Note

Si la variable du type de la structure MqlDateTime a été transmise comme paramètre, elle s'est remplie de façon appropriée.

Pour organiser les compteurs et la minuterie à haute résolution il faut utiliser la fonction GetTickCount () qui donne la valeur en millisecondes.

При работе в тестере стратегий время последней котировки TimeCurrent() моделируется в соответствии с историческими данными.

Example:

void OnStart()
  {
//--- declare the MqlDateTime variable to be filled with date/time data and get the time of the last quote from the Market Watch window
   MqlDateTime tm={};
   datetime    time1=TimeCurrent();    // first form of call: time of the last quote for one of the symbols in the Market Watch window
   datetime    time2=TimeCurrent(tm);  // second form of call: time of the last quote for one of the symbols in the Market Watch window with filling of the MqlDateTime structure
   
//--- display the result of receiving the date/time and filling the structure with the corresponding data in the log
   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));
   /*
   result:
   Tick time2024.04.18 15:40:06
   - Year2024
   - Month04
   - Day18
   - Hour15
   - Min40
   - Sec06
   - Day of Year108
   - Day of Week4 (THURSDAY)
   */
  }