die Zahl Pi ist besser so eingestellt.
pi = 4*MathArctan(1);Ich hatte die Idee einmal, und jetzt gebe ich sie an Sie weiter.
die Zahl Pi ist besser so eingestellt.
Ich habe den Tipp einmal bekommen, jetzt gebe ich ihn an Sie weiter.Es gibt auch einen Abschnitt Mathematische Konstanten in der Sprache MQL5:
Spezielle Konstanten mit Werten sind für einige mathematische Ausdrücke reserviert. Diese Konstanten können überall im mql5-Programm verwendet werden, anstatt ihren Wert mit mathematischen Funktionen zu berechnen.
Konstante | Beschreibung | Wert |
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 |
Sind diese Konstanten mit der maximal möglichen Genauigkeit eingestellt oder nicht? Ich habe diesen Eintrag verwendet, weil es notwendig war, genau die maximale Genauigkeit zu haben, da sich sonst der Fehler häufte.
Sie müssen es nehmen und überprüfen. Hier ist das Skript, es gibt fünf mal 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. Wenn der Algorithmus wegen eines Fehlers in 16 Dezimalstellen rechts vom Komma in einer Konstanten ein schlechtes Ergebnis liefert, ist es offensichtlich nicht die Konstante. Und wozu braucht man eine solche Rechengenauigkeit, wenn die Anführungszeichen ohnehin gefiltert werden?
Ich muss dies nehmen und überprüfen Sie es aus. Hier ist das Skript, es ergibt fünfmal 100500.
p.s. Wenn der Algorithmus wegen eines Fehlers in 16 Dezimalstellen rechts vom Komma in einer Konstante ein schlechtes Ergebnis liefert, liegt es offensichtlich nicht an der Konstante. Und wozu braucht man eine solche Rechengenauigkeit, wenn die Anführungszeichen ohnehin gefiltert werden?
Ich rate Ihnen als Programmierer, wenigstens einmal in Ihrem Leben über iterative Algorithmen zu lesen, was sie sind und wofür sie verwendet werden. Und dann die Rundung http://dic.academic.ru/dic.nsf/enc_mathematics/1999/ИТЕРАЦИОННЫЙ Mathematiker rätseln, wie man mit dieser Rundung umgeht (um stabile Algorithmen zu entwickeln), und hier ist es einfach und nicht erzwungen, und warum ...
Z.y. danke für den Hinweis. Ich habe schon einmal 2 Wochen verloren, um https://www.mql5.com/de/code/8309 zu überprüfen, jetzt werde ich nicht auf diese Harke treten.
З.З.Ы und so schon krank von der Überprüfung, in den fünf ist es bereits zu Paranoia ...
Ich rate Ihnen als Programmierer, einmal in Ihrem Leben über iterative Algorithmen zu lesen, was sie sind und was sie essen. Und dann die Rundung http://dic.academic.ru/dic.nsf/enc_mathematics/1999/ИТЕРАЦИОННЫЙ Mathematiker rätseln darüber, wie man mit dieser Rundung umgeht (um stabile Algorithmen zu entwickeln), und hier ist es einfach und nicht erzwungen, und warum ...
Ich musste das alles letztes Jahr nachlesen. Außerdem habe ich die Instabilität angedeutet (indem ich sagte, dass es nicht um Konstanten geht).
Wenn Sie den Mangel an Genauigkeit nur wegen der Typen fühlen - können Sie etwas wie http://gmplib.org/ empfehlen (natürlich wird die Geschwindigkeit der Berechnungen fallen).
H.S.Y. Ich bin es schon leid, zu prüfen, in 5 wird es paranoid....
Man sollte immer alles prüfen, was man kann, auch wenn es manchmal viel Zeit kostet. Sonst kann es Überraschungen geben.
Ich habe im letzten Jahr darüber gelesen. Außerdem habe ich die Instabilität angedeutet (indem ich sagte, dass es nicht um Konstanten geht).
Wenn Sie den Mangel an Genauigkeit nur wegen der Typen spüren, können Sie etwas wie http://gmplib.org/ empfehlen (natürlich wird die Geschwindigkeit der Berechnungen sinken).
Sie sollten immer alles prüfen, was Sie können, auch wenn es manchmal zeitaufwendig ist. Sonst kann es zu Überraschungen kommen.
Sie haben keine Ahnung, was ich programmiert habe, und Sie geben Ratschläge. Und Sie unterrichten eine Person, die (Ihrem Profil nach zu urteilen) mit dem Programmieren begonnen hat, als Sie noch in den Kindergarten gingen.
Sie sind kein Entwickler, ich habe Ihnen die Frage nicht gestellt, aber Sie haben angefangen, mir beizubringen, wie man den Code überprüft. Willst du mir helfen - mir die Ergebnisse geben, wie genau alle Konstanten gesetzt sind? Ich kann es ohne Ratschläge überprüfen, ich will nur meine Zeit sparen.
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Kursprognose mit Nearest Neighbor:
Dieser Indikator verwendet die Nearest Neighbor Clustering Technik, auch k-NN genannt, um das ähnlichste Muster in der Historie zu suchen und dessen Kurse als Prognose für die Kurse des aktuellen Musters heranzuziehen.
Autor: Vladimir