il est préférable de fixer le nombre de pi comme ceci.
pi = 4*MathArctan(1);J'ai eu l'idée une fois, et maintenant je vous la transmets.
le nombre de pi est mieux défini comme ceci.
J'ai eu l'astuce une fois, maintenant je vous la transmets.Il existe également une section Constantes mathématiques dans le langage MQL5 :
Des constantes spéciales contenant des valeurs sont réservées à certaines expressions mathématiques. Ces constantes peuvent être utilisées n'importe où dans le programme mql5 au lieu de calculer leur valeur à l'aide de fonctions mathématiques.
Constante | Description de la constante | Valeur |
M_E | e | 2.71828182845904523536 |
M_LOG2E | log2(e) | 1.44269504088896340736 |
M_LOG10E | log10(e) | 0.434294481903251827651 |
M_LN2 | ln(2) | 0.693147180559945309417 |
M_LN10 | ln(10) | 2.30258509299404568402 |
M_PI | pi | 3.14159265358979323846 |
Ces constantes sont-elles définies avec la plus grande précision possible ou non ? J'ai utilisé cette entrée parce qu'il était nécessaire d'avoir exactement la précision maximale, sinon l'erreur s'accumulait.
Il faut le prendre et le vérifier. Voici le script, il donne cinq fois 100500.
#property copyright "Copyright © 2010 Eugene Logunov (lea)" #property version "1.00" int CalcDifference(double approx, double exact) { double diff = MathAbs(approx - exact); if (diff == 0.0) { return 100500; } else { return (int)(-MathLog10(diff)); } } void OnStart() { PrintFormat("%d", CalcDifference(MathExp(1.0), M_E)); PrintFormat("%d", CalcDifference(MathLog10(MathExp(1)), M_LOG10E)); PrintFormat("%d", CalcDifference(MathLog(2.0), M_LN2)); PrintFormat("%d", CalcDifference(MathLog(10.0), M_LN10)); PrintFormat("%d", CalcDifference(MathArctan(1.0) * 4.0, M_PI)); }
p.s. Si l'algorithme produit un mauvais résultat à cause d'une erreur de 16 décimales à droite de la virgule dans une constante, ce n'est évidemment pas la constante. Et pourquoi avoir besoin d'une telle précision de calcul si les guillemets sont de toute façon filtrés ?
Il faut que je prenne ça et que je le vérifie. Voici le script, il donne cinq fois 100500.
p.s. Si l'algorithme produit un mauvais résultat à cause d'une erreur de 16 décimales à droite de la virgule dans une constante, ce n'est évidemment pas la constante. Et pourquoi avez-vous besoin d'une telle précision de calcul si les guillemets sont de toute façon filtrés ?
Je vous conseille, en tant que programmeur, de lire au moins une fois dans votre vie sur les algorithmes itératifs, ce qu'ils sont et à quoi ils servent. Et puis l'arrondi http://dic.academic.ru/dic.nsf/enc_mathematics/1999/ИТЕРАЦИОННЫЙ les mathématiciens se demandent comment gérer cet arrondi (pour trouver des algorithmes stables), et ici c'est facile et pas forcé, et pourquoi ...
Z.y. merci pour le conseil. J'ai déjà perdu deux semaines pour vérifier https://www.mql5.com/fr/code/8309 et je ne vais pas m'aventurer sur ce terrain.
З.З.Ы et j'en ai déjà marre de vérifier, dans les cinq ça devient déjà de la paranoïa ...
Je vous conseille, en tant que programmeur, de lire une fois dans votre vie sur les algorithmes itératifs, ce qu'ils sont et ce qu'ils mangent. Et puis l'arrondi http://dic.academic.ru/dic.nsf/enc_mathematics/1999/ИТЕРАЦИОННЫЙ les mathématiciens se demandent comment gérer cet arrondi (pour trouver des algorithmes stables), et ici c'est facile et pas forcé, et pourquoi ?
J'ai dû lire tout cela l'année dernière. D'ailleurs, je faisais allusion à l'instabilité (en disant qu'il ne s'agit pas de constantes).
Si vous sentez le manque de précision justement à cause des types, vous pouvez recommander quelque chose comme http://gmplib.org/ (bien sûr, la vitesse des calculs diminuera).
H.S.Y. J'en ai déjà marre de vérifier, en 5 ça devient paranoïaque....
Il faut toujours vérifier tout ce que l'on peut, même si cela prend parfois beaucoup de temps. Sinon, on peut avoir des surprises.
J'ai lu des articles à ce sujet l'année dernière. D'ailleurs, je faisais allusion à l'instabilité (en disant qu'il ne s'agit pas de constantes).
Si vous ressentez un manque de précision uniquement à cause des types, vous pouvez recommander quelque chose comme http://gmplib.org/ (bien sûr, la vitesse des calculs diminuera).
Vous devriez toujours vérifier tout ce que vous pouvez, même si cela prend parfois beaucoup de temps. Sinon, il peut y avoir des surprises.
Vous n'avez aucune idée de ce que j'ai programmé et vous donnez des conseils, alors que vous enseignez à une personne qui a commencé à programmer (à en juger par votre profil) lorsque vous alliez à la maternelle.
Vous n'êtes pas un développeur, je ne vous ai pas posé la question, mais vous avez commencé à m'apprendre à vérifier le code. Voulez-vous m'aider - me donner les résultats de la précision avec laquelle toutes les constantes sont définies ? Je peux le vérifier sans conseil, je veux juste économiser mon temps.

- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Vous acceptez la politique du site Web et les conditions d'utilisation
Price prediction by Nearest Neighbor:
Cet indicateur utilise la technique de regroupement des plus proches voisins, également appelée k-NN, pour rechercher le modèle le plus similaire dans l'histoire et utiliser ses prix passés pour prédire les prix futurs du modèle actuel.
Author: Vladimir