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

 
Evgeny Dyuka:

Le forum est immense et il n'y a aucun sujet sur l'utilisation des réseaux neuronaux dans le trading. C'est bizarre. Ou existe-t-il quelque part ?

Ou est-ce que personne ne s'en occupe ?

https://www.mql5.com/ru/search#!keyword=%D0%BD%D0%B5%D0%B9%D1%80%D0%BE%D1%81%D0%B5%D1%82%D0%B8&module=mql5_module_articles

Поиск - MQL5.community
Поиск - MQL5.community
  • www.mql5.com
Поиск выполняется с учетом морфологии и без учета регистра. Все буквы, независимо от того, как они введены, будут рассматриваться как строчные. По умолчанию наш поиск показывает страницы...
 

Alexei, veuillez l'ajouter comme ami, j'ai besoin de vous contacter par MP.

 
Bonjour chers experts. Est-ce que des fonctions telles que SymbolInfoDouble(symb,SYMBOL_BID) ou PositionsTotal() ont un effet sur le délai (ping vers le serveur), ou ces données sont prises depuis le terminal ? Et qu'est-il préférable d'utiliser PositionGetDouble(POSITION_PRICE_OPEN) ou les données de la structure MqlTradeResult ?
 
Comment passer les paramètres de la fonction OnCalculate(const datetime &time[]) à une autre fonction par référence, ils écrivent qu'une variable constante ne peut pas être passée comme référence ?
 

Quel est le problème avec le tableau à deux dimensions ?

Le code le plus simple du script de test :

double ARtst[5][6];
double sss=0.0;

void OnStart()
{
   for(int nn=0; nn<5; nn++) {
      for(int mm=0; mm<6; mm++) {
         ARtst[nn][mm] = 1.0 + 1.0*nn*mm;
      }
   }

   for(int nn=0; nn<5; nn++) {
      testproc(nn,sss,ARtst);
   }
}

void testproc(int ii, double& sum, double& ARR[][])
{  int kk;

   kk = ArrayRange(ARR,1);
   sum = 0.0;
   for(int nn=0; nn<kk; nn++) sum = sum + ARR[ii][nn];

   return;
}

Donne deux erreurs à la fois :

1. "[" - valeur d'index invalide, pointant vers le tableau bidimensionnel ARR dans la définition de la procédure testproc.

2. "ARtst" - conversion de paramètre non autorisée, pointant vers le tableau ARtst dans la définition de la procédure testproc.

Pas de problème avec un tableau unidimensionnel.

 
VANDER:
Comment passer les paramètres de OnCalculate(const datetime &time[]) à une autre fonction par référence, ils disent qu'une variable constante ne peut pas être passée comme référence.
void другая_функция(const datetime &time[], const int rates_total) 
{
 Print(time[rates_total-1]);
}
// Вызов функции из OnCalculate

другая_функция(time, rates_total);
 
Yurixx:

Quel est le problème avec le tableau à deux dimensions ?

Le code le plus simple du script de test :

Donne deux erreurs à la fois :

1. "[" - valeur d'index invalide, pointant vers le tableau bidimensionnel ARR dans la définition de la procédure testproc.

2. "ARtst" - conversion de paramètre non autorisée, pointant vers le tableau ARtst dans la définition de la procédure testproc.

Il n'y a pas de problème avec les tableaux unidimensionnels.

Je n'ai pas compris le code complètement, mais ça devrait être comme ça :

void testproc(int ii, double& sum, double& ARR[][6])
 
Alexey Viktorov:

Je n'ai pas bien compris le code, mais ça devrait être comme ça :

Exactement ! Merci beaucoup.

J'ai encore du mal à saisir les différences entre MT5 et MT4 avant la fin. )))

 
Yurixx:

Exactement ! Merci beaucoup.

J'ai encore du mal à saisir les différences entre MT5 et MT4 avant la fin. )))

Dans mql5, le travail avec les tableaux n'est pas du tout différent de celui de mql4.

 
Alexey Viktorov:

Dans mql5, travailler avec des tableaux n'est pas du tout différent de mql4.

La façon dont je vois les choses est différente.

Dans MT4, la déclaration de tableaux multidimensionnels dans les procédures ne nécessitait pas de spécifier explicitement la dimensionnalité dans l'une des dimensions.