MetaTrader 4 Build 574 with Updated MQL4 Language and Market of Applications Released - page 30
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
Can you give some details about what you are talking about ? Provide some code to reproduce the problem ?
Thanks for replying angevoyageur.
I have an EA that I've loaded on 582 and it's just sitting there on the chart not opening any trades. No error messages in the Journal or Experts tab (loaded successfully and initialized).
It works fine on 509.
Obviously I don't want to post the 800 lines of code here, but where to start debugging when (the new MT4) isn't providing any error messages.
I tried the provided 'Moving Average' EA, and that opened and closed trades on the Metaquotes server, so we know trades can be opened.
key point though, is "Where is the documentation, e.g., 'extern' replaced by 'input', start replaced by 'ontick'.
Perhaps you should reconsider this live launch in business hours when there is no stable beta 4 days before the launch.
We can live 2 more weeks with the current MT4.
Why the is it prohibited to make a recursive call to the indicators now (build 582 - strict or no strict mode does not matter)? What is the purpose of that? Wasn't it the responsibility of the coders to make working code?
Here is one simple example that uses the same indicator not once but 3 times (to calculate normal values, to get the number of changed bars of the target time frame when in multi time frame mode and to do multi time frame calculations) that worked perfectly well till this last build which prohibits it to work in multi time frame mode. And that is just one example of such a multi time frame indicator that will not work any more (and there are hundreds of similar ones). This restriction has no cause in any common coding errors. If the code for this indicator was not written properly it simply would not work properly and nobody would use an indicator that is not working. This is a great disappointment and it, if it stays like this, will put us back 10 years in the ways how the things were done then and how the things are done today. Not even metatrader 5 has that restriction
PS: enum options are still having inverted order when used from the drop down box
Thanks for replying angevoyageur.
I have an EA that I've loaded on 582 and it's just sitting there on the chart not opening any trades. No error messages in the Journal or Experts tab (loaded successfully and initialized).
It works fine on 509.
Obviously I don't want to post the 800 lines of code here, but where to start debugging when (the new MT4) isn't providing any error messages.
I tried the provided 'Moving Average' EA, and that opened and closed trades on the Metaquotes server, so we know trades can be opened.
key point though, is "Where is the documentation, e.g., 'extern' replaced by 'input', start replaced by 'ontick'.
Ah, solved one problem with EA. Trying to open 0.01 lots on Metaquotes server. Doesn't like it. 0.1 and all was fine (without recompiling).
Second point....my offline Renko EA (with ver 852) is working with no mods, but didn't with ver 874. Thanks MQ. Done something to make old EAs work.
A script is not a script . . .
I've just written a test script to test capturing screen shots . . . I'm having problems with screen shot being captured under 582 from an EA running in the Strategy Tester, WindowScreenShot() returns true but the file is nowhere to be found . . . anyway, I created this simple script . . .
it works as expected under 509, so I compile it under ME 883 and run it in build 582 . . .
2014.01.30 19:34:49.744 'TestWindowScreenShot' is not script and cannot be executed
. . . oh yes it is ! !
A script is not a script . . .
I've just written a test script to test capturing screen shots . . . I'm having problems with screen shot being captured under 582 from an EA running in the Strategy Tester, WindowScreenShot() returns true but the file is nowhere to be found . . . anyway, I created this simple script . . .
it works as expected under 509, so I compile it under ME 883 and run it in build 582 . . .
. . . oh yes it is ! !
So I made this into an EA . . . added a GlobalVariableGet() so it doesn't grab a chart for each tick and ran it n the Strategy Tester . . .
2014.01.30 19:51:34.467 2013.12.02 00:04 TestWindowScreenShot EURUSD,H1: ChartGrab - Path: shots\ Filename: EURUSD2013-12-2.gif
2014.01.30 19:51:33.965 2013.12.02 00:04 TestWindowScreenShot EURUSD,H1: ChartGrab - Path: shots\ Filename: EURUSD2013-12-2.gif
2014.01.30 19:51:33.474 2013.12.02 00:04 TestWindowScreenShot EURUSD,H1: ChartGrab - Path: shots\ Filename: EURUSD2013-12-2.gif
2014.01.30 19:51:32.979 2013.12.02 00:04 TestWindowScreenShot EURUSD,H1: ChartGrab - Path: shots\ Filename: EURUSD2013-12-2.gif
2014.01.30 19:51:32.488 2013.12.02 00:04 TestWindowScreenShot EURUSD,H1: ChartGrab - Path: shots\ Filename: EURUSD2013-12-2.gif
. . . and then on a live chart . . .
2014.01.30 19:53:13.963 TestWindowScreenShot EURUSD,M1: ChartGrab - Path: shots\ Filename: EURUSD2014-1-30.gif
2014.01.30 19:53:06.287 TestWindowScreenShot EURUSD,M1: ChartGrab - Path: shots\ Filename: EURUSD2014-1-30.gif
I can't find these files on my hard drive . . .
I'm just now running into this difference in behavior: I have indies that create a lot of objects, so one easy way to ensure each has a unique name-per-bar is to include the object OBJ_TIME1 in the object name.
509 and 509 ex4 behavior: string objName = StringConcatenate("_P4L_",Time[0]); // objName = "_P4L_1391115600"
582 behavior:
string objName = StringConcatenate("_P4L_",Time[0]); // objName = "_P4L_2014.01.30 21:00:00"
string objName = StringConcatenate("_P4L_",IntegerToString(Time[0])); // objName = "_P4L_1391115600"
I might not care most times because for short names, either one works. But I have other examples that use TIME1 and TIME2 and even also TIME3, so the extra characters are killing me. It exceeds the max ObjectName length and breaks my code.
Anyone see any problem using my workaround, "IntegerToString(Time[0])" ?
P.s. Filed a service ticket.
Thanks for replying angevoyageur.
I have an EA that I've loaded on 582 and it's just sitting there on the chart not opening any trades. No error messages in the Journal or Experts tab (loaded successfully and initialized).
It works fine on 509.
Obviously I don't want to post the 800 lines of code here, but where to start debugging when (the new MT4) isn't providing any error messages.
I tried the provided 'Moving Average' EA, and that opened and closed trades on the Metaquotes server, so we know trades can be opened.
key point though, is "Where is the documentation, e.g., 'extern' replaced by 'input', start replaced by 'ontick'.
There is no online documentation for mql4 yet. You can either use the Help file from metaeditor (F1) or check the mql5 documentation.
About your issue, is your EA working with 509 on Metaquotes server too ? Maybe it can comes from different trading parameters ?