MT4 End Of Life - page 5

 
narco #: This is simply not true. Brokers pay less for MT5 licenses. It's is in their own benefit to push MT5 on their clients and get rid of MT4.

You don't seem to understand. They already have the MT4 license. No matter how lower the price of MT5 is, they would still need to purchase it.

It would be an extra cost, not only for the license but for the extra hardware for the servers.

narco #Switching off MT4 without proper notice is going to cause major unnecessary chaos.

There was already notice, when they announced several years back that they would no longer actively development it any more.

As I stated, that was "writing on the wall" which people don't seem to want to accept.

 
Fernando Carreiro #:

There was already notice, when they announced several years back that they would no longer actively development it any more.

As I stated, that was "writing on the wall" which people don't seem to want to accept.

Yes they announced in 2016 (7 years ago) that would not release any more updates to MT4. How many updates have there been since the last one in March 2023? Probably dozens.

The "writing on the wall' isn't a discontinuation plan so there's nothing to accept or not accept.

As an example, Microsoft provide an official end of support date many years before end of support for Windows. They also provide full guidance on migrating to the latest Windows releases. Everyone knows exactly where they stand at all times. https://learn.microsoft.com/en-us/lifecycle/faq/windows | https://www.microsoft.com/en-us/windows/end-of-support?r=1

In terms of brokers. I am not sure the licencing costs but I would say they are simply offering MT4 due to the much higher demand for the platform over MT5. 

Anyway. I am not trying to create arguments for no reason. This just needs clarity.

 
Vladislav Boyko #:

You better know, these were just my guesses

This may be due to the fact that a new copy of the indicator (when changing the timeframe) is created without waiting for the old one to be deinitialized. Perhaps the deletion of the old copy of the indicator when changing the time frame was slowed down so that a new copy would be created faster (these are my guesses, I don’t have exact information).

"Perhaps the deletion of the old copy of the indicator when changing the time frame was slowed down" - I meant that deinitialization might have a lower priority than initializing a new copy

From what I've seen that's true when dealing with indicator handles (from EA or other indicator), and that has caused very strange errors like "ghost" indicators that should have been deinitialized, but didn't, and stay in the background interfering while also being inaccessible.

Oddly enough, when using graphical objects (like labels) but not handles I've found that it is faster when changing TFs but slower when removing from chart manually. I should make a topic only about this in the future if I can make a mini-demo to show these issues...

 
Manuel Alejandro Cercos Perez #:

I would say that MT5 is better than MT4 because I always find more limitations in what is possible to do in MT4 (for instance, OnCalculate with price and IndicatorCreate are things that I can't even get close using MT4), all of this without involving DLLS though. It's true that it can be more complex in the beginning to develop in MT5.

However, I have to agree that there is just something in MT5 about deinitializing programs (especially indicators) that is too slow, and I don't actually know how to solve it (I have to rely on tricks to make it seem fast, but they still get removed like 5 seconds after, and can happen only with 1 indicator). And I hope that gets adressed more seriously.

It was a bug, I reported it and it was fixed in build 3950.


 
Alain Verleyen #:

It was a bug, I reported it and it was fixed in build 3950.


Oh wow thanks, I'll retest some indicators I had around. It's been years with that delay!

 
Manuel Alejandro Cercos Perez #:

From what I've seen that's true when dealing with indicator handles (from EA or other indicator), and that has caused very strange errors like "ghost" indicators that should have been deinitialized, but didn't, and stay in the background interfering while also being inaccessible.

Oddly enough, when using graphical objects (like labels) but not handles I've found that it is faster when changing TFs but slower when removing from chart manually. I should make a topic only about this in the future if I can make a mini-demo to show these issues...

I was talking about the case where you simply change the time frame of the chart to which the indicator is attached. Without calling this indicator from other programs. I don't know how it works if you request an indicator from another expert/indicator.

In the simple case that I talked about, when changing the timeframe, OnInit of the new indicator can be executed earlier than OnDeinit of the old copy.

If in OnInit you create objects with the same names as a copy of the indicator on the previous timeframe, then in addition to creation errors, these objects can be deleted from OnDeinit of the old copy of the indicator.

I think this can be avoided by adding the timeframe to the object names. Despite the fact that I write only for MT4 now, I have developed a habit for myself so that the names of all chart objects contain the timeframe.

 
Vladislav Boyko #:

I was talking about the case where you simply change the time frame of the chart to which the indicator is attached. Without calling this indicator from other programs. I don't know how it works if you request an indicator from another expert/indicator.

In the simple case that I talked about, when changing the timeframe, OnInit of the new indicator can be executed earlier than OnDeinit of the old copy.

If in OnInit you create objects with the same names as a copy of the indicator on the previous timeframe, then in addition to creation errors, these objects can be deleted from OnDeinit of the old copy of the indicator.

I think this can be avoided by adding the timeframe to the object names. Despite the fact that I write only for MT4 now, I have developed a habit for myself so that the names of all chart objects contain the timeframe.

Or don't delete objets in OnDeinit if you have to recreate them in OnInit. Check the "reason".
 
Alain Verleyen #:
Or don't delete objets in OnDeinit if you have to recreate them in OnInit. Check the "reason".

But you won't know in OnInit whether the objects exist. Personally I wouldn't want to call ObjectFind from OnInit.

Vladislav Boyko #:
adding the timeframe to the object names

Here is my lazy way for MT4:

(increases the length of objects names by 3 characters)

string objPrefix = "some_prefix" + StringSubstr(EnumToString((ENUM_TIMEFRAMES)Period()), 7);

It's not the fastest thing in terms of performance. But I think such wastefulness is acceptable in OnInit😄

[EDIT] It would be more correct to mark the timeframe using one character and use a switch.

 
narco #:

Why would forcing users from a fully functioning / feature complete 18 year old platform to 14 year old one make any sense at all?

Users have already made MT4 their choice for indicators, EA's and scripts. The switch to MT5 is extremely painful and ultimately pointless.

Do we know how many users of MT4 there are compared to MT5? I am guessing it is probably at least 5x higher.

There is an edge case (its not the norm) where the MT4 users are 370 times the mt5 users , but interestingly the mt5 users appear to be richer because theres more sales on the mt5 version.

I think that is a very interesting insight . These are two identical products offered on mt4 and mt5 at the same time in September . 

I won't share the names obviously , but its a helpful peek inside the crowds of mt4 and mt5 . 

It's almost like android vs iphone ☕️

 
Lorentzos Roussos #:

There is an edge case (its not the norm) where the MT4 users are 370 times the mt5 users , but interestingly the mt5 users appear to be richer because theres more sales on the mt5 version.

I think that is a very interesting insight . These are two identical products offered on mt4 and mt5 at the same time in September . 

I highly doubt it is due to being 'richer' since MT4 and MT5 are both free to use. It would likely suggest a lack of confidence that the MT4 platform isn't going to get rug pulled by Metaquotes at any moment. 

Do we yet know what MT4 "End of Life / Unsupported" means on the broker side with these products?

MetaTrader 4 Server

MetaTrader 4 Administrator 

MetaTrader 4 Manager 

MetaTrader 4 Data Center 

Reason: