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

 
kashi_ann:

Bonsoir,


Je suis tombé quelque part sur un article où tout le code d'un EA "test" était écrit/décrypté. J'ai oublié de le sauvegarder et je ne le trouve pas. Peut-être que quelqu'un sait, a vu cet article ?

Pratiquement chaque article contient un code EA de test. Comment quelqu'un peut-il savoir ce que vous demandez ?

 
ToNy_Nazarov:

Bonjour !
Est-il possible qu'un EA pour MT4 fonctionne avec des prix à 5 décimales ? Si oui, comment dois-je m'y prendre ? Je travaille via Forex Club.

La fonction Digits renvoie "5", mais le cours acheteur renvoie "1.1094" au lieu de "1.10943", c'est-à-dire sans le 5e signe.
Comment faire pour que le prix total fonctionne avec la 5e décimale ?

De même, la fonction Point produit une valeur de 0 au lieu de 0,00001. Pourquoi cela se produit-il et comment puis-je obtenir la valeur correcte ?

Bien sûr que vous pouvez. Par défaut.

Pas de code, pas de réponse.

 
Comment retirer un seul chiffre d'un nombre ? Disons qu'il y a un nombre 1.2568. Je peux utiliser DoubleToStr() pour le convertir en chaîne de caractères, puis utiliser StringSubstr() pour récupérer le dernier chiffre et le convertir en int. D'autres options ?
 
Yevhenii Levchenko:
Comment retirer un seul chiffre d'un nombre ? Disons qu'il y a un nombre 1.2568. Comment prendre le dernier chiffre "8" ? Je peux utiliser DoubleToStr() pour le convertir en chaîne de caractères, puis StringSubstr() pour récupérer le dernier chiffre et le convertir en int. D'autres options ?

Il y a toujours d'autres options.

S'il s'agit d'une valeur normalisée, il faut la multiplier, dans ce cas par 10000 ou la diviser par 0,0001 pour obtenir l'entier 12568 et prendrele reste de la division par 10.

12568%10=8

 
Alexey Viktorov:

Il y a toujours d'autres options.

S'il s'agit d'une valeur normalisée, il faut la multiplier, dans ce cas par 10000 ou la diviser par 0,0001 pour obtenir l'entier 12568 et prendre le reste de la division par 10.

12568%10=8

Excellente option ! Merci Victor !
 
Yevhenii Levchenko:
Excellente option ! Merci, Victor !

Quand j'étais plus jeune, mon nom était Alexey. Mais j'aime aussi Victor :)))

 
Artyom Trishkin:

Bien sûr que vous pouvez. Par défaut.

Pas de code, pas de réponse.


//--------------------------------------------------------------------
int start()
{
Comment("Bid = ", Bid,
"\nAsk = ", Ask,
"\nPoint = ", _Point,
"\nDigits = ", Digits) ;
retour(0) ;
}
//--------------------------------------------------------------------
Dossiers :
 
Alexey Viktorov:

Quand j'étais plus jeune, mon nom était Alexey. Mais j'aime aussi Victor :))))

Oups, quelque chose a mal tourné ))))

Désolé, Alexei)))

 
ToNy_Nazarov:

//--------------------------------------------------------------------
int start()
{
Comment("Bid = ", Bid,
"\nAsk = ", Ask,
"\nPoint = ", _Point,
"\nDigits = ", Digits) ;
retour(0) ;
}
//--------------------------------------------------------------------

La fonction DoubleToString() est utilisée pour imprimer des nombres réels.

Документация по MQL5: Преобразование данных / DoubleToString
Документация по MQL5: Преобразование данных / DoubleToString
  • www.mql5.com
[in]  Формат точности. Если значение digits лежит в диапазоне от 0 до 16, то будет получено строковое представление числа с указанным количество знаков после запятой. Если значение digits лежит в диапазоне от -1 до -16, то...
 
Artyom Trishkin:

La fonction DoubleToString() est utilisée pour imprimer des nombres réels.

La question est complètement résolue, merci pour votre aide !

//--------------------------------------------------------------------
int start()
{
double delta = Ask-Bid ;
double delta2 = 1.10059-_Point ;
Comment("Bid = ", DoubleToString(Bid,5),
"\nAsk = ", DoubleToString(Ask,5),
"\nDelta = ", DoubleToString(delta,5),
"\NDelta2 = ", DoubleToString(delta2,5),
"\nPoint = ", DoubleToString(_Point,5),
"\nDigits = ", Digits) ;
retour(0) ;
}
//--------------------------------------------------------------------



Dossiers :
Raison: