![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Cari sviluppatori. Cosa ne pensate dell'introduzione del tipo di dati "long double" da C/C++? Sarebbe molto utile. A dire il vero, ho riscontrato che la precisione del tipo "doppio" è insufficiente per i calcoli. O in alternativa, fare una classe speciale per le operazioni con precisione definita arbitrariamente. Cosa ne pensate?
Scusate l'intrusione, ma state lanciando un razzo nello spazio? Non sarebbe meglio pensare di ottimizzare l'algoritmo o qualcosa del genere?
Può fare un esempio in cui tale precisione è necessaria?
C'è un altro problema con la mancanza di precisione. La situazione è la seguente. Stiamo costruendo una funzione di distribuzione per 10 000 valori per prezzo. In alcuni intervalli il valore della funzione è piccolo e diviso per 10000. Si ottengono valori dell'ordine 1*10e-6; poi bisogna definire il quadrato della differenza tra questi valori e si ottiene il valore dell'ordine 1*10e-13 (poi bisogna sommare diverse migliaia di tali valori); i dati sono catastroficamente persi. E 10000 non è molto, a dire il vero - non molto. Ecco perché chiedo ancora una volta agli sviluppatori di introdurre il "doppio lungo". Per quanto ho capito, il lavoro statistico con grandi campioni nel campo finanziario è un compito frequentemente richiesto. Altrimenti si scopre che ci siamo appena entusiasmati con MQL5 e ora dobbiamo passare a C++.
Iltipo double in mql5 funziona con numeri nell'intervallo da +-10e-307 a +-10e307, con mantissa di 16 cifre. Quindi non ci sono problemi descritti da voi.
Se la mantissa dichiarata non è sufficiente, sviluppate una classe di precisione superiore, per esempio, con mantissa di 32 cifre. Questo è un vostro diritto.
Ma per la massa principale degli sviluppatori 16 cifre di mantissa sono sufficienti, perché preoccuparsi di un tale casino?
Iltipo double in mql5 funziona con numeri nell'intervallo da +-10e-307 a +-10e307, con mantissa di 16 cifre. Quindi non ci sono problemi descritti da voi.
Se la mantissa dichiarata non è sufficiente, sviluppate una classe di precisione superiore, per esempio, con mantissa di 32 cifre. Questo è un vostro diritto.
Per la maggior parte degli sviluppatori, 16 caratteri di mantissa sono sufficienti, quindi perché preoccuparsene?
doppio x1=0,0011;
doppio y1=x1/10000;
doppio x2=0,0012;
doppio y2=x2/10000;
doppio c=y1-y2;
doppio d=MathPow(c,2);
printf(string(d));
результат: 9.999999999999968e-017
Quindi cosa devo fare con questo risultato? Come posso confrontarlo con altri risultati? DBL_EPSILON=2.2204460492503131e-016. Oltre alle ultime due cifre - vedi? E sono solo due operazioni. E ne ho altre di queste operazioni. E sulla base di queste informazioni, dovrete ricostruire i dati in seguito utilizzando altre operazioni. Altre perdite. Sto imparando a programmare in un linguaggio simile al C e una tale classe è difficile da costruire per me (o meglio, non ho idea di come). Questo è un lavoro serio. A proposito, per caso, avete un corso del genere? E gli sviluppatori possono migliorare le cose per tutti contemporaneamente. Sarebbe possibile fare 100.000x100.000 griglie. Sarebbero già disponibili campioni più o meno rappresentativi, sebbene anche questo non sia sufficiente in generale. E se facessero una classe per la precisione arbitraria, sarebbe ancora meglio :) È solo un tipo di dati. Se esiste, è lì per una ragione, perché soddisfa un bisogno. Il punto è che non so se sia difficile o meno per gli sviluppatori. Se è difficile e costoso - sono d'accordo con te - perché scaricare il mio problema su di loro. Ma se non è difficile - perché non farlo. Di nuovo - un potente ambiente di sviluppo per i calcoli di trading con alta precisione - qualche vantaggio competitivo qui :). Per questo chiedo cosa ne pensano.
Di nuovo - un potente ambiente di sviluppo per i calcoli di trading con alta precisione - qualche vantaggio competitivo qui :).
Questo è solo dal tuo punto di vista... Il 99,9999% non ne ha bisogno
Utilizzare un software specializzato per questo scopo....
Questo è solo dal tuo punto di vista... Il 99,9999% non ne ha bisogno
Utilizzare un software specializzato per questo scopo....
Questo è il punto, MT è un prodotto specializzato per i calcoli finanziari. E i calcoli finanziari sono strettamente legati all'uso di metodi statistici. E non c'è bisogno di padroneggiare nuovi prodotti - voglio sviluppare il TS in un ambiente di trading, piuttosto che occuparmi di questo e combattere con i tipi. Inoltre, sembra che MQL5 sia davvero veloce.
Capite che a qualsiasi sviluppatore manca sempre qualcosa....
Se 500 programmatori scrivono 10 desideri ciascuno, ci vorrebbe un ufficio come quello di Bill....
per implementare le fantasie....
Capite che a qualsiasi sviluppatore manca sempre qualcosa....
Se 500 programmatori scrivessero 10 desideri ciascuno, ci vorrebbe un ufficio come quello di Bill....
per far diventare le fantasie realtà....