我正在尝试从MetaTrader4终端向节点获取不同交易工具(_Symbol
)的多个时间范围数据。
我该怎么做?
我们可以在MetaTrader4终端内的同一EA中进行吗?
答案 0 :(得分:0)
iOpen(Symbol(),PERIOD_M1,1)
- 是从M1获取数据的方式(最后一栏),如果您需要其他时间范围,请将PERIOD_M1
替换为另一个ENUM_TIMEFRAMES
。那么问题是什么?通常,StackOverflow需要查看基于MCVE的示例来帮助您。
答案 1 :(得分:0)
虽然目的很明确,但使用单个EA发送多个交易工具的实时数据的想法并不适用于上述利益。
MQL4代码执行环境具有一些固定的,硬连线的内部逻辑,由于现实情况,由于这些+加上资本市场和经纪人类型市场访问调解员的工作方式,独立EA将永远不适合这些要求。
简单调用
iOpen( aTradingInstrumentSymbolNAME, // iHigh, iLow, iClose, iVolume, iTime
aSelectedTimeFrameDefinedCODE,
aRelativeBarPTR
)
远远不够。
专业解决方案需要非常关注实时处理功能,以便揭示相互隐藏事件的实际流量,以实现最低限度的处理延迟,因此需要相当高的工程专业知识。
首先学习有关脚本的基础知识,对所有关键代码段进行基准测试,并在[us]中记录其实际持续时间并确保,在所有情况下,您的代码都将保持非阻塞状态。这将决定在黄金时段/高峰时段是否需要多个代码执行线程。
管理完毕后,您的方式就开始朝着预期结果的方向发展。
下一步必须决定跨平台集成所需的可行的进程间/分布式计算数据流和信令。
最后但同样重要的是,重要的一点是这种承诺的法律方面。这取决于您当地的juri§$§$§diction和经纪人的条款&没有人愿意在监狱内庆祝技术上完善的项目。
所有这些,非常有趣的项目。