I don't know if this bug was previously discussed. I can't keep up with this thread, but at least I filed a service request for it. If it's a known bug, well, fix it ASAP!
Title: Build 610. Iconified charts stay completely inactive after switching profiles! SERIOUS BUG!
Plenty of users have indicators that cause alerts or other updates that must occur even when the chart is iconified. This is normally true, and was true in 509, but in 610, the BUG is that if you switch profiles back-and-forth with another profile, those charts that are still iconified are NOT getting updated at all! The net result is that alerts/updates/etc. are completely disabled. This is completely unacceptable.
I'm sure you can use anything to reproduce this, but attached is my "P4L PeriodCon 509.ex4". (Same problem occurs for native 610 compiled indicators!)
1. Open any H1 chart
2. Add my "P4L PeriodCon 509" indicator. The defaults are fine, and it will generate an H2 chart.
3. File->Open Offline -> select the H2 chart that is being generated.
4. Iconify the source H1 chart. DO NOT CLOSE IT.
5. Observe that with new ticks, the offline chart is still getting live tick updates.
6. Observe which is the current profile name (e.g. "Default"). Now change the profile to any other profile. (e.g. "Euro")
7. Change back to the previous profile name. (e.g. "Default").
8. Observe that the offline chart is NOT getting live updates!
9. Un-iconify the source H1 chart.
10. Observe that the instant popup message from my indicator now tells you the indicator is working and active, and is now generating the H2 offline chart.
11. Observe that the H2 chart is once again getting live tick updates.
12. Repeat steps 5-7, without first iconifying the source H1 chart.
13. Observe that when you came back to this profile, you see the popup message from my indicator, and that the H2 offline chart is getting live updates.
The only difference is whether or not the source H1 chart was iconified or not when you switched back to the original profile.
This behavior is completely unacceptable! Suppose it had been an EA managing trades?? The behavior might be the same for EA's as it is for Indicators. I don't know, but even if this bug only affects Indicators, it is still unacceptable. Many indies give alerts, and they will be totally disabled and useless until this behavior is fixed.
NOTE: Although I am providing a 509 .ex4 file to reproduce this bug, it is NOT important that this is a 509 compiled file. I can reproduce exactly the same behavior with 610 compiled indicators also.
(the "P4L PeriodCon 509.ex4" can be found online at FF).
Oh CRAP! This MT4 (build 610) bug is even worse than I thought. Just restarting MT4 has the same effect as switching profiles! Therefore, you cannot have ANY iconified charts after an MT4 restart *if* those chart do any updates, EA's, or alerts. They will be inactive until un-iconified!
ATTENTION USERS WITH BUILD>=574 and <=610+?? : Until this bug is fixed, you must un-iconify your source chart after an MT4 restart, or after changing profiles. Alternative: Never iconify your MT4 source chart. Leave it full size. SAME goes for any charts that generate alerts from any indicator!
(If this turns out to be an inaccurate claim on my part, I apologize, but this is what the evidence suggests to me).
That doesnt happen if they are tabs though, right ?
When you say, "if they are tabs", I must assume you mean that one of the windows has been maximized, taking over the whole area, so all you can see is the tabs of the other charts.
Answer: Yes, it is still a problem, but now it's even harder to ascertain what is the status of each window because you can't see them individually!
Suppose you start MT4, and open up 3 windows. Let's say all 3 run something with an indicator that generate alerts, windows A, B and C.
Assume for a moment that none of the windows has yet been "maximized". You can see bars on all 3 windows.
Now hit "minimize" on window A. This is the same as what I've called "iconified".
Already described is that if you switch profiles, or simply restart MT4, then window A will be inactive, and you won't get any alerts from it until you un-iconify it at least once.
But now let's say that window A is iconified, but now you "maximize" window B. It fills the entire screen. Can you tell whether window A has been iconified(minimized) or not? No, because you can't see it.
You close and restart MT4, and then B is going to reappear in full size. But still, you have no idea whether or not A is working or not unless you either look at window A, or if you un-maximize window B and now you can see whether window A is iconified or not. If it is, you must open it to activate it.
Obviously I didn't think of a scenario involving window C and whatever its "maximize" and independent "minimize" statuses are, but there might be more interdependecies to explore.
P.S. In my discussion, I am certain about seeing a problem with respect to Indicators. Regarding Scripts, I know that a script that runs in an infinite loop (like "Period Converter") will stop if you change profiles back-and-forth, or just restart MT4. For all I know, that is normal behavior, for a *script*. I don't remember how such scripts behaved on <=509.
I don't use EA's, however, so what I've said about them not working... I'm not absolutely certain about that, but it is likely that they suffer the same problem, because if the iconified window doesn't run Indicators after changing profiles or an MT4 restart, then almost certainly there is a similar problem with EA's. I'm just saying I didn't test it specifically regarding EA's.
EDIT: P.S. I know of at least one trading room that has suspended live trading for its clients because they rely upon indicators they assumed to be running, even though they were iconified (mimimized). Since that's not working, they're unable to rely upon their previously solid and working indicators, now that this ALPHA-quality build has been thrust upon the vast MT4 community. Absofrikinlutely unbelievable.
Here is bug in MetaTrader 4 build 610:
Steps to reproduce:
Now you cannot add this indicator into any chart. Only solution is to remove following line from terminal.ini:
Any comment? I spent 4 days on this but without fix it is not possible to use CAppDialog.
SimplePanel sources are open. It is just example illustrates working of codes copied from MQL5 without any changes.
You can investigate problem yourself and share your knowledge here (btw you can change CAppDialog behavior using of inherited class). It will be appreciated.
We will investigate this problem too
P.S. In my discussion, I am certain about seeing a problem with respect to Indicators.
You are right.
Custom indicators in the current profile deinitialize reason 4 when you change to another profile.
Those custom indicator that were attached to minimized charts reload when you reload the profile they are a part of but they do not initialize until you maximize the chart.
This does not happen if the charts were are all maximized, indicators load and initialize when their profile is loaded even if the chart they are attached to is not the visible one.