New build. Features and updates as announced here. http://forum.mql4.com/56286
With the release of build 500 and its forcing of update for existing builds above 482, there’s been quite a bit of ire from developers. Justly so because newer builds tend to break some functionality, see https://raidenworks.com/2012/08/11/metaeditor-corrupt-compile/ and build 417 errorneous return of double from the DLL functions.
And it’s happening with build 507 too, where compiling in MetaEditor 507 will cause a crash when running a backtest in MetaTrader 507. Problem seems to be specifically caused by having functions appearing before start(), which is the case when #include injects their contents during compiler preprocessing. It compiles ok, but clicking the “Start” button of the Strategy Tester will crash MetaTrader 4 Build 507, similar to the issue I faced with Build 419. A quick and dirty fix would be to place the #include lines at the end of the EA’s mq4 file. Or compile with MetaEditor 500 and below.
On a related note, while the pros of operating in a managed environment that handles basic things like authentication, that provides extensive libraries for trade execution, time series manipulation and more, and with integrated backtesting utilities, the cons are dependency and an abject lack of control.
Anyone serious about systematic trading for a living will eventually come to a point in their journey that they will have to invest time and effort into writing their own execution frontend and hook that up via their selected broker/exchange API.
Which realistically would mean it needs to be done in a team, e.g. one FIX protocol/network connectivity specialist, one parser/analyst/coder.
Stoned walrus picture credit to http://mashable.com/2012/11/15/bored-animals/