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
Un sacco di calcoli invece della soluzione semplice
Sono arrivato a questa soluzione che trasforma i doppi in ints allo scopo di confrontare i doppi . . .
Anch'io ho trovato una soluzione creativa che ha funzionato per me (finora) per confrontare i prezzi:
Ho scalato il prezzo ad un int che rappresenta il prezzo come punti espressi come un numero intero. Così:
non può mai essere vero.
CompareDoubles() da stdlib.mq4 è escluso da questa discussione? Per me funziona bene se usato per il prezzo.
Una divisione fluttuante, un'addizione fluttuante, una conversione in int, una chiamata di funzione (copia, salto, ritorno = 3,) * 2 tutte volte due. (18) E questo supponendo che dividere e convertire siano alla pari con le altre operazioni - non lo sono.
vs
una sottrazione, un test, 1/2 negazione (in media,) e confronto. (3 1/2 se point/2 è fatto in init e ABS è sostituito da un IF)
Non complicare troppo le cose
if (a > b)
if (a >= b)
if (a != b)
Una divisione fluttuante, aggiunta fluttuante, conversione in int, chiamata di funzione (copia, salto, ritorno = 3,) * 2 tutte volte due. (18) E questo supponendo che dividere e convertire siano alla pari con le altre operazioni - non lo sono.
vs
una sottrazione, un test, 1/2 negazione (in media,) e confronto. (3 1/2 se point/2 è fatto in init e ABS è sostituito da un IF)
Non complicare troppo le cose
2013.04.03 17:39:11 TestSpeed-CompareDbls USDJPY,M5: ConvertToPoints 9000000 volte in 1887 ms.
2013.04.03 17:46:02 TestSpeed-CompareDbls USDJPY,M5: Flat(price) 9000000 volte in 3604 ms.
"Il metodo "MathAbs(a-b)" è circa 7 volte più veloce del metodo ConvertToPoints() e quasi 14 volte più veloce del mio metodo "Flat()
2013.04.04 14:27:38 TestSpeed-CompareDbls EURUSD,H4: MathAbs(a - b) HalfAPoint 99999999 volte in 3403 ms.
2013.04.04 14:27:42 TestSpeed-CompareDbls EURUSD,H4: (intRecord > intCheck) 99999999 volte in 2505 ms.
Ma la 3a non può essere praticabile, e la 2a (intRecord > intCheck) aveva 1 assegnazione in più per l'intCheck prima del confronto.
Ho testato (intRecord > prezzo / punto) e
2013.04.04 14:27:38 TestSpeed-CompareDbls EURUSD,H4: MathAbs(a - b) HalfAPoint 99999999 volte in 3403 ms.
2013.04.04 14:27:42 TestSpeed-CompareDbls EURUSD,H4: (intRecord > intCheck) 99999999 volte in 2505 ms.
Ma la 3a non può essere praticabile, e la 2a (intRecord > intCheck) aveva 1 assegnazione in più per l'intCheck prima del confronto.