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

 

L'histoire de l'erreur d'ajustement du modèle zéro postée ici est de nature purement alchimique.

1. Erreur d'ajustement du modèle = 0. Eh bien, ça ne marche pas comme ça, c'est impossible. Comment est-ce possible ? 1% peut ou ne peut pas ? Et 5% peuvent ou ne peuvent pas non plus ? Et combien de % faut-il pour qu'elle "puisse" ?

2. Deux concepts : redessiner et regarder vers l'avenir. Qu'est-ce que c'est ? Une preuve étonnante a été utilisée : on a trouvé des indicateurs suspects, on les a jetés et on a obtenu une erreur d'ajustement = 50%. C'est tout. Prouvé. L'avenir. L'objet de la preuve, ce qu'est la preuve elle-même .... Aucun commentaire.

Ou peut-être la question est-elle beaucoup plus profonde et l'alchimie n'a pas permis d'entrer dans le problème ?

J'ai appelé le problème ci-dessus : les méthodes d'analyse et les méthodes de prédiction sont différentes, ont leurs propres spécificités et on ne peut pas simplement transférer les méthodes d'analyse aux prédictions - on doit prouver l'admissibilité de l'application des méthodes d'analyse aux prédictions.

Dans notre exemple.

Nous prenons quelques indicateurs (aucun d'entre eux n'a vraiment d'importance) et calculons leurs valeurs pour l'ensemble de l'échantillon sur lequel nous allons enseigner et tester le modèle. Il n'y a pas de problème pour l'analyse du passé. Mais pour la prédiction, une telle approche doit être prouvée, car nous sommes intéressés par la prochaine barre après celle que nous avons. Cela signifie que nous devons prendre une fenêtre et calculer tous les indicateurs sur celle-ci, puis ajuster le modèle. Lorsqu'une nouvelle barre arrive, nous devons répéter cette procédure à nouveau. Que l'histoire ait changé ou non n'a aucun intérêt. Le modèle doit être construit sur les valeurs de la dernière barre d'indicateur. Lorsque nous calculons l'indicateur pour l'ensemble de l'échantillonnage, il est probable que les valeurs de cet indicateur ne contiennent PAS les valeurs de la dernière barre pendant le mouvement de la fenêtre.

Par conséquent.

Si nous voulons enseigner les modèles SUR LES TEMPS, nous devons utiliser les valeurs de l'indicateur qui sont dérivées des valeurs de la dernière barre lorsque la fenêtre se déplace le long de l'échantillon d'entraînement.

PS.

Si vous utilisez cette méthode pour un zigzag, vous obtiendrez, selon l'algorithme du zigzag, des zéros, des taches ou des lignes qui n'ont rien à voir avec le zigzag. Et pas question de redessiner et de regarder en avant - vous ne pouvez pas l'utiliser, c'est tout.

 
Vladimir Perervenko:

Il existe un nouveau paquet très prometteur, RKEEL, qui constitue une passerelle vers KEEL.

Bonne chance

Pouvez-vous au moins dire en deux mots quelle est la promesse du paquet ? ou trois)

SanSanych Fomenko:

L'histoire postée ici avec zéro erreur d'ajustement du modèle est de nature purement alchimique...................

Je n'ai pas compris un mot de tout cela :)

 
mytarmailS:

Pouvez-vous au moins dire en deux mots ce que promet le paquet ? Ou en trois mots ?)

===========================================================

Je m'explique :

1. Le produit logiciel "KEEL" permet de créer, de tester et d'étudier différentes classes de modèles pour résoudre les problèmes de régression, de regroupement et de classification sans connaissance approfondie du langage R. Il s'agit d'un programme similaire à rattl , mais plus avancé.

Le programme est construit avec des "cubes"/modules graphiques prêts à l'emploi, rapides et clairs, similaires à KNIME, mais plus simples. Après le prototypage, le programme terminé est simplement transféré vers R avec le paquet "RKEEL".

Cette représentation graphique du programme, composée de modules, accélère et facilite grandement sa création, notamment pour les débutants en programmation, qui sont pour la plupart des traders. Il existe des programmes analogues pour R - "RedR" et "RAnaliticFlow", mais ils sont mal supportés.

2. Un grand nombre de modules de prétraitement et de transformation des variables est proposé, ce qui est une bonne chose.

3. De nombreux algorithmes originaux sont proposés qui ne sont pas dans R.

La diversité des méthodes d'extraction des connaissances à partir des données permet de résoudre les tâches commerciales de manière plus souple.

Bonne chance

 
Vladimir Perervenko:
Merci.
 
mytarmailS:

Qu'est-ce que tu as dit ? Je ne comprends pas :)

Vous devez taper les dernières valeurs

for(i in ...)
{

    X29_1 <- TrendDetectionSMA(D[i:i+windows,])

    X29[i+windows] <- X29_1[windows]
}

En conséquence, X29 sera composé de valeurs LAST, les valeurs pénultièmes ne seront pas corrigées pour les indicateurs de redécoupage.

 
SanSanych Fomenko:

Si nous voulons apprendre des modèles ON TIMES, nous devons utiliser les valeurs des indicateurs obtenues à partir de la dernière barre tout en déplaçant la fenêtre le long de l'échantillon d'entraînement.

Je l'ai fait moi-même, regardez le code que j'ai joint il y a quelques pages et sa description.

Le problème est que ces 6 indicateurs donnent des résultats NA pour la dernière barre. Puis, lors de l'analyse des barres suivantes, on change cette valeur NA en quelque chose d'autre, le résultat des barres précédentes est modifié en fonction des nouvelles données (dans le langage courant - "re-flipping").
Par conséquent, nous apprenons le modèle en utilisant les mêmes résultats, mais lorsque nous voulons recevoir une prévision avec de nouvelles données - ces indicateurs nous diront NA au lieu des valeurs nécessaires, ce qui est inacceptable.

Si vous voulez analyser ces indicateurs, voici le fichier rdata, avec les valeurs des indicateurs obtenues dans la fenêtre glissante. Les valeurs de ces six indicateurs de redécoupage sont prises non pas pour la dernière barre mais pour l'avant-dernière afin d'avoir quelque chose au lieu de NA.

Dossiers :
 
Dr. Trader:

Je l'ai fait moi-même, regardez le code que j'ai joint il y a quelques pages et sa description.

Le problème est que ces 6 indicateurs donnent un résultat NA sur la dernière barre. Puis, lors de l'analyse des barres suivantes, vous changez cette valeur NA en quelque chose d'autre, ce qui a pour effet de modifier le résultat des barres précédentes en fonction des nouvelles données (dans le langage courant - "re-flipping").
Le résultat sera que nous apprenons le modèle en utilisant les mêmes résultats redessinés et quand nous voulons obtenir une prévision avec de nouvelles données, ces indicateurs nous diront NA au lieu des valeurs nécessaires, ce qui est inacceptable.

Si vous voulez analyser ces indicateurs, voici le fichier rdata, avec les valeurs des indicateurs obtenues dans la fenêtre glissante. Les valeurs de ces six indicateurs ont été prises non pas pour la dernière barre mais pour l'avant-dernière, de sorte qu'il y ait quelque chose au lieu de NA.

Donc, nous ne comprenons pas : nous n'avons pas besoin d'en parler. Rappelez-vous la dernière mesure. Si c'est NA, alors il n'y a jamais de valeur. D'ailleurs, c'est exactement la valeur de ZZ sur la dernière barre.
 
Un examen de l'apprentissage profond dans R est tombé sur
 
SanSanych Fomenko:
J'ai trouvé un article sur l'apprentissage profond en R

Un article superficiel avec de nombreuses inexactitudes. De toute évidence, il a été écrit par des étudiants comme un document de fin d'études.

Je voulais écrire un commentaire, mais je n'ai pas trouvé où le faire.

Il est bon comme revue populaire, mais pas comme guide.

Bonne chance

 

pourquoi tout le monde fait une telle fixation sur les modèles ? pourquoi personne ne parle-t-il des signes ? pourquoi personne ne parle-t-il de la non-stationnarité ? Pourquoi personne n'essaie-t-il de résoudre ces problèmes ? Pourquoi personne ne réfléchit-il à ce qui détermine les prix ?

Si vous utilisez un stochastique, peu importe le modèle utilisé, qu'il s'agisse d'un KNN classique ou du réseau profond le plus sophistiqué,la précision sera de 51 à 53 %, quelle que soit la profondeur du réseau. À quoi servent ces modèles si les données d'entrée ne sont pas fiables ? Non, mais 95% de l'attention va aux modèles, pour moi personnellement les modèles sont la dernière étape du système, et c'est seulement 2% du travail.

En attendant, je vais partager mes résultats...

Mon algorithme extrême ....

Jusqu'à présent, pas de MO au sens classique du terme, mais la reconnaissance est présente.

Le système de décision est semi-automatique.

à la première étape, l'algorithme reconnaît quelques formations et me les donne

Malgré le fait qu'il évalue très facilement et sans ambiguïté, je ne peux pas encore transférer la deuxième étape en mode de reconnaissance automatique, ce qui signifie que le système est encore semi-manuel.

Le système est intraday, les transactions se font sur une échelle de temps de 5M, il y a environ 20 transactions par jour en moyenne, en 15 jours de transactions, il n'y a eu que deux jours avec une petite perte.

Dans le graphique de rentabilité rouge, il s'agit du même graphique noir, mais avec la commission prise en compte.

й

a également transféré les transactions vers un logiciel d'analyse technique pour une compréhension plus souple et plus approfondie.

р

Et j'en rajouterai sur la non-stationnarité, regardez ce pic sauvage de volatilité, que j'ai marqué d'une flèche il y a quelques jours, je vous dis avec confiance que tous les systèmes qui ont tradé sur des paramètres fixes, se sont tous fait écraser, en fait toute cette volatilité est leur stop loss, mais je m'éloigne de ce sujet .....

Donc, ce que je veux dire, c'est que pour réagir plus ou moins adéquatement aux mouvements du marché, le système de décision devrait soit être constamment corrigé dans ses paramètres en fonction du marché(ce que j'ai dit une fois à propos de Fourier), soit le système devrait être généralement non-paramétrique, sinon je ne sais pas comment ((

Et aucune grille ne sera utile, quelle que soit sa profondeur, si vous utilisez les stochastiques.

л

Bonne chance

Raison: