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

 
Vladimir Karputov:

Je ne menaçais personne. Vous rêvez.

Vous avez également confondu MQL5 et MQL4. Les codes MQL5 sont des fichiers portant l'extension .mq5.

Je n'ai menacé personne, mais fait une observation, c'est une tournure de phrase humoristique :-)

Je citais le code cinq ici, peut-être m'avez-vous confondu avec quelqu'un d'autre.

 
psyman:

Je ne veux pas dire menacer, mais réprimander, c'est une tournure de phrase humoristique :-)

Je citais le code cinq ici, peut-être que vous me confondez avec quelqu'un d'autre.

Deux étapes :

comparez les nombres 4 et 5. Trouvez la différence.

Passez en revue vos messages et regardez le nombre.


Et en général, ce fil de discussion concerne MQL5, arrêtez de vous plaindre d'être ici.

 

Mes amis, pouvez-vous m'aider à créer une fonction qui sélectionnerait les caractères des postes ouverts et les enregistrerait dans un tableau. Cela ne semble pas poser de problème, mais je n'arrive pas à me débarrasser des doublons s'il y a plusieurs postes ouverts.

 
Alexander Mikryukov:

Mes amis, pouvez-vous m'aider à créer une fonction qui sélectionnerait les caractères des postes ouverts et les enregistrerait dans un tableau. Il ne semble pas y avoir de problème, mais je n'arrive pas à me débarrasser des doublons lorsqu'il y a plusieurs postes ouverts.

Ici, réécris-le pour mql5

  for(int i=0; i<OrdersTotal(); i++) {
   if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
    if(OrderType()<2) {
     if(ArraySearchStr(symbols, OrderSymbol())==-1) {
      b++;
       ArrayResize(symbols,b+1);
       symbols[b]=OrderSymbol();
  }}}}

//===============================================================================================
//------------------------------ Функция удаляет копии с массива -------------------------------+
//===============================================================================================
int ArraySearchStr(string& m[], string e) {
  for(int i=0; i<ArraySize(m); i++) {
   if(m[i]==e) return(i);
  }
  return(-1);
 }
 
Vitaly Muzichenko:

Ici, pour mql5, réécrivez-le vous-même

Merci.

 

Aidez-moi à comprendre quelque chose que je ne comprends pas.

      for(int p = 0; p < InpShiftCorrection; p++) prs += pressureDetermination(open[i],close[i],high[i],low[i]);
      prs /= InpShiftCorrection;
      prs *= (high[i] - low[i]);
      Print(NormalizeDouble(prs,Digits()));

La question est de savoir pourquoi l'imprimante de normalisation produit de telles absurdités.

2019.03.29 22:53:29.310 2019.01.02 06:01:21   -0.00025
2019.03.29 22:53:29.310 2019.01.02 06:01:21   0.00012
2019.03.29 22:53:29.310 2019.01.02 06:01:21   8.000000000000001 e-05
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -9.000000000000001 e-05
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -9.000000000000001 e-05
2019.03.29 22:53:29.310 2019.01.02 06:01:21   5 e-05
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -4 e-05
2019.03.29 22:53:29.310 2019.01.02 06:01:21   0.00017
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -8.000000000000001 e-05
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -0.00052
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -0.00029
2019.03.29 22:53:29.310 2019.01.02 06:01:21   -0.00114
2019.03.29 22:53:29.310 2019.01.02 06:01:21   0.00123
 
Сергей Таболин:

Aidez-moi à comprendre quelque chose que je ne comprends pas.

La question est de savoir pourquoi l'imprimante de normalisation produit de telles absurdités.

Print(NormalizeDouble(prs,Digits()));
Print(DoubleToString(prs,Digits()));
 
Vitaly Muzichenko:

Je vais essayer. Merci. Mais jusqu'à présent, cette même imprimante a produit des valeurs exceptionnellement correctes...

 
Сергей Таболин:

Je vais essayer. Merci. Mais jusqu'à présent, cette même empreinte a donné des valeurs exclusivement correctes...

Il vous a flatté)

 
Vitaly Muzichenko:

Il te flattait))

Apparemment oui )))) Ça a marché.