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

 
Tapochun:

Pourquoi ? La barre de zéro est recalculée dans chaque indicateur MT standard. Nécessité de prévenir la situation de recalculs multiples de l'ensemble de l'indicateur.
D'accord. Pour clarifier : "... nous devons empêcher la situation de recalcul multiple de l'indicateur lorsque la barre de zéro change".
 
Karputov Vladimir:
D'accord. Pour clarifier : "... dans ce cas, nous devons empêcher les situations de recalcul multiple de l'indicateur entier lorsque la barre zéro change".
Vous n'avez pas besoin de tous ces problèmes :) L'indicateur ne dessine pas avec des tampons. Il dessine des lignes de Fibonacci avec des objets. Vous pouvez les dessiner dans le minuteur.
 
il n'utilise pas la barre de zéro.
 

Nous devons créer plusieurs contrôles pour une seule exécution.

Si l'une est fausse, vérifiez la deuxième ; si elle est fausse, vérifiez la troisième, mais si elle est vraie, ne vérifiez pas la dernière et passez à l'exécution des actions.

J'ai réécrit le code, il n'est pas inséré (capture d'écran).

 
Leanid Aladzyeu:

Nous devons créer plusieurs contrôles pour une seule exécution.

Si l'un est faux, on vérifie le deuxième ; s'il est faux, on vérifie le troisième, mais s'il est vrai, on ne vérifie pas celui du bas, on passe à l'exécution des actions.

Vous pouvez utiliser cette construction pour vérifier la logique :

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "2015, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   bool one=true;
   bool two=true;
   bool three=true;
   bool foure=true;
//---
   if(!one) //false
     {
      //
     }
   else if(!two) //false
     {
      //
     }
   else if(!three) //false
     {
      //
     }
   else if(foure) //true
     {
      Print("I am here!");
     }
  }
//+------------------------------------------------------------------+
 

Qu'est-ce que c'est que cette absurdité ? J'ai des chiffres et de la normalisation partout dans le code et c'est la même chose.

Trawl donne parfois les mauvais arrêts à 130 .

Je pense que c'est pour ça. Où sont mes cinq chiffres?)

 
Leanid Aladzyeu:

Qu'est-ce que c'est que cette absurdité ? J'ai des chiffres et de la normalisation partout dans le code et c'est la même chose.

Trawl donne parfois les mauvais arrêts à 130 .

Je pense que c'est pour ça. Où sont mes cinq chiffres ?)

Le cinquième chiffre ici est zéro, probablement. Et ça ne s'écrit pas.
 
-Aleks-:
Le cinquième chiffre ici est zéro, probablement. Et ça ne s'écrit pas.
Génie=). Je sais. C'est ce qui cause le dysfonctionnement.
 
Leanid Aladzyeu:
Génie=). Je sais. C'est ce qui cause le dysfonctionnement.

Hm. Avec votre niveau de compétence, je ne dirais pas ça.

 
Tapochun:

Hm. Avec votre niveau de compétence, je ne dirais pas ça.

Peut-être, mais en tout cas, il faut aussi le corriger.
Raison: