L'Apprentissage Automatique dans le trading : théorie, modèles, pratique et trading algo - page 2537
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Que se passe-t-il si la cible n'est pas fixée de manière aléatoire ?
Comment ? En dupliquant l'une des entrées vers la sortie ? Il apprendra tout seul. Je crois que j'ai même essayé.
Je viens de faire une expérience - mon échantillon est habituellement divisé en 3 parties, je l'ai donc pris, combiné en un seul échantillon et entraîné un modèle de 100 arbres, puis j'ai vu quels prédicteurs n'étaient pas utilisés et les ai bloqués. J'ai ensuite entraîné le modèle comme d'habitude avec un arrêt sur le surentraînement dans le deuxième échantillon, et j'ai comparé les résultats dans le troisième échantillon avec la variante lorsque j'entraîne sans exclure les prédicteurs. Il s'est avéré que les résultats étaient meilleurs sur les prédicteurs sélectionnés, et ici je trouve difficile de conclure que cet effet pense tel "la sélection de différents prédicteurs se produit en raison de la différence des échantillons sur l'intervalle, en s'entraînant sur l'ensemble de l'échantillon nous sélectionnons automatiquement les prédicteurs qui ne perdent pas leur signification au fil du temps."
Oui, vous avez choisi quelque chose qui aura un impact dans le futur. Il peut même avoir eu peu d'influence dans le passé, mais en raison de sa bonne influence dans le futur sur la moyenne de l'ensemble de l'échantillon a été sélectionné.
Cependant, cela signifie-t-il que plus l'échantillon est grand, plus le modèle est robuste sur un horizon plus long ? Les prédicteurs peuvent-ils être sélectionnés pour l'apprentissage de cette manière, c'est-à-dire que cela ne contribue pas au sur-apprentissage ?
Comme on dit - le marché change. De nouveaux joueurs arrivent, créent de nouveaux robots et désactivent les anciens, etc. Je pense que sur un très grand échantillon, le modèle aboutira à un résultat moyen pour tous ces changements, voire à zéro. Je pense que vous devez ajuster la profondeur de l'entraînement pour une efficacité maximale et vous recycler régulièrement. Je suis moi-même en train d'expérimenter la même période (par exemple, test sur 2 ans, réentraînement le samedi, taille des données essayée de quelques jours à un an ou deux).
En théorie, il serait préférable de définir automatiquement la taille de l'échantillon d'entraînement pour chaque recyclage. Mais jusqu'à présent, je ne sais pas comment.
En général, j'ai entendu une recommandation des fondateurs de CatBoost selon laquelle je devrais trouver les hyperparamètres du modèle et ensuite m'entraîner stupidement sur tous les échantillons disponibles pour utiliser le modèle dans le travail.
Les créateurs ne m'en voudront pas) Je prends des hyperparamètres sur Walking-Forward (VF), puisque la cohérence des données sera maintenue et qu'ici vous pouvez simplement prendre la profondeur de l'histoire pour l'apprentissage, par dégradation de l'influence des anciennes données. Vous pouvez également utiliser la validation croisée (CV), si les données ne changent pas dans le temps, mais il ne s'agit pas ici des marchés.
Après la sélection, nous devons bien sûr apprendre jusqu'au moment présent et utiliser le modèle pour le temps que vous aviez dans le TP ou TP avant.
En vous entraînant sur le même graphique que le graphique de test, vous ajustez le modèle et les hyperparamètres à ce test unique. Et en s'entraînant 10 à 50 fois sur KV ou VF, on trouve les meilleurs hyperparamètres pour une grande partie de l'historique.
Peut-être que c'est mieux, ou peut-être que je suis juste trop paresseux pour reprendre les hyperparamètres une fois par semaine ;)) Donc, ce qui est vraiment mieux, c'est la pratique qui le montre.
Théoriquement, il serait préférable de déterminer automatiquement la taille de l'échantillon d'entraînement pour chaque recyclage. Mais jusqu'à présent, je ne sais pas comment
POUR DÉTERMINER LA MOYENNE
si la taille du scoop gén. est inconnue, considérez la taille du rééchantillon
n=(t^2*sigma^2)/delta_y^2
- pour un échantillonnage aléatoire (pour les échantillons stratifiés et en série, la formule devient un peu plus compliquée)
c'est-à-dire que nous devons déterminer la probabilité de confiance requise P et son coefficient de fiabilité correspondant t=2 pour un niveau de confiance de 95%... une marge d'erreur maximale admissible (l'expert de la branche devrait la connaître lui-même, si vous êtes un trader) dans le diviseur... et la variance (sigma) qui est inconnue, mais peut être connue grâce aux observations précédentes...
En général, c'est à propos de cela que j'ai écrit mes doutes, quand je parlais de la fenêtre flottante [en principe, on peut dire "taille de l'échantillon"] et des statistiques t pour définir une tendance plate et la probabilité de "où nous sommes" - pour construire sur le rejet RS ou l'absorption RS...
Bien sûr, tant que votre caractéristique a une distribution normale, et qu'elle est le principal facteur influençant le résultat (vous avez peut-être déjà défini son dy/dx->min)... ce n'est pas un modèle multifactoriel (je suppose que dans ce cas, vous pouvez prendre la valeur maximale parmi celles calculées... imho)
POUR DÉTERMINER LA PART DU TRAIT
de la même manière, mais au lieu des valeurs d'erreur et de variance de la moyenne, utilisez l'erreur marginale de la part (delta_w) et la variance d'un attribut alternatif w(1-w)
si la fréquence (w) n'est pas connue même approximativement, le calcul prend en compte la valeur maximale de la variance de la part, 0,5(1-0,5)=0,25
cboe pour les options dans l'estimation de l'asymétrie incluent les minutes à la date d'expiration des deux K_opt les plus proches (comme indications alternatives)....
ou tout autre signe pour le goût et la couleur (si aucune option)
p.s. à peu près comme ici
p.p.s. c'est comme ça par logique, et comment implémenter le calcul de l'adéquation de l'échantillon dans la construction d'un modèle avec une population génétique inconnue est une question de disponibilité des données brutes et de logique... mais 2 ans me semble être une fourchette normale pour la population... imho
POUR DÉTERMINER LA MOYENNE
Si la taille de la scoop gén. est inconnue, on considère le volume de rééchantillonnage pour un échantillon aléatoire (pour les échantillons stratifiés et en série, la formule devient légèrement plus compliquée)
n=(t^2*sigma^2)/delta_y^2
c'est-à-dire qu'il est nécessaire de définir une probabilité de confiance requise P et un coefficient de confiance pertinent t=2 pour un niveau de confiance de 95%... une marge d'erreur maximale admissible (l'expert du secteur devrait la connaître lui-même, si vous êtes un trader) dans le diviseur... et la variance (sigma) qui est inconnue, mais peut être connue grâce aux observations précédentes...
En général, c'est à propos de cela que j'ai écrit mes doutes, quand je parlais de la fenêtre flottante [en principe, on pourrait dire "taille de l'échantillon"] et des statistiques t pour définir une tendance plate et la probabilité de "où nous sommes" - pour construire sur le rejet RS ou l'absorption RS...
Bien sûr, tant que votre caractéristique a une distribution normale, et qu'elle est le principal facteur influençant le résultat (vous avez peut-être déjà défini sa dy/dx->min)... ce n'est pas un modèle multifactoriel (je suppose que dans ce cas, vous pouvez prendre la valeur maximale parmi celles calculées... imho)
POUR DÉTERMINER LA PART DU TRAIT
la même chose, mais au lieu des valeurs d'erreur et de variance de la moyenne, utilisez l'erreur marginale de la part (delta_w) et la variance du trait alternatif w(1-w)
cboe pour les options, dans l'estimation de l'asymétrie, mettez les minutes jusqu'à la date d'expiration des 2 K_opt les plus proches (comme attributs alternatifs) ...
ou tout autre signe pour le goût et la couleur (si pas d'opt)
p.s. à peu près comme ici
p.p.s. c'est comme ça par logique, et comment implémenter le calcul de l'adéquation de l'échantillon dans la construction d'un modèle avec une population génétique inconnue est une question de disponibilité des données brutes et de logique... mais 2 ans me semble être une fourchette normale pour la population... imho
pour la définition de la moyenne :
Je ne veux pas vous contrarier, mais la "moyenne", (haut+bas)/2, ne peut à proprement parler pas être appelée du tout, il existe des noms plus académiques pour cela. Le timing des événements est inconnu et irrégulier et irrégulier.
Je ne veux pas vous contrarier, mais "moyenne", (haut+bas)/2, à proprement parler ne peut pas être appelée du tout, il y a des noms plus académiques pour ce genre de choses. Le timing des événements est inconnu et irrégulier et irrégulier.
La chronologie des événements est inconnue, inégale et irrégulière.
En effet, par habitude, je perds de vue les "événements" alors que je considère les "signes"... - J'oublie toujours... Merci de m'avoir rappelé le mot... ! - c'est là que le théorème de Bayes entre en jeu, à en juger par la logique, donc je suppose...
C'est peut-être idiot, mais je n'aime pas utiliser autre chose que close. Lorsque j'ai une série d'observations (pardon) rapprochées, je sais toujours qu'il y a une période de temps fixe entre les observations (elle est toujours la même, stable, et connue de moi). Mais lorsque j'utilise le système low / high et différents calculs avec eux, je trouve..... une période de temps aléatoire entre les observations, qui est toujours différente, d'une observation à l'autre .
à propos de l'aléatoire et du toujours différent, c'est bien sûr machanuto... c'est en fait tout le but de l'étude de tout ce charivari - déterminer le haut/bas plus ou moins précisément dans le temps et le prix :-)
C'est peut-être idiot, mais je n'aime pas utiliser autre chose que close. Lorsque j'ai une série d'observations (pardon) rapprochées, je sais toujours qu'il y a une période de temps fixe entre les observations (elle est toujours la même, stable, et connue de moi). Mais lorsque j'utilise le système low / high et différents calculs avec eux, je trouve..... une période de temps aléatoire entre les observations, qui est toujours différente, d'une observation à l'autre.
Si l'on veut faire une application strictement mathématique, il est nécessaire d'utiliser Open, car pour lui seul le moment de la réception de son tick est markovien - il est défini de manière unique comme une ouverture (dans l'hypothèse d'heures idéales et de l'absence de cotations manquantes). La clôture au moment de la réception de son tick ne peut être définie sans ambiguïté comme une clôture jusqu'à la fin de la section de l'intervalle de temps.
Mais il est plus courant de travailler avec un proche. Probablement, c'est la même chose qu'à l'époque où ils travaillaient avec des citations quotidiennes.
Si l'approche mathématique est stricte, alors Open doit être utilisé, car pour lui seul le moment de l'arrivée de son tick est markovien - il est défini sans ambiguïté comme une ouverture.
techniquement, close est le seul prix avec un temps fiable, c'est-à-dire qu'au moment du changement d'une barre par une autre, le prix est exactement égal à close.
Si ce premier tick intervient 10 minutes après le changement de barre, cela signifie que le prix d'ouverture sera le prix de ce moment.