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

 
Mihail Marchukajtes:

Quoi ?

Bien qu'il y ait une part de vérité dans ces mots. ....

Vous devriez simplement lire ce que signifie la classification. Tout bon site sur l'apprentissage automatique le résume en quelques mots.
 
Alexey Burnakov:

Données de validation: https://drive.google.com/file/d/0B_Au3ANgcG7COGpJb24wbkxoaTg/view?usp=sharing

Il y a 5,5 ans pour 5 paires. Les dates viennent strictement après l'ensemble de formation. Dans la colonne de droite se trouve la tselevka : augmentation du prix en 181 minutes (ce qui a été codé par les catégories dans le train).

Essayez d'obtenir une MO sur la validation supérieure à 0,0001. J'ai obtenu environ 0,00013, ce qui correspond à l'écart moyen. C'est-à-dire, zéro.

En même temps, je ne négocie pas chaque observation, mais seulement là où le signal de la machine est fort (environ 5-10% des observations).

Merci,

Alexey

Et c'est une image utile pour réaliser un échantillon de test (validation croisée). Nous devons diviser l'ensemble en 5 parties égales et la queue de chaque 5ème partie est une donnée future.

 
Je l'ai téléchargé, tout est OK, mais je n'ai pas encore réussi à l'insérer dans MQL, et pour une raison quelconque, les résultats de l'optimisation dans le fichier sauvegardé sont différents de ceux affichés par le prédicteur lui-même. Le prédicteur lui-même a un niveau de généralisation des données de 90%, alors que le modèle extrait n'a que 47% - je ne comprends pas..... Eh bien, je n'ai pas encore été en mesure de l'exécuter dans MQL.....
 
Mihail Marchukajtes:
Je l'ai téléchargé, tout est ok, mais je n'ai pas réussi à le mettre dans MQL ... Je n'ai pas non plus pu l'exécuter dans MQL pourtant.....

Parce que le fichier java contient la fonction Math.signum(), alors que le fichier mql ne la contient pas.

Mihail Marchukajtes:
Je ne sais pas pourquoi le fichier enregistré présente des résultats d'optimisation différents de ceux affichés par le prédicteur. Le prédicteur lui-même a un niveau de généralisation des données de 90%, alors que le modèle de sortie n'a que 47%. Pas clair....

C'est une propriété des comités dans les algorithmes d'apprentissage automatique que les modèles combinés dans un comité donneront de meilleurs résultats que les modèles pris séparément. Sinon, à quoi servent les comités ? C'est pourquoi, dans jPrediction, les classificateurs binaires individuels ont une moins bonne généralisabilité que les classificateurs ternaires.

Ici, nous devons également tenir compte d'un paramètre tel que le biais. Il est souhaitable qu'il soit inférieur à 50%. Il est même préférable qu'elle soit nulle. Plus sa valeur est petite, plus le classifieur ternaire est adéquat.

 
Mihail Marchukajtes:
Je l'ai téléchargé, tout est ok, mais je n'ai pas encore réussi à l'insérer dans MQL. Eh bien, je n'ai pas pu l'exécuter dans MQL pourtant.....

Vous pouvez également le faire. Dans MetaEditor, appuyez sur Ctrl+H, puis faites un changement automatique :


Ajoutez ensuite la fonction signum() au code :

double signum(double x) {
   if (x == 0.0) return(0.0);
   if (x > 0.0) return(1.0);
   return(-1.0);
}
 
Yury Reshetov:

Vous pouvez également le faire. Dans MetaEditor, appuyez sur Ctrl+H, puis faites un changement automatique :


Ajoutez ensuite la fonction signum() au code :

Eh bien, je vais essayer bientôt, car j'en ai marre de la construction à la maison. Je fais du commerce à partir de rien... Je ne trouve pas le temps de l'optimiser, dès que je l'aurai fait, je le signalerai sur once.....
 
Yury Reshetov:

Vous pouvez également le faire. Dans MetaEditor, appuyez sur Ctrl+H, puis faites un changement automatique :


Ajoutez ensuite la fonction signum() au code :

Je ne comprends pas ce qu'est la variable 1d et d'où vient-elle ?
 
Mihail Marchukajtes:
Je ne comprends pas, il jure sur la variable 1d, quel genre de variable est-ce et d'où vient-elle ?
J'ai compris, je l'ai changé en d1 et tout a fonctionné. Je ne suis pas entré dans le code, mais j'ai cru comprendre que c'est un comité et que ça fonctionne sur 5+++. Merci, Yuri, pour votre travail. "Maintenant nous ferons deux fois plus de foin pour notre vache" (de Matroskin.....)
 
Maintenant un peu sur les comités, en 2007 j'ai entendu ce terme pour la première fois, et nous avons construit un comité de trois réseaux, Donc le comité de voot élimine un signal et égalise la balance seulement si 2 des trois modèles fonctionnent correctement, si le comité de 2 sur 3 donne un faux signal, alors le comité échoue. donc quelque chose comme ceci ....
 
Yury Reshetov:

Vous pouvez également le faire. Dans MetaEditor, appuyez sur Ctrl+H, puis faites un changement automatique :


Ajoutez ensuite la fonction signum() au code :

Yuri, j'ai décidé de tenter le saint des saints et de fabriquer un graal, mais j'ai reçu une inscription selon laquelle les valeurs prédites ne peuvent dépasser 10. S'agit-il d'une restriction délibérée ou d'une limite de l'algorithme ? ? ??? Parce que plus de 10 est très pertinent donc....
Raison: