Skip to main content

MetaTrader is Utter Garbage

Zero confidence in its Strategy Tester

I have over a year of experience programing in the MQL4/MQL5 languages, I have worked through many quirks and gotchas and amassed a considerable local code repository - so I am qualified to make such a bold statement.

Today I am just throwing in a towel. My lack of confidence in its ability to simulate trades is now absolute ZERO and casts serious doubts onto previous results.

I have reported this in the forums and also through a support tickets but that went on nowhere.

The picture below is of a custom symbol, left is the data Strategy Tester, right is normal chart history, both of them have a signal attached. You can clearly see the Strategy Tester chart is different and missing bars and so of course the signal activates differently. I've discovered this issue when I tested my multi symbol expert on Symbol A and then on Symbol B and found the sum net profit and orders placed to be different than when I tested the same expert on Symbol A and Symbol B at same time.

If you are considering MetaTrader as a trading platform that you can grow with, just don't - save yourself the pains I've experienced.

I do not have an alternative tool yet so feel free to suggest in the comments section.

On the bright side the 'learn to trade' journey was and is still glorious and worth it.

2018-Nov-06 Update: Still a random number generator

Below is screenshot which shows genetic optimization run and below the first select to be run as a single test, note the results completely don't match.

Comments

Popular posts from this blog

Duplicate value found: duplicates value on record with id: <unknown>.

System.DmlException: Insert failed. First exception on row 0; first error: DUPLICATE_VALUE, duplicate value found: <unknown> duplicates value on record with id: <unknown>. The above error is triggered in the database layer and caused by a trigger or workflow outside of your main code of block that is bubbling this exception. This is rather difficult to track down especially if you are unfamiliar with the code, I am sharing my procedure in the hopes this saves you time - if you find this helpful drop me a line or follow me on twitter @danielsokolows . This error is caused by unique field constraint on the object, so the first step is to examine the object and locate the API names of all unique fieds. You can do this through SF direclty 'Setup < Customize &lt <object being inserted> &lt Fields' or by downloading the `src/objects` metadata information and searching for <unique> ; I preffer the latter and actually download ALL matadata i...

Softeher 'Error occurred. (Error code: 2)' sollution

Protocol error occurred. Error was returned from the destination server. The Softether server by default to run on port 443 , if you server also hosts normal https then 443 is already taken and so Softether can't bind to it. When you run `vpncmd` it attempts to connect, find an active port, but of course fails with 'Protocol error occurred. Error was returned from the destination server.' because it's not actually connecting to the vpn server. By default Softether also listens on 992 , 1194 , and 5555 so the sollution is to modify specify `localhost:5555` when executing the `vpncmnd`. If this has helped you feel free to comment or follow me on twitter @danielsokolows .

GeoDjango + Spatialite (SQLite3) Setup Issues

Because there are fresh ones every time I start a new project! As of May 03 2013 I have opted to install virtualenv --system-site-packages and running aptitude-install python-pysqlite2 spatialite-bin gdal-bin ; the site are not as self contained any more but sure beats fighting with the issues. All my Django projects are self contained (as much as possible) with Virtualenv and use Spatialite database (SQLite3 +geo spatial stuff) installed so to enable GeoDjango functionality. This post is a list of issues I encounter related to that setup and how I resolved them; as I seem to run into a new one on every project start. And as always if you found this useful do +1, or follow me on twitter @danielsokolows /usr/include/spatialite.h:61: note: previous declaration of ‘spatialite_init’ was here Say what? --- this one threw me for a three hour fun time. It happened because I executed 'pip install pyspatialite' will install the 3.X vesion which is is broken and craps out with: ...