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

 
Evgeni Gavrilovi El gradient bousting muestra excelentes resultados en la muestra, pero a partir de ahí el error aumenta inmediatamente.

¿por qué? porque la fórmula es muy sencilla. ¿qué podemos decir de la compleja relación en el mercado de divisas?)

¿cómo hacer que este algoritmo muestre buenos resultados en OOS?

Hay que normalizar todos los datos en un rango, o tomar los OOS del mismo rango de valores

Fuera de él se predecirá el valor extremo del rango, así es como funciona parcialmente forest and bousting y OOS.
 
Siempre me he preguntado por qué se ajustan los pesos en el comprobador de estrategias. Es ajustar...

¿No sería la mejor solución optimizar el número de neuronas, capas y tipos de funciones (unas en la primera, otras en la última) de activación en el probador de estrategias? ¿Y utilizar la retropropagación del error como cambio de pesos?

He decidido probar la idea. Red monocapa (no sé cómo ampliar el número de capas), función tangente (no sé cómo cambiarla) en las neuronas, sin función en la salida (no sé cómo ponerla). Propagación hacia atrás del error. período de entrenamiento: año - 2021/08/01-2022/08/01

La optimización consistió en la selección de los siguientes parámetros:

- número de datos de entrada (bucle enviado a la entrada el número solicitado de las diferencias de precios de cierre N0-N1, usted puede hacer otras cosas, pero las manos no llegó) - de 1 a 999 (la variable de matriz no permitió hacer más), paso 1.
- número de neuronas - de 1 a 99 999 (no te rías), paso 1.
- número de conjuntos (Bar++[número de datos de entrada]) - 9 999, paso 1. Dado que el entrenamiento se realizó en un gráfico horario, hay 6500 barras en un año. El resultado es casi hasta un año y medio, creo que está bien.
- factor de aprendizaje en la salida : de 0 a 1 en pasos de 0.00001.
- factor de aprendizaje en la entrada : de 0 a 1 en pasos de 0. 00001 .00001
- número de epochs - de 1 a 1000, paso 1.


Por lo tanto, te diré de inmediato sobre el número de epochs - No he conseguido cambiar nada, ya sea 1 epoch o 1000, no noté mucha diferencia, probablemente hay algunos errores.

¡PERO! Observaciones interesantes:

- cuanto mayor sea el número de neuronas, más operaciones (casi todas las velas, si se predicen en diferentes direcciones)
- la tasa de aprendizaje en la entrada en los primeros 10 mejores resultados es más a menudo cerca de 0,7
- la tasa de aprendizaje en la salida en los primeros 10 mejores resultados es más a menudo cerca de 0,07
- los mejores resultados muestran la fórmula: el número de datos de entrada < el número de neuronas < el número de conjuntos. El mejor resultado (hasta donde tuve paciencia para esperar) fue algo así: unos 200 datos de entrada, unas 300 neuronas y unos 400 conjuntos. ¿Por qué el mejor resultado? Porque en el backtest - crecimiento suave ondulante, en los 2 meses anteriores - crecimiento suave ondulante y.... en el período anterior a la prueba retrospectiva de unos 2 meses - ondulado crecimiento suave .

Por el bien de interés 99 999 neuronas - 50/50, pero, naturalmente - el mayor beneficio - o la mayor reducción
. Al mismo tiempo, el número de entradas hechas no más de 100, el número de conjuntos - no más de 100. Es mucho tiempo para esperar. Pero, no se sabe lo que los resultados mostrarían con 1000 entradas y 1000 conjuntos, o 10 000.
 
Evgeni Gavrilovi El gradient bousting muestra excelentes resultados en la muestra, pero a partir de ahí el error aumenta inmediatamente.

¿por qué? porque la fórmula es muy sencilla. ¿qué podemos decir de la compleja relación en el mercado de divisas?)

¿cómo hacer que este algoritmo muestre buenos resultados en OOS?

Tienes que aprender AMO en una muestra traine, y tienes que elegir un modelo en una muestra de prueba....
Google crossvalidation
 
СанСаныч Фоменко #:

Sólo R

Entonces hay una probabilidad de un error en el código, es necesario hacer pruebas, ya sea con comillas reales o simular....

Me pasó hace poco, el signo miraba a +1 barra, no era un error evidente en absoluto, tardé media hora en solucionarlo....
 
Ivan Butko probador de estrategias? Esto es ajuste...

¿No es la mejor salida.....
Lo primero y lo segundo es ajustar, es decir, buscar parámetros desconocidos, es decir, optimizar.
Y da igual lo que estés ajustando, pesos, número de neuronas. Neuronas, FUN. Activación, número de manzanas en la cesta.
 
mytarmailS #:
Tanto el primero como el segundo son ajustes, es decir, búsqueda de parámetros desconocidos, es decir, optimización.
Y no importa lo que estés ajustando, pesos, número de neuronas. Neuronas, FUN. Activación, número de manzanas en la cesta.

Es triste decirlo. No sé qué hacer al respecto.

Las opciones básicas, dónde buscar...
 
Ivan Butko #:

Es triste decirlo. No sé qué hacer al respecto.

Esas son las principales opciones, dónde buscar...
¿Sarcasmo?
 
mytarmailS #:
¿Sarcasmo?

No, en absoluto. Es que no sé qué más hacer. Intentar usar redes neuronales del mercado... Tampoco creo que haya perspectivas ahí.

 
Ivan Butko #:

No, en absoluto. Es que no sé qué más hacer. Intentar usar redes neuronales del mercado... Tampoco creo que haya perspectivas ahí.

El mercado definitivamente no es...

Lee un libro inteligente sobre MO, si se te dan bien las matemáticas... será x1000 veces más útil que leer este hilo....

 
Evgeni Gavrilovi El gradient bousting muestra excelentes resultados en la muestra, pero a partir de ahí el error aumenta inmediatamente.

¿por qué? porque la fórmula es muy sencilla. ¿qué podemos decir de la compleja relación en el mercado de divisas?)

¿cómo hacer que este algoritmo muestre buenos resultados en OOS?

Este es el caso cuando se necesita una regresión lineal)