Erreurs, bugs, questions - page 1769
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Erreur dans <Math\Stat\Math.mqh>
Erreur dans <Math\Stat\Math.mqh>
Quelle longueur correspond alors à QNaN ?
0x7FF80000000000000000.
Merci, plus de détails ici
En plus de l'infini négatif, il y a l'infini positif et le NaN (not a number). Pour déterminer si un nombre donné est invalide, vous pouvez utiliser la fonctionMathIsValidNumber(). Selon la norme IEEE, ils ont une représentation machine spéciale. Par exemple, plus l'infini pour le type double a une représentation binaire de 0x7FF0 0000 0000 0000 0000.
Exemples :
{
double d;
};
struct str2
{
long l;
};
//--- начнем
str1 s1;
str2 s2;
//---
s1.d=MathArcsin(2.0); // получим недействительное число -1.#IND
s2=s1;
printf("1. %f %I64X",s1.d,s2.l);
//---
s2.l=0xFFFF000000000000; // недействительное число -1.#QNAN
s1=s2;
printf("2. %f %I64X",s1.d,s2.l);
//---
s2.l=0x7FF7000000000000; // наиобльшее нечисло SNaN
s1=s2;
printf("3. %f %I64X",s1.d,s2.l);
//---
s2.l=0x7FF8000000000000; // наименьшее нечисло QNaN
s1=s2;
printf("4. %f %I64X",s1.d,s2.l);
//---
s2.l=0x7FFF000000000000; // наибольшее нечисло QNaN
s1=s2;
printf("5. %f %I64X",s1.d,s2.l);
//---
s2.l=0x7FF0000000000000; // плюс бесконечность 1.#INF и наименьшее нечисло SNaN
s1=s2;
printf("6. %f %I64X",s1.d,s2.l);
//---
s2.l=0xFFF0000000000000; // минус бесконечность -1.#INF
s1=s2;
printf("7. %f %I64X",s1.d,s2.l);
//---
s2.l=0x8000000000000000; // отрицательный ноль -0.0
s1=s2;
printf("8. %f %I64X",s1.d,s2.l);
//---
s2.l=0x3FE0000000000000; // 0.5
s1=s2;
printf("9. %f %I64X",s1.d,s2.l);
//---
s2.l=0x3FF0000000000000; // 1.0
s1=s2;
printf("10. %f %I64X",s1.d,s2.l);
//---
s2.l=0x7FEFFFFFFFFFFFFF; // наибольшее нормализованное число (MAX_DBL)
s1=s2;
printf("11. %.16e %I64X",s1.d,s2.l);
//---
s2.l=0x0010000000000000; // наименьшее положительное нормализованное (MIN_DBL)
s1=s2;
printf("12. %.16e %.16I64X",s1.d,s2.l);
//---
s1.d=0.7; // покажем, что число 0.7 – бесконечная дробь
s2=s1;
printf("13. %.16e %.16I64X",s1.d,s2.l);
/*
1. -1.#IND00 FFF8000000000000
2. -1.#QNAN0 FFFF000000000000
3. 1.#SNAN0 7FF7000000000000
4. 1.#QNAN0 7FF8000000000000
5. 1.#QNAN0 7FFF000000000000
6. 1.#INF00 7FF0000000000000
7. -1.#INF00 FFF0000000000000
8. -0.000000 8000000000000000
9. 0.500000 3FE0000000000000
10. 1.000000 3FF0000000000000
11. 1.7976931348623157e+308 7FEFFFFFFFFFFFFF
12. 2.2250738585072014e-308 0010000000000000
13. 6.9999999999999996e-001 3FE6666666666666
*/
comme ça, il y a quelque chose de similaire...
Aide ... J'installe un conseiller expert fraîchement écrit sur l'optimisation et qu'en pensez-vous, ce rampant me donne un nouveau résultat chaque jour. C'est-à-dire que chaque jour, je perdrai tout ce que j'ai fait aujourd'hui avec les paramètres précédents, avec lesquels je pouvais gagner hier..... Je ne touche pas aux paramètres !!!! Comment est-ce possible, et surtout que faire ?
J'attends une réponse, des commentaires et de l'aide !!!!.
Merci d'avance !
Bonjour Messieurs ! !!
Aidez-moi... Je commence à optimiser mon conseiller expert nouvellement créé et il me donne de nouveaux résultats chaque jour. C'est-à-dire que chaque jour, je perdrai tout ce que j'ai fait aujourd'hui avec les paramètres précédents, avec lesquels je pouvais gagner hier..... Je ne touche pas aux paramètres !!!! Comment est-ce possible, et surtout que faire ?
J'attends une réponse, des commentaires et de l'aide !!!!.
Merci d'avance !
C'est par là,https://www.mql5.com/ru/articles/1417.
et lire la suite ici, il y en a plus qu'il n'en faut.
Corrigez "étape" avec une majuscule et je voudrais aussi soit centrer, soit tout à droite, soit tout à gauche, sinon cela donne un résultat différent.
{
int start=GetTickCount();
datetime tStart = TimeLocal();
Print(">>>>>>>>>>>>>>>>>>START<<<<<<<<<<<<<<<<<<" );
Sleep(5000);
Print("Время работы ", GetTickCount()-start, " миллисекунд.");
Print(">>>>>>>>>>>>>>>>>>FINISH<<<<<<<<<<<<<<<<<<");
Print(TimeLocal() - tStart);
return(0);
}