Erreurs, bugs, questions - page 344

 
AlexSTAL:

Il faut soit s'assurer qu'ils ne sont pas dans le fichier au départ, soit appliquer une fonction supplémentaire lors de la lecture, par exemple :

Merci, je vais essayer maintenant, à l'origine dans le fichier c'est une douleur de les supprimer manuellement. Ce fichier est téléchargé depuis le site web du DC.

PS. Merci encore pour votre aide tout au long du travail.

 

Avec l'aide du public :o)

J'ai créé un indicateur qui appelle un autre indicateur dans son propre init et tout fonctionne bien, mais lorsque je le supprime, il dit

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

le code a la suppression de la poignée dans Deinite

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

Je pense que la raison en est une petite chose, mais je n'arrive pas à trouver ce que j'ai oublié.

SZY si j'augmente le nombre d'appels iCustom augmente alors le nombre de lignes de perte de mémoire.

ZZZY Ind Calculate Balance (EURUSD,M1) est exactement l'indicateur appelé via iCustom.

 
Urain:

Avec l'aide du public :o)

J'ai créé un indicateur qui appelle un autre indicateur dans son propre init et tout fonctionne bien, mais lorsque je le supprime, il dit

le code a la suppression de la poignée dans Deinite

Je pense que la raison en est une petite chose, mais je n'arrive pas à trouver ce que j'ai oublié.

SZY si j'augmente le nombre d'appels iCustom augmente alors le nombre de lignes de perte de mémoire.

ZZZY Ind Calculate Balance (EURUSD,M1) est exactement l'indicateur appelé via iCustom.


Si seules les lignes sont fuitées, il s'agit d'une erreur de compilation à 100%, veuillez créer une demande à servicedesk avec le code à reproduire. Merci.
 
mql5:
Si seules des lignes fuient, il s'agit d'une erreur de compilation à 100%, veuillez créer une demande à servicedesk avec le code joint pour le reproduire. Merci.
J'avais l'habitude de créer des demandes avec des bugs déjà localisés. Ici, je ne comprends pas du tout ce que MT me dit.
 

a trouvé une divergence entre l'aide et le comportement de la fonction

CopyTime

MAXBARS = 100000 est défini dans le terminal.

Si la date de droite (stop_time) de la copie dépasse 100000 barres, la fonction copie juste 100000 barres et retourne ce montant.

Bien que, comme indiqué dans l'aide :

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

veuillez corriger cette incohérence.


De plus, la fonction CopyTime commence à ralentir sauvagement... sans que la raison de ce comportement soit évidente.

 
sergeev:
De plus, la fonction CopyTime commence à ralentir de manière très importante... sans raison évidente pour ce comportement.

Il me semble qu'il ralentit parce qu'il va sur le serveur pour l'historique...

Quelque part, j'ai utilisé un code comme celui-ci et tous les freins ont disparu :

   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:
J'avais l'habitude de créer des applications avec des bugs déjà localisés. Cette fois, je ne comprends pas ce que MT me dit.
Lors de la fermeture (déchargement) du programme MQL5, le système d'exécution a détecté qu'il y avait une ligne (dans votre message) qui n'était pas libérée.
 
AlexSTAL:

Il me semble qu'il ralentit parce qu'il va sur le serveur pour l'historique...

Quelque part, j'ai utilisé un code comme celui-ci et tous les décalages ont disparu :

Non. le lag est exactement dû au fait d'aller au-delà de MAXBARS. aucune pagination n'est corrigée. dès que je reviens à 99999 barres, le lag disparaît brusquement. c'est ainsi que je me suis assis et que j'ai déplacé la souris sur CopyTime pour copier MAXBARS, puis 1-2 barres de moins. le pépin est apparu/disparu de manière cohérente avec la référence ultérieure à CopyTime.

donc je suis sûr que le bug est dans CopyTime lui-même. bien, l'aide pour la fonction devrait aussi être résolue.

 
mql5:
Lors de la fermeture (déchargement) d 'un programme MQL5, le système d'exécution a détecté qu'une ligne (dans votre message) était laissée en mémoire, qui n'a pas été libérée.

Faire une demande

Exactement une ligne car 2 entrées iCustom apparaissent lors de l'exécution de 2

1 leaked strings left
 

Impossible de définir un délai supérieur à 30 minutes.

   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

Les fonctions Period() et _Period et PERIOD_CURRENT donnent également des résultats inconnus.

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