TimeLocal

Retorna a hora local de um computador, de onde o terminal cliente está executando. Existem 2 variantes da função.

Chamar sem parâmetros

datetime  TimeLocal();

Chamar com parâmetro de tipo MqlDateTime

datetime  TimeLocal(
   MqlDateTime&  dt_struct      // Variável de tipo estrutura
   );

Parâmetros

dt_struct

[out]  Variável de tipo estrutura MqlDateTime.

Valor do Retorno

Valor de tipo datetime

Observação

Se uma variável de tipo estrutura MqlDateTime for passada como parâmetro, ela é preenchida de acordo.

Para obter contadores e timer de alta-resolução, use a função GetTickCount(), que produz valores em milissegundos.

Durante o teste no testador de estratégia, o tempo do servidor simuladoTimeGMT() é sempre igual ao TimeCurrent().

Exemplo:

void OnStart()
  {
//--- declaramos a variável MqlDateTime para ser preenchida com dados sobre a hora local do computador
   MqlDateTime tm={};
   datetime    time1=TimeLocal();            // primeira forma de chamada: hora local do computador
   datetime    time2=TimeLocal(tm); // segunda forma de chamada: hora local do computador com preenchimento da estrutura MqlDateTime
   
//--- exibimos no log o resultado da obtenção da hora local do preenchimento da estrutura com os dados correspondentes
   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)time1, tm.year, tm.mon, tm.day, tm.hour, tm.min, tm.sec, tm.day_of_year, tm.day_of_week, EnumToString((ENUM_DAY_OF_WEEK)tm.day_of_week));
  /*
  Resultado
   Local time: 2024.04.18 19:44:09
   - Year: 2024
   - Month: 04
   - Day: 18
   - Hour: 19
   - Min: 44
   - Sec: 09
   - Day of Year: 108
   - Day of Week: 4 (THURSDAY)
  */
  }