Questions des débutants MQL5 MT5 MetaTrader 5 - page 1022

 

Désolé pour le copier-coller, mais l'autre fil ne répond pas à la question.

J'ai pris le code de l'exemple dans le guide https://www.mql5.com/ru/docs/strings/stringadd et je l'ai collé dans le script. Le résultat de son exécution dans MQL4 et MQL5 est similaire :

       22:42:49.015    Test Script (EURUSD,H1) time for 'c = a + b' = 235 milliseconds, i = 1000000
       22:42:50.187    Test Script (EURUSD,H1) time for 'StringAdd(a,b)' = 1156 milliseconds, i = 1000000
       22:42:50.781    Test Script (EURUSD,H1) time for 'StringConcatenate(c,a,b)' = 594 milliseconds, i = 1000000

Il est logique que StringAdd() et StringConcatenate() s'exécutent plus rapidement que "+", mais en réalité, le collage normal est trois fois plus rapide, et si nous additionnons le nombre de caractères et de collages par itération, "+" prend l'avantage par une large marge. Pourquoi cela se produit-il, quel est le but et où est la logique ?

 

Puis-je utiliser une DLL 32 bits sur MT5 ?

2019.03.30 16:31:14.984 xxx is not 64-bit version

Quelles sont les options ?
 
Pouvez-vous me conseiller sur la façon de mettre en œuvre une telle chose ? En général, je crée des boutons sur le graphique avec les symboles des positions ouvertes, comment en cliquant sur le bouton pour passer au graphique du symbole du bouton. Merci d'avance.
 
Alexander Mikryukov:
Pouvez-vous dire à mes amis comment mettre en œuvre une telle chose ? En général, je crée sur le graphique des boutons avec les symboles des positions ouvertes, comment passer au graphique du symbole du bouton lorsque je clique sur le bouton. Merci d'avance.

Si je comprends bien votre question, vous avez des positions ouvertes pour plusieurs symboles et pour chaque symbole il y a un graphique OUVERT.

Ensuite, vous devez utiliserChartNext- dans la boucle ...

//--- переменные для идентификаторов графиков 
   long currChart,prevChart=ChartFirst(); 
   int i=0,limit=100; 
   Print("ChartFirst = ",ChartSymbol(prevChart)," ID = ",prevChart); 
   while(i<limit)// у нас наверняка не больше 100 открытых графиков 
     { 
      currChart=ChartNext(prevChart); // на основании предыдущего получим новый график 
      if(currChart<0) break;          // достигли конца списка графиков 
      Print(i,ChartSymbol(currChart)," ID =",currChart); 
      prevChart=currChart;// запомним идентификатор текущего графика для ChartNext() 
      i++;// не забудем увеличить счетчик 
     }

... contournez tous les graphiques ouverts et comparez le symbole et l'horizon temporel du graphique ouvert. Une fois qu'une correspondance est trouvée, nous appliquons CHART_BRING_TO_TOP et sortons de la boucle.

 
С
Vladimir Karputov:

Si je comprends bien votre question, vous avez des positions ouvertes sur plusieurs symboles et pour chaque symbole il y a un graphique OUVERT.

Ensuite, vous devez utiliserChartNext- dans la boucle ...

... contournez tous les graphiques ouverts et comparez le symbole et l'horizon temporel du graphique ouvert. Une fois qu'une correspondance est trouvée - appliquez CHART_BRING_TO_TOP et sortez de la boucle.

Merci.

 

Quelle est l'erreur ?

JF      2       17:38:24.837    Core 1  2018.03.30 00:00:00   Access violation at 0x0000000000561F61 read to 0x0000000009E50040 in 'C:\Program Files\MetaTrader 5\Tester\Agent-127.0.0.1-3000\MQL5\Experts\Mov_8_Bayes_11_4D.ex5'

KN      2       17:38:24.837    Core 1  2018.03.30 00:00:00      crash -->  0000000000561 F61 488 BBCFC60080000  mov        rdi, [rsp+rdi*8+0x860]

QL      2       17:38:24.837    Core 1  2018.03.30 00:00:00                 0000000000561 F69 F20F58CB          addsd      xmm1, xmm3

KM      2       17:38:24.837    Core 1  2018.03.30 00:00:00                 0000000000561 F6D 66480 F6ED7        movd       xmm2, rdi

ES      2       17:38:24.837    Core 1  2018.03.30 00:00:00                 0000000000561 F72 488978 C0          mov        [rax-0x40], rdi

DQ      2       17:38:24.837    Core 1  2018.03.30 00:00:00                 0000000000561 F76 418 D7C3321        lea        edi, [r11+rsi+0x21]

JR      2       17:38:24.837    Core 1  2018.03.30 00:00:00                 0000000000561 F7B 488 BBCFC60080000  mov        rdi, [rsp+rdi*8+0x860]

JL      2       17:38:24.837    Core 1  2018.03.30 00:00:00                 0000000000561 F83 F20F58D1          addsd      xmm2, xmm1

HR      2       17:38:24.837    Core 1  2018.03.30 00:00:00   

MN      2       17:38:24.837    Core 1  2018.03.30 00:00:00   00: 0x0000000000561F61

GQ      2       17:38:24.837    Core 1  2018.03.30 00:00:00   01: 0x234A5B15D2A360C4

OH      2       17:38:24.837    Core 1  2018.03.30 00:00:00   02: 0x000C6F5900001B70

EL      2       17:38:24.837    Core 1  2018.03.30 00:00:00   03: 0x5B17241D60C560C5

DE      2       17:38:24.837    Core 1  2018.03.30 00:00:00   04: 0x8AC900001B8F2329

NM      2       17:38:24.837    Core 1  2018.03.30 00:00:00   05: 0x75A160C660C6000C

QJ      2       17:38:24.837    Core 1  2018.03.30 00:00:00   06: 0x00001B6E22C85B18

HS      2       17:38:24.837    Core 1  2018.03.30 00:00:00   07: 0x60C760C7000CA658

KG      2       17:38:24.837    Core 1  2018.03.30 00:00:00   08: 0x1BCB22E25B19C71F

JQ      2       17:38:24.837    Core 1  2018.03.30 00:00:00   09: 0x60C8000CC1C60000

LQ      2       17:38:24.837    Core 1  2018.03.30 00:00:00   10: 0x22895B1B6C6F60C8

PH      2       17:38:24.837    Core 1  2018.03.30 00:00:00   11: 0x000CDD9100001BD2

ES      2       17:38:24.837    Core 1  2018.03.30 00:00:00   12: 0x5B1F0D1560CB60CB

MK      2       17:38:24.837    Core 1  2018.03.30 00:00:00   13: 0xF96300001AAD229A

QR      2       17:38:24.837    Core 1  2018.03.30 00:00:00   14: 0x5D1E60CC60CC000C

PJ      2       17:38:24.837    Core 1  2018.03.30 00:00:00   15: 0x00001BAA20EC5B20

QL      2       17:38:24.837    Core 1  2018.03.30 00:00:00   16: 0x60CD60CD000D1410

HE      2       17:38:24.837    Core 1  2018.03.30 00:00:00   

JQ      2       17:38:24.837    Core 1  OnTick critical error

KF      0       17:38:24.837    Core 1  GBPUSD,H1: 1 ticks, 1 bars generated. Environment synchronized in 0:00:01.987. Test passed in 0:00:01.360 (including ticks preprocessing 0:00:00.328).

KS      0       17:38:24.837    Core 1  GBPUSD,H1: total time from login to stop testing 0:00:03.347 (including 0:00:01.987 for history data synchronization)

GS      0       17:38:24.837    Core 1  236 Mb memory used including 1.41 Mb of history data, 64 Mb of tick data

PJ      0       17:38:24.837    Core 1  log file "C:\Program Files\MetaTrader 5\Tester\Agent-127.0.0.1-3000\logs\20190331.log" written

NG      0       17:38:24.856    Core 1  connection closed
 
Aliaksandr Yemialyanau:

Quelle est l'erreur ?


Ошибка вставки кода.
 

Je m'excuse pour ma griserie obtuse... Je n'ai jamais travaillé avec MQL5. J'utilise les EA avec prudence (READY) et j'en apprends davantage sur leurs capacités. J'ai téléchargé le panneau d' information EAPADPRO, je pensais qu'il fonctionnait comme un EA. Mais c'est "une bibliothèque à ajouter à votre EA" ( ???).Il y a beaucoup de questions sur chaque centimètre de lecture. Comment comprenez-vous "Copier le dossier MQL5 dans le dossier de votre terminal" ? Il est donc là depuis l'installation du terminal( ???).

https://www.mql5.com/ru/blogs/post/719820 Programmation en 10 étapes ? ??? - Où tout écrire. Et la question principale : si je suis si sombre, peut-être ne devrais-je pas commencer à travailler avec ce panneau (bibliothèque) ?

 
Александр Кузьмин:

Je m'excuse pour ma griserie obtuse... Je n'ai jamais travaillé avec MQL5. J'utilise les EA avec prudence (READY) et j'en apprends davantage sur leurs capacités. J'ai téléchargé le panneau d' information EAPADPRO, je pensais qu'il fonctionnait comme un EA. Mais c'est "une bibliothèque à ajouter à votre EA" ( ???).Il y a beaucoup de questions sur chaque centimètre de lecture. Comment comprenez-vous "Copier le dossier MQL5 dans le dossier de votre terminal" ? Il est donc là depuis l'installation du terminal( ???).

https://www.mql5.com/ru/blogs/post/719820 Programmation en 10 étapes ? ??? - Où tout écrire. Et la question principale : si je suis si sombre, pourquoi ne pas commencer à travailler avec ce panneau (bibliothèque) ?

Je pense que ce panneau est inutile pour les débutants de MQL5.

 
Александр Кузьмин:

Je m'excuse pour ma griserie obtuse... Je n'ai jamais travaillé avec MQL5. J'utilise les EA avec prudence (READY) et j'en apprends davantage sur leurs capacités. J'ai téléchargé le panneau d' information EAPADPRO, je pensais qu'il fonctionnait comme un EA. Mais c'est "une bibliothèque à ajouter à votre EA" ( ???).Il y a beaucoup de questions sur chaque centimètre de lecture. Comment comprenez-vous "Copier le dossier MQL5 dans le dossier de votre terminal" ? Il est donc là depuis l'installation du terminal( ???).

https://www.mql5.com/ru/blogs/post/719820 Programmation en 10 étapes ? ??? - Où tout écrire. Et la question principale : si je suis si sombre, peut-être ne devrais-je pas commencer à travailler avec ce panneau (bibliothèque) ?

Posez des questions à l'auteur de cette bibliothèque sur son blog, dont vous avez donné le lien.