Errori, bug, domande - pagina 344

 
AlexSTAL:

O ci si assicura che non siano nel file inizialmente, o si applica una funzione aggiuntiva durante la lettura, per esempio:

Grazie, lo proverò ora, in origine nel file è una rottura eliminarli manualmente. Questo file viene scaricato dal sito web di DC.

PS. Grazie ancora per il vostro aiuto tutto lavorato.

 

Prendendo aiuto dal pubblico :o)

Ho fatto un indicatore che chiama un altro indicatore nel proprio init e tutto funziona bene, ma quando lo rimuovo dice

2011.03.23 14:27:12     Ind Calculate Balance (EURUSD,M1)          1 leaked strings left

il codice ha la rimozione della maniglia in Deinite

void OnDeinit(const int reason)
  {
   for(int i=0;i<total;i++)IndicatorRelease(handle[i]);
  }

Penso che la ragione di questo sia qualche piccola cosa, ma non riesco a capire cosa ho dimenticato.

SZY se aumento il numero di chiamate iCustom poi aumenta il numero di linee di perdita di memoria.

ZZZY Ind Calculate Balance (EURUSD,M1) è esattamente l'indicatore chiamato tramite iCustom.

 
Urain:

Prendendo aiuto dal pubblico :o)

Ho fatto un indicatore che chiama un altro indicatore nel proprio init e tutto funziona bene, ma quando lo rimuovo dice

il codice ha la rimozione della maniglia in Deinite

Penso che la ragione di questo sia qualche piccola cosa, ma non riesco a capire cosa ho dimenticato.

SZY se aumento il numero di chiamate iCustom poi aumenta il numero di linee di perdita di memoria.

ZZZY Ind Calculate Balance (EURUSD,M1) è esattamente l'indicatore chiamato tramite iCustom.


Se solo le linee sono trapelate, questo è un errore del compilatore al 100%, si prega di creare una richiesta a servicedesk con il codice da riprodurre. Grazie.
 
mql5:
Se trapelano solo linee, è un errore del compilatore al 100%, si prega di creare una richiesta a servicedesk con il codice allegato per riprodurre. Grazie.
Ero solito creare richieste con bug già localizzati. Qui non capisco affatto quello che MT mi sta dicendo.
 

ha trovato una discrepanza tra l'aiuto e il comportamento della funzione

CopyTime

MAXBARS = 100000 è impostato nel terminale.

Se la data giusta (stop_time) della copia supera le 100000 barre, la funzione copia semplicemente 100000 barre e restituisce questo importo.

Anche se, come indicato nella guida:

В случае если запрашиваются данные за пределами TERMINAL_MAXBARS (максимальное количество баров на графике), функция также вернет -1.

si prega di correggere questa incongruenza.


Inoltre, la funzione CopyTime inizia a rallentare selvaggiamente... senza alcuna ragione evidente per il comportamento.

 
sergeev:
Anche la funzione CopyTime inizia a rallentare selvaggiamente... senza alcuna ragione evidente per il comportamento.

Mi sembra che stia rallentando perché va al server per la storia...

Da qualche parte ho usato un codice come questo e tutti i freni sono scomparsi:

   if ( SeriesInfoInteger(Instrument, TimeFrame, SERIES_FIRSTDATE) <= SeriesInfoInteger(Instrument, 0, SERIES_SERVER_FIRSTDATE) )
      tmpBars = (int)MathMin(SeriesInfoInteger(Instrument, TimeFrame, SERIES_BARS_COUNT), BarsLimit);
   else
      tmpBars = BarsLimit;
   if (tmpBars <= 0)
      tmpBars = BarsLimit;
   int BarsCopy = CopyRates(Instrument, TimeFrame, 0, tmpBars, tmpRates);
 
Urain:
Ero solito creare applicazioni con bug già localizzati. Questa volta non capisco cosa mi sta dicendo MT.
Alla chiusura (scarico) del programma MQL5, il sistema di esecuzione ha rilevato che c'era una linea (nel tuo messaggio) che non è stata liberata.
 
AlexSTAL:

Mi sembra che stia rallentando perché va al server per la storia...

Da qualche parte ho usato del codice come questo e tutti i lag sono scomparsi:

No. Il lag è esattamente dovuto all'andare oltre MAXBARS. Nessuna paginazione è fissata. Appena torno alla barra 99999, il lag scompare bruscamente. è così che mi sono seduto e ho spostato il mouse su CopyTime per copiare MAXBARS, poi 1-2 barre in meno. il glitch è apparso/scomparso coerentemente con il successivo riferimento a CopyTime.

Quindi sono sicuro che il bug è in CopyTime stesso. bene, anche l'aiuto per la funzione dovrebbe essere risolto.

 
mql5:
Quando si chiude (scarica) un programma MQL5, il sistema di esecuzione ha rilevato che una linea (nel vostro messaggio) è rimasta in memoria, che non è stata liberata.

Ha fatto una richiesta

Esattamente una linea perché 2 voci iCustom appaiono quando si eseguono 2

1 leaked strings left
 

Non è possibile impostare un intervallo di tempo maggiore di 30 minuti.

   Print("PERIOD_M5=",PERIOD_M5,"   PERIOD_H1=",PERIOD_H1);

2011.03.25 10:20:00 period_test (GBPUSD,D1) PERIOD_M5=5 PERIOD_H1=16385

Anche le funzioni Period() e _Period e PERIOD_CURRENT danno risultati sconosciuti.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Периоды графиков
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Периоды графиков
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы графиков / Периоды графиков - Документация по MQL5