Why is it better MT5 than MT4?? Does it have fewer limitations ??? [UPDATED]

Jose Francisco Casado Fernandez  

I have considered it opportune to open a new one to expose the pros and cons of MT4 versus MT5, and why I consider MT5 to be better.

MT5 has many more interesting features that help in trading, and MT4 has too many limitations in my opinion.

Let's cite some of them below.


  • MT5 is faster than MT4. It is a 64-bit, multi-threaded platform. MT4 is a 32-bit, mono-threaded platform with a 2 Gb (or 4 Gb memory limit if you use it on a 64-bit operating system, in which case a 32-bit system is emulated, which is not optimum). It is important, especially to do backtesting, since if your historical data file exceeds this limit (which happens especially if you use tick data), you have to split this file into several parts and do an individual backtest of each part. If you use tick data usually that memory limit is exceeded with a history of 2 years or so, but can also be exceeded even if you use standard M1 bar data.
  • MT5 is a Multi-Market platform, which means that you can trade in both
    • Centralized Markets (Stock Exchanges, Futures markets, etc.) where you can trade stocks, indices, commodities, futures on all of them, etc,  and 
    • Non-Centralized Markets, like Forex and other OTC markets.

In MT4 you can only trade in OTC markets (mainly Forex). If you trade other assets through MT4, these are CFDs, which are issued by OTC brokers for a kind of domestic market only for their customers, so they act as market makers in these assets (they make you the counterpart).

  • Due to this, in MT5 it is possible to get real volume traded data, and not only tick volume data. In MT4 it's not possible. The tick volume means the number of price changes that have occurred in the course of the bar. Nothing else. You do not know the real volume (contracts, or lots) that has been traded.
  • In MT5 you can download and consult ticks history from your broker. In MT4 you can't, you only can save tick data by yourself (with the help of some tool), but it has many limitations. You must have platform turned on 24 hours a day, and still you'll NEVER keep all the ticks, for many reasons.

Why is this important ??? It's a very easy thing. There are many traders who use tools like Market Profile, Delta Volume, etc., etc.

Well, in MT4 you can never know what exactly was the most traded price or cluster in the selected range. You have to make an approximation / estimation using only M1 bars. For example, if you are in M15 timefame you would have to analyze the 15 M1 bars in that section, see their maximum and minimum prices and the tick volume of each one of them and assign that volume in equal parts (or use the criterion that you want) to each of the prices or clusters between the maximum and minimum prices of that M1 bar. And so, try to calculate APPROXIMATELY, how much could be traded at each price. The real data you never know, you have to estimate it.

That is why in MT4 these types of tools are not very useful. There are many people who use them without knowing all these things, and believe that they offer you the real POC / VWAP / Profile, levels. But it's not like that. In MT4 I do not recommend using these tools.

  • In MT5 you have access to the tape (Times & Sales), so you can create Order Flow, Cumulative Delta, etc. indicators. In MT4 you have not.
  • In MT5 you can backtesting robots with the closest possible conditions to the real market natively  (real tick data, real variable spreads, lag, slippage, etc). In MT4 you can't natively. You only can if you pay for a third-party software. If so, you also have to download history data from a few sources (there are many few, almost everyone uses the same source), transform it to MT4 format and open the platform through this third-party software in order to patch MT4 behavior. You take many hours to complete this process, and you have to repeat it every time you want to incorporate new data.
    We have all seen hundreds of robots that obtained spectacular results in backtesting, but when operating in real account the results were very bad. This is mainly because they were made with conditions that had nothing to do with real market conditions.
  • In MT5 you can backtesting Multi-Symbol strategies natively. In MT4 you can't.
  • On both platforms it is already possible to import your own historical data. Previously in MT5 this was not possible, but that feature was incorporated from the build 1595.

  • In MT5 you can create Custom Symbols. Previously this was not possible either, and it was a very demanded feature in MT5, until it was incorporated from the build 1640. This is useful if you are interested in creating charts based on your own historical data, as well as to create synthetic pairs, indexes and any other symbol that your broker does not offer. In MT4 the equivalent to this are Offline Charts.

Therefore, in my opinion, there is currently no MT4 feature that is not present in MT5. On the other hand, there are many MT5 features that are not possible in MT4.

New MetaTrader 5 Platform Build 1595: Access to the price history
New MetaTrader 5 Platform Build 1595: Access to the price history
  • 2017.04.19
  • www.mql5.com
New MetaTrader 5 Platform Build 1595: Access to the price historyThe MetaTrader 5 platform update will be released on April 21, 2017...
Excellent post

New update (ver 1.23)   (no change), (remove), (add) :

Knot of The Ring MT4 is a MetaTrader 4 version of EA Knot of The Ring.

Knot of The Ring MT4 is an Expert Advisor based on a unique triangular correlation. Different from other triangular correlation strategy at common, it uses knot/node of triple symbol as a pioneer to attack the market. After that if it is contrary to market direction, it will use the two other symbols to safe it. There are 3 layers of rings to give safety.

Of course you can use other knot symbol to form your other rings. For example this EA is using EURUSD pair as knot symbol. For symbols of Ring 1 EURAUD and AUDUSD are used, symbols of Ring 2 are EURGBP and GBPUSD and symbols of Ring 3 are EURJPY and USDJPY.

The other power of this EA are profit target and take profit, stop loss, trailing and distance of rings in percentage or money term, together with whole strategy, hope will give the confidence to trade.

You can adjust importance parameters by perform optimization periodically. These parameters are : Percent of free margin for a deal, Target profit in percentage money, Distance of rings in percentage money and Time frame. To perform optimization test faster you must do it using 1 minute OHLC test.

To use this EA you should attach it on one chart only with any time frame and no need to open the others.

Input parameters


  • Expert Name - name of this EA
  • Expert version - version of this EA
  • Expert Developer - developer name
  • Expert Setup - explanation to attach this EA on a chart


  • Magic Number - magic number
  • Time frame - time frame
  • Reverse order - if true, open position will be reverse


  • Money management - use auto lots calculation
  • Percent of free margin for a deal - risk based on account balance to calculate lots
  • Volume in Lots if money management false - fix lots if money management is set to false
  • TP, SL, Trailing and Distance type - type of Take profit, Stop loss, Trailing and Distance (money or percent)
  • Target profit in percentage money, if 0 not used - if this target reached, the EA will close position
  • Take Profit, if 0 not used - if this target reached, the EA will close position
  • Distance of Ring 1 in percentage money, if 0 not used - if this ring reached, the symbols of ring 1 will be open position
  • Distance of Ring 2 in percentage money, if 0 not used - if this ring reached, the symbols of ring 2 will be open position
  • Distance of Ring 3 in percentage money, if 0 not used - if this ring reached, the symbols of ring 3 will be open position
  • Stop Loss, if 0 not used - if this target reached, the EA will close position
  • Restart trade if one of Target is reached (true or false)- if set to true, the EA will restart a trade after the target profit is reached
  • Magic Number - magic number


  • Time frame - time frame



  • Symbol of Knot - symbol of knot


  • Symbol 1 of Ring 1 - first symbol of Ring 1
  • Symbol 2 of Ring 1 - second symbol of Ring 1


  • Symbol 1 of Ring 2 - first symbol of Ring 2
  • Symbol 2 of Ring 2 - second symbol of Ring 2


  • Symbol 1 of Ring 3 - first symbol of Ring 3
  • Symbol 2 of Ring 3 - Second symbol of Ring 3
Since MetaTrader 4 strategy tester does not allow users to perform multicurrency tests, then the test result do not perform properly. You can perform backtest in the strategy tester using MetaTrader 5 version of Knot of The Ring. The screenshot below taken from MetaTrader 5 version of Knot of The Ring.
Jose Francisco Casado Fernandez  


MT4 is better, because MT5 doesn't have a free book, in which you can learn to code OOP. if you look at trade functions on mt5, like ordersend function i can't understand it on mt5, very  much complicated

First of all, thank you very much for your opinion.

Here you have your book in pdf format. There you have everything documented, with examples, and translated into several languages. For mql4 there is no pdf file like that, although you have the documentation and the book online, but only in English.

OOP is an option, but not an obligation. The libraries are there to help you with the task, but you do not have to use them if you do not want to. You can program in mql5 without using OOP. Here is a CodeBase EA that does not use OOP, to serve as an example.


you can say MT5 is faster, but that's not a problem, i really doubt anyone have an EA so big to use all this memory, and still, if you really need it, you can copy and paste multiple terminals and play several mt4 terminals,so you can split the memory and work between them, only 4gb memory is not an issue, this is not a game, an EA usually is 30 kbs size, so that's only for propaganda

access to the tape is not very important, because the price, time tells you all you need, the price tells you what the insiders are doing, if you have the right indicators. 

MT4 will allways be better because its designed for traders, not programmers, MT5 need you to study a lot of programming, actually you can't even study because there is no free book around, there is a paradox here, that metaquotes people don't understand, you can't be a top programmer and top trader at the same time, a trader is more like art, but programming is more like engineering, MT4 allows a trader to create EA's and indicators in a very easy way, but MT5 feel more advanced level, but then, you don't need to be a top programmer to create trading systems, because today CPU's allow's not optimized code, i can do the job using 1000 lines, a top programmer could do using only 200, that's not a problem, but MT5 requires you to be a very good programmer, when there is no need to, so MT4 wins

If you think that the 4 Gb limit is not important, try doing a backtest in MT4 with standard historical data of 8 or 10 years (in many cases the fxt file exceeds that limit), or with tick data (since these data occupy much more, in this case with only 3 or 4 years of data the limit is exceeded). In both cases, you will not be able to do the backtest of the entire period, but you will have to divide the backtest into several sections (2, 3, 4 ... etc). You will have partial results for each section of history, then you can add them by hand if you want.

MT4 does not save ticks, so you can not consult the Bid, Ask, Last prices or spread afterwards. In MT4 all you have are bars of a certain timeframe (the minimum of 1 minute), whose Open, High, Low and Close prices are represented taking into account only the Bid prices. If the price is so important (in which I agree), you have to bear in mind that in MT4 you do not have the prices, you only have 1 minute bars, you know the first Bid price of that minute (Open), the last Bid ( Close), the Bid High and the Bid Low, but you do not have the information of all the other prices that have been in the course of that minute (nor the sequence of them).  You do not have any Ask price either (which is the one you make your buys and it is also the price at which the Stop Loss of your sells are executed), nor do you have data on spread, volume, etc, etc.

Regarding the difficulty of coding in mql5, I refer to what we discussed above, it is not necessary to use OOP if you do not want to. Besides that, in mql5 you can use the EA Generator feature that incorporates MetaEditor, with which you can easily create Eas with just a few clicks. This feature is not available for mql4.


Creating Ready-Made Expert Advisors - MQL4/MQL5 Wizard - MetaEditor Help
Creating Ready-Made Expert Advisors - MQL4/MQL5 Wizard - MetaEditor Help
  • www.metatrader5.com
The MQL4/MQL5 Wizard allows creating ready-made Expert Advisors based on the standard library delivered together with the client terminal. To start generating an Expert Advisor, select point "Expert Advisor (generate)" on the first page of MQL4/MQL5 Wizard. Common Parameters — in the "Value" field you can specify a symbol the Expert Advisor...
Ex Ovo Omnia  
Jose Francisco Casado Fernandez:



Well, I do not understand why this topic is back again.

Are you perhaps not sure that MT5 is better, so you need to repeat your (often odd) arguments? Like speaking about 'monothreaded' application (I cannot imagine a Windows application to run in a single thread), or talking about FXT file limits (many of us are testing with 20GB FXT files), and MT5 to be faster (I do not have that feeling, but it definitively consumes a lot more CPU power) and others.

The most important thing is the development of MT4 is over, so MT5 will take the lead sooner or later, also with a help of heavy promotion. You do not need to explain why it is better, as it will be the only one.