Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 177

 
Andrey Barinov:

Capisco che bisogna scaricare nell'init (o meglio nell'ontik) dopo il cambiamento. Cioè memorizzare i numeri di conto nelle variabili globali e scaricarli in caso di cambiamento. Potete anche provare ad analizzare _DeInitReason nell'init() e nello scarico.

Questa soluzione è stata mostrata. Funziona solo se lo stesso simbolo esiste dopo il cambio di account.

 
fxsaber:

Per favore mostra qui il codice sorgente di un EA che si scarica quando il conto cambia.

Ne ho bisogno? Qui si parla del problema dei nomi di simboli diversi.

Forum sul trading, sistemi di trading automatico e test di strategia

Peculiarità di mql5, consigli e trucchi

fxsaber, 2020.05.20 23:09

Ho un ottimo Expert Advisor, che dovrebbe essere cancellato durante il cambio di account.

Supponiamo che l'Expert Advisor sia in esecuzione su EURUSD. Passerà a un server in cui i simboli sono prefissati. Per esempio, EURUSD.abc.

In questo caso, l'EA si blocca ancora e non può cancellarsi. Qualcuno ha una soluzione a questo problema?


Questa è esattamente la mia risposta. Se i nomi degli strumenti sono diversi nei diversi conti, usa le funzioni di gestione delle stringhe ed estrai la parte giusta di quella stringa.
 
Igor Zakharov:

in quale caso OnInit() non viene avviato?

Non si innesca nulla.

Forse a livello di OnDeinit() prova a cancellare?

ExpertRemove() non è sicuramente un aiuto. Si può provare tramite modelli. Ma OnDeinit non è in grado di rilevare che c'è stato un cambio di account.

 
Alexey Viktorov:

Ne ho bisogno? Qui si parla del problema dei nomi di personaggi diversi.

Questa è esattamente la mia risposta. Se i nomi degli strumenti sono diversi in diversi conti, usa le funzioni di gestione delle stringhe ed estrai la parte giusta di quella stringa.

Non state parlando con un principiante. Non suggerire ipotesi inattuabili.

 
fxsaber:

Non si avvia nulla.

ExpertRemove() non è sicuramente d'aiuto. Possiamo provare attraverso dei modelli. Ma in OnDeinit non è possibile determinare che c'è stato un cambio di account.

Dove ExpertRemove non funziona - c'è anche ChartClose(). Non capisco quale sia il problema. Cosa succede dopo il cambio dell'account? Appare un ulteriore grafico con Expert Advisor? O cambia solo il simbolo del grafico corrente? Forse, il ChartID è cambiato e quindi la tua soluzione precedente non funziona? I tick vengono processati comunque, significa che dobbiamo scaricare a OnTick, se OnInit non funziona.

 
fxsaber:

Non state parlando con un nuovo arrivato. Non suggerire ipotesi inattuabili.

Allo stesso modo, non dovreste pubblicare codice non funzionante. E non parlate dei problemi incontrati sul cammino spinoso di un programmatore nell'argomento delle caratteristiche del linguaggio.

 
Alexey Viktorov:

Allo stesso modo, non dovreste postare codice non funzionante. E non discutere nell'argomento delle caratteristiche del linguaggio i problemi incontrati sul cammino spinoso di un programmatore.

Siete incompetenti su questo problema.

 

solo i servizi non sono legati al grafico. non l'ho testato, ma molto probabilmente sarà in grado di riavviare dopo aver cambiato l'account. e già da esso cambiare i modelli di altri grafici. ma in generale è strano che REASON_ACCOUNT non è catturato.

ma in generale, è più un bug che una caratteristica.

 
fxsaber:

Siete incompetenti su questo problema.

Se sei così competente, allora per favore dimmi perché non funziona

CONTO REASON_ACCOUNT

6

Un altro conto è stato attivato o ricollegato al server commerciale a causa di un cambiamento nelle impostazioni del conto

 
Alexey Viktorov:

Se sei così competente, allora per favore dimmi perché questo non funziona

CONTO REASON_ACCOUNT

6

Un altro conto è stato attivato o ricollegato al server commerciale a causa di un cambiamento nelle impostazioni del conto

  1. La documentazione è falsa. Puoi controllarlo manualmente rifacendo il login.
  2. Non c'è un modo facile per scaricarsi.
Motivazione: