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
Più affidabile? Perché ottenere gli handle all'inizializzazione non è affidabile? Perché è inaffidabile controllare i dati necessari? E ancora di più, perché la presenza di controlli non è affidabile?
Per i principianti può non essere così facile, ma con il tempo tutto diventerà chiaro...
Infatti, sto cercando di capirlo subito, non dopo... Non voglio semplicemente copiare alcune azioni senza capirne il significato. Se ho il codice come una funzione integrata come in MQL4, probabilmente aggiungerò qualche parametro extra con il numero di barre.
Perché si carica?
I "numeri ordinari" sono espressioni costanti, che hanno anche un tipo. In questo caso è il tipo int.
Un'espressione che consiste in una moltiplicazione di due sottoespressioni, ciascuna di tipo int, è anche di tipo int. È qui che si verifica l'overflow.
E solo allora la conversione implicita dal tipo dell'espressione int al tipo long avviene durante l'inizializzazione della variabile long.
Qui è tutto chiaro. A proposito, non è necessario lanciare ciascuno degli operandi a long in questo caso. Possiamo semplicemente lanciarne uno e lanciare implicitamente il secondo.
Questo è quello che stavo cercando di dire, ma usando un linguaggio meno accademico. La cosa principale è mettere in guardia gli altri cercatori.
La domanda è diversa. Dove in quale Talmud si dice che :
I "numeri ordinari" sono espressioni costanti che hanno anche un tipo. In questo caso è il tipo int.
Per esempio, se X è impostato a 10000000000, allora diventa di tipo lungo? E perché non ulong o datetime o anche stringa?
Qual è il tipo di numero 255uchar oshort?
Perché si carica?
Sembra che ci sia una confusione tra il registro e il codice. Il codice di cui sopra funziona "pulito". E, per ottenere un tale registro, ho dovuto rendere le variabili A e B di tipo int o uint, e la variabile X di tipo uint:
Ed ecco il lavoro del codice originale:
Build 314 (20 agosto 2010).
Ho citato un codice diverso
Prestate particolare attenzione alla prima riga, il vostro account potrebbe avere un numero diverso. Cercatelo e mettetelo nel lungo C =
Controllato di nuovo il risultato
Build 314 (20 agosto 2010).
Per favore ditemi perché la funzione SymbolInfoDouble(_Symbol,SYMBOL_POINT) della coppia USDCHF produce un punto di cinque cifre dopo il punto decimale 0.00001, quando questa coppia è accettata per il valore del punto 0.0001?
Cosa ti fa pensare che ci siano 4 cifre in questo strumento, il terminale mostra chiaramente che le citazioni sono 5 cifre
Questa funzione può restituire diversi valori di punti anche in conti con cinque cifre, tutto dipende dalle impostazioni che saranno accettate dal broker.
Per esempio, una società di intermediazione ha il seguente commento
e un altro ha 1 pip uguale alla quinta cifra.
È quello che stavo cercando di dire, ma in termini meno accademici. E soprattutto per mettere in guardia gli altri cercatori.
La domanda è diversa. Dove in quale Talmud si dice che :
I "numeri ordinari" sono espressioni costanti, che hanno anche un tipo. In questo caso è il tipo int.
Per esempio, se X è impostato a 10000000000, allora diventa di tipo lungo? E perché non ulong o datetime o anche stringa?
Qual è il tipo di numero 255uchar oshort?
La costante 10000000000 è già di tipo long.
Come devo metterlo? I linguaggi normali hanno suffissi-modificatori che permettono di specificare il tipo di costante senza usare una conversione di tipo esplicita. Per MQL5, l'ho trovato solo per float. Pertanto, è impossibile definire costanti di tipo uchar, ushort, uint, ulong, char, short e long (se il valore della costante rientra nel tipo int) senza conversione esplicita del tipo.
La costante 255 ha un tipo int. Potete trovare qualcosa nelle descrizioni dei tipi, per esempio, le costanti di carattere sono dichiarate di tipo ushort. Ci sono anche informazioni sulle costanti di tipo datetime, colore, bool, doppio e stringa.
Si può provare a stampare la dimensione del tipo di costante, a condizione che venga introdotta l'operazione sizeof (ma perché viene introdotta, spiegatelo a uno degli sviluppatori):
In generale, tra i suffissi solo f funziona per le costanti doppie, modificandole in float, che può essere visto dalla dimensione del tipo di tale costante.
Qui, l'unico uso sensato dell'operazione sizeof che ho potuto trovare. :)
Ti ho dato un codice diverso
Prestate particolare attenzione alla prima riga, potrebbe esserci un numero diverso sul vostro conto. Cercatelo e mettetelo nel lungo C =
Controllato di nuovo il risultato
Build 314 (20 agosto 2010).
No, non ho lo stesso effetto che hai tu. Devo solo controllare le versioni bit di MT5. Io ho la versione a 64 bit, qual è la vostra?
A proposito, il codice modificato che ho testato vi dà i miei stessi risultati?
Se sì, allora quello che vedo è molto simile a quel bug sull'"origine" di un valore - cioè il codice può comportarsi diversamente (sia correttamente che erroneamente) a seconda della provenienza del valore su cui si basano gli ulteriori calcoli.