mt5 strategy tester ticks - page 4

 
RaptorUK:
Je ne parle pas des ticks manquants dans le testeur de stratégie mais des ticks manquants pendant que vous les enregistrez. Si vous comptez les ticks que vous voyez pendant que vous enregistrez des données et que vous manquez des ticks, votre compte sera inférieur à ce qu'il aurait dû être. Il est très simple de déterminer si vous avez manqué un tick pendant l'enregistrement, je me demandais juste si vous l'avez fait et ce que vous avez fait quand vous avez découvert que vous aviez manqué un tick ?

Comme je l'ai écrit, j'ai confiance dans le fait que mes données en temps réel enregistrées sont complètes. Les raisons en sont les suivantes

1. Parfois, on enregistre près de mille tics par minute (ce qui équivaut à plus de dix tics par seconde !). C'est un chiffre suffisamment élevé pour me convaincre qu'il n'y a pas de problème de performance de l'EA. (Et à cause de ce chiffre, je ne pense pas qu'il y avait des ticks non enregistrés et que l'EA n'était pas capable de suivre le rythme).

2. L'EA fonctionne sur un VPS Metatrader dédié qui est maintenu par un fournisseur de services professionnel spécialement adapté au trading (c'est-à-dire minimisant les interruptions de connexion).

 
NyemaSanya:

Comme je l'ai écrit, j'ai confiance dans le fait que mes données en temps réel enregistrées sur le VPS sont complètes. Raisons pour cela :

1. Parfois, on enregistre près de mille ticks par minute (ce qui équivaut à plus de dix ticks par seconde !). C'est un nombre suffisamment élevé pour me convaincre qu'il n'y a pas de problème avec les performances de l'EA.

2, L'EA fonctionne sur un VPS Metatrader dédié qui est maintenu par un fournisseur de service professionnel spécialement conçu pour le trading.


Au fait, je suis curieux de savoir comment vous pouvez déterminer s'il manque un tick lors de l'enregistrement ?

OK, donc vous ne vérifiez pas, donc vous ne savez pas si votre compte est correct ou non... pourquoi ne dites-vous pas simplement : combien de temps faut-il à votre OnTick() pour s'exécuter ? s'il n'a pas terminé avant l'arrivée du prochain tick, ne manquez-vous pas un tick ?

Comment vérifier ? eh bien ... ... tenez un compte des ticks au fur et à mesure, mettez ce compteur à zéro quand une nouvelle barre commence et incrémentez-le pour chaque tick, comparez votre compte au volume de la barre 0, si votre compte diffère, vous avez manqué au moins un tick.

 
RaptorUK:

OK, donc vous ne vérifiez pas, donc vous ne savez pas si votre compte est correct ou non ... pourquoi ne dites-vous pas simplement : combien de temps faut-il à votre OnTick() pour s'exécuter ? s'il n'a pas terminé avant l'arrivée du prochain tick, ne manquez-vous pas un tick ?

Comment vérifier ? eh bien ... ... tenez un compte des ticks au fur et à mesure, mettez ce compteur à zéro quand une nouvelle barre commence et incrémentez-le pour chaque tick, comparez votre compte au volume de la barre 0, si votre compte diffère, vous avez manqué au moins un tick.

Ainsi, vous venez de trouver une tâche agréable pour vous-même ;-)
 
RaptorUK:

OK, donc vous ne vérifiez pas, donc vous ne savez pas si votre compte est correct ou non ... pourquoi ne dites-vous pas simplement : combien de temps faut-il à votre OnTick() pour s'exécuter ? s'il n'a pas terminé avant l'arrivée du prochain tick, ne manquez-vous pas un tick ?

Comment vérifier ? eh bien ... ... tenez un compte des ticks au fur et à mesure, mettez ce compteur à zéro quand une nouvelle barre commence et incrémentez-le pour chaque tick, comparez votre compte au volume de la barre 0, si votre compte diffère, vous avez manqué au moins un tick.

Pourquoi insistez-vous sur ce point ?
 
angevoyageur:

Pourquoi insistez-vous sur ce point ?


Il m'est juste venu à l'esprit une autre chose, montrant à quel point son collage est ridicule. Pour obtenir les données en tick du testeur, j'ai exécuté l'EA sans visualisation. C'est beaucoup plus rapide que dans la vie réelle, pour obtenir un jour il faut moins d'une demi-minute. Même dans ce cas, tous les ticks ont été enregistrés.....

 
NyemaSanya:

Il m'est venu à l'esprit une autre chose, montrant à quel point son collage est ridicule. Pour obtenir les données en tick du testeur, j'ai exécuté l'EA sans visualisation. C'est beaucoup plus rapide que la vitesse de la vie réelle, pour obtenir un jour, il faut moins d'une demi-minute. Même dans ce cas, tous les ticks ont été enregistrés.....

Lors d'un test en avant, vous manquez TOUJOURS quelques ticks (pour un temps de test significatif). Il n'y a rien que vous puissiez faire à ce sujet, ces ticks n'arrivent tout simplement pas à votre script/EA. Voir la documentation :

L ' événementNewTick est généré s'il y a de nouvelles cotations, il est traité par la fonction OnTick() des conseillers experts attachés. Dans le cas où la fonction OnTick de la cotation précédente est en cours de traitement lorsqu'une nouvelle cotation est reçue, la nouvelle cotation sera ignorée par un conseiller expert, car l'événement correspondant ne sera pas mis en file d'attente.

Avec le testeur, tout est généré en interne, donc vous ne manquez aucun tic. Et c'est là le problème.
 
angevoyageur:

Sur un test à terme, vous manquez TOUJOURS quelques ticks (pour un temps de test significatif). Il n'y a rien que vous puissiez faire à ce sujet, ces ticks n'arrivent tout simplement pas à votre script/EA. Voir la documentation :

L ' événementNewTick est généré s'il y a de nouvelles cotations, il est traité par OnTick() des conseillers experts attachés. Dans le cas où la fonction OnTick de la cotation précédente est en cours de traitement lorsqu'une nouvelle cotation est reçue, la nouvelle cotation sera ignorée par un conseiller expert, car l'événement correspondant ne sera pas mis en file d'attente.

Avec le testeur, tout est généré en interne, donc vous ne manquez aucun tic. Et c'est là le problème.


Désolé angevoyageur:


Je ne suis pas d'accord ni avec vous ni avec RaptorUK. Il me semble que vous ignorez la logique de base. L'EA est capable d'enregistrer quelques centaines de milliers de ticks dans un laps de temps de quelques minutes lors de l'exécution du testeur. Ce qui signifie que la fonction Ontick() a été réalisée en une fraction de milliseconde.

Mais vous continuez à insister sur le fait que l'EA pourrait ne pas être capable d'enregistrer moins de ticks en temps réel, ayant beaucoup plus de temps pour l'exécution de Ontick() ?

Je suis désolé, mais je pense maintenant que cette conversation est devenue totalement inutile et je me retire.
 

@NyemaSanya : Vous ne réalisez manifestement pas que vous pouvez manquer un Tick pendant l'enregistrement. RaptorUK vous l'a déjà dit. Les ticks sont de nouvelles cotations diffusées par le serveur du courtier. Les nouvelles cotations peuvent être ignorées par mt5 pendant qu'il traite votre Tick_Recorder. angevoyageur vous a déjà dit cela. Les ticks sont des paquets de données qui doivent voyager dans le cyberespace et arriver à votre terminal, vous pouvez manquer des ticks à cause de paquets de données perdus. Maintenant Ubzen vous a dit ceci.

Tous les membres légendaires de mql4, les créateurs de mql4 | mql5 semblent tous conclure la même chose. L'ajustement des courbes de coche se rapproche du hasard.

- Si vous pensez toujours que vous ne pouvez pas manquer un tick dans la vie réelle, alors vous devez faire des recherches avant d'argumenter davantage.

- Si vous réalisez que vous pouvez manquer un tick, alors vous devez répondre à la question de savoir pourquoi votre méthode est meilleure.

Quoi qu'il en soit, c'est juste le même argument encore et encore et encore. Lisez ce sujet.

 
NyemaSanya:


Désolé angevoyageur:


Je ne suis pas d'accord ni avec vous ni avec RaptorUK. Il me semble que vous ignorez la logique de base. L'EA est capable d'enregistrer quelques centaines de milliers de ticks dans un laps de temps de quelques minutes lors de l'exécution du testeur. Ce qui signifie que la fonction Ontick() a été exécutée en une fraction de millisecondes.

Mais vous continuez à insister sur le fait que l'EA pourrait ne pas être capable d'enregistrer moins de ticks en temps réel, ayant beaucoup plus de temps pour l'exécution de Ontick() ?

Je suis désolé, mais je pense maintenant que cette conversation est devenue inutile et je me retire.

Pourquoi réagir comme ça ? Il n'y a rien de personnel ici.

Ce n'est pas une question d'accord ou non. Un EA en test avancé rate toujours des ticks, c'est un fait. Je trouve votre premier commentaire très intéressant dans la mesure où je n'ai jamais fait attention au fait que les Strategy Tester ne manquent pas de tick car ils sont émulés sur la base du volume. J'ai demandé à RaptorUk pourquoi il insiste car je trouve cette question secondaire,je n'avais pas réalisé que vous ne saviez pas ce qu' est un tick .

 

J'ai fait un test hier (9/4) sur EURUSD, avec un EA qui ne compte que les ticks et compare les données MqlTick:

Ticks
Volume (tick) tel qu'indiqué par le terminal MT5 sur le graphique D1
46 645
Backtest D1
46 106
Backtest sur le quotidien46 489


  • Donc, même avec presque rien à faire, l'EA sur le backtest, rate encore des centaines de ticks par jour.
  • Je suis un peu intrigué par le fait que le backtest produit moins de ticks que le volume quotidien.
Documentation on MQL5: Standard Constants, Enumerations and Structures / Data Structures / Structure for Current Prices
Documentation on MQL5: Standard Constants, Enumerations and Structures / Data Structures / Structure for Current Prices
  • www.mql5.com
Standard Constants, Enumerations and Structures / Data Structures / Structure for Current Prices - Documentation on MQL5
Raison: