Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 595

 
Slava_kornev55:
Ahhhh, lo so. Non sono riuscito a trovare un gufo come quello.
Qui, pratica.
 
Alexander Antoshkin:
Apparentemente una parentesi o una virgola rovesciata deve essere disegnata da qualche parte, non capisco ............. Ho guardato esempi simili, sembra essere lo stesso ,,,,,,,,,,,

specificare la funzione e la sua costante DeleteOrder(ticket) se ne avete bisogno e dovrebbe funzionare

Come scrivere correttamente una costante in una chiamata a un'altra funzione

Per esempio, ecco una funzione:

poi scrivo un altro

Cosa dice esattamente il compilatore?
 
Potete dirmi se la funzione di deinizializzazione degli EA e degli indicatori viene eseguita alla chiusura del terminale?
 
-Aleks-:
Potete per favore avvisare se la funzione di deinizializzazione viene eseguita nei consulenti e negli indicatori quando si chiude il terminale?

Esecuzione di programmi.

Indicatori di carico e scarico

Gli indicatori vengono caricati nei seguenti casi:

-attaccareun indicatore a un grafico;

-iniziodel terminale (se un indicatore è stato collegato a un grafico prima della precedente chiusura del terminale)

-caricamentodi un modello (se il modello contiene un indicatore collegato al grafico)

-cambiareprofilo (se un indicatore è collegato a uno dei grafici di profilo);

-cambiareil simbolo e/o il periodo del grafico al quale l'indicatore è collegato;

-dopo l'avvenuta ricompilazione di un indicatore, se questo indicatore è stato collegato a un grafico

-cambiamento deiparametri di ingresso dell'indicatore.

Gli indicatori vengono scaricati nei seguenti casi:

-quando sistacca un indicatore da un grafico;

-chiusuradel terminale (se un indicatore è collegato a un grafico);

-caricamentodi un modello, se un indicatore è collegato a un grafico

Chiudere ilgrafico a cui è stato collegato un indicatore; - Chiudere il terminale (se un indicatore è stato collegato al grafico)

-Cambiareun profilo, se un indicatore è collegato a uno dei grafici del profilo da cambiare;

-Cambiareil simbolo e/o il periodo del grafico a cui è collegato l'indicatore;

-Cambiare iparametri di ingresso dell'indicatore.

Carico e scarico di esperti

Il caricamento di un Expert Advisor viene eseguito nei seguenti casi

-attaccarel'Expert Advisor al grafico;

-iniziodel terminale (se l'Expert Advisor è stato collegato al grafico prima della precedente chiusura del terminale);

-caricamentodi un modello (se un Expert Advisor è stato collegato a un grafico)

-Dopo averricompilato con successo l'Expert Advisor (se l' Expert Advisor è stato collegato al grafico)

-Cambio diprofilo (se l'Expert Advisor è collegato a uno dei grafici di profilo);

-connessioneal conto, anche se il numero di conto non è stato cambiato (se l'Expert Advisor è stato collegato al grafico prima dell'autorizzazione del terminale sul server).

Lo scarico dell'Expert Advisor collegato al grafico viene eseguito nei seguenti casi

-quando l'EA è staccato dal grafico;

-quando èattaccato a un grafico - se un altro Expert Advisor è già stato sullo stesso grafico, l'Expert Advisor sarà scaricato;

-chiudereil terminale (se un Expert Advisor è stato collegato a un grafico);

-caricareun modello, se un Expert Advisor è stato collegato al grafico;

-Chiudiil grafico al quale è stato collegato l'Expert Advisor;

-Cambiareun profilo, se un Expert Advisor è collegato a uno dei grafici del profilo da cambiare;

-Cambiareil conto a cui è collegato il terminale (se l'Expert Advisor è stato collegato al grafico prima dell'autorizzazione del terminale sul server);

-chiamatadella funzioneExpertRemove().

Quando il simbolo o il timeframe del grafico a cui è stato collegato l'Expert Advisor viene cambiato, l'Expert Advisor non viene scaricato o caricato. In questo caso, i gestoriOnDeinit() sul vecchio simbolo/tempo eOnInit() sul nuovo simbolo/tempo (se disponibile) sono coerentemente chiamati, i valori delle variabili globali estatiche non sono resettati. Tutti gli eventi ricevuti per EA prima del completamento dell'inizializzazione (OnInit()) vengono saltati.

OnDeinit

L'evento Deinit viene generato per Expert Advisors e indicatori nei seguenti casi

-prima dellareinizializzazione dovuta al cambiamento di un simbolo o di un periodo di un grafico, al quale è collegato un programma mql5;

-Prima della reinizializzazione dovutaa un cambiamento deiparametri d'ingresso;

-Prima discaricare un programma mql5.

 
Sergey Gritsay:
Cosa dice esattamente il compilatore?
 
Alexander Antoshkin:
senza codice completo è difficile da capire, ma sospetto che tu abbia lo stesso nome di variabileticket dichiarato globalmente e localmente nella funzioneDeleteOrder, cambia il nome della variabile
 

Grazie, ma c'è il sospetto che OnDeinit.... non funzioni sempre quando il terminale è chiuso.

 
-Aleks-:

Grazie, ma ho il sospetto che OnDeinit.... non funzioni sempre quando il terminale è chiuso.

Eseguire un unsetting in OnDeinit(). Allora possiamo parlare in modo più sostanziale.
 
Sergey Gritsay:
Senza codice completo è difficile da capire, ma sospetto che tu abbia lo stesso nome di variabileticket dichiarato globalmente e localmente nella funzioneDeleteOrder, cambia il nome della variabile

Sì, ho capito.

Grazie per averlo capito!

 

Sono stupido o è così che dovrebbe essere?

C'erano 5 posizioni di acquisto aperte, il trawl si è attivato e ha spostato gli Stop Loss, il prezzo è tornato indietro e 4 posizioni sono state chiuse e una è rimasta aperta con il livello di stop sopra il prezzo. Non c'è nulla nel registro se non le registrazioni di chiusura di 4 posizioni.