Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 243

 
Jenya77769:

Merci, ça a marché, seulement j'ai normalisé q et w séparément !

Vous devez normaliser la différence de deux nombres. Et comparez-le à zéro.
 
Artyom Trishkin:
Si c'est la dixième barre, comment puis-je savoir la différence entre la dixième et la barre zéro ? 10-0=10
Et pourquoi dois-je le soustraire ?


Nous pouvons voir sur le papier que 10 - 0 = 10. Mais comment écrire cette condition dans le programme. Je n'ai pas trouvé de fonction qui renvoie le numéro de la barre. Ou peut-être ai-je trop cherché ?

 
Youri Lazurenko:

Nous pouvons voir sur le papier que 10 - 0 = 10. Mais comment écrire cette condition dans le programme. Je n'ai pas trouvé de fonction qui renvoie le numéro de la barre. Ou est-ce que je regardais trop fort ?

Eh bien, vous avez déjà trouvé ce bar. Dans la fonction qui recherche l'intersection.
 
Artyom Trishkin:
Eh bien, tu as DÉJÀ trouvé ce bar. Dans la fonction qui recherche l'intersection.
Oui, je l'ai trouvé. Je pense qu'en écrivant votre réponse, j'ai compris votre point de vue - la fonction IntersectionXX() me donne simplement ce nombre, que ce soit 10. Est-ce que j'ai bien compris ?
 
double SPREAD=MarketInfo(Symb,MODE_SPREAD);// Спред
 double q=High[0]-3.0*Point-High[1];
double w=-SPREAD*Point;

if(NormalizeDouble(q,4)> NormalizeDouble(q,4))
Artyom Trishkin
:

Normaliser la différence entre les deux nombres. Et comparez-le à zéro.

Et la façon dont je l'ai fait, il pourrait y avoir des erreurs ?

 
Youri Lazurenko:
Oui, je l'ai trouvé. Je pense avoir compris votre point de vue en écrivant la réponse - IntersectionXX() est exactement ce qui me donne ce nombre, que ce soit 10. Est-ce que j'ai bien compris ?
Oui
 
Artyom Trishkin:
Oui

Merci beaucoup. Oui, ma logique, mon imagination et mon jugement font un peu défaut. Merci encore, et bonne chance.

 

Bonjour, je voulais obtenir l'heure d'ouverture de la barre du mois en cours, mais j'ai obtenu une erreur 4074 (ERR_NO_MEMORY_FOR_HISTORY). Il est également intéressant de noter que si je commence les tests à partir du 1er juin, tout est correct, mais à partir du 2 juin, l'erreur commence à apparaître. Comment résoudre le problème de ce mois-ci ?

   datetime iTimeMN=iTime(NULL,PERIOD_MN1,0);
   Print("iTimeMN= ",iTimeMN);
   if(iTimeMN==0)
     {
      Print(" Error= ",GetLastError());
      Sleep(1000);
     }
 

Bonjour à tous, veuillez m'aider à modifier les valeurs des variables. Il y a deux variables avec une valeur initiale de zéro. Par exemple, j'ai toujours deux niveaux sur le tableau. Comment faire en sorte que, lorsqu'un niveau est atteint, la première variable prenne la valeur "1" et que, lorsque l'autre niveau est atteint, elle reprenne la valeur "0", tandis que la deuxième variable agit de manière inverse.

 
AlGuru:

Bonjour à tous, veuillez m'aider à modifier les valeurs des variables. Il y a deux variables avec une valeur initiale de zéro. Par exemple, j'ai toujours deux niveaux sur le tableau. Comment faire en sorte qu'à l'atteinte d'un niveau, la première variable ait pris la valeur "1" et que seulement à l'atteinte de l'autre niveau, elle ait repris la valeur "0", alors que la deuxième variable a agi de manière opposée.


Tout semble fonctionner. Mais ça n'a pas marché au début. Étrange.