MetaTrader 4 Build 574 with Updated MQL4 Language and Market of Applications Released - page 29

 

Several bugs encountered in 579. So far:

1. Using Tools->Options->Email tab, I configured it with my usual settings that work fine on 509, but click "Test" and it fails. Journal says "login to smtp... failed", but I'm certain it's correct server/login/password. No Email is a BIG bug for me.

2. Old scripts that use PlaySound ( For example: 'PlaySound("alert2");' ) don't work. The .ex4 files are NOT forward compatible. They work if recompiled.

3. This one is almost cosmetic, so no big deal: My code has global variables that are repeated as arguments in function definitions, so I get a proper warning:

declaration of 'gvar' hides global declaration at line 9

The bug is that it isn't on "line 9" but rather on "line 18". The hyperlink to the error works, and the correct line# and char# is listed to the right of the error message.

Service tickets filed for each.

FYI, as another user reported, my production "P4L Clock" program doesn't work anymore. Re-compiling wasn't the fix. Fortunately, there is a solution. In 509, the label objects -- regardless of the order in which they were created -- drew on the chart in alphabetical order. I took advantage of that to create labels that were merely rectangles that covered up the price bars beneath it, to give me a blank slate in the corner, so to speak. Then I put labels on top of my background label(s). I controlled the 1st letter of the labels ObjectName to get it to display properly.

The alphabetical phenomenon is "broken" in 579. Labels appear to draw in the order in which the objects were created. Therefore, I have to create the background labels first, and the labels that go on top afterwards. So far it seems to work.

 

My expert displays a vertical list with earnings of each order,

And the end result of the Equity, by function comment ().

The results are normalized to a decimal.

But randomly fails function NormalizeDouble and function DoubletoStr .

And it shows a long list of 15 decimal, in this format:

23.499999999999999 or 23.400000000000001

 

Great work MetaQuotes.

Congrats to the guy who decided to upgrade MT4.

Yes there are still some bugs, but this is the right way.

I've converted my 4k lines software in new version and it works fine.

 
pips4life:

1. Using Tools->Options->Email tab, I configured it with my usual settings that work fine on 509, but click "Test" and it fails. Journal says "login to smtp... failed", but I'm certain it's correct server/login/password. No Email is a BIG bug for me.

2. Old scripts that use PlaySound ( For example: 'PlaySound("alert2");' ) don't work. The .ex4 files are NOT forward compatible. They work if recompiled.

It was fixed. Please wait for the next build.

 
mladen:

Build 579

Still doing the same (the indicator has to be attached to the chart when you restart the terminal - it happens when it is attached to the chart and the terminal is restarted) Here is one simpler example (that displays the value of such a string parameter to the chart - just attach it and restart terminal).


We are investigating this issue.
 
Ovo:

If any one is still interested with weird behaviour... this time it is about indicators.

  • It seems that "Array out of range" is fired regardless of setting the #property strict in 577. This might be the reason some "updated" indicators suddenly stopped working in 577.
  • Indicator variables at global scope do not clear after deinit(). That might confuse some recently "updated" indicators to initialize properly.
  • I am still having issues with the 509 ex4 indicators in compatibility mode. They start correctly when attached, but end up with expert stopped error after changing timeframe or input parameters. Then they cannot recover until detached. Edit: according to trace information in logs it looks like it crashes on a first ex4-library call.


Have you written something into servicedesk about this issue?

If you haven't, please write it including sources and step-by-step description.

 
alexvd:


Have you written something into servicedesk about this issue?

If you haven't, please write it including sources and step-by-step description.


No, I did not, the first one I do not care, I always use the strict option, the second I will take care of in code as well and the third issue appeared only in the 577 alone and was cured in 578.

 
RaptorUK:

Ah, well spotted, thanks. I would consider moving to be processing . . . I guess I'll have to test it.


The files, directories and subdirectories in the basic structure will be copied recursively, so do not worry. I tested it.

Before upgrade:

experts\files\12\a.csv

experts\files\12\b.csv

experts\files\12\99\1.csv

experts\files\12\99\2.csv

experts\files\12\99\3.csv

After upgrade:

MQL4\Files\12\a.csv

MQL4\Files\12\b.csv

MQL4\Files\12\99\1.csv

MQL4\Files\12\99\2.csv

MQL4\Files\12\99\3.csv

The same applies to all other standard files and directories inside old experts\ directory.

I've Windows 7, UAC turned off. I guess the same applies to UAC on, but it has to be tested by someone else.

 
RaptorUK:
Maybe I'm misunderstanding . . . MetaQuotes CEO said . . . "old ex4/mq4 files will work, " if the .hst format has changed how can this statement be true ?


"All old EX4 will work in the new MetaTrader 4 terminal".

This is clearly not true. Not only will those calling offline charts not work, but other EAs I've got are not working either, not in as old .ex4. and certainly not when recompiled with the new (now at 582 ver).

So much language has changed, and old language is not being recognized.

Where is all this documented, e.g., 'extern' appears to be replaced by 'input', start replaced by 'ontick'.

Where is the documentation for all this? e.g. change this to this?

 
davidb_012:

"All old EX4 will work in the new MetaTrader 4 terminal".

This is clearly not true. Not only will those calling offline charts not work, but other EAs I've got are not working either, not in as old .ex4. and certainly not when recompiled with the new (now at 582 ver).

So much language has changed, and old language is not being recognized.

Where is all this documented, e.g., 'extern' appears to be replaced by 'input', start replaced by 'ontick'.

Where is the documentation for all this? e.g. change this to this?


Can you give some details about what you are talking about ? Provide some code to reproduce the problem ?
Reason: