L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 1112

 

Pour le ML, les données sont beaucoup plus importantes qu'un bon modèle.

Donc, ça peut être utile, je vais partager :

Collecte des ticks de MetaTrader 5 directement dans une base de données MySQL via libmysql en temps réel

MT5_ticks_to_MySQL

L'histoire elle-même peut être trouvée ici :

http://ticks.alpari.org

 
itslek:

Pour le ML, les données sont beaucoup plus importantes qu'un bon modèle.

Donc, ça peut être utile, je vais partager :

Collecte des ticks de MetaTrader 5 directement dans une base de données MySQL via libmysql en temps réel

MT5_ticks_to_MySQL

L'histoire elle-même peut être trouvée ici :

http://ticks.alpari.org

Dans un fichier CSV normal, la tâche est résolue avec le même succès et la même rapidité. Et, en plus, vous n'avez pas à vous soucier de quoi que ce soit.

 
Yuriy Asaulenko:

La tâche est résolue dans un fichier CSV normal tout aussi rapidement et avec le même succès. Et, en plus, vous n'avez pas à vous soucier de quoi que ce soit.

eh, ne pas comprendre et commenter tout de suite)

Je suis d'accord, c'est plus pratique de télécharger l'historique en CSV. Mais pour travailler en ligne avec des modèles déjà réalisés...

 
itslek:

eh, ne pas comprendre et commenter tout de suite)

Je suis d'accord, c'est plus pratique de télécharger l'historique en CSV. Mais pour travailler en ligne avec des modèles prêts à l'emploi...

En ligne tant de tics n'ont pas besoin. Et ils s'adapteront à la mémoire.

Et pas en ligne, vous n'avez pas besoin de beaucoup de vitesse pour exporter. Vous importez manuellement du CSV vers la base de données.

 
Vizard_:

+1

Je suis d'accord pour dire que les données sont plus importantes que le modèle, mais la méthode de construction de celui-ci est également importante. Dans ce cas, je considère que c'est 50/50.

Il est important que le modèle donne plus de 50% de modèles généralisés lors d'optimisations répétées. C'est-à-dire que 5 modèles ou plus sur 10 optimisations devraient être généralisés à un niveau suffisant. Pourquoi en est-il ainsi ? En effet, en choisissant parmi 10 modèles, la probabilité de sélectionner celui qui fonctionne est plus élevée. A quoi sert l'algorithme s'il ne produit que 2 modèles généralisés sur 10 optimisations ? La probabilité que le conseiller expert choisisse le modèle de travail est très faible et, par conséquent, cet algorithme est également peu utile.

Il est important que les données soient la cause de la fonction cible, au moins 20 % ou plus. S'il existe une raison dans les données d'entrée, la responsabilité de la trouver incombe à l'algorithme d'optimisation.


Je suis toujours intéressé de vérifier mes résultats sur d'autres algorithmes et de comprendre ce qu'est le succès. La disponibilité des données ou de l'optimiseur Reshetova, qui est tout détesté ici, mais pour le faire il faudra tester dans la vie réelle, et en tenant compte du fait que les gens ici avare. CUSTOMS........

Si quelqu'un d'autre se pose cette question, je pense pouvoir y répondre comment : Je prépare les données. Vous formez votre IA, après la formation nous testons le modèle sur les retours (de préférence dans le monde réel), si l'EA fonctionne et que nous sommes convaincus que le modèle fonctionne, cela signifie que votre algorithme d'optimisation fonctionne (je n'en ai pas besoin) et que nous devons donc nous concentrer sur la recherche de données d'entrée. Si je n'arrive pas à obtenir un modèle fonctionnel avec mes données, je dois affiner l'algorithme. Je pense que les débutants s'y intéresseront et, en attendant, je m'assurerai aussi de mon succès. Les données ou la disponibilité d'un puissant optimiseur Reshetov.

So.... qui accepte ce défi ?????

 
Mihail Marchukajtes:

Je suis d'accord pour dire que les données sont plus importantes que le modèle, mais la méthode de construction de celui-ci est également importante. Dans ce cas, je considère que c'est 50/50.

Il est important que le modèle donne plus de 50% de modèles généralisés lors d'optimisations répétées. C'est-à-dire que 5 modèles ou plus sur 10 optimisations devraient être généralisés à un niveau suffisant. Pourquoi en est-il ainsi ? En effet, en choisissant parmi 10 modèles, la probabilité de sélectionner celui qui fonctionne est plus élevée. A quoi sert l'algorithme s'il ne produit que 2 modèles généralisés sur 10 optimisations ? La probabilité que le conseiller expert choisisse le modèle de travail est très faible et, par conséquent, cet algorithme est également peu utile.

Il est important que les données soient la cause de la fonction cible, au moins 20 % ou plus. S'il existe une raison dans les données d'entrée, la responsabilité de la trouver incombe à l'algorithme d'optimisation.


Je suis toujours intéressé de vérifier mes résultats sur d'autres algorithmes et de comprendre ce qu'est le succès. La disponibilité des données ou de l'optimiseur Reshetova, qui est tout détesté ici, mais pour le faire il faudra tester dans la vie réelle, et en tenant compte du fait que les gens ici avare. CUSTOMS........

Si quelqu'un d'autre se pose cette question, je pense pouvoir y répondre comment : Je prépare les données. Vous formez votre IA, après la formation nous testons le modèle sur les retours (de préférence dans le monde réel), si l'EA fonctionne et que nous sommes convaincus que le modèle fonctionne, cela signifie que votre algorithme d'optimisation fonctionne (je n'en ai pas besoin) et que nous devons donc nous concentrer sur la recherche de données d'entrée. Si je n'arrive pas à obtenir un modèle fonctionnel avec mes données, je dois affiner l'algorithme. Je pense que les débutants s'y intéresseront et, en attendant, je m'assurerai aussi de mon succès. Les données ou la disponibilité d'un puissant optimiseur Reshetov.

So.... qui accepte ce défi ?????

Les cibles sont déjà dans les données ? Quelles métriques ?)

Si vous réduisez le défi à une simple forme de concours d'apprentissage automatique, vous pouvez attirer non seulement les traders)

 
itslek:

Les balises des données sont-elles déjà définies ? Quelle est la métrique ?)

Si vous réduisez la tâche à un simple formulaire de concours d'apprentissage automatique, vous pouvez attirer plus que de simples traders).

Oui, les données de la cible seront déjà présentes. Nous parlons de modèles de classification. Ici le problème est différent, comment vérifier ces modèles obtenus dans votre système ????. De préférence sur de vrais...

 
Mihail Marchukajtes:

Oui, les données de la cible seront déjà présentes. Nous parlons ici des modèles de classification. Le problème ici en est un autre, comment pouvez-vous vérifier ces modèles obtenus dans vos systèmes ????. De préférence sur le réel...

Pour commencer, vérifiez au moins l'échantillonnage différé. Supposons que vous donniez les données pour la période 2012-2016. Test 2017. 2018 vous laisse pour le contrôle final (pour qu'il n'y ait pas d'ajustement).

Attendez avec le réel) ne pas partager la peau pas tué l'ours ;) d'abord vous devez faire un modèle qui pourrait au moins passer la validation, et ensuite essayer de rouler cet éléphant dans le produit. Ce sont deux tâches complètement différentes.

 
Je ne sais pas quoien faire :

Pour commencer, vérifiez au moins un échantillon différé. Supposons que vous donniez des données pour la période 2012-2016. Test 2017. Vous gardez 2018 pour le test final (pour qu'il n'y ait pas d'ajustement).

Attendez avec le vrai) ne pas diviser la peau pas tué l'ours ;)

Alors comment vais-je vérifier le modèle ? si je fais la validation dans MT tester. Après l'optimisation, nous pourrons charger le modèle dans MT4 ?

 
Mihail Marchukajtes:

Alors comment vérifier le modèle ? si je le vérifie dans le testeur MT. Après l'optimisation, nous pourrons charger le modèle dans MT4 ?

Et mon point de vue est le suivant. D'abord, posez le problème dans le vide. avec votre métrique.


Si vous voulez le faire fonctionner dans le testeur avec le chalutage et tous les autres goodies :

Fournir les données en .csv avec le ciblage (je comprends que vous avez cette classification binaire). puis former le modèle et prédire le ciblage. le résultat est chargé comme une liste de réponses du modèle dans le même testeur et exécuté. Mais le faire pour chaque modèle est une autre variante de l'ajustement, il est préférable de penser aux métriques ou à l'objectif. Et dans le testeur, nous ne devons exécuter que la dernière variante.

Pour le temps réel, c'est un problème distinct et tous les modèles ne peuvent pas être intégrés dans une dll.

Raison: