il numero di pi greco è meglio impostato in questo modo.
pi = 4*MathArctan(1);Ho avuto l'idea una volta e ora la trasmetto a voi.
il numero di pi greco è meglio impostato in questo modo.
Ho ricevuto il suggerimento una volta, ora lo passo a voi.È presente anche una sezione Costanti matematiche nel linguaggio MQL5:
Per alcune espressioni matematiche sono riservate speciali costanti contenenti valori. Queste costanti possono essere utilizzate in qualsiasi punto del programma mql5 invece di calcolare il loro valore utilizzando le funzioni matematiche.
Costante | Descrizione | Valore |
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 |
Queste costanti sono impostate con la massima precisione possibile o no? Ho utilizzato questa voce perché era necessario avere esattamente la massima precisione, altrimenti l'errore si accumulava.
È necessario prenderla e verificarla. Ecco lo script, che dà cinque volte 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. Se l'algoritmo produce un cattivo risultato a causa di un errore in 16 cifre decimali a destra della virgola in una costante, ovviamente non è la costante. E perché è necessaria una tale precisione di calcolo se le virgolette sono comunque filtrate?
Devo prendere questo e controllarlo. Ecco lo script, che dà cinque volte 100500.
p.s. Se l'algoritmo produce un cattivo risultato a causa di un errore in 16 decimali a destra della virgola in una costante, ovviamente non è la costante. E perché avete bisogno di una tale precisione di calcolo se le virgolette sono comunque filtrate?
Ti consiglio come programmatore di leggere almeno una volta nella vita gli algoritmi iterativi, cosa sono e a cosa servono. E poi l'arrotondamento http://dic.academic.ru/dic.nsf/enc_mathematics/1999/ИТЕРАЦИОННЫЙ I matematici si arrovellano su come gestire questo arrotondamento (per arrivare ad algoritmi stabili), e qui è facile e non forzato, e perché...
Z.y. grazie per il consiglio. Ho già una volta perso 2 settimane per controllare https://www.mql5.com/it/code/8309 ora non farò un passo su questo rastrello.
З.З.Ы e così già malato di controllo, in cinque sta già diventando paranoia ...
Ti consiglio, come programmatore, di leggere una volta nella vita gli algoritmi iterativi, cosa sono e cosa mangiano. E poi l'arrotondamento http://dic.academic.ru/dic.nsf/enc_mathematics/1999/ИТЕРАЦИОННЫЙ I matematici si arrovellano su come gestire questo arrotondamento (per arrivare ad algoritmi stabili), e qui è facile e non forzato, e perché...
Ho dovuto leggere tutto l'anno scorso. Inoltre, stavo accennando all'instabilità (dicendo che non si tratta di costanti).
Se senti la mancanza di precisione solo a causa dei tipi - puoi consigliare qualcosa come http://gmplib.org/ (ovviamente, la velocità dei calcoli diminuirà).
H.S.Y. Sono già stufo di controllare, in 5 diventa paranoico....
Si dovrebbe sempre controllare tutto quello che si può, anche se a volte richiede molto tempo. Altrimenti ci possono essere delle sorprese.
Ho letto qualcosa al riguardo nell'ultimo anno. Inoltre, stavo alludendo all'instabilità (dicendo che non si tratta di costanti).
Se senti la mancanza di precisione solo a causa dei tipi, puoi consigliare qualcosa come http://gmplib.org/ (ovviamente, la velocità dei calcoli diminuirà).
Si dovrebbe sempre controllare tutto quello che si può, anche se a volte richiede molto tempo. Altrimenti potrebbero esserci delle sorprese.
Non hai idea di cosa ho programmato e dai consigli, e insegni a una persona che ha iniziato a programmare (a giudicare dal tuo profilo) quando andava all'asilo.
Non sei uno sviluppatore, non ti ho fatto la domanda, ma hai iniziato a insegnarmi come controllare il codice. Vuoi aiutarmi - darmi i risultati dell'accuratezza con cui sono state impostate tutte le costanti? Posso controllarlo senza consigli, voglio solo risparmiare il mio tempo.
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso
Price prediction by Nearest Neighbor:
Questo indicatore utilizza la tecnica di clustering Nearest Neighbor, detta anche k-NN, per cercare il modello più simile nella storia e utilizzare i suoi prezzi passati come previsione dei prezzi futuri del modello attuale.
Author: Vladimir