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

 
Evgeny Dyuka:

OUI ! C'est comme ça et rien d'autre.

Je ne suis pas d'accord, mais je n'imposerai rien...

 
mytarmailS:

Je ne suis pas d'accord, mais je ne vais pas imposer quoi que ce soit...

Vous pouvez passer 3 jours sur des instruments visuellement différents. Dans tous les cas, nous examinons d'abord les séries et en tirons des conclusions. Et il est toujours préférable de trouver une compréhension dans le test que de réparer une perte dans le réel).

 
Valeriy Yastremskiy:

Il est préférable de tester sans émotions)))) Raison de plus pour échanger)))))))

Franchement, le thème des prédicteurs n'est pas abordé. Ainsi que la logique des modèles, ceux qui doivent être appliqués quand, et quel est le critère de sélection.

Les recommandations sur la façon de préparer les données n'ont rien à voir avec le résultat. Bien que sans elle, nous ne pouvons pas commencer))))).

Les modèles logiques, les critères de sélection et la préparation des données sont des questions clés, personne ne peut vous donner une solution fonctionnelle. Si tu peux l'étaler, ça ne marche pas.

Peu importe que ce soit bon ou pas en termes humains, il faut juste admettre que ce sont les règles du sujet dans lequel nous sommes assis.

 
Valeriy Yastremskiy:

Il est préférable de tester sans émotions)))) Raison de plus pour échanger)))))))

Franchement, le thème des prédicteurs n'est pas abordé. Ainsi que la logique des modèles, ceux qui doivent être appliqués quand, et quel est le critère de sélection.

Les recommandations sur la façon de préparer les données n'ont rien à voir avec le résultat. Bien que sans elle, ça ne commence pas à))))).

Ne pas divulguer n'est pas ici, c'est à l'état actuel des choses malheureusement. Aucun travail ou conclusion, comment déterminer quel modèle est meilleur pour une série particulière, autre que de comparer les résultats).

 
Evgeny Dyuka:

La logique des modèles, les critères de sélection et la préparation des données sont des questions clés, et personne ne donnera une solution fonctionnelle. Si c'est exposé, ça ne marche pas.


Eh bien, ce n'est probablement pas tout à fait comme ça. C'est juste qu'il existe des méthodes mathématiques et qu'auparavant leur application n'était pas à la portée de tous, maintenant elle l'est. Mais il n'y a pas d'autre solution que de regarder, choisir et essayer. La plausibilité maximale est une méthode bien sûr, mais elle est subjective, et le problème est la subjectivité du choix des paramètres significatifs pour l'analyse.

Il est préférable de discuter des logiques, modèles et prédicteurs avec les caractéristiques et la logique de leur application.

Peu importe si ça marche ou pas. Il est prouvé qu'elle n'est pas à 100%. Et même un seul sera suffisant pour échouer)))). L'essentiel, ce sont les mains !!!!! Ou la queue)))))

 
mytarmailS:

s'il vous plaît...

200 ou 300 en valeur absolue.

Quelles sont les gammes qui vous intéressent ?


Ou peut-être étudier R un peu ? ;)


5 lignes de code et vous avez obtenu ce que vous vouliez.

Je pense que vous devez examiner l'équilibre des erreurs (+1 entrée correcte et -1 entrée incorrecte), ou au moins normaliser l'équilibre pour réduire les valeurs aberrantes.

R est une tâche très difficile pour moi, cela ne ressemble pas à MQL, et je suis loin d'être un programmeur. Et je ne suis même pas un programmeur, et je n'ai pas d'aide appropriée.


J'ai vu que vous vous intéressez à l'efficacité de l'échantillonnage. Je suis également intéressé par ce sujet, en particulier je veux comprendre s'il est possible de faire le fractionnement mieux que je ne le fais. Je peux faire un échantillon où les valeurs du prédicteur sans et avec désélection, ainsi vous pouvez vérifier l'efficacité du paquet, c'est-à-dire s'il peut apprendre mieux après un échantillonnage artificiel qu'après mon échantillonnage logique, alors le paquet est plus efficace que l'humain.

 
Aleksey Vyazmikin:

Je pense que vous devez examiner la balance des erreurs (+1 entrée correcte et -1 entrée incorrecte), ou au moins normaliser la balance afin de réduire les valeurs aberrantes.

R est une tâche très difficile pour moi, cela ne ressemble pas à MQL, et je suis loin d'être un programmeur. Et je ne suis même pas un programmeur, et je n'ai pas d'aide appropriée.


J'ai vu que vous vous intéressez à l'efficacité de l'échantillonnage. Je suis également intéressé par ce sujet, en particulier je veux comprendre s'il est possible de faire le fractionnement mieux que je ne le fais. Je peux faire un échantillon des valeurs du prédicteur sans et avec désélection, ainsi vous pouvez vérifier l'efficacité du paquet, c'est-à-dire que s'il peut apprendre mieux après un échantillonnage artificiel qu'après mon échantillonnage logique, alors le paquet est plus efficace qu'un humain.

Je ne suis pas non plus un programmeur, d'ailleurs, j'ai commencé par étudier le C#, je n'ai rien compris et j'ai abandonné, puis j'ai essayé R et tout s'est bien passé :)


La discrétisation ne vous fera certainement pas gagner en qualité ; d'ailleurs, elle a plutôt tendance à baisser, l'essentiel étant de ne pas trop gagner.

J'ai besoin qu'il convertisse des variables numériques avec une gamme de milliers de divisions en variables catégorielles, qui auront, disons, seulement 20 niveaux.

J'ai besoin qu'il génère des règles qui se répètent ......

Les forêts fonctionnent sur le principe du vote, la probabilité de sortie est la somme des votes de l'arbre, parfois l'algorithme montre une forte probabilité mais la prédiction est mauvaise et parfois il a une forte probabilité et une bonne prédiction, donc je vois que si je sais exactement quelles règles sont impliquées dans le vote à ce moment-là, je peux distinguer les règles honnêtes des règles bruyantes...

 
mytarmailS:

Je ne suis pas non plus un programmeur, en fait j'ai même commencé par étudier le C#, je n'ai rien compris et j'ai abandonné, puis j'ai essayé R et tout s'est bien passé :)


La discrétisation ne vous fera certainement pas gagner en qualité ; d'ailleurs, elle a plutôt tendance à baisser, l'essentiel étant de ne pas trop gagner.

J'ai besoin qu'il convertisse des variables numériques avec une gamme de milliers de divisions en variables catégorielles, qui auront, disons, seulement 20 niveaux.

J'ai besoin qu'il génère des règles qui se répètent ......

Les forêts fonctionnent sur le principe du vote, la probabilité de sortie est la somme des votes des arbres, parfois l'algorithme montre une forte probabilité mais la prédiction est mauvaise et parfois il a une forte probabilité et une bonne prédiction, si je sais exactement quelles règles sont impliquées dans le vote alors je peux distinguer les règles honnêtes et bruyantes...

Dans mon cas, la discrétisation améliore le résultat, et oui, mes prédicteurs sont plus proches des catégories, presque tous, avec des valeurs entre 2 et 20.

En fait, pour estimer un tel modèle, il faut vérifier la similitude des points d'activation des feuilles votantes, et éliminer/déclasser les feuilles qui sont constamment activées à des points similaires dans l'échantillon. De tels arbres bruyants conviennent bien à l'histoire, en raison de l'excès de mémoire.

Idéalement, chaque feuille devrait contenir la signification et la feuille voisine devrait la compléter, mais en décrivant quelque chose de différent. Par exemple, l'une a déterminé que nous avons une balle devant nous, une autre a déterminé sa couleur - donc a classé la balle appartenant à un type de jeu particulier. Simplifié.

Décomposez la forêt en feuilles avec les indices des arbres et voyez l'activation de chaque feuille sur l'échantillon, puis jetez les débris.
 
mytarmailS:

Vladimir, pourriez-vous me dire comment, en R, il est possible d'enseigner l'AMO non pas par exemple la classification ou la régression, mais quelque chose de plus vague ...

Je ne sais pas à quoi il doit ressem bler ni quelles valeurs il doit prendre ; ce n'est pas important pour moi, tout ce que je peux faire, c'est décrire une fonction directrice et laisser l'AMO maximiser un critère de direction dans la fonction directrice créée par lui-même.

Ou s'agit-il d'un simple problème d'optimisation qui n'a rien à voir avec l'AMO ?


1. tout modèle nécessite une optimisation des hyperparamètres. Avec les paramètres par défaut, le résultat ne sera pas le meilleur. Lors de l'optimisation, définissez le critère qui est important pour vous. Dans tous les exemples de la littérature, ces critères sont des métriques statistiques (Acc, F1, etc.). Dans notre cas, ces critères ne conduisent pas toujours au résultat escompté en matière de trading (aussi étrange que cela puisse paraître). Par exemple, j'utilise la récompense moyenne par barre sur une certaine période de temps (généralement 1 semaine) comme critère d'optimisation et indicateur de la performance du modèle. S'il n'est pas inférieur à la valeur minimale (par exemple 5 points de 4 signes), alors nous continuons à travailler. S'il a baissé, alors nous terminerons le modèle avec des données fraîches. L'optimisation est uniquement bayésienne, elle donne des variantes.

Le modèle doit être constamment amélioré au cours du processus, en tenant compte de l'évolution des conditions du marché. Il est illusoire de penser que l'on peut entraîner un modèle sur un large éventail de données passées et l'utiliser ensuite pendant longtemps sans le réentraîner.

2. Synthétiser une fonction, je ne sais pas de quel type - c'est un genre de chose à faire ou à ne pas faire. Il existe plusieurs logiciels qui mettent en œuvre la programmation génétique. Les noms exacts ne sont pas disponibles pour le moment. Mais c'est une section très délicate. Essayez .

3. Discrétisation. L'objectif principal de l'échantillonnage est de rendre le rapport prédicteur-cible aussi linéaire que possible. Cela entraîne bien sûr une perte d'informations. Mais dans certains cas, elle donne d'assez bons résultats.

Bonne chance

Генетическое программирование - Genetic programming - qwe.wiki
Генетическое программирование - Genetic programming - qwe.wiki
  • ru.qwe.wiki
В области искусственного интеллекта , генетическое программирование ( ГП ) представляет собой метод , посредством которого компьютерные программы кодируются в виде набора генов, которые затем модифицированных (эволюционировали) с использованием эволюционного алгоритма (часто генетический алгоритм , «GA») - это применение ( например...
 
La discrétisation est un non-sens, la régularisation peut être utilisée. Reconditionner le modèle au fur et à mesure des échanges est également absurde, cela ne fonctionnera pas.