如何将多个时间帧数据从MQL4发送到Node.js?

时间:2017-07-25 04:34:03

标签: node.js distributed-computing mql4

我正在尝试从MetaTrader4终端向节点获取不同交易工具(_Symbol)的多个时间范围数据。

我该怎么做?

我们可以在MetaTrader4终端内的同一EA中进行吗?

2 个答案:

答案 0 :(得分:0)

iOpen(Symbol(),PERIOD_M1,1) - 是从M1获取数据的方式(最后一栏),如果您需要其他时间范围,请将PERIOD_M1替换为另一个ENUM_TIMEFRAMES。那么问题是什么?通常,StackOverflow需要查看基于MCVE的示例来帮助您。

答案 1 :(得分:0)

A.1:是的,我们可以。

A.2:不,最初的想法并不好。

虽然目的很明确,但使用单个EA发送多个交易工具的实时数据的想法并不适用于上述利益。

MQL4代码执行环境具有一些固定的,硬连线的内部逻辑,由于现实情况,由于这些+加上资本市场和经纪人类型市场访问调解员的工作方式,独立EA将永远不适合这些要求。

简单调用

iOpen( aTradingInstrumentSymbolNAME,       // iHigh, iLow, iClose, iVolume, iTime
       aSelectedTimeFrameDefinedCODE,
       aRelativeBarPTR
       )

远远不够。

专业解决方案需要非常关注实时处理功能,以便揭示相互隐藏事件的实际流量,以实现最低限度的处理延迟,因此需要相当高的工程专业知识。

首先学习有关脚本的基础知识,对所有关键代码段进行基准测试,并在[us]中记录其实际持续时间并确保,在所有情况下,您的代码都将保持非阻塞状态。这将决定在黄金时段/高峰时段是否需要多个代码执行线程。

管理完毕后,您的方式就开始朝着预期结果的方向发展。

下一步必须决定跨平台集成所需的可行的进程间/分布式计算数据流和信令。

最后但同样重要的是,重要的一点是这种承诺的法律方面。这取决于您当地的juri§$§$§diction和经纪人的条款&没有人愿意在监狱内庆祝技术上完善的项目。

所有这些,非常有趣的项目。