Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 2453

 
Andrey Dik #:
seguro.
Sin embargo, nadie prohíbe el uso de métricas más complejas y/o de mayor complejidad. la idea básica es añadir a la función de aptitud una métrica para los pesos y las salidas NS.

No lo sé, pero en mi opinión funcionará si los datos de entrada están cualitativamente normalizados (uniformemente ) y sólo para un Perspectron multicapa regular

y si utilizas paquetes de NS estándar, tus nuevas métricas se estropearán por la caída


aunque tal vez se busque algo similar a la optimización por recocido, pero de nuevo, las técnicas están descritas, el propósito de crear una bicicleta no está claro, y más aún lo fiable que es y cómo evaluarlo, imho

 
Es mejor empezar a reinventar la rueda para modelos más sencillos a pequeña escala, por ejemplo, la regresión lineal. En primer lugar, hay que examinar detenidamente las opciones disponibles para añadir coeficientes a la función de pérdida (regresión ridge y lasso, criterio de Akaike, etc.)
 
Andrey Dik #:

en una prueba... la prueba es la misma que la derivada de una función, puede ser la misma curva, tangente en el mismo punto pero a dos funciones diferentes.


¿Has entendido lo que has dicho? Es un conjunto de palabras sin sentido.

 
Vladimir Perervenko #:

¡¡О !! Hola Vladimir, ¿qué es lo que no se oye desde hace mucho tiempo fue, muy perdido sus artículos, usted no escribe nada nuevo? Tal vez en otros recursos?

También hay una pregunta para ti, hay una "optimización gaussiana" (estoy seguro de que lo conoces), parece ser el método de búsqueda más eficaz para las funciones de fitness "pesadas", pero no puedo obtener buenos resultados con él, aquí está mi ejemplo, ¿puedes dar un comentario sobre mi pregunta, por qué funciona.

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 #:

¿Entiendes lo que dices? El conjunto de palabras no tiene sentido.

¿No sabe lo que es un "derivado"? Lo siento....

 
Andrey Dik #:¿no sabe lo que es un "derivado"? sympathy....

siente pena por ti, con tus poderes de deducción...

 
mytarmailS #:

¡¡О !! Hola Vladimir, ¿qué es lo que no se oye desde hace mucho tiempo, realmente me perdí sus artículos, usted no escribe nada nuevo? Tal vez en otros recursos?

También hay una pregunta a usted, hay una "optimización de gauss" (estoy seguro de que usted sabe), esto es como el método de búsqueda más efektivny para las funciones de fitness "pesado", pero no puedo obtener buenos resultados con él aquí está mi ejemplo, puede dar un comentario sobre mi pregunta, ¿por qué tan conseguir.

Saludos. Los artículos que utilizan R en el sitio son tabú. Por eso no habrá ninguna.

En cuanto a tu pregunta, ¿quieres que te respondan aquí o en Stoke? Hay muchos errores y uno de ellos es fundamental.

 
Vladimir Perervenko #:

1) Saludos. Los artículos que utilizan R en el sitio web son tabú. Por lo tanto, no habrá ninguna.

2) En cuanto a tu pregunta, ¿quieres una respuesta aquí o en Stoke? Hay muchos errores y uno de ellos es fundamental.

1) Una pena.

2) Donde más te convenga, es interesante conocer todos mis errores, principales y no tan...

P.D. Sé que he aplicado la aproximación continua al problema de optimización discreta.


=====

Tengo un paquete relativamente nuevo en conjunto con mt5, ¿no lo has probado?

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) Una pena.

2) Donde más te convenga, es interesante conocer todos mis errores, tanto los fundamentales como los no tanto...

P.D. Que he aplicado la aproximación continua al problema para la optimización discreta lo sé.


=====

Tengo un paquete relativamente nuevo en conjunto con mt5, ¿no lo has probado?

https://github.com/Kinzel/mt5R

1. No es relevante para el 5. Todo funciona con MetaTrader5(Py). Pero puede ser cierto para MT4.

2. Un error fundamental. Ambos paquetes (mco y Gpareto) están diseñados para la optimización multiobjetivo y multicriterio de funciones, es decir, para encontrar los parámetros óptimos de varias funciones que les den el mínimo resultado. Lo hacen por diferentes métodos.

Pero usted está tratando de utilizar una función para obtener un frente de Pareto. Este es su ejemplo reescrito (por cierto, no es la mejor elección de funciones que utilizan probabilidades)

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)

Dos funciones con diferentes parámetros sd y límites superior e inferior. La función objetivo es la siguiente.

#--------------------------------------------
 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

Y la optimización adecuada.

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

Parámetros óptimos para estas funciones c(4, 4). Visualización de ParetoFront + ParetoSet

plot(OPT1)

Pareto_front_Set_mco

Los puntos azules son el ParetoFront, es decir, el conjunto de valores de la función objetivo. Los puntos rojos son ParetoSet, es decir, los valores de los parámetros que dan el valor mínimo de la función. Estos valores se pueden encontrar

> 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

Tras el redondeo obtenemos el valor óptimo de c(4,4). La variante con Gpareto en el siguiente puesto

 
Vladimir Perervenko #:

1. Esto no es relevante para el 5. Todo funciona con la biblioteca estándar de MetaTrader5(Py). Pero para MT4 - tal vez.

Es sólo para Py, es un nuevo paquete, el propio nombre es mt5R.

Vladimir Perervenko # :

2. Un error fundamental. Ambos paquetes (mco y Gpareto) están diseñados para la aplicación de objetivos múltiples

Sí, entiendo que necesito una optimización multiobjetivo.

Vladimir Perervenko #:

Usted está tratando de obtener un frente de Pareto utilizando una función. Este es su ejemplo reescrito (por cierto, no es la mejor elección de funciones que utilizan probabilidades)

Mi función de aptitud simple sólo busca el índice del vector de un punto que es un mínimo en términos de algoritmo.

En el caso ideal, el algoritmo arrojará dos índices, estos dos índices serán índices de mínimos en el vector

Pensé que no hay diferencia en buscar dos mínimos en un vector o un mínimo en dos vectores

Mi simple aptitud no es un modelo de mi problema, sólo quería hacer una comparación simple y visual de los algoritmos para mí

Vladimir Perervenko #:

Parámetros óptimos para estas funciones con(4, 4). Visualización de ParetoFront + ParetoSet

No entiendo lo que hace tu función de fitness, conozco todo el código, pero no puedo entender lo esencial)