Just to correct some possible misconceptions:
Apart from paying spreads and/or commissions to the br0ker, MT4 IS free, at least for the retail trader. With many other charting/trading platforms, the trader has to pay a hefty monthly fee for both the platform, and also for the live data feed, even while experimenting with ideas and strategies in a demo account; and not to mention spreads or commissions on top of that, when he does go live.
Compared to other products, MT4 system tester isn't that flash, but then that's not important to me. If I can get reasonable live data, then it's workable, and I can easily code any additional trade stats that I might need.
Programming in MQL4 is ridiculously easy. Having previously coded in C, I taught myself MQL4 in less than a week, and (having built up a library of re-useable code) I can write most 'conventional' EAs in less than 2 hours (NOTE: that's assuming that the client knows what he wants — 90% of them change their minds many, many times as they experiment with different filters, exits and MMs, causing projects to drag on for several weeks, which is why I now develop EAs only on the basis of an hourly rate....... but that doesn't mean that the coding aspect is difficult). Moreover, there are plenty of amateur (no disrespect to them) and part time MQL4 coders who write indys and EAs that work correctly enough.
No br0ker who wants to retain clients or credibility would dare to use a VDP these days. Competition between MT4 br0kers is red hot, as there are now more than 200 of them around (the number has almost doubled since my earlier post, assuming that the linked site there remains up-to-date). If you don't trust your br0ker, you simply close your account and take your business elsewhere. People tend to cry foul immediately and loudly, and bad news spreads very quickly. Thankfully the dirty tricks of yesteryear are now pretty much a thing of the past.
Imperfect fills are an inevitable hazard in any kind of trading; any system that can't handle a certain amount of slippage lacks robustness IMO.
Apart from paying spreads and/or commissions to the br0ker, MT4 IS free, at least for the retail trader. With many other charting/trading platforms, the trader has to pay a hefty monthly fee for both the platform, and also for the live data feed, even while experimenting with ideas and strategies in a demo account; and not to mention spreads or commissions on top of that, when he does go live.
Compared to other products, MT4 system tester isn't that flash, but then that's not important to me. If I can get reasonable live data, then it's workable, and I can easily code any additional trade stats that I might need.
Programming in MQL4 is ridiculously easy. Having previously coded in C, I taught myself MQL4 in less than a week, and (having built up a library of re-useable code) I can write most 'conventional' EAs in less than 2 hours (NOTE: that's assuming that the client knows what he wants — 90% of them change their minds many, many times as they experiment with different filters, exits and MMs, causing projects to drag on for several weeks, which is why I now develop EAs only on the basis of an hourly rate....... but that doesn't mean that the coding aspect is difficult). Moreover, there are plenty of amateur (no disrespect to them) and part time MQL4 coders who write indys and EAs that work correctly enough.
No br0ker who wants to retain clients or credibility would dare to use a VDP these days. Competition between MT4 br0kers is red hot, as there are now more than 200 of them around (the number has almost doubled since my earlier post, assuming that the linked site there remains up-to-date). If you don't trust your br0ker, you simply close your account and take your business elsewhere. People tend to cry foul immediately and loudly, and bad news spreads very quickly. Thankfully the dirty tricks of yesteryear are now pretty much a thing of the past.
Imperfect fills are an inevitable hazard in any kind of trading; any system that can't handle a certain amount of slippage lacks robustness IMO.