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
Sì, penso che possiamo fare a meno dell'hashish in questo caso. Sono stato troppo frettoloso con i miei consigli sugli hash. :)
Se questa opzione va bene a Vasily - metteremo semplicemente tutti i parametri in una stringa. La stringa sarà l'identificatore della classe.
Ma è anche corretto. Dopo tutto, in questo caso la protezione crittografica non è affatto necessaria. La cosa brutta, però, è che avete ancora bisogno di convertire la stringa di tutti i parametri in un numero specifico, preferibilmente unico a 32 bit, e per questo probabilmente avrete bisogno di usare funzioni hash.
Diavolo, MQL non ha operatori bitwise come l'inversione, l'offset, ecc. Sì, è un po' difficile fare tutto questo in MQL.
Sì, in questo caso possiamo fare a meno dell'hashish.
Se questa variante è adatta a Vasiliy, allora mettiamo tutti i parametri in una stringa. La stringa sarà l'identificatore della classe.
Come... hash corrispondente -> insieme ordinato -> elementi...
La cosa principale è che una lista ordinata è associata all'hash.
.
Allora anche tutto "volerà" (anche se, basso, basso...).
Problema: è necessario identificare univocamente un'istanza di una classe tramite il suo ID unico, preferibilmente di tipo lungo. L'ID unico dovrebbe essere formato considerando l'unicità dei valori delle variabili appartenenti alla classe.
Accidenti! Avrò lo stesso compito lunedì )))).
Non sarò in grado di usare una stringa, poiché sono limitato dalla lunghezza - avrò bisogno di nominare gli oggetti in base ad essa.
Stavo pensando... Probabilmente puoi usare due algoritmi di hashing allo stesso tempo - ridurrà notevolmente la probabilità di non unicità... o mi sbaglio?
Diavolo, MQL non ha operatori bitwise come l'inversione, l'offset, ecc. Sì, sarà difficile fare tutto questo in MQL.
Perché no? È tutto lì! https://docs.mql4.com/ru/basis/operations/bit
Diavolo, MQL non ha operatori bitwise come l'inversione, l'offset, ecc. Sì, sarebbe difficile fare tutto questo in MQL.
Sposta la rappresentazione binaria di y a sinistra di x bit y <<= x;
Operazione bitwise AND delle rappresentazioni binarie di y e x y &= x;
OR bitwise di rappresentazioni binarie y e x y |= x;
Operazione OR esclusivo bitwise
di rappresentazioni binarie y e x y ^= x;
Forse y != x; funziona anche
SZY: sull'unicità dei nomi ecc. - il problema, come sempre, si riduce al vecchio problema: come risparmiare memoria e non perdere prestazioni
utilizzare un array di stringhe con nomi unici e quindi aumentare la quantità di dati, o utilizzare una funzione che utilizzerà un algoritmo basato sui dati di input per formare un nome unico, riducendo così le prestazioni ma risparmiando memoria
https://docs.mql4.com/ru/basis/operations/assignвозможно e y != x; funziona
non c'è.
ma qui https://docs.mql4.com/ru/basis/operations/bit
non c'è.
ma qui https://docs.mql4.com/ru/basis/operations/bit
non lì! ;)
SZY: queste informazioni sono le stesse, solo l'esempio sia per l'assegnazione che per le operazioni bitwise è lo stesso, perché il mio link dice "Le operazioni bitwise sono eseguite solo con gli interi", se vuoi posso dirti il link esatto ;), penso che C-4 capirà dove e come leggere l'Aiuto
Ecco un esempio funzionante della funzione hash Adler32:
Il codice di base della funzione è preso da wikipedia e leggermente modificato per MQL5. Ecco il risultato del lavoro dello script:
2011.01.22 22:50:10 BitOperations (#MCD,MN1) 2333149633
2011.01.22 22:50:10 BitOperations (#MCD,MN1) 2169506126
2011.01.22 22:50:10 BitOperations (#MCD,MN1) 1202325230
Come potete vedere tutti i valori restituiti da questa funzione sono assolutamente diversi, anche se le stringhe stesse non sono molto diverse.
Ecco un esempio funzionante della funzione hash Adler32:
Il codice di base della funzione è preso da wikipedia e leggermente modificato per MQL5. Ecco il risultato del lavoro dello script:
Come potete vedere tutti i valori restituiti da questa funzione sono assolutamente diversi, anche se le stringhe stesse non sono molto diverse.
grande.
se potete (per non perderlo) lasciatelo nel codebase di MQL5.
grande.
se potete (per non perderlo) lasciatelo nel codebase di MQL5.
Okie.