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

 
elibrarius:
31 catégories... non c'est plutôt une discrétisation avec 31 étapes. L'un des articles de Vladimir utilise cette méthode et le résultat est tout aussi bon.

Seulement si les données originales elles-mêmes sont bonnes.....

 
Mihail Marchukajtes:

Tout d'abord, enregistrez le moment où la décision est prise. Que ce soit un événement. Puis à cet instant où l'événement s'est produit, enregistrez les valeurs des indicateurs.

Pour être honnête, je ne comprends pas bien votre table. Qu'est-ce qu'il y a dedans ?

Quel est donc l'intérêt d'enregistrer la valeur exacte, et non un modèle - par exemple le célèbre RSI, comme je l'ai, si vous ouvrez au-dessus du niveau 70, alors 1, en dessous du niveau 30, alors -1, mais pas les deux, alors 0.

Dans le tableau, il y a un ensemble de règles avec un score élevé, qui ont été formées sur la base des résultats de l'arbre. J'utilise Deductor Studio - pour les débutants, ce que je pense être, il est assez bon, mais il est difficile d'obtenir des résultats d'analyse à partir de la version gratuite, donc j'ai filtré les règles et choisi les meilleures et les ai tapées manuellement dans le code.

Aujourd'hui, j'ai automatisé le processus et j'ai remarqué le phénomène suivant : une règle peut être incomplète si sa partie après le filtrage d'un échantillon ne donne qu'une seule valeur de prédicteur (par exemple, si le prédicteur a 2 positions, et après le filtrage (en appliquant certaines règles) nous obtenons un ensemble bizarre, un exemple sur deux règles :

avec des règles définies - vert, toute valeur - jaune, indéfini - rouge.

L'incertitude apparaît simplement lorsqu'après le filtrage par les règles, nous n'avons pas de valeurs alternatives pour les variables, mais dans d'autres conditions, elles peuvent apparaître et la règle sera exécutée, non pas parce qu'elle est prouvée correcte, mais parce qu'elle n'a pas rencontré la situation auparavant et qu'elle n'a pas pu l'évaluer et qu'elle la considérera comme similaire alors que cela pourrait être tout le contraire.

 
Aleksey Vyazmikin:

Quel est donc l'intérêt de conserver la valeur exacte et non un modèle - par exemple le RSI bien connu, comme le mien, si vous ouvrez au-dessus de 70, alors 1, en dessous de 30, alors -1, si ce n'est pas les deux, alors 0.

Dans le tableau, il y a un ensemble de règles avec un score élevé, qui ont été formées sur la base des résultats de l'arbre. J'utilise Deductor Studio - pour les débutants, ce que je pense être, il est assez bon, mais il est difficile d'obtenir des résultats d'analyse à partir de la version gratuite, donc j'ai filtré les règles et choisi les meilleures et les ai tapées manuellement dans le code.

Aujourd'hui, j'ai automatisé le processus et j'ai remarqué le phénomène suivant : une règle peut être incomplète si sa partie après le filtrage d'un échantillon ne donne qu'une seule valeur de prédicteur (par exemple, si le prédicteur a 2 positions, et après le filtrage (en appliquant certaines règles) nous obtenons un ensemble bizarre, un exemple sur deux règles :

avec des règles définies - vert, toute valeur - jaune, indéfini - rouge.

L'ambiguïté pue lorsqu'après avoir filtré par des règles, nous n'avons pas de valeurs alternatives pour les variables, mais dans d'autres conditions, elles peuvent apparaître et la règle sera exécutée non pas parce qu'elle est prouvée correcte, mais parce qu'elle n'a pas rencontré cette situation auparavant et n'a pas pu l'évaluer et la considérera comme similaire, bien que cela puisse être tout à fait le contraire.

Pour répondre à votre question principale. Lorsque le RSI est supérieur à 70, vous n'avez qu'une seule valeur de 1 (un), mais il est très important pour les NS de savoir à quel point le RSI est supérieur à 70. S'il s'agit de 70,05, c'est une chose et s'il s'agit de 73, c'en est une autre, sans parler de 90, 80 ou tout autre chiffre compris entre 70 et 100. C'est dans ces broutilles que le modèle tente de s'accrocher à l'IMPORTANT... ! Bref, c'est comme ça. Et en assignant strictement des unités, vous privez le réseau d'informations importantes pour lui, IMHO, bien sûr ! !!

 

Vous savez, tout le monde ici est loin d'être stupide, je dirais même très intelligent et logique dans son raisonnement. La programmation est un engagement envers la logique. Mais voilà le problème : .... Lorsque vous commencez à établir des liens TS, vous vous fiez uniquement à vos conclusions logiques et à toutes les conclusions que vous tirez de votre expérience et à la phrase "Eh bien, c'est logique", que vous devriez faire ceci et cela. Mais les tests montrent l'invalidité de vos conclusions et vous ne comprenez pas pourquoi cela ne fonctionne pas. Après tout, tu as fait tout ce qu'il fallait logiquement. Mais faire quelque chose logiquement ne signifie pas que c'est bien. Beaucoup de gens sont otages de leur propre logique, qui est naturellement correcte, mais pourquoi elle ne fonctionne pas....... Et commettre la même erreur sans même savoir que vous le faites encore et encore sur la base de vos conclusions logiques.

A titre d'exemple, j'ai déjà donné : Logiquement, plus le modèle est gros, plus il est intelligent...

Exemple : les modèles moyens fonctionnent mieux que les grands ou les petits. Ceci est un exemple...

Vous avez calculé que l'attribution de 1 si le RSI est supérieur à 70 est juste, mais pour un réseau, ce n'est pas le cas. Et vous êtes comme, qu'en est-il de la grille j'ai rendu votre travail plus facile, comment pouvez-vous ne pas comprendre ? Mais malheureusement, elle ne pourra pas vous répondre que ce n'est pas suffisant. Qu'avec votre unité vous avez stupidement tué toutes les informations importantes.... C'est aussi un exemple...

Et en général, le domaine de la MO est alogique. Ici, les conclusions logiques ne fonctionnent pas bien. Les conclusions logiques sont bien accueillies ici !!!!.

 
Mihail Marchukajtes:

Pour répondre à votre question principale. Lorsque le PSI est supérieur à 70, vous n'avez qu'une seule valeur de 1 (un), mais il est très important pour les NS de savoir de combien le PSI est supérieur à 70. S'il s'agit de 70,05, c'est une chose et s'il s'agit de 73, c'en est une autre, sans parler de 90, 80 ou tout autre chiffre compris entre 70 et 100. C'est dans ces broutilles que le modèle tente de s'accrocher à l'IMPORTANT... ! Bref, c'est comme ça. Et en assignant strictement des unités, vous privez le réseau d'informations importantes pour lui, IMHO, naturellement ! !!

Vous avez peut-être raison, mais je procède à partir de telles considérations, si le système sans NS fonctionne selon de telles règles avec succès, alors qu'est-ce qui empêche de comprendre et de trouver ces règles de NS ? Hier, j'ai posté des captures d'écran pour comparaison. Jusqu'à présent, ma tâche est telle que le résultat de l'apprentissage automatique serait meilleur que l'optimisation et la logique assez difficile en TS.

 
Aleksey Vyazmikin:

Vous avez peut-être raison, mais mon raisonnement est le suivant : si un système sans NS fonctionne avec succès selon de telles règles, qu'est-ce qui vous empêche de comprendre et de trouver ces règles NS ? Hier, j'ai posté des captures d'écran pour comparaison. Jusqu'à présent, mon objectif est que le résultat de l'apprentissage automatique soit meilleur que l'optimisation et la prescription d'une logique assez stricte en TS.

Donnez-moi le lien où vous avez posté les captures d'écran... Je vais jeter un coup d'œil à ..... Et à propos des règles, vous les lui donnez mal. Vous pensez que vous la nourrissez correctement, mais elle est affamée par manque d'informations. Vous vous comprenez mal. Vous ne pouvez pas lui expliquer exactement ce que vous voulez, alors elle vous donne le résultat tel qu'elle le comprend. Tu veux que je t'aide avec ton TS. Uniquement dans le cadre des lignes directrices ....

D'abord, dites-moi quel TS de base vous utilisez ?

 
Mihail Marchukajtes:

Envoyez-moi un lien vers l'endroit où vous avez posté les captures d'écran... laisse-moi voir.... Et pour ce qui est des règles, vous les lui donnez mal. Vous pensez que vous la nourrissez correctement, mais elle est en fait affamée par manque d'informations. Vous vous comprenez donc mal. Vous ne pouvez pas lui expliquer exactement ce que vous voulez, alors elle vous donne le résultat tel qu'elle le comprend. Tu veux que je t'aide avec ton TS. Uniquement dans le cadre des lignes directrices ....

Dites-moi d'abord quel TS de base vous utilisez.

Voici le lienhttps://www.mql5.com/ru/forum/86386/page889#comment_7378517

A propos de la faim, je suis en train de penser que je suralimente les données, puisqu'en fait elles ne vont pas toutes dans les règles...

L'idée intéressante que je ne peux pas expliquer ce que je veux, c'est-à-dire qu'il s'agit des mauvaises cibles ?

Et TC, donc la base est simple - des tortues sur des minutes. Le reste est réalisé par des cascades de filtres basés sur mes observations du marché.

 
Aleksey Vyazmikin:

Voici le lienhttps://www.mql5.com/ru/forum/86386/page889#comment_7378517

A propos de la faim, je suis en train de penser que je suralimente les données, puisqu'en fait elles ne vont pas toutes dans les règles...

L'idée intéressante que je ne peux pas expliquer ce que je veux, c'est-à-dire qu'il s'agit des mauvaises cibles ?

Et TC, donc la base est simple - des tortues sur des minutes. Et le reste est fait par des cascades de filtres construits à partir de mes observations du marché.

Combien de signaux par jour la tortue sur les minutes donne-t-elle ????

Le TS de base n'est nécessaire qu'au moment de la prise de décision. Il y a un signal sur le TS de base. Tout commence par l'analyse du marché. Captures d'écran des signaux du TS de base.

 
Mihail Marchukajtes:

Combien de signaux par jour la tortue donne-t-elle sur les minutes ????.

L'AT de base n'est nécessaire qu'au moment de la prise de décision. Un signal est formé par les TS de base. On commence à analyser le marché. Capture d'écran des signaux du TS de base.

Mon Expert Advisor s'améliore tout le temps donc je n'ai pas de statistiques - j'ai 8 signaux le 8 mai et 5 signaux perdants, mais j'ai clôturé la journée avec un bénéfice. J'ai remarqué par moi-même que le soir avant les vacances est mieux de ne pas trader - je vais vérifier sur l'historique - dans la soirée il y a eu 1 entrée stupide, qui aurait pu être évitée, mais qui a mordu 20% du revenu quotidien.

Eh bien, mon système de trading n'est pas structuré de manière standard, c'est-à-dire que la décision d'entrer sur le marché est générée en permanence, en fonction de la position du prix dans le canal de Doncian, puis les filtres commencent à travailler et finalement ils fournissent la décision d'ouvrir une position ou non. En général, dans l'idéal, je dois trouver un facteur externe qui puisse les activer/désactiver à différents moments du marché. Je n'ai commencé à travailler sur NS que cette semaine, alors que je crée un environnement pour mon travail et je n'ai pas beaucoup travaillé sur la sélection des prédicteurs, mais j'ai déjà trouvé quelques modèles intéressants, que j'utilise de toute façon dans mon EA.

 

C'est à peu près tout ce que l'on doit savoir sur les conditions d'entrée

      double HighD=Donchianf(0,0);
      double LowD=Donchianf(1,0);
      double PriceProc=0.0;

      if(HighD-LowD>0) PriceProc=((Open(0)-LowD)/(HighD-LowD))*100.0;
      else
        {
         SellNow=false;
         BuyNow=false;
        }

      priceBuy   =Open(0);
      priceSell  =Open(0);


      if(CountMarketOrder_OS==0 && CountMarketOrder_OB==0 && HighD>0 && LowD>0)
        {
         if(PriceProc<=ProcOpenBuy && PriceProc>50.0)BuyNow=true;
         if(PriceProc>=ProcOpenSell && PriceProc<50.0)SellNow=true;
        }
Raison: