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

 
Aleksey Vyazmikin:

Déjà commencé l'entraînement sans minutes - nous verrons.

J'utilise également 1/4 de temps de barre - heures, 4 heures, jours.

En général, il s'avère que les modèles en bois nécessitent beaucoup d'entrées, qui sont pré-divisées autant que possible, c'est-à-dire qu'elles ont le nombre minimum de divisions propres possibles.

 
elibrarius:

En général, il s'avère que les modèles en bois ont besoin de nombreuses entrées qui sont pré-séparées autant que possible, c'est-à-dire qui ont le nombre minimum de divisions propres possibles.

Si vous faites la quantification vous-même, alors oui, mais l'automatisation est également intégrée.

Les histogrammes ci-dessus représentent simplement les différents nombres de quanta par prédicteur, vous pouvez voir comment ils affectent le résultat final.

Si l'on veut extraire les veines d'informations précieuses en tant que quantum distinct du prédicteur, il est possible de coder cette veine comme une caractéristique binaire et de l'alimenter séparément.

 
elibrarius:

En général, il s'avère que les modèles en bois doivent être alimentés par un grand nombre d'entrées qui sont pré-divisées autant que possible, c'est-à-dire qui ont le nombre minimum de divisions propres possibles.

Balance - T1 avec minutes et T2 sans minutes - résultat moyen : 3384/3126/3890

Rappel - résultat moyen : 0,0459/0,0424/0,0458


Précision - score moyen: 0,5216/0,5318/0,5389

En ce qui concerne les scores moyens de l'agrégat T2, le pire scénario est apparu.

J'ai ouvert le tableau pour la signification des prédicteurs et j'ai été surpris



Je n'ai pas l'air d'aimer les derniers changements apportés par la méthode d'entraînement, peut-être ai-je fait quelque chose de mal ?

//день недели, час = ввести через 2 предиктора sin и cos угла от полного цикла 360/7,  360/24
   double tmp[4];
   int nInd=0;
   MqlDateTime dts;
   double pi=3.1415926535897932384626433832795;
   for(int buf=0; buf<2; buf++)
   {
      TimeToStruct(iTime(Symbol(),PERIOD_CURRENT,0),dts);
      //tmp[buf]=(double)(dts.hour*60+dts.min)*360.0/1440.0;
      tmp[buf]=(double)(dts.hour*60+dts.min)*360.0/24.0;
      tmp[buf]=(buf==0?MathSin(tmp[0]*pi/180.0):MathCos(tmp[0]*pi/180.0));

      TimeToStruct(iTime(Symbol(),PERIOD_CURRENT,0),dts);
      //tmp[buf+2]=(double)(dts.day_of_week*1440+dts.hour*60+dts.min)*360.0/10080.0;
      tmp[buf+2]=(double)dts.day_of_week*360.0/7.0;
      tmp[buf+2]=(buf==0?MathSin(tmp[0]*pi/180.0):MathCos(tmp[0]*pi/180.0));
   }


J'ai ouvert l'échantillon



Et j'ai vu que la colonne TimeHG contient des heures - mon erreur - je dois refaire tous les tests.


 
Aleksey Vyazmikin:

Balance - T1 avec minutes et T2 sans minutes - score moyen : 3384/3126/3890

Rappel - score moyen : 0,0459/0,0424/0,0458


Précision - score moyen: 0,5216/0,5318/0,5389

En ce qui concerne les scores moyens de l'agrégat T2, le pire scénario est apparu.

J'ai ouvert le tableau pour la signification des prédicteurs et j'ai été surpris



Je n'ai pas l'air d'aimer les derniers changements apportés par la méthode d'entraînement, peut-être ai-je fait quelque chose de mal ?


J'ai ouvert l'échantillon



Et j'ai vu que la colonne TimeHG - sont des heures - mon erreur - je dois refaire tous les tests.


Et les heures sont restées avec les minutes.

 tmp[buf]=(double)(dts.hour*60+dts.min)*360.0/24.0;

Cela devrait être comme ceci

 tmp[buf]=(double)(dts.hour)*360.0/24.0;
TimeHG - a apparemment tout pris en charge, c'est pourquoi les autres montres n'ont pas été utilisées.
 
elibrarius:

Et l'horloge reste avec les minutes

Nous devons le faire.

OK.

 

Entraînement pendant 3 mois - pour le plaisir - entraînement au début. L'ensemble du calendrier s'étend de 2014 à 2020.

Si vous prenez une grande période, vous obtenez un modèle médiocre. En même temps, vous pouvez prendre différentes périodes de 3 mois dans l'ensemble de la période.

Ici par exemple, vous pouvez voir la période de formation - avant et après la dynamique est positive.


Futurs actuels

Mat expectation montre 6.15 sur les ticks réels.

J'ai pris un modèle plus récent.


Il est intéressant de noter qu'ils sont différents, ce qui offre la possibilité de les combiner en un comité. L'espérance mathématique est de 12,64.

Ci-dessous un histogramme avec le solde estimé, y compris l'échantillon de formation, en fonction du numéro de la fenêtre de formation - plus le numéro est élevé, plus on se rapproche de notre époque, je vous rappelle que l'échantillon va de 2014 à octobre 2020.

Il est intéressant de noter qu'à certains endroits, les bénéfices tombent à près de la moitié de la valeur maximale. Qu'est-ce que cela pourrait signifier - des zones plus bruyantes lors des formations ?

 
elibrarius:

Et l'horloge reste avec les minutes

Cela devrait être comme ceci

TimeHG - a apparemment tout pris en charge, c'est pourquoi le reste de l'horloge n'a pas été utilisé.

Solde - T1 avec minutes et T2 sans minutes - résultat moyen : 4209.70/2882.50/3889.90


Rappel - résultat moyen : 0,0479/0,0391/0,0458


Précision - score moyen : 0,5318/0,5168/0,5389

Importance des prédicteurs



En moyenne, l'option sans minutes (T2) fusionne.

 
Aleksey Vyazmikin:

Balance - T1 avec minutes et T2 sans minutes - score moyen : 4209.70/2882.50/3889.90


Rappel - score moyen : 0,0479/0,0391/0,0458


Précision - score moyen : 0,5318/0,5168/0,5389

Importance des prédicteurs



En moyenne, l'option sans minutes (T2) fusionne.

Quelle est la conclusion ?
Les procès-verbaux donnent une augmentation.
Je ne comprends pas ce qui est le mieux : le temps en tant que sinus et cosinus ou simplement en tant que nombre de jours, d'heures et de minutes ?
 
elibrarius:
Quelle est la conclusion ?
Les procès-verbaux donnent une augmentation.
Qu'est-ce qui est le mieux : le temps sous forme de sinus et de cosinus, ou simplement sous forme de nombres de jours, d'heures et de minutes ?

Jusqu'à présent, nous pouvons conclure que T2 est clairement une moins bonne option, et que l'addition de sinus et de cosinus n'est pas identique au temps linéaire. Je pense que les résultats sont différents en raison de la représentation des chiffres, à savoir la distance qui les sépare. La différence de distance affecte la formation de la grille de clustering - d'où la divergence.

 
Aleksey Vyazmikin:

Jusqu'à présent, nous pouvons conclure que T2 est clairement une moins bonne option, et que l'addition de sinus et de cosinus n'est pas identique au temps linéaire. Je pense que les résultats sont différents en raison de la représentation des chiffres, à savoir la distance qui les sépare. La différence de distance affecte la formation de la grille de clustering - d'où la divergence.

Théoriquement - il devrait en être de même pour l'arbre.
Le nombre de choix différents en jours, heures et minutes est égal au nombre de choix en sinus et cosinus. Là et là, en 7 jours, il y a 10080 valeurs différentes, qui changent une fois par minute.
S'il y a une quelconque randomisation dans la formation, elle peut être due à cette différence.

Vous vous êtes entraîné avec quoi, le catbust ?

Pour NS, le sinus et le cosinus sont bien sûr meilleurs, car 59 et 1 minute seront côte à côte, avec la représentation du nombre ils sont aussi éloignés que possible. Si vous voulez que l'arbre le comprenne, vous devrez faire quelques fractionnements supplémentaires, ce qui est peut-être ce qui lui manque dans les limitations de profondeur.

Raison: