L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 141
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Je ne sais pas comment le faire de manière standard, mais comme ceci avec la bibliothèque :
Merci beaucoup ! !! Vous connaissez très bien les packages, on m'a proposé de réécrire la classe format() sur un forum spécial pour la même question, et j'ai montré un exemple avec ~ 300 lignes de code, j'ai déjà commencé à penser à des béquilles de toutes sortes, et voilà une excellente solution... merci !
Une autre question : j'ai trois cadres de données avec des longueurs légèrement différentes, car les observations ont été faites à des moments différents,
Comment puis-je les synchroniser pour ne garder que les observations qui se trouvent dans les trois images et écarter celles qui ne se produisent que dans des images distinctes ?
Une autre question : j'ai trois cadres de données avec des longueurs légèrement différentes, car les observations ont été faites à des moments différents,
comment les synchroniser dans le temps pour ne garder que les observations qui se trouvent dans les trois images et écarter celles qui ne se produisent que dans des images distinctes ?
de front, ce serait comme ça :
a <- data.frame(c1 = c('a','b','c','d','e','f'), c2 = c(1,2,3,4,5,6))
b <- data.frame(c1 = c('a','b','c','d','e'), c2 = c(1,2,3,4,5))
c <- data.frame(c1 = c('b','c','d','e','f'), c2 = c(2,3,4,5,6))
a$concat <- do.call(paste0, a[1:2])
b$concat <- do.call(paste0, b[1:2])
c$concat <- do.call(paste0, c[1:2])
concat_vec <- append(unique(a$concat)
, c(unique(b$concat)
, unique(c$concat)))
concat_vec_tbl <- as.data.frame(table(concat_vec))
concat_vec_tbl <- concat_vec_tbl[concat_vec_tbl$Freq == 3, ]
a <- a[a$concat %in% concat_vec_tbl$concat_vec, ]
b <- b[b$concat %in% concat_vec_tbl$concat_vec, ]
c <- c[c$concat %in% concat_vec_tbl$concat_vec, ]
https://www.mql5.com/en/blogs/post/650079
De face, ce sera comme ça :
https://www.mql5.com/en/blogs/post/650079
Alexey !
Quelle personne intéressante vous êtes !
J'ai écrit ici une centaine de fois que j'utilise la rf pour améliorer les performances des TS réels sur les indicateurs, mais vous n'avez pas répondu.
De plus, j'ai suggéré à plusieurs reprises que :
1. Prenez le vrai TS.
2. Nous distinguons les problèmes de TS et commençons à les résoudre en utilisant les outils R.
Dans le cas que j'ai mentionné, j'ai utilisé rf pour résoudre le problème de décalage de l'indicateur, qui donne habituellement des informations sur la barre 1 (-1), et rf donne des informations une barre en avant. Pour H4, c'est 8 heures ! En conséquence, j'ai réussi à réduire considérablement le drawdown.
https://www.mql5.com/en/blogs/post/650079
L'idée de cet article est mise en œuvre de manière légèrement différente dans l'article https://www.mql5.com/ru/articles/1628.
Je me demande si tout le monde lit les articles sur l'apprentissage automatique sur ce site avec un an de retard... (question rhétorique).
Bonne chance
Alexei !
Quelle personne intéressante vous êtes !
J'ai écrit ici une centaine de fois que j'utilise la rf pour améliorer les performances de la vraie TS sur les indicateurs, et vous n'avez pas répondu.
De plus, j'ai exprimé à plusieurs reprises l'idée que :
1. Prenez le vrai TS.
2. Nous distinguons les problèmes de TS et commençons à les résoudre en utilisant les outils R.
Dans le cas que j'ai mentionné, j'ai utilisé rf pour résoudre le problème de décalage de l'indicateur, qui donne habituellement des informations sur la barre 1 (-1), et rf donne des informations une barre en avant. Pour H4, c'est 8 heures ! En conséquence, j'ai réussi à réduire considérablement le drawdown.
Je comprends. C'est juste que sans détails précis, il est difficile d'évaluer la profondeur de la pensée. Et il y avait des photos dans cet article. Perervenko ressemble aussi à ça. Et j'ai lu son article aussi.
Eh bien, voici l'infraction...
Mon but est d'orienter la conversation dans une direction pratique, et non d'offenser qui que ce soit de quelque manière que ce soit...
Pour l'instant, nous avons des morceaux épars.
Votre approche académique.... Pour moi, la valeur de vos calculs est incontestable, mais ..... J'ai exprimé mes doutes ci-dessus.
Je suis de près le travailde Vladimir Perervenko, je n'ai jamais vu de preuve que les modèles ne sont pas réentraînés. Le dernier lien. L'importance des variables est déterminée par un algorithme d'arbre. Mais les arbres, en raison de la commodité des valeurs de bruit disponibles, ont tendance à utiliser plus souvent ces prédicteurs de bruit et, par conséquent, le bruit apparaît dans l'estimation de l'importance...
Nous devons donc commencer par des algorithmes pour éliminer les prédicteurs de bruit. Sans cela, toutes les autres étapes ne sont d'aucune utilité pratique, car toutes les estimations du modèle ne peuvent être extrapolées dans le futur.
Ensuite, la formation d'un modèle dans des fenêtres, et la largeur des fenêtres doit être justifiée d'une manière ou d'une autre. Puis utilisation du modèle entraîné dans une présélection de prédicteurs pour la fenêtre de travail.....
Quelque chose comme ça.