2012-12-15 97 views

回答

5

森林,

至於我在過去2年的MetaTrader工作都經歷過,也沒有調用MQL功能從外部DLL真正的出路。但也有一些定製的API,酷似你想達到什麼:

MT4 API

MetaTrader™ Java/.Net API

這些API做有點讓你使用MQL功能外的開箱

1

原理

在FX領域經過幾百人*年後,還有另一種方法可以與其他流程協調平滑優雅的MT4終端合作,而不是嘗試t o將水推上山頂或支付500美元以上的套件,一旦Build 524-> Build 562-> Build 586-> Build 600-> Build 609-> Build 624->下一次衝擊就會停止工作。 ..再次

移動一個不存在的玩具

是,MT4架構不公開它自己的界面,允許自行將「忐忑」由undeterministic義務來處理通過DLL等外部底層調用。

如何解決此問題

然而,這是可以顛倒的結構和使MT4終端充當輕質瘦客戶機,一種操作智能消息庫,槽式其中MT4功能被暴露用於遠程調用(RPC)。

這樣一個Python節點可以收集數值處理MT4數據,

相同的方式PHP節點可以在並行處理的遠程系統日誌-S,

相同的方式C++節點可以集成另一個任務,

同樣的方式另一Python節點可以作爲一個CLI終端接口與自定義特定的腳本語法語言GE命令通過命令行/標準輸入輸出

簡單的MetaTrader端活動 - 無論你的應用程序基礎設施的需求可以用這種方式

(人們甚至可以改善本地MT4線程的實時性差的特點來完成以獲得更好的軟實時可預測性和低延遲大規模並行架構。並且仍然是在一個更安全側,從任何未來的「新」 -MQL4被擊沉)

諾塔好處保護:只是想象中的看不見的威脅時,headbang碰撞「新」 - MQL4.56789是除了別人,那string,而被語法提出的字符串,其實也不是一個stringstruct和你以前所有的DLL相關的工作只需簡單地重新工作,迴繞來模擬字符串作爲結構或一個新的DLL接口必須設計用於在緩衝ArrayOfBYTEs中返回值的情況,其中MQL4.56789方可以接收和處理,但它不能釋放它自己的內存泄漏。

0

如果您的DLL可以接受爲.NET DLL,那麼您可以嘗試使用名爲NQuotes的集成庫 this MT4 .NET

使用此庫,可以從您的DLL中訪問任何MQL4函數。