La limite de 2 Go pour les fichiers FXT est-elle toujours en vigueur ? - page 5

 

Merci à tous les contributeurs pour cet article significatif.

J'ai également testé et je peux confirmer la limite de 4GB sur les fichiers fxt fonctionnant sur Win Xp 32 bit avec MT4 build 509.

Comme la simulation utilise les données M1 si elles sont disponibles, ma solution a été d'ajuster le volume sur le fichier historique M1.

Je crois que le testeur simule le prix en générant des ticks pour représenter l'ouverture, le haut, le bas et la fermeture de chaque barre M1, puis génère des ticks supplémentaires entre les deux jusqu'à ce que le nombre de ticks corresponde au volume de la barre M1.

Ma solution a été de diminuer le volume et d'avoir moins de ticks, ce qui ramène les données de test requises dans la limite des 4 Go.

Puisque les ticks sont de toute façon simulés et ne représentent pas des données réelles à l'exception de l'OHLC, y a-t-il un sens à avoir un volume supérieur à, disons 25 sur une barre M1 ?

Un nombre plus petit peut être suffisant pour refléter assez précisément le prix sur une seule barre, évidemment en fonction du type de stratégie que vous testez.

J'ai confortablement testé 4,5 années de données M1 avec une taille de fichier fxt de 1,5GB - beaucoup de place pour grandir !

Un avantage supplémentaire est que le test s'exécute beaucoup plus rapidement puisque la vitesse d'exécution est déterminée par le nombre de ticks générés. Des tests plus rapides permettent une optimisation plus rapide!

Pour maintenir la cohérence et le chiffre de 90% de qualité de modélisation (si c'est important pour vous), vous devez également ajuster le volume des barres de la trame temporelle supérieure de sorte que vous ayez une intégrité de volume entre la trame temporelle utilisée pour le test et les barres M1.

Bon test !

 

Salut fxapie,

Je suis heureux que vous posiez les mêmes questions que moi concernant la façon dont MT4 utilise les données tick par rapport aux barres M1.

Tu voudras bien lire ce sujet : https://forum.mql4.com/56026

Je n'ai pas encore trouvé de réponses, ce qui est dommage car si elles peuvent être trouvées, cela ouvre potentiellement la voie à des tests sur des plages de plusieurs années en utilisant des données M1 "efficaces en tick" (pour les stratégies qui les utilisent).

Trev.

 
Trevhib:

Salut fxapie,

Je suis heureux que vous posiez les mêmes questions que moi concernant la façon dont MT4 utilise les données tick par rapport aux barres M1.

Tu voudras bien lire ce sujet : https://forum.mql4.com/56026

Je n'ai pas encore trouvé de réponses, ce qui est dommage car si elles peuvent être trouvées, cela ouvre potentiellement la voie à des tests sur des plages de plusieurs années en utilisant des données M1 "efficaces en tick" (pour les stratégies qui les utilisent).

Trev.

Si vous voulez utiliser des ticks simulés qui sont pires que les ticks simulés par défaut, vous pouvez le faire et en prendre le risque. Je préfère utiliser des données de ticks réels quand je le peux, sinon je préfère utiliser les meilleurs ticks simulés auxquels je peux avoir accès.
 

Je pense que le type de stratégie et la période de négociation que vous utilisez peuvent avoir une influence sur votre décision concernant les données historiques. Dans mon cas, j'ai testé une stratégie M5 et je n'ai trouvé AUCUNE différence dans les résultats en utilisant les données originales et les données réduites en volume. Même nombre de transactions, même profit, même drawdown, etc. Je n'ai pas utilisé les données brutes en ticks (j'ai aussi essayé cela auparavant).

Gardez à l'esprit que les données tick doivent toujours respecter l'OHLC des barres M1. La façon dont le prix a évolué entre ces 4 niveaux a-t-elle vraiment de l'importance ?

Bien sûr, ce seraimportant si vous faites du scalping sur M1, mais sur les échelles de temps supérieures qui sont construites sur M1 comme source, je ne suis pas convaincu que les données en tick ou les ticks simulés par le volume original aient un quelconque avantage.

Mais comme vous l'avez dit à juste titre, chacun doit faire ses propres choix et vivre avec les résultats.

 
Trevhib:

Salut fxapie,

Je suis heureux que vous posiez les mêmes questions que moi concernant la façon dont MT4 utilise les données tick par rapport aux barres M1.

Tu voudras bien lire ce sujet : https://forum.mql4.com/56026

Je n'ai pas encore trouvé de réponses, ce qui est dommage car si elles peuvent être trouvées, cela ouvre potentiellement la voie à des tests sur des plages de plusieurs années en utilisant des données M1 " efficaces en tick " (pour les stratégies qui les utilisent).

Trev.

Bonjour Trev

Merci pour la remarque. Je continue de penser que si vous disposez de données M1 pour la période que vous souhaitez tester et que vous travaillez sur une échelle de temps supérieure (M5 et plus), la réduction du volume peut fonctionner et présente des avantages. Les données générées doivent toujours reproduire l'OHLC des barres M1 qui construisent les barres de l'échelle de temps supérieure.

Tester sur M1 avec un volume réduit affectera certainement le résultat.

Je testerai et vérifierai quand il y aura un gap.

Nico

 
RaptorUK:
Si vous voulez utiliser des ticks simulés qui sont pires que les ticks simulés par défaut, vous pouvez le faire et prendre le risque. Je préfère utiliser des données de ticks réels quand je le peux, sinon je préfère utiliser les meilleurs ticks simulés auxquels je peux avoir accès.


Bonjour Raptor, j'adore votre style :)

Puisque des courtiers différents peuvent potentiellement produire exactement la même action de prix M1 (ohlc) sur un instrument donné, et pourtant construire les données de tick de leur barre M1 différemment les uns des autres, quelle importance doit-on accorder au nombre réel de ticks ? Alpari tique le FTSE tous les 0,5pt de mouvement, alors que FXCM le fait tous les 1pt. En d'autres termes, les données tick que nous recevons des courtiers sont simplement représentatives de leur configuration particulière. Alors, lequel est le "vrai" ? Aucun des deux et les deux.

De plus, sans savoir exactement ce que MT4 fait avec ces ticks en termes d'interpolation, nous ne pouvons pas évaluer leur importance réelle.

Après avoir effectué des tests (comme dans l'autre fil de discussion), je pense que chaque barre M1 a besoin d'environ 1 tick par incrément/mouvement de courtier pour être "remplie jusqu'à ses extrémités", pour ainsi dire. Je peux me tromper et j'aimerais être mieux informé, mais je ne suis pas sûr que quelqu'un ici le sache vraiment. Si c'est vrai cependant, alors le remplacer ne devrait pas faire de différence pour le résultat du test (d'une stratégie qui n'a pas besoin de plus de granularité que M1 ohlc), et ce serait formidable d'écrire un script qui assigne le volume minimum correct de tick par bougie M1.

Rappelez-vous que la raison pour laquelle j'étudie ces choses est que j'ai reçu des données de prix FTSE d'un accessoiriste qui avait des informations sur la profondeur du marché dans la colonne volume plutôt que dans le volume du tick (ce qui les rendait inutilisables pour MT4 et causait des problèmes de .fxt). Je ne voulais pas simplement jeter le jeu de données à cause de cela. Premièrement, elle remonte plus loin dans le temps que ma meilleure base de données suivante. Deuxièmement, je voulais prouver que mon EA fonctionne avec leur flux de prix. Donc naturellement, je voulais comprendre les conséquences/risques dans les tests de MT4 en termes de changement/remplacement de ces données de volume.

Toutes les idées sont reçues avec gratitude.

 

Merci Nico. Oui, c'est probablement dû à une mise à l'échelle appropriée à la trame temporelle et à la hauteur de la barre, et j'imagine que la précision est d'autant plus importante que la trame temporelle est petite.

Edition - maintenant remplacée par les commentaires ci-dessous.

 
Trevhib:


Bonjour Raptor, j'adore votre style :)

Puisque des courtiers différents peuvent potentiellement produire exactement la même action de prix M1 (ohlc) sur un instrument donné, et pourtant construire les données de tick de leur barre M1 différemment les uns des autres, quelle importance doit-on accorder au nombre réel de ticks ? Alpari tique le FTSE tous les 0,5pt de mouvement, alors que FXCM le fait tous les 1pt. En d'autres termes, les données tick que nous recevons des courtiers sont simplement représentatives de leur configuration particulière. Alors, lequel est le "vrai" ? Aucun des deux et les deux.

En outre, si nous ne savons pas exactement ce que MT4 fait de ces ticks en termes d'interpolation, nous ne pouvons pas évaluer leur importance réelle.

MetaQuotes vous explique comment ils calculent les ticks: https://www.mql5.com/en/articles/75.

Je comprends votre point de vue sur les différents Brokers qui font des choses différentes, mon point de vue est que je ne veux pas rendre la situation encore pire qu'elle ne l'est actuellement ... si je peux l'éviter. J'ai déjà compilé un peu de données sur les ticks provenant des Brokers, vous pourriez trouver cela intéressant ... c'est le nombre de ticks pour chaque barre H1 sur l'axe Y et le temps sur l'axe X.

 

Merci Raptor, la description de l'article est exactement ce que je cherchais. Elle répond parfaitement à ma question et améliore ma compréhension de l'idéal de la simulation (et des problèmes apparents qu'elle pose). Cet article est-il disponible sur ce site ou ne réside-t-il que sur MQL5 ? Cela pourrait être la raison pour laquelle je ne l'avais pas vu auparavant.

Maintenant, je peux potentiellement* avoir un script écrit qui analyse un ensemble de données 1min et génère/entrée le nombre minimum correct de ticks pour chaque bougie, sort vers un .csv, puis est importé afin que MT4 puisse appliquer sa simulation correctement (même si ce n'est pas aussi bien que MT5). Comme vous l'avez dit plus tôt, il est préférable d'avoir le nombre de ticks fourni avec le jeu de données lorsque cela est possible, mais en l'absence de celui-ci (comme dans la situation à laquelle je suis confronté avec ce jeu de données externe), cela devrait être la meilleure solution suivante et être suffisant dans tous les cas.

*Je dis potentiellement parce que n'étant pas technicien, je ne sais pas si c'est difficile à faire. Ce qui semble possible de faire assez facilement, c'est de déterminer le nombre maximum de ticks dont une bougie pourrait avoir besoin en fonction du nombre de points de support. C'est à peu près ce que j'ai établi (sans le savoir), dans mon expérimentation dans l'autre fil (bien que je n'aie qu'une approximation).

Quant au graphique du nombre de ticks H1, il est vraiment intéressant. 10 000 ticks en une heure sur FXCM ? Je viens de regarder cette période dans FXCM dans mon centre d'historique. J'ai exporté les données 1min de 9h à 11h le 22 avril 2013 et pour l'ensemble des deux heures il n'y a que 577 ticks ? FXCM m'a dit dans le passé que leurs données sont au singulier donc je suppose qu'il n'y a pas de divergences entre les types de comptes (entre les comptes CFD et spread bet etc.). Je ne dois pas comprendre quelque chose correctement.

 
Trevhib:


Quant au graphique du nombre de ticks sur H1, il est vraiment intéressant. 10 000 ticks en une heure sur FXCM ? Je viens de regarder cette période dans FXCM dans mon centre d'historique. J'ai exporté les données 1min de 9h à 11h le 22 avril 2013 et pour l'ensemble des deux heures, il n'y a que 577 ticks ? FXCM m'a dit dans le passé que leurs données sont au singulier, donc je suppose qu'il n'y a pas de divergences entre les types de comptes (entre les comptes CFD et spread bet, etc.). Je ne dois pas comprendre quelque chose correctement.

9am to 11am GMT ? le graphique est GMT + 3, désolé, j'aurais dû le mentionner, le code que j'ai utilisé pour capturer les données capture également une capture d'écran afin que je puisse vérifier tous les fuseaux horaires des différents courtiers et aligner toutes les données.
Raison: