Attualmente sto cercando di capire le variabili globali. Ora c'è un problema e non riesco a risolverlo. Se elimino una variabile globale dall'indicatore, l'Expert Advisor continua a prendere quella variabile. Come si risolve questo problema?
Attualmente sto cercando di capire le variabili globali. Ora c'è un problema e non riesco a risolverlo. Se elimino una variabile globale dall'indicatore, l'Expert Advisor continua a prendere quella variabile. Come posso risolvere questo problema?
Premete F3 nel terminale e cancellate manualmente questa variabile. Viene creato una volta e si trova in ambiente - l'Expert Advisor lo legge da lì. O forse non ho capito bene? Hai appena cancellato la creazione di una variabile globale del terminale nel codice dell'indicatore stesso, ma era già creata da questo indicatore?
artmedia70: Premete F3 nel terminale e cancellate manualmente questa variabile. Viene creato una volta e si trova nell'ambiente - è da lì che l'EA lo legge.
Grazie! Non lo sapevo. Come posso controllare e cancellare questo nell'Expert Advisor stesso? Per esempio, se chiudo l'indicatore per errore, l'EA riceverà sempre quell'ultima variabile e se c'è un segnale per aprire posizioni...
valenok2003: Le virgole sono corrette, è la notazione che non importa quanti elementi contiene un array, sarà tutto riempito di zeri.
Beh, non so, forse in C++, che non ho mai studiato, ma mql è solo C-like. E in secondo luogo, non puoi impostare la dimensione dell'array su una variabile, anche se nel tuo esempio MAX_NUM_ORDER potrebbe non essere una variabile...
Potete dirmi qual è l'errore in questa linea? prima compilato senza messaggi di errore, ora - '{' - espressione attesa
Grazie in anticipo
Arr_Tickets[MAX_NUM_ORDER][2] = {0,0, ,0,0};
Una riga e una colonna dell'array sono selezionate, rispettivamente, possiamo scriverci un valore particolare, cioè la voce dovrebbe essere la stessa di una variabile ordinaria, ma per azzerare tutti i valori
abeiks: Grazie! Non lo sapevo. E come fare un tale controllo e cancellarlo nell'Expert Advisor stesso? Per esempio, se chiudo accidentalmente l'indicatore, l'Expert Advisor riceverà sempre quest'ultima variabile e se c'è un segnale di apertura delle posizioni...
Se la cancellazione involontaria dell'indicatore dovesse cancellare le variabili globali create da questo indicatore, la cancellazione di queste variabili globali dovrebbe essere prescritta nella funzione OnDeinit() dell'indicatore. Allo stesso tempo, bisogna verificare che non si tratta di un cambio di timeframe, ma della cancellazione dell'indicatore dal grafico.
Salve.
Attualmente sto cercando di capire le variabili globali. Ora c'è un problema e non riesco a risolverlo. Se elimino una variabile globale dall'indicatore, l'Expert Advisor continua a prendere quella variabile. Come si risolve questo problema?
come si fa a cancellarlo?
Potete dirmi qual è l'errore in questa linea? prima compilato senza messaggi di errore, ora - '{' - espressione attesa
Grazie in anticipo
Arr_Tickets[MAX_NUM_ORDER][2] = {0,0, ,0,0};
Conta le virgole.
Conta le virgole.
Salve.
Attualmente sto cercando di capire le variabili globali. Ora c'è un problema e non riesco a risolverlo. Se elimino una variabile globale dall'indicatore, l'Expert Advisor continua a prendere quella variabile. Come posso risolvere questo problema?
Premete F3 nel terminale e cancellate manualmente questa variabile. Viene creato una volta e si trova nell'ambiente - è da lì che l'EA lo legge.
Come posso controllare e cancellare questo nell'Expert Advisor stesso? Per esempio, se chiudo l'indicatore per errore, l'EA riceverà sempre quell'ultima variabile e se c'è un segnale per aprire posizioni...
come si fa a cancellare?
L'ho fatto, ma non è giusto:
Le virgole sono corrette, è la notazione che non importa quanti elementi contiene un array, sarà tutto riempito di zeri.
Potete dirmi qual è l'errore in questa linea? prima compilato senza messaggi di errore, ora - '{' - espressione attesa
Grazie in anticipo
Arr_Tickets[MAX_NUM_ORDER][2] = {0,0, ,0,0};
Una riga e una colonna dell'array sono selezionate, rispettivamente, possiamo scriverci un valore particolare, cioè la voce dovrebbe essere la stessa di una variabile ordinaria, ma per azzerare tutti i valori
ArrayInitialize(Arr_Tickets, 0);
L'ho fatto, ma non è giusto:
Cosa c'è scritto?
Se non c'è una variabile globale chiamata Test_1, cancellala...
Grazie! Non lo sapevo.
E come fare un tale controllo e cancellarlo nell'Expert Advisor stesso? Per esempio, se chiudo accidentalmente l'indicatore, l'Expert Advisor riceverà sempre quest'ultima variabile e se c'è un segnale di apertura delle posizioni...
Allo stesso tempo, bisogna verificare che non si tratta di un cambio di timeframe, ma della cancellazione dell'indicatore dal grafico.