Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

ØMQ MQL4 MT4 Bindings
#1

ZeroMQ is a messaging library that has bindings in over 2 dozen languages. MT4 is a robust but simple platform. It can stream price data and show it on charts. This is all that it can do. There are a number of inbuilt functions that we can use to define indicators and expert advisors. Indicators and expert advisors that we can build using MQL4 language are really very simple. Most of these indicators are based on simple if-else logic functions. In short, MQL4 is a simple language that follows C/C++ syntax. But it lacks the power of modern object oriented languages like Python, Java, C++ and R.

When we use Python, Java, C++ and R, we have numerous packages and libraries that we can use to do machine learning. We can also use deep learning and reinforcement learning. Writing these libraries and packages is a professional job. Professional developers with many years of coding experience have written these advanced algorithms and then optimized the code so that it executes seamlessly. If you thinking about writing machine learning libraries for MQL4 then forget about it.

If you want to develop EAs and indicators that use machine learning/deep learning/reinforcement learning to predict price action, what is the solution? Solution is simple.  We will use ZeroMQ messaging library. We will use MQL-ZMQ bindings to connect MT4 with Python, Java and R. I have started this thread for this purpose. I will show you how to do it. Writing the MQL-ZMQ MT4 bindings is not easy. it is a difficult job. But our job has been made easy by Mr Ding Li. You can download the MQL-ZMQ bindings for MT4 from his Github. There are a number of bindings provided on ZeroMQ official site. MQL4ZMQ bindings listed on the ZeroMQ site has not been updated for the last 2 years. The bindings that I have suggested were last updated by Mr Ding Li 2 months back. I have gone through the bindings and I think this is the best bindings on MQL4-MT4 that are available.

ØMQ is the official low level API that connect two programs with each other for exchanging data and information. If you have learned a little bit of network programming than immediately the thought of sockets should have come to your mind. ØMQ indeed uses sockets but on steroids. Writing a socket library for MQL4 is a challenging task. There are people who have done it using WinSock32. The problem is you have to do everything from scratch in developing the socket library. WinSock32 get frequently updated by Microsoft, so your job is continuously to update your MQL4 socket library.

Don't know what are sockets? Sockets are packages that allow you to communicate with different programs. Python, Java, C++/C all have socket libraries. But the communication is synchronous. Synchronous sockets are also challenging job. ØMQ is asynchronous.

Subscribe My YouTube Channel:
https://www.youtube.com/channel/UCUE7VPo...F_BCoxFXIw

Join Our Million Dollar Trading Challenge:
https://www.doubledoji.com/million-dolla...challenge/
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)