Errori, bug, domande - pagina 2023

 
Kirill Belousov:

Vuoi dire che la funzione dovrebbe essere controllata per l'override in base al tipo di argomento in entrata senza const quando la dichiari?

o la variante const dovrebbe essere aggiunta al modello di funzione di sistema ArrayMinimum?

https://www.mql5.com/ru/docs/array/arrayminimum

int  ArrayMinimum( 
   const void&   array[],             // массив для поиска 
   int           start=0,             // с какого индекса начинаем поиск 
   int           count=WHOLE_ARRAY    // количество проверяемых 
   );
E Warning è inadeguato.
Документация по MQL5: Операции с массивами / ArrayMinimum
Документация по MQL5: Операции с массивами / ArrayMinimum
  • www.mql5.com
//| Закрашивание основной части свечи                                | //
 
fxsaber:

https://www.mql5.com/ru/docs/array/arrayminimum

E Warning è inadeguato.
L'avvertimento è chiaro da dove - ha preso un abbaglio e ha permesso un array di testo in operazioni destinate a valori numerici
 
Kirill Belousov:
È chiaro il perché - abbiamo sbattuto gli occhi e permesso un array di testo prima delle operazioni destinate ai valori numerici

Non ha battuto ciglio, perché ho scritto un ArrayMinimum corrispondente. Ma è permesso e non è chiamato per i suoi motivi. Ecco perché questo argomento.

void OnStart()
{
  string Str[];
  
  int i = ArrayMinimum(Str); // Warning: possible loss of data due to type conversion
  ArraySort(Str); // Warning: expression has no effect
  ArrayFill(Str, 0, 1, 0); // Error: 'Str' - type mismatch
}

Ovunque ci siano quelli rossi, ci devono essere i messaggi gialli del compilatore. Red riesce comunque ad essere diverso.

 
fxsaber:

Non ha battuto ciglio, dato che ho scritto un ArrayMinimum corrispondente. Ma è permesso e non è chiamato per i suoi motivi. Ecco perché questo argomento.

Ovunque ci siano quelli rossi, ci devono essere i messaggi gialli del compilatore. Red riesce comunque ad essere diverso.

"blundered" non è nel tuo campo :)

Io la vedo così: gli sviluppatori hanno fissato i nomi delle funzioni per le operazioni con qualsiasi array con funzioni di sistema, ma hanno implementato solo il lavoro con gli array numerici finora.

Ma non hanno messo "stub" in tutti i casi e risulta che l'utente riceve messaggi "fuori tema".

Questo dovrebbe essere corretto - sono d'accordo al 100%.

 

Qualcuno ha sperimentato questa situazione (MT4):

L'EA funziona su molti grafici (installati sulla base di un modello). Ha salvato tutto in un profilo. Lasciato in esecuzione su VPS tutto il giorno.

Improvvisamente, su alcuni dei grafici si trova quando apro la finestra delle impostazioni che tutte le variabili stringa contengono valori vuoti. (Inclusi quelli falsi - solo per indicare la sezione delle impostazioni come "---TOUT FILTER---")

C'erano diversi terminali e EAs di diversi autori di Market.

Io stesso non ho riavviato i terminali. Non ho cambiato deliberatamente le impostazioni.

 


Ciao, puoi aiutarmi con il mio EA? Comincio a testarlo, mi dà un errore 'array out of range in EA.mq4' (149,49). Penso che l'errore sia in questa linea for (int li_8 = li_4; li_8 > 0; li_8--) aia_0[li_8] = aia_0[li_8 - 1]; Se questa parte di codice viene rimossa nell'EA, il tester funziona, ma l'EA non apre il trade. Per favore consigliate come cambiare questo codice per farlo funzionare.

 
Ivan Lysenkov:


Ciao, puoi aiutarmi con il mio EA? Comincio a testarlo, mi dà un errore 'array out of range in EA.mq4' (149,49). Penso che l'errore sia in questa linea for (int li_8 = li_4; li_8 > 0; li_8--) aia_0[li_8] = aia_0[li_8 - 1]; Se questa parte di codice viene rimossa nell'EA, il tester funziona, ma l'EA non apre il trade. Per favore consigliate come cambiare questo codice per farlo funzionare.

Stai lavorando con la decompilazione? E tu? C'è un divieto rigoroso di qualsiasi lavoro e discussione di codice rubato su questa risorsa.

 
Kirill Belousov:

Qualcuno ha sperimentato questa situazione (MT4):

L'EA funziona su molti grafici (installati sulla base di un modello). Ha salvato tutto in un profilo. Lasciato in esecuzione su VPS tutto il giorno.

Improvvisamente, su alcuni dei grafici si trova quando apro la finestra delle impostazioni che tutte le variabili stringa contengono valori vuoti. (Inclusi quelli falsi - solo per indicare la sezione delle impostazioni come "---TOUT FILTER---")

C'erano diversi terminali e EAs di diversi autori di Market.

Io stesso non ho riavviato i terminali. Non ho cambiato deliberatamente le impostazioni.

Avrei dovuto salvare il modello quando l'ho incontrato.

 
fxsaber:

Avrebbe dovuto mantenere il modello quando è stato affrontato.

Non capisco.

Ho appena messo l'EA sul grafico. Imposto le impostazioni richieste e lo salvo come modello.

Quello che voglio dire è che tutti i grafici avevano impostazioni identiche. Alcuni hanno azzerato le variabili di stringa nelle impostazioni in seguito.

L'ho rilevato per caso - i commenti sulle compravendite hanno smesso di apparire


Ho fatto domanda a SD in aprile. Ma non sono stati in grado di riprodurre la situazione, come ho scoperto oggi dopo la mia richiesta.

Da allora ho smesso di avere fiducia nell'affidabilità dei parametri stringa in extern.

Ecco come subito dopo aver applicato il modello:


Ecco come dopo che il glitch è stato attivato


Ecco il confronto in programma di grafici con EA glitchato e grafico senza glitch (entrambi sono stati aperti dallo stesso modello)


 
Kirill Belousov:

Non capisco.

È stato interessante vedere il template salvato dopo il glitch. Credo che tu l'abbia mostrato nell'ultimo screenshot.

Scrivi un EA che legga i parametri di input di tutti gli EA in esecuzione e segnali quando i parametri di input sono cambiati. Allora sarete in grado di rintracciarlo.