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

 
Aleksey Vyazmikin:

Cela correspond facilement à ma théorie sur le marché. Il s'agit d'une grande banque, peut-être la banque centrale. Naturellement, cela ne se fait pas rapidement, mais comme ce participant était dominant et que la situation du marché y a contribué, il a été possible de trouver des signes de son algorithme. Bien sûr, une fois que le participant a cessé d'influencer le marché, les panneaux ont cessé de fonctionner. Ces participants sont nombreux (peut-être 100), leurs algorithmes peuvent se chevaucher, mais on suppose qu'ils sont similaires (rappelez-vous l'analyse technique et l'obligation pour les banques de justifier leurs opérations de trading sur la base de cette analyse (du moins en Russie)), et pour cette raison il est logique d'analyser un grand échantillon, où un seul et même algorithme est exécuté plusieurs fois, il y a alors une chance de comprendre comment il fonctionne, de décrire ses signes indirects, mais le modèle doit apprendre à l'identifier et ne pas travailler sur le bruit à ce moment-là, en attendant que l'algorithme s'active, sous lequel Je pense que cela fonctionnerait bien sûr encore mieux sur les actions et les produits dérivés, je ne fais pas de MO sur le forex.

Mais l'essentiel est que nous devons trouver des modèles de 10 qui décrivent l'algorithme pour les personnes qui gagnent beaucoup d'argent, et apprendre à déterminer quel algorithme est préférable. Comme le cycle de l'algorithme peut durer quelques jours et qu'il sera probablement répété sur une courte période, il n'y a pas de problème si nous entrons avec un petit retard, l'essentiel étant de choisir le bon modèle pour cet algorithme.

Je ne sais pas s'il faut trouver 10 modèles. Mais le fait que les informations qui entrent sur le marché sont structurées en un cycle qui a un début, une continuation et une fin est certain.

Le point de bifurcation est exactement le moment de l'impact d'une nouvelle portion explosive d'information, qui est ensuite structurée dans le temps. Une perturbation qui se disperse en cercles (vagues) pendant un certain temps.

C'est pourquoi, par exemple, les tendances au sein des contrats à terme sont plus fortes qu'au sein de contrats à terme différents.

 
Maxim Dmitrievsky:

sur l'histoire existe, je ne sais pas comment l'algorithmer.

Elle peut très bien exister dans l'histoire. Est-il possible de la détecter en temps réel, et à temps ? Si elle est inconnue, il n'est pas certain que la solution existe.

J'ai l'habitude de vérifier ce genre de choses avec des statistiques. Pour la plupart, les résultats ne sont rien). Vous pouvez voir avec vos yeux, mais les statistiques disent qu'il n'y a rien là - un reflet apparent de la lune apparente).

 
Yuriy Asaulenko:

Dans l'histoire, elle peut très bien exister. Est-il possible de le détecter en temps réel, et à temps ? Si elle est inconnue, il n'est pas du tout certain qu'une solution existe.

J'ai l'habitude de vérifier ce genre de choses avec des statistiques. Pour la plupart, les résultats ne sont rien). Vous pouvez voir avec vos yeux, mais les statistiques disent qu'il n'y a rien là - un reflet apparent de la lune apparente).

Si vous regardez le graphique, vous pouvez le faire avec vos yeux, je ne peux pas le faire par programme.

 
Maxim Dmitrievsky:

Je ne sais pas s'il faut trouver 10 modèles. Mais le fait que les informations qui entrent sur le marché sont structurées en un cycle qui a un début, une continuation et une fin est certain.

Pour cela, vous devez abandonner les algorithmes de retournement et apprendre au modèle à ne pas être toujours sur le marché. Ma stratégie me permet de le faire et j'expérimente maintenant dans cette direction avec des modèles catbust. Malheureusement, les feuilles de l'arbre que j'ai gardées pendant six mois ne peuvent plus être appliquées, car j'ai apporté quelques modifications aux prédicteurs (il y avait des erreurs dans la logique et des délais nivelés à l'ouverture des bars - c'est-à-dire que le problème de calcul se situait dans les délais en temps réel), mais le fait de travailler avec eux confirme qu'il est possible de détecter des modèles qui sont plus précis individuellement que le pouvoir prédictif de l'arbre/de la forêt, et que leur combinaison donne donc de bons résultats.

Maxim Dmitrievsky:

Et le point de bifurcation est juste le moment où une nouvelle portion explosive d'information est exposée, qui est ensuite structurée au fil du temps. Une perturbation qui se disperse en cercles (vagues) pendant un certain temps.

C'est pourquoi, par exemple, il a été remarqué que les tendances au sein des contrats à terme sont plus fortes que dans des contrats à terme différents.

Il est donc nécessaire d'identifier ces points, peut-être faudrait-il en faire des cibles. Un modèle les identifie et, en fonction de la cible, on sélectionne un modèle commercial approprié. Une autre chose est que nous devrions à nouveau penser aux prédicteurs et à la convolution des données, afin d'exprimer la période de début de cycle en une ligne, alors que la période elle-même peut être définie en (tout au long), disons, 10 barres.

 
Maxim Dmitrievsky:

Si vous le collez dans le graphique, vous pouvez le faire avec vos yeux, je ne peux pas le faire de manière programmatique.

Sur le plan programmatique, c'est une très longue histoire.

Le système précédent comportait plus de 30 conditions (paramètres) pour les entrées longues, autant pour les courts-circuits, et un peu moins pour les sorties. Il y a eu beaucoup de travail, y compris la construction de nombreux ensembles, et leur séparation, l'élimination de toutes les transactions avec des conditions supplémentaires incluses dans les ensembles, etc.

 
Aleksey Vyazmikin:
Yuriy Asaulenko:

Sur le plan programmatique, c'est une très longue histoire.

Le système précédent comportait plus de 30 conditions (paramètres) pour les entrées longues, autant pour les courts-circuits, et un peu moins pour les sorties. Il y a eu beaucoup de travail, y compris la construction de nombreux décors, et leur séparation, l'élimination de tous les métiers tombant des décors avec des conditions supplémentaires, etc.

Nous devons donc identifier ces points, qui devraient peut-être devenir des cibles. Et un modèle identifie ces points et l'autre sélectionne le modèle commercial correspondant en fonction de celui qui est visé. Une autre chose est que nous devrions repenser aux prédicteurs et à la convolution des données, afin d'exprimer la période de début de cycle en une ligne, alors que la période elle-même peut être définie en (tout au long), disons, 10 barres.

Bon, il est clair que c'est un bougre, personne ne le conteste ;))

 
A propos du catbucht, il s'est avéré qu'il est possible d'exécuter plus d'un traitement sur GPU via batch, c'est-à-dire d'exécuter deux batchs à la fois, en appelant l'application console. Et dans ce cas, du moins sur mes modèles, la vitesse du GPU pour produire des modèles ne change pas, ce qui signifie qu'il est possible de paralléliser les calculs. La limite et les limitations ne sont pas encore totalement comprises. Laissez tomber votre alglib, et allons torturer catbust ;)
 
Aleksey Vyazmikin:
À propos de catbucht, il s'est avéré que sur GPU il est possible d'exécuter plus d'un traitement par lot, c'est-à-dire d'exécuter deux lots à la fois, en appelant l'application console. Et dans ce cas, du moins sur mes modèles, la vitesse du GPU pour produire des modèles ne change pas, ce qui signifie qu'il est possible de paralléliser les calculs. La limite et les limitations ne sont pas encore totalement comprises. Laissez tomber votre alglib, et allons torturer catbust ;)

le logiciel est étonnamment bon (contrairement à tout ce qui vient de Yandex), il utilise même le CERN pour traiter les données du collisionneur.

pas encore de temps, mais peut-être plus tard

 
Aleksey Vyazmikin:

Il existe également un logiciel KNIME qui permet d'effectuer toutes sortes de calculs, d'analyses et de visualisations de données.

il est possible de scier xgboost sans programmation, catboost semble être aussi possible à ajouter

KNIME - Open for Innovation
KNIME - Open for Innovation
  • 2019.01.28
  • www.knime.com
KNIME, the open platform for your data.
 
Maxim Dmitrievsky:

le logiciel est étonnamment bon (contrairement à tout ce qui vient de Yandex), il utilise même le CERN pour traiter les données du collisionneur.

pas encore le temps, plus tard peut-être.

Je pense qu'il y a une contribution importante du code source ouvert, qui est périodiquement corrigé et auquel de nouvelles versions sont ajoutées. Eh, si je pouvais lire ce code... il me semble qu'il y a là une foule d'idées que tu peux emprunter et développer toi-même, en créant ta propre impulsion.


MaximDmitrievsky:

Il y a aussi un logiciel cool KNIME qui booste, analyse et visualise les données.

vous pouvez écrire xgboost sans programmation, catboost semble être capable de l'ajouter aussi !

Merci ! Pour l'instant, le catboost me suffit car j'ai débogué tout le cycle, de la création de l'échantillon à la mise en œuvre dans Expert Advisor. Et contrairement au pontage via python, je peux utiliser l'optimisation pour tester différents modèles, leurs combinaisons et les interprétations des "probabilités" qu'ils produisent.

Bien que je ne puisse pas travailler exactement avec des signes catégoriels (fonction CatBoost) - je ne dispose pas d'un tel interprète de modèle, mais mes recherches préliminaires ont montré que l'utilisation de tels modèles donne plus de stabilité sur les intervalles de temps, c'est-à-dire que les modèles sont meilleurs, bien que l'entraînement soit 5 fois plus lent.