Any support for MQL in any part of JForex ultimately results in either some kind of language conversion/translation over into Java or the use of some type of adaptor/plugin that parses market and order data directly with Jforex servers.
I’m unable to elaborate on my own experience working with MQL under the JForex desktop client (wherein you can develop/run strategies and indicators, trade, etc) as I don’t make use of it. I write code within Eclipse IDE and compile against the standalone JForex API.
The API allows you to programmaticaly instantiate the Tester GUI, add charts, add indicators, add strategies, set timeframes, subscribe to currencies, collect your own runtime stats and even include these in a custom HTML report, etc - more control basically.
Nothing with JForex works if you don’t have a net connection (even if you’re just testing and have all the historical data you’re working with sitting on your harddrive) but at the same time save for the rare server issue you’re guaranteed automatic access to all the historical data you need (downloaded and cached in realtime as you run or test your strats.)
It can be daunting walking away from MQL and MT4 and heading into a completely different environment which while rich doesn’t afford as much community support or open strat. and indi. development but to be honest, the factors that took me in this direction left me little choice [MT4 not having a native linux client, not wanting to have to run bulky client software to get strategy instances going, needing access to threads and asynchronous callbacks, needing the ability to scale up efficiently (more threads, more cooperative processes, multiple stategies against multiple currencies, multi-thread-multi-core and parallel processing support), PAMM access, programmable news filters and so on].
Using JForex means that you’re tied to Dukascopy as the sole operator of the Swiss Forex Marketplace (SWFX ECN) but broker wise you could do a lot worse. The platform and API library are still evolving and update at a rapid pace. What I don’t like about the main client environment (which I don’t use anyway) is that it always runs the latest version from the server (Java Web Start/JNLP) whenever you start it without offering the choice to stick with the version you have potentially exposing you to possible bugs in the latest cut before these are discovered by general use.
In all - like all things - JForex isn’t perfect and there are some weird server side quirks you must get used to and understand to code your strategies perfectly for live deployment but in all I’m getting on well with it all and am happy.
As Clark basically alludes, there are yet other options. Lots of goodies for those looking for new toys.
Venture bravely but venture cautiously. Committment to any platform is a big deal in terms of learning curve, time to familiarisation and proficiency, quirks or restrictions you inherit, and then ultimately and practically marrying what’s possible with your platform with what your strategy, budget and approach actually need.
Note: Dukascopy support in MultiCharts isn’t JForex based but FIX-protocol based at this point. That’s an opening balance of $100,000 with Dukas to get the FIX account going.
But the Multicharts platform certainly looks exciting, as does ProTrader.
Portfolio Backtesting and Portfolio Trading
Protrader 2: What’s new? | Evaluate new advantages! | protrader.net