簡體   English   中英

我可以在MetaTrader4上使用MQL4以外的語言嗎?

[英]Can I use languages other than MQL4 on MetaTrader4?

我的任務是將C#市場策略遷移到MetaTrader。

  1. 有沒有辦法自動完成這項工作? (例如,是否可以將C#解析為它的AST,然后進行翻譯?)

  2. MetaTrader是否接受其他語言?

接近任務自下而上 - 建築方面

是的,您可以簡化問題並使MT4成為一個節點,它可以立即與您當前的 C#市場策略進行點對點連接。

這使我能夠操作基於群集的計算與大量MT4節點大規模並行通信。

MT4可以通過更復雜的“ 可擴展的正式通信框架 ”以非常智能的方式成為一個anEventFEED節點。

您是否希望有一個CLI接口來命令您的MT4節點 - 一個作為anEventFEED -er,另一個作為一個anXtoACTOR節點 - 有選擇地,具有CLI指令的語法和語法(不是關於測試自動化等) al ...)?

您是否希望擁有一個中央< syslog >守護程序來卸載加載HFT流量的MT4節點並自動執行+管理腳本監控和維護任務?

您是否希望有一個外部GPU計算引擎/集群以基於每個tickEvent的MT4 EA以客戶端/服務器方式進行通信?

ZeroMQ和/或nanomsg框架將允許您設計和開發多對多(節點網絡)和任意到任何(實現語言)系統。

MT4 / MQL4有一個ZeroMQ的直接智能包裝>>>感謝Austen Conrad在GitHub上的MQL4ZMQ

ZeroMQ >>>由於這是偉大的隊伍,有語言綁定- C / C ++,Python和Java中,R,甚至二郎神,...

因此,您的項目可能會在堅如磐石的地面上開始,並且獨立於任何特定的建築障礙(DLL移動沙子等)

工程內置插件可為您節省大量時間和精力,並避免重新發明輪子

簡短的回答是沒有,但是,mql中有一個教員可以導入dll。 所以你可以用c ++ / cli lib包裝你的c#lib,它通過函數導出功能性地暴露,你甚至可以在mql中運行一個計時器並實現一個基本的消息泵。

更新:MT4只能訪問非托管DLL的標准調用。 你必須使用c ++包裝器的原因是c ++ DOES能夠創建非托管標准調用。 您可以創建標准調用的任何其他語言也可以使用。

此外,您需要一個包裝器,以防您想使用其他不支持標准調用的語言。 您可以用c ++編寫整個代碼,整個包裝器概念將過時。

GET / POST請求和基於Web的文本API服務怎么樣?

您可以使用C#策略使用三元信號更新基於Web的文本文件:

-1 SELL
 0 HOLD
 1 BUY

然后使用MQL4每分鍾讀取一次文本文件以獲取交易信號。

就技術而言,如何做到這一點; 不幸的是我是一個python程序員而不是MQL4或C#,所以我無能為力。

是的,可以使用一些第三方解決方案來使用C#,如NQuotes http://www.nquotes.net/ ,它本質上是一個現成的DLL用於一般用法(如Dmitry說,你可以創建自己的,但是它涉及一些工作)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM