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

 

Bonjour à tous.


Permettez-moi de clarifier, quels paquets ML les participants utilisent-ils, ou tout se fait-il via MQL ?

 

Étonnamment, le fichier est lisible, la qualité du modèle est médiocre, qui veut vérifier la validation.....

Dossiers :
 
Mihail Marchukajtes:

Étonnamment, le fichier est lisible, la qualité du modèle est faible, qui veut vérifier la validation.....

Dans un fichier, il est écrit
* TruePositives : 853
* TrueNegatives : 1098
* Faux positifs : 732
* Faux négatifs : 985

c'est-à-dire presque 50/50.
J'ai obtenu à peu près le même résultat pour un problème logique légèrement plus simple, c'est pourquoi j'ai supposé que les entrées de bruit perturbent vraiment le résultat du RNN.

 
elibrarius:

Le fichier dit
* TruePositives : 853
* TrueNegatives : 1098
* Faux positifs : 732
* Faux négatifs : 985

c'est-à-dire presque 50/50.
J'ai obtenu à peu près le même résultat pour un problème de logique légèrement plus simple, c'est pourquoi j'ai supposé que les entrées de bruit gâchent beaucoup le résultat du RNN.


En effet, la généralisation du modèle est de 52 %, donc...
 
Aleksey Terentev:

Bonjour à tous.


Permettez-moi de clarifier, quels paquets ML les participants utilisent-ils, ou tout se fait-il via MQL ?

En règle générale, tout est fait en R, à l'exception de quelques passionnés qui tentent de réécrire certains modèles en MQL. En ce qui concerne les paquets, cela dépend du modèle utilisé : arbres, réseaux neuronaux, réseaux neuronaux profonds, etc.

Quel modèle vous intéresse ?

Bonne chance

 
Vladimir Perervenko:

En règle générale, tout se fait en R, à l'exception de quelques passionnés qui tentent de réécrire certains modèles en MCL. Quant aux paquets, cela dépend du modèle utilisé - arbres, réseaux neuronaux, réseaux neuronaux profonds, etc.

Quel modèle vous intéresse ?

Bonne chance


Vous avez oublié l'optimiseur de Reshetov, il est utilisé ici aussi .....
 
elibrarius:

Le fichier dit
* TruePositives : 853
* TrueNegatives : 1098
* Faux positifs : 732
* Faux négatifs : 985

c'est-à-dire presque 50/50.
J'ai obtenu à peu près le même résultat pour un problème de logique légèrement plus simple, c'est pourquoi j'ai supposé que les entrées de bruit gâchent beaucoup le résultat du RNN.


Une MLP 20-5-1 normale peut le faire pour le même problème :

Erreur moyenne sur l'apprentissage (60,0%) plot =0,116 (11,6%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Erreur moyenne sur la section de validation (20,0%) =0,111 (11,1%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Erreur moyenne sur le test (20,0%) =0,129 (12,9%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Temps de calcul=0.77 min.

Bien que parfois il donne 50% aussi, je suppose que j'ai besoin de plus de 2 cycles de recyclage.
---------------------------------

Réseau nnet 20-1-1 de R :
Prédiction :
Réel 0 1 Erreur
0 0.41 0.09 0.18
1 0.24 0.26 0.48

C'est légèrement pire, mais ça ne prend que quelques secondes pour le résoudre.

Mais le RNN a une erreur = 0, sur la section de formation. Et ça aussi, c'est cool. Je vais probablement bloguer mon expérience

 
elibrarius:

Un MLP 20-5-1 ordinaire peut produire ceci au même problème :

Erreur moyenne à l'entraînement (60,0%) plot =0,116 (11,6%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Erreur moyenne sur la section de validation (20,0%) =0,111 (11,1%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Erreur moyenne sur le test (20,0%) =0,129 (12,9%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Temps de calcul=0.77 min
---------------------------------

Réseau nnet 20-1-1 de R :
Prévu
Réel 0 1 Erreur
0 0.41 0.09 0.18
1 0.24 0.26 0.48

C'est légèrement pire, mais ça ne prend que quelques secondes pour le résoudre.

Nous devons comprendre un peu différemment ici, que la résolution d'un problème n'est pas une chose difficile, mais qu'il s'agit de savoir comment le modèle se comportera à l'avenir. Nous pouvons apprendre rapidement et sans erreurs. Mais avec les nouvelles données, nous n'aurons rien. Predikshin a une très bonne caractéristique : sur les nouvelles données, il fonctionne avec le même taux d'erreur que lors de la formation. Parce que ça ne permet pas de se recycler et bla bla bla. Et les autres réseaux peuvent apprendre cet exemple très rapidement, mais montrent des résultats bien pires sur de nouvelles données... IMHO
 
Mihail Marchukajtes:

Il faut savoir que la résolution du problème n'est pas une tâche difficile, mais la question est de savoir comment le modèle se comportera ensuite. Nous pouvons apprendre rapidement et sans erreurs. Et avec les nouvelles données, nous n'aurons rien. Predikshin a une très bonne caractéristique : sur les nouvelles données, il fonctionne avec le même taux d'erreur que lors de la formation. Parce que ça ne permet pas de se recycler et bla bla bla. Et les autres réseaux peuvent apprendre cet exemple très rapidement, mais montrent des résultats bien pires sur de nouvelles données... IMHO

Voici donc les nouvelles données :

Erreur moyenne sur la validation (20,0%) section =0,111 (11,1%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Erreur moyenne au site de test (20,0%) =0,129 (12,9%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2

 
elibrarius:

Voici donc les nouvelles données :

Erreur moyenne sur la validation (20,0 %) parcelle =0,111 (11,1 %) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2
Erreur moyenne sur le test (20,0%) plot =0,129 (12,9%) nLearns=2 NGrad=2297 NHess=0 NCholesky=0 codResp=2


Je ne discute pas, ça pourrait être... :-)
Raison: