Towards a broker-agnostic trading system
The first generation of my trading system uses a broker’s proprietary script on that same broker’s platform. The second generation of my trading system uses a generic programming language on another broker’s platform. I am now working on the third generation of my trading system. It is language-agnostic, platform-agnostic, and broker-agnostic.
Why? Because designing trading systems is as much about creativity as the science. An artist would not limit themselves to a defined toolset. I want to be free to use whatever tools are necessary to get the job done efficiently and being able to try new things as technologies evolve.
Having a broker-agnostic system frees me from being locked into any particular broker. Conversely, I could use one system to gather data and trade from multiple brokers for the best execution prices.
Yes, this is over-engineering for a small entity like myself. But heck, this is something that I enjoy building. So why not?
Related posts:

Hi Paul,
i have done the same as you. I have a java/spring application that does the calculations and generates the signals. Simple adapter-EAs for the mt4 and the jforex platform are executing the signals.
When the amount of your customers connected to the signal system increases, you maybe will get performance problems on the server machine (as me with tomcat) or you have to lower the requesting interval of the adapter-EAs. I have fixed this problem with a very cool and fast technology: node.js. The node.js server now gives the signals and the decreased the server load drastically.
Regards
Mike
Hi Mike,
I’ve been on Paul’s very helpful site before when learning about jForex but I had just googled MT4 and node.js and was brought back here to see your comment. Have you connected node.js to MT4 then? Or is it node.js + jForex?
Michael