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

 
Andrey Dik #:
pour sûr.
toutefois, personne n'interdit l'utilisation de métriques plus complexes et/ou plus complexes. l'idée de base est d'ajouter à la fonction de fitness une métrique pour les poids et les sorties NS.

Je ne sais pas, mais à mon avis, cela fonctionnera si les données d'entrée sont qualitativement normalisées (uniformément) et seulement pour un Perspectron multicouche régulier.

et si vous utilisez des paquets NS prêts à l'emploi, vos nouvelles mesures seront gâchées par des pertes de données.


bien que peut-être vous cherchez quelque chose de similaire à l'optimisation par recuit, mais encore une fois, les techniques sont décrites, le but de la création d'un vélo n'est pas clair, et encore plus sa fiabilité et comment l'évaluer, imho

 
Il est préférable de commencer à réinventer la roue pour des modèles plus simples à petite échelle, par exemple la régression linéaire. Tout d'abord, examinez attentivement les options déjà disponibles pour ajouter des coefficients à la fonction de perte (régression ridge et lasso, critère d'Akaike, etc.)
 
Andrey Dik #:

sur un test... ? le test est le même que la dérivée d'une fonction, peut être la même courbe, tangente au même point mais à deux fonctions différentes.


Tu as compris ce que tu as dit ? C'est un ensemble de mots sans signification.

 
Vladimir Perervenko #:

О ! ! Bonjour Vladimir, ce qui est que vous n'avez pas entendu pendant une longue période a été, beaucoup manqué vos articles, ne pas écrire quelque chose de nouveau ? Peut-être sur d'autres ressources ?

Il y a aussi une question pour vous, il y a une "optimisation gauss" (je suis sûr que vous la connaissez), elle semble être la méthode de recherche la plus efficace pour les fonctions de fitness "lourdes", mais je n'arrive pas à obtenir de bons résultats avec elle, voici mon exemple, pouvez-vous donner un commentaire sur ma question, pourquoi cela fonctionne.

mco vs GPareto (Multi-objective optimization)
mco vs GPareto (Multi-objective optimization)
  • 2021.08.23
  • mr.T
  • stackoverflow.com
I am not an expert in this field, I just wanted to compare two search algorithms. ness function is simple, find two minima in vector I almost always get a bad solution from the GPareto algorithm. I understand that these are different algorithms, but Question is Is this normal? it should be?, or am I doing something wrong? I am...
 
Vladimir Perervenko #:

Tu comprends ce que tu dis ? L'ensemble des mots n'a aucun sens.

vous ne savez pas ce qu'est un "dérivé" ? désolé....

 
Andrey Dik #:ne sait pas ce qu'est un "dérivé" ? sympathie....

vous apitoyer sur vous-même, avec vos pouvoirs de déduction...

 
mytarmailS #:

О ! ! Bonjour Vladimir, qu'est-ce que vous n'avez pas entendu depuis longtemps, vos articles m'ont vraiment manqué, vous n'écrivez rien de nouveau ? Peut-être sur d'autres ressources ?

Il y a aussi une question pour vous, il y a une "optimisation de gauss" (je suis sûr que vous savez), c'est comme la méthode de recherche la plus efektivny pour les fonctions de fitness "lourds", mais je ne peux pas obtenir de bons résultats avec elle ici est mon exemple, pouvez-vous donner un commentaire sur ma question, pourquoi si obtenir.

Salutations. Les articles utilisant R sur le site sont tabous. C'est pourquoi il n'y en aura pas.

En ce qui concerne votre question, voulez-vous obtenir une réponse ici ou à Stoke ? Il y a là de nombreuses erreurs et l'une d'entre elles est fondamentale.

 
Vladimir Perervenko #:

1) Salutations. Les articles utilisant R sur le site web sont tabous. Par conséquent, il n'y en aura pas.

2) Concernant votre question, voulez-vous une réponse ici ou sur Stoke ? Il y a là de nombreuses erreurs et l'une d'entre elles est fondamentale.

1) Dommage.

2) Où cela vous convient le mieux, il est intéressant de connaître toutes mes erreurs, principales et moins importantes...

P.S. Je sais que j'ai appliqué une approximation continue au problème d'optimisation discret.


=====

J'ai un paquet relativement nouveau en conjonction avec mt5, vous ne l'avez pas essayé ?

https://github.com/Kinzel/mt5R

GitHub - Kinzel/mt5R: Easy integration between R and MT5 using socket connection, tailored to fit Machine Learning users and traders needs
GitHub - Kinzel/mt5R: Easy integration between R and MT5 using socket connection, tailored to fit Machine Learning users and traders needs
  • github.com
Easy integration between R and MT5 using socket connection, tailored to fit Machine Learning users and traders needs - GitHub - Kinzel/mt5R: Easy integration between R and MT5 using socket connecti...
 
mytarmailS #:

1) Dommage.

2) Où cela vous convient le mieux, il est intéressant de connaître toutes mes erreurs, fondamentales ou non...

P.S. Que j'ai appliqué l'approximation continue au problème pour l'optimisation discrète, je le sais.


=====

J'ai un paquet relativement nouveau en conjonction avec mt5, vous ne l'avez pas essayé ?

https://github.com/Kinzel/mt5R

1. Elle n'est pas pertinente pour le point 5. Tout fonctionne avec MetaTrader5(Py). Mais cela peut être vrai pour MT4.

2. Une erreur fondamentale. Les deux logiciels (mco et Gpareto) sont conçus pour l'optimisation multiobjectif et multicritère de fonctions, c'est-à-dire pour trouver les paramètres optimaux de plusieurs fonctions qui leur donnent le résultat minimum. Ils le font par des méthodes différentes.

Mais vous essayez d'utiliser une fonction pour obtenir un front de Pareto. Voici votre exemple réécrit (pas le meilleur choix de fonctions utilisant des probabilités, d'ailleurs)

set.seed(4023)
mins <- function(x, n = 1 L) cumsum(rnorm(n, 0, x))
mins1 <- function(x, n = 1 L)cumsum(rnorm(n,0, x*0.5))

up <-  rep(5,2)
dw <- rep(1,2)

Deux fonctions avec des paramètres différents sd et des limites supérieure et inférieure. La fonction objectif est la suivante.

#--------------------------------------------
 fit <- function(x){
    y1 <- mins(x[1])#  cumsum(rnorm(1, 0, x[1]))
    y2 <- mins1(x[2])  #    cumsum(rnorm(1,0, x[2]*0.5))
    #y <- cbind(y1, y2)
    return( c(y1, y2) )}

Fn <- fit(c(4,4))
> Fn
[1] 0.4244075 3.5528975

Et une optimisation correcte.

library(mco)

OPT1 <- nsga2(fn = fit,idim = 2,odim = 2,
                   lower.bounds = dw,
                   upper.bounds = up,
                   popsize = 100)
res_OPT1 <- c(floor(tail(OPT1$par,1)))
> res_OPT1
[1] 4 4

Paramètres optimaux pour ces fonctions c(4, 4). Visualisation de ParetoFront + ParetoSet

plot(OPT1)

Pareto_front_Set_mco

Les points bleus représentent le front de Pareto, c'est-à-dire l'ensemble des valeurs de la fonction objective. Les points rouges représentent le ParetoSet, c'est-à-dire les valeurs de paramètres donnant la valeur minimale de la fonction. Ces valeurs peuvent être trouvées

> paretoFront(OPT1)
            [,1]      [,2]
 [1,] -18.768766 -0.919960
 [2,] -16.563714 -4.075318
 [3,] -11.689811 -4.511709
 [4,]  -2.924055 -6.256807
 [5,]  -1.801073 -9.175708
 [6,]  -5.438790 -5.876476
 [7,]  -9.924184 -5.006235
 [8,]  -9.150563 -5.749592
 [9,]  -2.565944 -8.321299
[10,]  -5.653256 -5.808398

> paretoSet(OPT1)
          [,1]     [,2]
 [1,] 4.651688 4.830462
 [2,] 4.812924 4.374282
 [3,] 4.692132 4.589676
 [4,] 4.998786 4.715230
 [5,] 4.960933 4.696511
 [6,] 4.973955 4.245543
 [7,] 4.708673 4.946008
 [8,] 4.630083 4.242298
 [9,] 3.913589 4.553322
[10,] 4.655140 4.648080

Après avoir arrondi, nous obtenons la valeur optimale de c(4,4). La variante avec Gpareto dans le prochain post

 
Vladimir Perervenko #:

1. Ceci n'est pas pertinent pour 5. Tout fonctionne avec la bibliothèque standard de MetaTrader5(Py). Mais pour MT4 - peut-être.

C'est juste pour Py, c'est un nouveau paquet, le nom même est mt5R.

Vladimir Perervenko # :

2. Une erreur fondamentale. Les deux paquets (mco et Gpareto) sont conçus pour des applications multi-objectifs.

Oui, je comprends que j'ai besoin d'une optimisation multiobjectif.

Vladimir Perervenko #:

Vous essayez d'obtenir un front de Pareto en utilisant une seule fonction. Voici votre exemple réécrit (d'ailleurs pas le meilleur choix de fonctions utilisant des probabilités)

Ma fonction de fitness simple recherche simplement l'indice vectoriel d'un point qui est un minimum en termes d'algorithme.

Idéalement, l'algorithme produira deux index, ces deux index seront des index de minima dans le vecteur

Je pensais qu'il n'y avait aucune différence entre la recherche de deux minima dans un vecteur ou d'un minimum dans deux vecteurs.

Mon fitness simple n'est pas un modèle de mon problème, je voulais juste faire une comparaison simple et visuelle des algorithmes pour moi-même.

Vladimir Perervenko #:

Paramètres optimaux pour ces fonctions avec(4, 4). Visualisation de ParetoFront + ParetoSet

Je ne comprends pas ce que fait votre fonction de fitness, je connais tout le code, mais je n'arrive pas à en comprendre l'essentiel)