I'm developing a multi-terminal price analysis system that requires real-time communication between multiple MT5 instances (running on the same machine) and a Python application with minimal latency. I need to quickly transfer market data between terminals for comparative analysis and research purposes.
Current Setup
2 MT5 instances (connected to different data feeds for comparison)
1 Python application (for advanced data analysis and visualization)
Windows Server environment
All components running on the same physical machine
Questions
Shared Memory Approach: Is it possible to use shared memory for communication between MT5 and Python? Does MQL5 support any direct memory sharing techniques that Python can also access?
Named Pipes: I've seen implementations using Named Pipes ( CFilePipe in MQL5 and win32pipe in Python). What kind of latency can I expect with this approach? Is there a more efficient way to configure Named Pipes for fast data transfer?
ZeroMQ: Has anyone implemented ZeroMQ-based communication between MT5 and Python? What were your performance results compared to Named Pipes?
Socket Communication: Would raw TCP/UDP sockets be faster than Named Pipes for local communication?
DLL Alternatives: Are there any non-DLL approaches that offer comparable performance to direct DLL calls? (I'm trying to avoid DLLs due to security restrictions)
Key Considerations
Need to minimize latency for accurate data comparison
Reliability is important (no data loss)
Bi-directional communication is needed
Prefer not to use DLLs due to MT5 security restrictions
My primary goal is to build a system for advanced market analysis that can quickly compare price data from different sources. If anyone has experience with similar setups or benchmarked different communication methods between MT5 and external applications, I'd greatly appreciate your insights and recommendations.
Hello MQL Community,
I'm developing a multi-terminal price analysis system that requires real-time communication between multiple MT5 instances (running on the same machine) and a Python application with minimal latency. I need to quickly transfer market data between terminals for comparative analysis and research purposes.
Current Setup
Questions
Key Considerations
My primary goal is to build a system for advanced market analysis that can quickly compare price data from different sources. If anyone has experience with similar setups or benchmarked different communication methods between MT5 and external applications, I'd greatly appreciate your insights and recommendations.
Thank you for your help!