【问题标题】:Import internet time data into metatrader4将互联网时间数据导入 metatrader4
【发布时间】:2018-09-17 13:59:54
【问题描述】:

我发现如果服务器时间设置错误,TimeGmt() 函数是不准确的,尤其是获取其他夏令时时区。

有什么方法可以从互联网上抓取时间数据并输入到智能交易系统中?找到了WebRequest函数,但是对参数不是很了解。

我笔记本电脑上的时钟与time.windows.com 同步。是否也可以在 mt4 中执行此操作?还有time.is等其他网站。

谢谢

【问题讨论】:

    标签: mql4 metatrader4 mql5 mt4


    【解决方案1】:

    您可以使用 WebRequest 函数然后解析输出。虽然有很多愚蠢的工作。如果您的笔记本电脑已同步,您可以使用TimeLocal()功能查询当前当地时间,并获取您笔记本电脑的时间。它在测试器中不起作用(实际上,除了TimeCurrent() 之外的任何东西都可以正常工作,如官方文档中所述)。

    如果访问“time.is”网站,您必须找到看起来像“20:42:15”的行并从该行中提取当前时间(在我的情况下为 20:42)。您应该使用 GET 请求,因此请使用第一个 WebRequest 函数。 请记住,WebRequest 是异步的,因此访问网站然后解析数据等需要时间,并且您的 ea 在继续之前等待回复,因此每周左右调用一次该函数可能是有意义的。

    【讨论】:

    • 非常感谢。所以那时是可能的。问题是,我不完全了解如何使用 WebRequest 函数。我在 cookie、referer、数据和所有其他参数中放入了什么。超时是我知道的唯一参数。大声笑
    • Cookie 和referrer 可以替换为NULL,对于数据-使用空char array,其大小为0。如果您必须传递引用-首先创建它(char emptydata[], result[]; string result_headers;)其他 - 输入默认值(NULL0)。如果WebRequest 返回200,只需按照示例#1 docs.mql4.com/en/common/webrequest 使用您的网站地址并将结果数组转换为字符串ouput=CharArrayToString(result);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-13
    • 1970-01-01
    • 2019-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-02
    相关资源
    最近更新 更多