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

 
forexgeeker:
wrongly coded if you don´t use DoubleToStr, even for build 509. You just were lucky it worked there.
I see that I you have not understood.
I do not complain that my code does not work.
I complain that an instruction does not work correctly.

Here's internal problems, and this may be an indirect way of viewing.
And if you not visualize the problem in this way, how do you do?
The construction is correct and works well with StringConcatenate.

But there is a problem and although prices do NormalizeDouble, randomly pass with 15 decimal, ignoring that are normalized to 2 decimal places.

Make it clear that no protest because my code does not work.
It's just a way to visualize a difficult problem of finding and viewing.
 
Alabarce:

I see that I you have not understood.
I do not complain that my code does not work.
I complain that an instruction does not work correctly.

Here's internal problems, and this may be an indirect way of viewing.
And if you not visualize the problem in this way, how do you do?
The construction is correct and works well with StringConcatenate.

But there is a problem and although prices do NormalizeDouble, randomly pass with 15 decimal, ignoring that are normalized to 2 decimal places.

Make it clear that no protest because my code does not work.
It's just a way to visualize a difficult problem of finding and viewing.
I suspect that the behaviour of Comment() has changed and it's nothing to do with NormalizeDouble().
 
forexgeeker:
Nope, it doesn´t. Tried it, it´s system wide limit, regardless if on different user accounts, regardless if EXE is renamed, regardless whatever. Of course running in a Virtual Machine it works, but what the heck, this is slow and the solution would be so easy to just remove that check! Hope MQ removes this, this is terrible. I wouldn´t mind if MT4 would finally support multi-threading, but with just usage of 1 core and then limiting this ancient platform to just 32 instances with nowadays power machines is really ugly. Especially since that limit didn´t exist in previous builds and I don´t get what it is good for at all except to dictate something more to the end user and show how powerful MQ is or something.

Did you open a ticket at mql5.com support desk and specifically request this limitation be removed?
 
RaptorUK:
I suspect that the behaviour of Comment() has changed and it's nothing to do with NormalizeDouble().


Yes, see documentation of Comment() :

Data of double type are output with the accuracy of up to 16 digits after a decimal point, and can be output either in traditional or in scientific format, depending on what notation will be more compact. Data of float type are output with 5 digits after a decimal point. To output real numbers with another accuracy or in a predefined format, use the DoubleToString() function.

 
Yes, this 32 instances limit needs to go! Tell MQ guys via tickets at mql5.com
 

It was stated before that OLHC sequence now replaced with OHLC. And I found the below information( in post #105), which is very good thanks.

datetime - now 8 bytes not 4

open (double)

high (double)

low (double)

close (double)

tick volume (8 byte int, not double)

spread (4 byte int)

real volume (8 byte int)

However does it mean that if the Build 509 is updated to 574 or higher releases, all my history data should be updated? (I'm using it for strategy testing) If so is there a guideline how to do that? Normally I was downloading 1M data and by using period converter script, I was converting the 1M data to higher time frames.

Is there a new script that converts MT4 509 history data to MT4 574 or higher release structure or should I need to find a new MT5 type of historical data?

Thanks.

 
aed71:

It was stated before that OLHC sequence now replaced with OHLC. And I found the below information( in post #105), which is very good thanks.

However does it mean that if the Build 509 is updated to 574 or higher releases, all my history data should be updated? (I'm using it for strategy testing) If so is there a guideline how to do that? Normally I was downloading 1M data and by using period converter script, I was converting the 1M data to higher time frames.

Is there a new script that converts MT4 509 history data to MT4 574 or higher release structure or should I need to find a new MT5 type of historical data?

Thanks.

There is more infor here on the new .hst format .hst file format . . . Old and New (Jan 2014)

Your existing history data should be updated when 509 is updated to 574+ . . . I assume, if you need to import it again from CSV you will need to edit the CSV to transpose the High and Low values, if you have large CSV files the best way to do this is to code a script to do it for you.

Converting 509 .hst files to 574+ .hst files is not difficult, I'm sure there will be a script to do it soon if there isn't already.
 
The new version MT4 History Centre does import the old version hst files OK for me.
 
euclid:
The new version MT4 History Centre does import the old version hst files OK for me.
Correctly ? have you confirmed ?
 

In 584, I've made some minor syntax edits to an hst type indicator, P4L PeriodCon, that worked fine on 509, and the ex4 even seems to be forward compatible too. It needs more testing once the market goes live, but fingers crossed, it looks ok.

However, when I attach this slightly modified indicator, (compiled by 584) to a chart, it immediately aborts and tells me:

Expert 'P4L PeriodCon' is not custom indicator and will be removed.

Why am I getting this message?? It's certainly an indicator, not an EA, nor a Script. What possible things might I have, or not have, that are falsely being interpreted as an "Expert", rather than as an "Indicator"? (Before you ask, it is most certainly in the proper "Indicator" folder).

Reason: