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

 
SanSanych Fomenko:

Cela n'a aucun sens de faire des tests sur la citation originale, car il est évident à l'œil nu que la série n'est pas stationnaire.

Et intéressant (pas pour moi - je l'utilise toujours) sont les graphiques pour les séries temporelles log(p/p-1).

Qu'est-ce qu'il y a là-dedans ? Et bien sûr, vous avez besoin d'une échelle sur l'axe des ordonnées.

Je n'ai pas utilisé d'échelle pour faire tenir deux graphiques dans un cadre, pour gagner de la place, mais les coordonnées Y étaient initialement différentes.

Le résultat est totalement différent de la dernière fois, voici les graphiques les plus intéressants, le reste est dans les archives, donc je n'ai pas besoin de coller 10 images ici. Mais le graphique d'entropie n'est pas du tout intéressant.

Script Atacha, dans R-Studio, vous pouvez faire défiler l'historique de tous les tracés.

Oups, encore une erreur de frappe dans le code, j'ai joint le fichier .txt.

Dossiers :
 
SanSanych Fomenko:


Nous avons discuté des principaux composants et vous avez vu l'inconvénient d'avoir un algorithme sans professeur.

Le voici avec le professeur :

Paquet spls.

Merci, d'après la description de cran, je n'aurais même pas deviné (Sparse Partial Least Squares (SPLS) Regression and Classification).

 
Dr. Trader:

Je n'ai pas utilisé l'échelle pour faire tenir deux graphiques dans un cadre, pour gagner de la place, mais leurs coordonnées Y étaient initialement différentes.

Le résultat est assez différent de la dernière fois, voici les graphiques les plus intéressants, le reste est dans les archives pour ne pas coller 10 images ici. Mais le graphique d'entropie n'est pas du tout intéressant.

Script Atacha, dans R-Studio, vous pouvez faire défiler l'historique de tous les tracés.

Oups, encore une erreur de frappe dans le code, j'ai joint le fichier .txt.

Superbes photos !

On peut voir sur l'archi-test qu'il y a des parcelles où les modèles d'arima fonctionnent. Mais il y a toujours un problème : nous sommes tous très intelligents en histoire et nous apprenons que nous pouvons utiliser l'arima seulement après l'avoir passé ! Et ainsi pour toutes nos théories : un fort recul.

 
Dr. Trader:

Pour poursuivre dans cette voie -https://www.mql5.com/ru/forum/86386/page643#comment_6472393


La fonction de tri des prédicteurs random.forest.importance() a montré des résultats tout à fait décents sur certains tests. Il est gênant qu'à son avis, tous les prédicteurs soient au moins quelque peu importants... mais si, par exemple, nous calculons l'importance moyenne et ne prenons que les prédicteurs dont l'importance est supérieure à la moyenne, nous obtenons de très bons résultats.

Quelle importance ? Gini ou Permutation (MDA)

P.s. Il existe d'autres méthodes pour comparer http://blog.datadive.net/selecting-good-features-part-iv-stability-selection-rfe-and-everything-side-by-side/.

Selecting good features – Part IV: stability selection, RFE and everything side by side
  • 2014.12.20
  • blog.datadive.net
In this post, I’ll look at two other methods: stability selection and recursive feature elimination (RFE), which can both considered wrapper methods. They both build on top of other (model based) selection methods such as regression or SVM, building models on different subsets of data and extracting the ranking from the aggregates. As a wrap-up...
 
Dr. Trader:

J'ai trouvé un autre paquet intéressant pour trier les prédicteurs. Il s'agit de FSelector. Il propose une douzaine de méthodes pour éliminer les prédicteurs, dont l'entropie.

J'ai pris un fichier avec des prédicteurs et une cible d'ici -https://www.mql5.com/ru/forum/86386/page6#comment_2534058


L'évaluation du prédicteur par chaque méthode est présentée dans le graphique à la fin.

Le bleu est bon, le rouge est mauvais (pour le corrplot, les résultats ont été mis à l'échelle [-1:1], pour une estimation précise, voir les résultats des appels à cfs(formule cible, trainTable), chi.squared(formule cible, trainTable), etc.)
Vous pouvez voir que X3, X4, X5, X19, X20 sont bien évalués par presque toutes les méthodes, vous pouvez commencer par eux, puis essayer d'en ajouter/supprimer d'autres.

Cependant, les modèles dans rattle ont échoué au test avec ces 5 prédicteurs sur Rat_DF2, là encore aucun miracle ne s'est produit. C'est-à-dire que même avec les prédicteurs restants, vous devez ajuster les paramètres du modèle, faire de la validation croisée, ajouter/supprimer des prédicteurs vous-même.

FSelector vient de WEKA, cela signifie qu'il utilise Java. Il consomme beaucoup de mémoire. Il est préférable d'utiliser FSelectorRcpp.

Bonne chance

 

Voici plus d'entropie(prix) et archTest(log(p/p-1)) en même temps. À l'œil, ils ne semblent pas être en corrélation, je ne vois pas de signaux. Ceux qui ont l'œil pour les indicateurs peuvent remarquer quelque chose.


 
Maxim Dmitrievsky:

de quelle Importance s'agit-il ? Gini ou Permutation (MDA)

Vous avez le choix entre deux types -
1=baisse moyenne de la précision (c'est probablement mda, il correspond aux premières lettres)
2=diminution moyenne de l'impureté du nœud

 
Dr Trader:

Vous avez le choix entre 2 types -
1=baisse moyenne de la précision (c'est probablement ce qu'est mda, correspond aux premières lettres)
2=diminution moyenne de l'impureté du nœud

Oui, c'est lui, merci, le deuxième MDI.

 
Dr. Trader:

Voici plus d'entropie(prix) et archTest(log(p/p-1)) en même temps. À l'œil, ils ne semblent pas être en corrélation, je ne vois pas de signaux. Qui a l'œil pour les indicateurs - peut remarquer quelque chose.


un indicateur de volatilité régulier s'avère )

Mais le test de l'arche ne montre rien

 

Il y a un intérêt indéniable à évaluer l'importance des prédicteurs, je vois.

Le système le plus varié se trouve dans le paquet CORElearn (à une époque, il était fortement recommandépar Vladimir Perervenko).

Il dispose de plusieurs fonctions d'évaluation.

Dans un premier temps, il s'agit d'une fonction :

ordEval(formula, data, file=NULL, rndFile=NULL,
variant=c("allNear","attrDist1","classDist1"), ...)

ordEval вычисляет результирующие вероятностные факторы, соответствующие эффекту увеличение/уменьшение значимости атрибута для класса.
Алгоритм оценивает строго зависимые упорядоченные атрибуты, в которых значения отдельных атрибутов зависят от других атрибутов в разной манере.

Dans un deuxième temps, la fonction

attrEval(formula, data, estimator, costMatrix = NULL, ...)

estimator       Имя метода оценки. Ниже 37 имен.

[1]     "ReliefFequalK"      "  ReliefFexpRank" "ReliefFbestK"  "Relief"
[5]     "InfGain"            "GainRatio"        "MDL"            "Gini"
[9]     "MyopicReliefF"      "Accuracy"         "ReliefFmerit"  "ReliefFdistance"
[13]    "ReliefFsqrDistance"    "DKM"           "ReliefFexpC"   "ReliefFavgC"
[17]    "ReliefFpe"          "ReliefFpa"        "ReliefFsmp"    "GainRatioCost"
[21]    "DKMcost"            "ReliefKukar"      "MDLsmp"        "ImpurityEuclid"
[25]    "ImpurityHellinger"     "UniformDKM"    "UniformGini"   "UniformInf"
[29]    "UniformAccuracy"       "EqualDKM"      "EqualGini"     "EqualInf"
[33]    "EqualHellinger"        "DistHellinger" "DistAUC"       "DistAngle"
[37]    "DistEuclid"                     


Дополнительный параметр costMatrix может включить неоднородную матрицу стоимости для классификаций, чувствительных к стоимости мер 
(ReliefFexpC, ReliefFavgC, ReliefFpe, ReliefFpa, ReliefFsmp, GainRatioCost, DKMcost, ReliefKukar и MDLsmp). 



Comme vous pouvez le constater, il y a beaucoup de place pour les exercices visant à déterminer l'importance des prédicteurs.