TimeLocal

Devuelve la hora local del ordenador en el que está funcionando el terminal de cliente. Existen 2 variantes de la función.

Llamada sin parámetros

datetime  TimeLocal();

Llamada con el parámetro del tipo MqlDateTime

datetime  TimeLocal(
   MqlDateTime&  dt_struct      // variable del tipo de estructura
   );

Parámetros

dt_struct

[out]  Variable del tipo de estructura MqlDateTime.

Valor devuelto

Valor del tipo datetime

Nota

Si la variable del tipo de estructura MqlDateTime ha sido pasada como un parámetro, entonces ella se rellena de modo correspondiente.

Para organizar los contadores y temporizadores de alta resolución, se debe utilizar la función GetTickCount() que ofrece los valores en millisegundos.

Durante el trabajo en el Probador de Estrategias, la hora local TimeLocal() siempre es igual a la hora modelada del servidor TimeCurrent().

Ejemplo:

void OnStart()
  {
//--- declaramos la variable MqlDateTime para que contenga los datos sobre la hora local del ordenador
   MqlDateTime tm={};
   datetime    time1=TimeLocal();   // primera forma de llamada: hora local del ordenador
   datetime    time2=TimeLocal(tm); // segunda forma de llamada: hora local del ordenador con rellenado de la estructura MqlDateTime
   
//--- mostramos en el registro el resultado de la obtenención de la hora local del ordenador y rellenamos la estructura con los datos correspondientes
   PrintFormat("Local 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));
   /*
  Resultado
   Local time2024.04.18 19:44:09
   - Year2024
   - Month04
   - Day18
   - Hour19
   - Min44
   - Sec09
   - Day of Year108
   - Day of Week4 (THURSDAY)
   */
  }