L'erreur de Molanis, quelqu'un ? - page 4

 
WHRoeder:

FAUX Avez-vous seulement pris la peine de LIRE le lien que vous avez posté(https://book.mql4.com/variables/types) il est dit "Les variables globales sont initialisées une seule fois avant de déclarer l'exécution de fonctions spéciales".

Les variables globales et statiques sont définies lorsque l'EA est chargé et non pendant le cycle de désinit/init.

Ajoutez une déclaration d'impression juste après le Slippage = Slippage * 10 et exécutez-le et changez les graphiques ou les cadres temporels et regardez dans le journal si vous ne voulez pas croire la documentation de nous...

Slippage est un extern int dont la valeur est initialisée à chaque init().

PipMultiplier est un int global, à travers l'EA de Molanis cette valeur ne change pas, donc la valeur de PipMultiplier ne changera pas quand on change de TF ou de Symbole ou quand on ouvre une propriété de l'EA.

EA appuie sur F7 encore et encore

extern int Extern=3;

int Intern = 1;
bool Do_Once;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
  Alert ("Extern init = ",Extern);
  Alert ("Intern init = ",Intern);
  Do_Once = False;
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit(){return(0);}
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   
   if (Do_Once == false)
      {
      Do_Once = true;
      Extern = Extern*2;
      Intern = Intern*2;
      Alert ("Extern start = ",Extern);
      Alert ("Intern start = ",Intern);
      }
   
   return(0);
  }
//+------------------------------------------------------------------+
 
onewithzachy:

Slippage est extern int dont la valeur est initialisée à chaque init().

PipMultiplier est un int global, dans toute l'EA de Molanis cette valeur ne change pas, donc la valeur de PipMultiplier ne changera pas lors du changement de TF ou de Symbole ou de l'ouverture de la propriété de l'EA.

EA appuie sur F7 encore et encore


Votre EA démontre-t-elle que le code fonctionne comme prévu ? Si je vous suis bien, Slippage revient à mon entrée à chaque init(). PipMultiplier = 1 dans les globales, mais dans init() si FiveDigits = true alors PipMultiplier = 10... à chaque init(). Étant donné Slippage = 3 et FiveDigits = true, PipMultiplier est toujours égal à 10 ? 30 points, 30 points, 30 points ?
 
RJo:

Votre EA démontre-t-elle que le code fonctionne comme prévu ? Si je vous suis bien, le Slippage revient à mon entrée à chaque init(). PipMultiplier = 1 dans les globales, mais dans init() si FiveDigits = true alors PipMultiplier = 10... à chaque init(). Étant donné Slippage = 3 et FiveDigits = true, PipMultiplier est toujours égal à 10 ? 30 points, 30 points, 30 points ?

Dans le code Molanis, la valeur du PipMultiplier reste la même, elle ne change jamais, qu'elle soit à cinq chiffres ou non - ne vous en préoccupez pas. Je pense que ce que vous avez besoin de savoir est la valeur de Slippage - et je l'ai vérifié avant ma réponse à WHRoeder - elle ne change pas.

Modifiez ceci sur init(), attachez l'EA de Molanis, appuyez sur F7 autant de fois que vous le souhaitez et la valeur de Slippage restera la même.

   //if(FiveDigits)
   //  {
      PipMultiplier=10;
   //  }
   Slippage=Slippage*PipMultiplier;
   Alert ("Slippage ",Slippage);

:D

 
onewithzachy:

Dans le code Molanis, la valeur du PipMultiplier reste la même, elle ne change jamais, qu'elle soit à cinq chiffres ou non - ne vous inquiétez pas pour cela. Je pense que ce que vous avez besoin de savoir est la valeur de Slippage - et je l'ai vérifié avant ma réponse à WHRoeder - elle ne change pas.

Modifiez ceci sur init(), attachez l'EA de Molanis, appuyez sur F7 autant de fois que vous le souhaitez et la valeur de Slippage restera la même.

:D


Merci, onewithzachy, d'avoir mis fin à ma chasse au dahu.
 

Bonjour... un peu d'aide Je veux construire un EA de moyenne mobile à double croix pour un compte MT4 ECN.

première période MA 14 shift -7

2ème période MA 14 shift -11

acheter et vendre et fermer chaque croisement de moyenne mobile.

J'ai lu beaucoup d'instructions en ligne, mais je ne sais toujours pas comment construire mon propre EA avec une configuration complète et une fonction réussie d'achat/vente et de fermeture.

Je demande de l'aide à ces professionnels déjà comment puis-je définir le bon réglage de cette EA.

n'importe qui peut aider l'étape par étape... Je serai reconnaissant.