外汇MT4平台 - 使用什么类型的协议/技术实时更新图表?

时间:2014-08-10 23:14:55

标签: c# rest websocket communication metatrader4

Forex MT4平台 - 使用什么类型的协议/技术实时更新图表?

  • 的WebSocket?
  • soap / restful web service?
  • 其他?

数据实时更新

2 个答案:

答案 0 :(得分:3)

初步说明

许多确实聪明男人*年被烧毁在逆向工程上努力进入 MT4/Server < - > MT4/Terminal C / S通讯。

有些人自己死了。

有些人未能幸免于另一个Build XYZ引入的下一个变化。

有些人甚至已经从MetaQuotes,Inc。提起诉讼,因为他们侵犯或侵犯了保护知识产权的权利。

所以,人们应该真的知道,接下来会发生什么。

它是如何工作的?

最近 MT4/Terminal Build 670+使用了几个常规的流媒体连接 MT4/Server

使用任何品牌的端口扫描仪来绘制,解码和分析更多内部结构并不需要花费太多时间或精力。不过,不要忘记警告,[初步说明] rulez。

MT4/Terminal 图表 MVC-GUI

没有直接的方法来“更新”OHLC-candle / Volume对象

很多方法可以在MT4图表中添加和控制其他可视对象,包括:但不限于,构建一个完全成熟的新的,分层的,增强的GUI,其中用户定义的< 应用程序代码 >保留对 TradingExecutionEngine 元素和 MT4/Terminal 的完全实时控制。

当前的Metatrader专有架构能否得到扩展?

历史上使用了三个主要的时代/方法。

  1. 第三方基于DLL的通信

  2. 基于Windows O / S服务的通信

  3. MetaQuotes,Inc。,用于套接字通信的“新”-MQL4(后Build 600+)语言扩展

  4. 用户定义的< 应用程序代码 >可以安全地部署一个线程安全的外部消息传递基础设施,以更好地“逃离”(脆弱的,即在Build 670+之后的时代)MT4内部性,并保留对“自己的”消息传递/流层的完全控制。

    实施例

    python ,基于socket / remote MT4/Terminal 的CLI终端&交易和脚本化测试用例电池自动运行的附加伪语言

    使用套接字/远程外部集成RSS-feed服务

    MT4/Terminal

    MT4/Terminal 使用套接字/远程GPU托管的数字解算器进行AI / ML决策

    使用基于套接字/远程云的点对点社区消息传递

    {{1}}

答案 1 :(得分:0)

MT4服务器和MT4终端之间的所有通信都是通过TCP套接字完成的,数据以纯文本形式传输。

使用telnet

连接到端口443上的MT4服务器的示例
telnet x.x.x.x 443

请求报价EURUSD

WQUOTES-EURUSD

当您在MT4终端中打开图表时,终端从服务器请求历史图表数据并订阅该符号的新刻度。然后,每当新选择的图表到达所选图表时,MT4终端更新图表中的最后一根蜡烛或创建必要时换一个新的。

以上所有内容均通过相同的协议完成。