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)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)
  */
  }