TimeLocal

返回客户端运行时电脑上的当地时间,有两种变量函数。

无参量调用

datetime  TimeLocal();

调用MqlDateTime类型参量

datetime  TimeLocal(
   MqlDateTime&  dt_struct      // 结构类型变量
   );

参量

dt_struct

[out] MqlDateTime 结构类型变量

返回值

日期时间 类型值

注释

如果 MqlDateTime 结构类型变量以参量传递,就会填满。

要安排高分辨率的计数器和计时器,可使用GetTickCount()函数,它产生的值以毫秒为单位。

在策略测试器进行测试期间,TimeLocal()总是相当于模拟服务器时间的 TimeCurrent()

示例:

void OnStart()
  {
//--- 声明MqlDateTime变量以填充PC本地时间数据
   MqlDateTime tm={};
   datetime    time1=TimeLocal();   // 第一种调用形式:PC本地时间
   datetime    time2=TimeLocal(tm); // 第二种调用形式:填充MqlDateTime结构的PC本地时间
   
//--- 显示接收PC本地时间的结果,并在日志中使用相应的数据填充结构
   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));
   /*
   Result:
   Local time2024.04.18 19:44:09
   - Year2024
   - Month04
   - Day18
   - Hour19
   - Min44
   - Sec09
   - Day of Year108
   - Day of Week4 (THURSDAY)
   */
  }