MetaTrader 4 Build 600 with Updated MQL4 Language and Market of Applications Released - page 13

 
gchrmt4:

Have you tried v602?

I've seen all sorts of strange things with old EAs in v600, related to the fact that init() can get called more than once - and, apparently, re-entrantly - particularly when starting up the platform with EAs already present on charts. v602 seems to fix this, and init() only gets called once.


Really? This bug was already in b.529 and it got fixed fast... So it seems the bugs keep reappearing. Usually if a developer fixes a bug, he creates a test case to ensure the bug will not appear again.
 

I've met the problem with mailing via an external (not local) SMTP server.

MT4 is build 602.

By capturing SMTP packets, the cause has been figured out. Envelope-From (FROM:) is incorrect, that is always set to test@<local FQDN>, as follows.

This causes the SMTP server rejects the client!

220 smtp508.mail.kks.yahoo.co.jp ESMTP
EHLO <local hostname>
250-smtp508.mail.kks.yahoo.co.jp
250-AUTH LOGIN PLAIN XYMCOOKIE
250-PIPELINING
250 8BITMIME
AUTH LOGIN
334 ******** <masked>
******** <masked>
334 ******** <masked>
******** <masked>
235 ok, go ahead (#2.0.0)
MAIL FROM: <test@local FQDN>
521 smtp.mail.yahoo.co.jp closing transmission channel. This email address must be verified first before you can use it for Sender/From field.
QUIT
 
Folex:

Sure,

I used the attached EA, just copied it 2 times and renamed in test2 and test3. Thus all are identical in their code, just the name differs.

MT4 Build 602 has been used.

test1 to be attached to EURUSD/GBPUSD/USDJPY/AUDUSD respectively the first four charts and in sequence.

...

This error does repeat each time MT4 is restarted.

If you move the GBPUSD chart with test2 attached to first in sequence of the charts... the error will jump to test1... and so on...


It will be investigated as soon as possible.
 

Hello Sirs

I've a problem with one of my expert with the new MT4.

When I've tried to run my EA, the expert log told me ""is not expert and cannot be executed".

I've reinstalled the M4 but the problem is still here. I've tried to copy my EA in a new EA with metaeditor, the problem is still here.

Please someone could help me to solve it ?

Thanks

 

there is bug in ArrayCopy? version 600-602

I can't get the correct copy prices, but datetime is correct.

void DebugRateArray(double rateArray[][6], int count=5)
{
    for(int i=0; i<count; i++)
    {
        Print("T" + i + "=" + TimeToStr(rateArray[i][0]),
            ", O="+DoubleToStr(rateArray[i][1],4),
            ", L="+DoubleToStr(rateArray[i][2],4),
            ", H="+DoubleToStr(rateArray[i][3],4),
            ", C="+DoubleToStr(rateArray[i][4],4));
    }
}

int start()
{
    double RateArray[][6];
    int rateCount = ArrayCopyRates(RateArray, Symbol(), Period());

    Print("rateCount=", rateCount);
    DebugRateArray(RateArray);

    double copyArray[][6];
    int size = ArrayResize(copyArray, 20);

    ArrayCopy(copyArray,RateArray,0, rateCount*6-size, size);
    DebugRateArray(copyArray);
}

2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T4=2014.02.05 20:00, O=-0.0000, L=0.0000, H=182571447464430410000000000.0000, C=-2956996155530648600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T3=2014.02.06 00:00, O=-2956995697597689600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000, L=-356886116701494630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T2=2014.02.06 04:00, O=-0.0000, L=0.0000, H=0.0000, C=-23704118622972150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T1=2014.02.06 08:00, O=-23704114760882154000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000, L=2283170606282752900000000000000000000000000000000000000000000000.0000, H=0.0000, C=0.0000
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T0=2014.02.06 12:00, O=-0.0000, L=0.0000, H=1218945791014798500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0000, C=58859708666881680000000000000000000000000000000000000000000000.0000
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T4=2014.02.05 20:00, O=1.3534, L=1.3530, H=1.3538, C=1.3536
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T3=2014.02.06 00:00, O=1.3536, L=1.3526, H=1.3539, C=1.3534
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T2=2014.02.06 04:00, O=1.3534, L=1.3515, H=1.3535, C=1.3519
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T1=2014.02.06 08:00, O=1.3519, L=1.3517, H=1.3534, C=1.3527
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: T0=2014.02.06 12:00, O=1.3528, L=1.3484, H=1.3601, C=1.3593
2014.02.06 21:51:56.235 testScript2 EURUSD,H4: rateCount=6364

 
oliwand:

Hello Sirs

I've a problem with one of my expert with the new MT4.

When I've tried to run my EA, the expert log told me ""is not expert and cannot be executed".

I've reinstalled the M4 but the problem is still here. I've tried to copy my EA in a new EA with metaeditor, the problem is still here.

Please someone could help me to solve it ?

Thanks



Where the source is placed (which folder inside the MQL4 folder)?

Have you compiled it using the new mql compiler?
 
alexvd:

Where the source is placed (which folder inside the MQL4 folder)?

Have you compiled it using the new mql compiler?




Hello,


The EA is placed in MQL4/Experts folder.

I've compiled it with the new metaeditor to verify it. It told me 0 error.

 

Build 602 : Fixed sized arrays are not reset on init. If you use fixed size array and change parameters, time frame, symbol or account content of fixed sized arrays is not reset (while dynamic arrays are properly reset to size 0)

Here is a simple example that shows what happens (or better said - does not happen) when time frame, symbol, parameters or account is changed

#property indicator_chart_window

int init()   { return(0); }
int deinit() { return(0); }

double array[1][1];

int start()
{
   if (array[0][0] != 999) { array[0][0] = 999; Comment("array initialized at : ",TimeToStr(TimeLocal(),TIME_DATE|TIME_SECONDS)," to ",array[0][0]); }
   return(0);
}
 
alexvd:
Could you provide any screenshot, log records etc.

Investigated further - when I try to place a pending order I get 'please wait your order is being processed by the server' which remains until trade times out. If I try to place another pending order after that it will execute straight away. On Metaquotes demo platform the issue is not apparent - if I login to my live broker accounts on the MQ platform the issue occurs on all of my live account regardless of the broker. If the platform is restarted the issue presents again in the same manner untile after 'trade timeout' then a pending order will execute. All on build 602.
 
littlemax:

You have to provide log files or screenshot that demonstrate the problem.