Erreurs, bugs, questions - page 505

 
sergey1294:
La même fonction renvoie zéro. J'ai aussi essayéSERIES_TERMINAL_FIRSTDATE . La conclusion est que la fonction SeriesInfoInteger ne fonctionne pas dans le testeur. Il ne fonctionne que pour l'instrument sur lequel le test est en cours. Peut-être avez-vous des idées sur la façon d'exécuter le test pour des instruments dont les dates de début d'historique sont différentes lorsque vous sélectionnez l'intervalle "Tout l'historique".

J'ai décidé de vérifier vos conclusions. J'ai exécuté le test Expert Advisor sur Alpari-Demo et le même dans le testeur en mode visualisation depuis 2000. Les résultats de l'exécution init sont dans la pièce jointe.

Si l'historique de la période testée se trouve sur le serveur, SeriesInfoInteger() renvoie dans le testeur les mêmes données que sur la démo. S'il n'y a pas d'historique (comme sur EURAUD, depuis 2004.06.16) à la date du test, le testeur renvoie l'erreur suivante : 2011.09.05 09:40:53 EURAUD : contient 0 enregistrements M1.

Ainsi, SeriesInfoInteger() fonctionne toujours dans le testeur, si le serveur possède l'historique correspondant et que le testeur peut le charger. S'il atteint l'historique "vide", le test se bloque simplement, bien que la barre de progression se déplace.

Dossiers :
 
Valmars:

J'ai décidé de vérifier vos conclusions. J'ai exécuté le test Expert Advisor sur Alpari-Demo et le même dans le testeur en mode visualisation depuis 2000. Les résultats de l'exécution init sont dans la pièce jointe.

Si l'historique de la période testée se trouve sur le serveur, SeriesInfoInteger() renvoie dans le testeur les mêmes données que sur la démo. S'il n'y a pas d'historique (comme sur EURAUD, depuis 2004.06.16) au moment de la date de début du test, le testeur renvoie l'erreur suivante : 2011.09.05 09:40:53 EURAUD : contient 0 enregistrements M1.

Ainsi, SeriesInfoInteger() fonctionne toujours dans le testeur, si le serveur a un historique approprié et que le testeur peut le charger. Si l'historique est "vide", le test se bloque tout simplement, bien que la barre de progression soit en mouvement.

étrange que je renvoie des zéros dans le testeur, qu'est-ce que je fais mal ?
 
sergey1294:
étrangement j'ai retourné des zéros dans le testeur, qu'est-ce que je fais mal ?

Et vous définissez l'intervalle de test non pas sur "Tout l'historique" mais de manière à ce que l'historique soit garanti pour tous les caractères, par exemple "L'année dernière". Ensuite, il ne devrait pas y avoir de zéros, mais le début de l'historique téléchargé par le testeur. Je le reçois depuis le 4.01.2010.

P.S. Mais effectivement étrange, si le testeur a téléchargé l'historique existant avec 2004g. Si la date de début du test est antérieure à celle de l'historique existant, elle doit indiquer la date de début de l'historique 2004 pour ce symbole, et non des zéros, même si la date de début du test est antérieure à celle de l'historique existant. Je pense que c'est un bug.

 
Outre le fait que l'heure dans le terminal MT5 est soudainement passée de GMT+1 à GMT+0, j'ai également trouvé une erreur - après la fin de la bougie d'une heure qui vient de passer, les valeurs de volume des bougies précédentes ont changé, et de manière significative. Je ne peux qu'être certain des chandeliers d'aujourd'hui - je les ai tous enregistrés successivement depuis le début de la session : 0:00 1841 - 2269, 1:00 2556 - 3235, 2:00 2436 - 2975, 3:00 1700 - 3096, 4:00 1391 - 1690, l'heure du terminal est incorrecte. C'est une erreur de MT5.
 
Arkadiy:
Outre le fait que l'heure dans le terminal MT5 est soudainement passée de GMT+1 à GMT+0, j'ai également trouvé une erreur - après la fin de la bougie d'une heure qui vient de passer, les valeurs de volume des bougies précédentes ont changé, et de manière significative. Je peux seulement dire avec certitude à propos des bougies d'aujourd'hui - je les ai toutes sauvegardées successivement depuis le début de la session : 0:00 1841 - 2269, 1:00 2556 - 3235, 2:00 2436 - 2975, 3:00 1700 - 3096, 4:00 1391 - 1690, l'heure du terminal est "fausse". C'est une erreur avec MT5.
J'ai oublié de dire - paire EURUSD.
 
Valmars:

Et vous définissez l'intervalle de test non pas sur "Tout l'historique" mais de manière à ce que l'historique soit garanti pour tous les caractères, par exemple "L'année dernière". Ensuite, il ne devrait pas y avoir de zéros, mais le début de l'historique téléchargé par le testeur. Je l'ai reçu le 4.01.2010.

P.S. Mais effectivement étrange, si le testeur a téléchargé l'historique existant depuis 2004. Dans ce cas, il doit indiquer la date de début et l'historique 2004 pour ce symbole, et non des zéros, même si la date de début est antérieure à l'historique existant. Je pense que c'est un bug.

J'ai essayé de régler l'année dernière, la même chose. J'ai besoin d'exécuter l'EA sur l'ensemble de l'historique sur tous les symboles.
 

Découvert lors de la normalisation du lot. Vérifiez le vôtre :

Imprimer(NormalizeDouble(0.07,2) ;

Contre toute attente, les empreintes : 0,070000000000000000001

 
SoundChip:

Découvert lors de la normalisation du lot. Vérifiez le vôtre :

Imprimer(NormalizeDouble(0.07,2) ;

Contre toute attente, il imprime : 0.07000000000000001

https://www.mql5.com/ru/forum/4033
 
Je l'ai, merci.
 

Je vais essayer de poser la question une troisième fois). MetaDriver en a montré un exemple ici. C'est là que j'ai donné mon exemple.

Le graphique se rétrécit lorsque le nombre de transactions commence à dépasser 3000. Ce problème est-il pris en compte par les développeurs ?

Ce problème ne nous permet pas d'analyser les résultats des transactions dans le terminal en une seule fois lorsque nous testons le système sur une grande bande de données historiques, lorsque la quantité de transactions peut être d'environ 10000 et plus.

Je me souviens avoir eu quelque chose de similaire dans Excel. Mais le programme était surchargé de formules complexes et se bloquait simplement si le nombre de lignes dépassait 5000. Quel pourrait être le problème ici ?