Backtesting/Optimisation - page 27

 

Le backtesting corrompt les données historiques ?

Bonjour à tous,

Il y a quelques semaines, j'ai téléchargé des données d'une minute sur le site http://www.alpari-idc.com/en/dc/databank.html.

Et j'ai backtesté beaucoup d'EAs dessus.

Aujourd'hui j'ai trouvé un EA qui m'a donné ces résultats :

J'ai décidé d'accélérer le processus de backtesting donc j'ai installé metatrader sur mon nouvel ordinateur, téléchargé les dernières données 1 minute, téléchargé mon EA

et j'ai obtenu ces résultats :

Les paramètres de l'EA sont les mêmes, la seule différence que je peux voir est que les ticks modélisés sont beaucoup plus élevés sur les données 1 minute les plus récentes.

J'ai remarqué que d'autres EA qui généraient de bons résultats sur les anciennes données ont cessé de "fonctionner" lorsque j'utilise les données les plus récentes.

Quelqu'un connaît-il la raison de ce phénomène ?

Mes anciennes données à 1 minute étaient-elles corrompues ?

Merci d'avance, Drue

 

EA a utilisé 14416 ticks dans le premier cas et 14391 ticks dans le second cas de 90%. Il peut donc s'agir de ce qui suit :

- vous avez choisi une période plus longue pour le backtesting dans le premier cas ;

ou

- vous avez laissé le premier Metatrader actif pour le trading et Metatrader a téléchargé de nouvelles données qui ont été mélangées. Importez des données supplémentaires en mode fooline (si vous ouvrez le dossier contenant les données, vous verrez probablement de nombreux fichiers avec la même période et les mêmes paires, alors importez-les dans le fichier principal).

Et si vous backtestez des EA très souvent, il peut être bon de garder une copie de Metatrader uniquement pour le backtesting et ce Metatrader devrait être déconnecté du broker de façon permanente.

 

Optimiseur de stratégie utilisant le GPU

Bonjour, j'ai beaucoup utilisé l'optimiseur de test de stratégie récemment, et j'ai constaté que cela prend beaucoup de temps pour optimiser une stratégie, et il y a une limite sur le nombre de variables avec lesquelles on peut le faire travailler. J'ai découvert qu'il existe maintenant un logiciel permettant d'utiliser le GPU de la carte vidéo pour effectuer des calculs, et le GPU est beaucoup plus rapide que le CPU. Dans certains tests, mon CPU a environ 5 GFlops, et mon GPU a environ 550 GFlops. C'est plus de cent fois plus rapide ! Je souhaite donc modifier Metatrader4 pour qu'il utilise le GPU au lieu du CPU, et je veux me débarrasser de la limite de variables pour qu'il puisse calculer sur la base de beaucoup plus de variables. J'ai trouvé une entreprise qui fera les modifications ici :

http://www.gpucomputing.eu/

Je me demande donc si quelqu'un ici est intéressé par ce projet ? Je suis sûr que je ne pourrai pas me le permettre moi-même (je suis un étudiant au chômage), alors j'espère que nous pourrons faire une sorte d'achat groupé. J'ai envoyé un email pour demander une réponse, et quand je l'aurai reçue, je la posterai dans ce fil.

 
triwebb1:
J'ai récemment utilisé l'optimiseur de test de stratégie de manière intensive, et j'ai constaté que l'optimisation d'une stratégie prend beaucoup de temps et qu'il y a une limite au nombre de variables avec lesquelles on peut la faire travailler. J'ai découvert qu'il existe maintenant un logiciel permettant d'utiliser le GPU de la carte vidéo pour effectuer des calculs, et le GPU est beaucoup plus rapide que le CPU. Dans certains tests, mon CPU a environ 5 GFlops, et mon GPU a environ 550 GFlops. C'est plus de cent fois plus rapide ! Je souhaite donc modifier Metatrader4 pour qu'il utilise le GPU au lieu du CPU, et je veux me débarrasser de la limite de variables pour qu'il puisse calculer sur la base de beaucoup plus de variables. J'ai trouvé une entreprise qui fera les modifications ici :

http://www.gpucomputing.eu/

Je me demande donc si quelqu'un ici est intéressé par ce projet ? Je suis sûr que je ne pourrai pas me le permettre moi-même (je suis un étudiant au chômage), alors j'espère que nous pourrons faire une sorte d'achat groupé sur ce sujet. J'ai envoyé un email pour demander une question, et quand je l'aurai reçue, je la posterai dans ce fil.

Avant de commencer à commenter, pourriez-vous nous donner plus de détails sur cette limite de variable que vous avez....

Merci.

 

Idée intéressante, mais...

Une restriction malheureuse de MetaTrader4 est qu'il n'y a pas d'API disponible, donc vous êtes en quelque sorte limité dans ce que vous pouvez faire. La seule possibilité que permet MT4 est d'appeler des DLL externes, mais cela ne serait pas vraiment utile, je pense. La majeure partie de la partie du testeur de stratégie qui prend du temps, par exemple, resterait dans MT4.

 

Oui, je sais que ce serait difficile, c'est pourquoi je me tourne vers cette société pour le faire :P Je pense qu'ils devraient décompiler Metatrader, si possible, et en réécrire une partie.

A propos de la limite des variables : j'ai un EA à plusieurs étapes que je teste, et j'utilise plusieurs indicateurs avec des valeurs différentes pour chaque étape, et je veux que l'optimiseur les passe tous en revue et trouve les meilleures valeurs. Il semble être limité à quelque chose comme 20 variables avec 10 étapes chacune. Je voudrais qu'il prenne en charge environ 80 variables avec 50 étapes chacune... Un tel nombre de variables prendrait beaucoup de temps à calculer, et pour cela je veux soit que le GPU fonctionne, soit la possibilité d'utiliser un cluster de PC pour le faire afin que cela ne prenne pas 2 ans sur mon PC. Mais Metatrader ne supporte ni l'un ni l'autre, donc pour l'instant je suis coincé avec l'essai de différentes méthodes pour le fonctionnement de l'EA, mais je veux vraiment essayer celle avec l'énorme quantité de variables et voir ce qu'elle donne.

 

Bonjour, voici ce que je veux faire :

Je veux laisser mon EA s'optimiser (une optimisation des 2 derniers mois), et il doit changer ses variables automatiquement s'il a trouvé de meilleures variables pendant l'optimisation (il va optimiser 24h/24, toute la journée, tous les jours).

Pensez-vous qu'il est possible de coder quelque chose comme ça ? peut-être un script ou quelque chose que je ne connais pas, qu'en pensez-vous ?

 

Ya

Je pense que c'est mmmmmmmmm Oky Oky

 

Pensez-vous que cela soit possible ?

 
w4rn1ng:
Bonjour, voici ce que je veux faire :

Je veux laisser mon EA s'auto optimiser (une optimisation des 2 derniers mois), et il doit changer ses variables automatiquement s'il a trouvé de meilleures variables pendant l'optimisation (il va optimiser 24h/24, toute la journée, tous les jours).

Est-ce que vous pensez qu'il est possible de coder quelque chose comme ça ? peut-être un script ou quelque chose que je ne connais pas, qu'en pensez-vous ?

Je ne sais pas. C'est une très bonne idée, surtout pour les EAs qui traversent les ema. Mais je ne vois pas d'implémentation. Codersguru j'ai le fil de discussion sur l'auto-apprentissage EA ou quelque chose comme ça, mais le développement n'a pas encore terminé.