MetaTrader 4 Build 529 beta released with new compiler - page 105
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Colleagues, I get a warning on compilation:
possible use of uninitialized variable 'PipStep'
for a chunk like this:
All variables are initialised as double, what's wrong with it?
you declared variables of type double, initialization is assigning values to the declared variables
double PipStep=0 ; make
I don't understand, am I the only one who can't test the indicator demos in the 555 build, or is this not an important issue for the Market debut at all?
are they tested in 5?
ArrayCopyRates() также изменила свое поведение, раньше она производила виртуальное копирование в массив double[][6], теперь же производится виртуальное копирование в массив MqlRates[]. Для совместимости осталось копирование в массив double[][6], но это копирование не виртуальное, а реальное.
https://www.mql5.com/ru/forum/148325
Structure for storing price, volume and spread information.
https://www.mql5.com/ru/docs/constants/structures/mqlrates
Is MqlRates in MetaTrader 4 build 555 an array or a structure?
This example from help (MetaTrader 4 build 555) does not work as there is no function CopyRates
Do they test in 5?
Do some people not test in 5 either?
you declare variables of type double, initialisation is the assignment of values to the declared variables
double PipStep=0 ; do
It worked!!!
Live and learn!
Thank you very much!
Is MqlRates in MetaTrader 4 build 555 an array or a structure?
This example from help (MetaTrader 4 build 555) does not work as there is no function CopyRates
This does not work either, can we see a working example in MetaTrader 4 build 555 with MqlRates ?MqlRates - structure
MqlRates[] - array of structures
To see an example of working with MqlRates structure see script period_converter_new
An example of ArrayCopyRates operation (documentation will be updated)
Changes in MQL4
I have a significant number of Expert Advisors that use DLLs and they have been passed to customers a long time ago. We used arrays double[][6] to pass parameters to the DLL , which were virtually copied into by ArrayCopyRates() during initialization .And then when calling functions from DLL these arrays and their current size were passed by reference as their parameters.
It turns out that all these EAs will stop working when the terminal is updated to a new version. This is unfortunate.
Do I correctly understand that to keep them working without changing the DLL code, we should call ArrayCopyRates() before each call of a function from the DLL?
I have a significant number of EAs using DLLs, which have been handed over to customers a long time ago. To pass parameters to DLL we used arrays double[][6], to which during initialization ArrayCopyRates() function made virtual copying of timeseries. And then when calling functions from DLL these arrays and their current size were passed by reference as their parameters.
It turns out that all these EAs will stop working when the terminal is updated to a new version. This is unfortunate.
Do I correctly understand that in order to keep them working without changing the DLL code, we should call ArrayCopyRates() before each call of a function from the DLL?
It's a little more complicated than that. The structure that the dll takes has also changed.
So, you need to rewrite ArrayCopyRates into MqlRates structure array. Also in your dll you need to replace the description of corresponding structure