从导入的DLL调用Metatrader MQL4 / MQL5函数

时间:2012-12-15 08:27:50

标签: dll metatrader4 mql4 metatrader5 mql5

我想从Metatrader中自己导入的DLL调用MQL4或MQL5函数。

有可能吗?

3 个答案:

答案 0 :(得分:5)

森林,

就我在过去2年中使用MetaTrader所经历的情况而言,没有真正的方法可以从外部DLL调用MQL函数。但是有一些自定义构建的API与您想要实现的非常相似:

MT4 API

MetaTrader™ Java / .Net API

这些API确实允许您使用开箱即用的MQL功能

答案 1 :(得分:2)

原理

在FX域数百人*年之后,还有另一种方法可以协调平稳优雅的MT4终端与其他流程的合作,而不是尝试将水推上山或者为套件支付500美元以上,一旦构建524->,将在下一次冲击时停止工作。构建562->构建586->构建600>构建609->构建624-> ...再次移动

一个不存在的玩具

是的,MT4架构没有暴露它自己的接口,允许自己被DLL等处理外部低级别呼叫的不确定性义务“打扰”。

如何解决

尽管如此,有可能扭转架构并使MT4终端充当轻量级瘦客户端,运行智能消息库,通过该库来暴露MT4功能以进行远程调用(RPC)。

实施例

这样Python节点可以收集MT4数据进行数值处理,

同样,PHP节点可以并行处理remote-syslog-s,

C++节点可以集成另一个任务的方式相同,

同样,另一个Python节点可以充当CLI终端接口,使用特定于自定义的脚本语法语言通过命令行/ stdio命令MetaTrader端活动

简单地说 - 无论您的应用程序基础架构需要什么,都可以通过这种方式完成

(甚至可能会改善原生MT4线程的实时性差,以获得更好的软实时可预测性和低延迟的大规模并行架构..并且仍然处于更安全的一面,受到保护被任何下一个“新”-MQL4)鱼雷击中

nota bene:只是为了想象看不见的威胁,“新” - MQL4.56789 中的headbang碰撞除此之外还有 { {1}} ,虽然将语法提议为字符串,但实际上并不是string而是 string 以及之前所有与DLL相关的工作必须重新处理和包装以模拟字符串结构或新的DLL接口必须针对案例设计,这些案例在缓冲的struct中返回值,ArrayOfBYTEs方可以接收和处理,但它不能释放它自己和内存泄漏。

答案 2 :(得分:0)

如果您的DLL可以作为.NET DLL,那么您可以尝试 this MT4 .NET集成库名为NQuotes。

使用此库,可以从DLL访问任何MQL4函数。

相关问题