MetaTrader的异步Web请求

时间:2014-11-22 14:24:06

标签: algorithmic-trading mql4 metatrader4

我试图看看是否可以为MetaTrader构建一个可以发出异步互联网请求的自定义指标,以便将数据发布到带有PHP接口的服务器。

这些请求可能需要一些时间才能处理网络服务器,因此我担心如果以同步方式执行这些请求,它们会阻止指标不断更新新的刻度数据。

MT4是否有可用的异步库?

1 个答案:

答案 0 :(得分:12)

是的,有

MT4可以直接使用现成的绑定,实现出色的平台到平台和平台。流程到流程的消息库,无论是 ZeroMQ 还是 nanomsg

使用前者几年后, MQL4 进程可以形成非同步(即独立于aMarketEVENT到达又名quote或更少确切地称为" tick") ExpertAdvisor - > script { {1}} - > script 进程间通信解决方案,允许为专业交易构建强大的增强GUI服务以及软实时的许多其他功能系统与低强度HFT聚类。

另一方面,可以通过同一个消息传递技术平台为script提供一些必不可少的服务:

  1. 为正在运行的EA的CLI类似界面添加交互式远程 MT4 EA
  2. 为HFT服务添加远程(非阻止(!!)) keyboard
  3. 为(非阻止)记录添加远程/集中 file-IO 服务
  4. 为高级交易添加远程/群集 syslog AI / ML实时模型
  5. Nota bene

    从设计/架构的角度来看,GPU-based指标线程具有一定的安全限制。

    对于远程WebServer上的 MT4 -process,基于 POST 的其他常见出版物肯定会花费几十个毫秒,这对于上述要求的正式架构造成了不可避免的问题。

    jasuk.neumannova@gmail.com?Subject=StackOverflow-HFT-27078423(MQL4)

    一个人相当最小化处理中的所有 php - 嵌入部分,以避免处理在下一个 {{后面滑落1}} 到达,因此防止计算值同步性的偏差。

    可以通过调度所有非核心功能来实现"外部" MT4.CustomIndicator代码的范围(使用 aMarketEVENT 进程到进程通信框架)并解决{之外的不同线程中的所有其余逻辑{1}}。后处理是最不重要的问题,握手和价值观。更新&重传逻辑是MT4.CustomIndicator非常脆弱的线程同步性的卸载焦点(人们可能已经观察到这个问题在最近的Builds中变得越来越危险。许多强大的增强GUI解决方案开始受到影响来自Builds post 7xx中的波动响应,需要对其核心实时控制循环进行轻微调整,以重新获得其UI强大性以及在重负载下的平滑UI响应性能)

      

    请不要犹豫,询问有关此MQL4或HFT或其他科目的更多详情。