将互联网时间数据导入 metatrader4

Posted

技术标签:

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

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

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

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

谢谢

【问题讨论】:

【参考方案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);

以上是关于将互联网时间数据导入 metatrader4的主要内容,如果未能解决你的问题,请参考以下文章

如何将mysql中的数据导到另一个mysql数据库中?

SQLyog查询数据后如何导到excel

怎么将oracle数据导成dmp格式

sqoop从oracle导数据后是空表

oracle 表数据 怎么远程导到另一个机器的数据库里

Sqoop从hive导数据到mysql中为啥一直报 ERROR tool.ExportTool: