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

 
Mihail Marchukajtes:

Al mezclar todos los datos, intentamos sacar el verdadero potencial de este conjunto, en lugar de una afortunada coincidencia de orden. Así que cuando se barajan los datos, se ve realmente lo que los datos pueden hacer... Así pues, ....

La cuestión es que el modelo se sobreajusta si no se separa el entrenamiento y la prueba en el tiempo. Un ejemplo exagerado pero ilustrativo: los incrementos absolutos sin transformaciones se utilizan como predictores. Usamos una ventana deslizante de ancho 15, es decir, cada vez que alimentamos 15 predictores incrementales, y desplazamos un valor hacia la derecha. Es más probable que la clase de las cadenas vecinas del conjunto de datos coincida que difiera, es decir, si la cadena n tiene clase 1, lo más probable es que la cadena n+1 tenga clase 1. Las cadenas sólo pueden diferir ligeramente entre sí, la cadena n+1 sólo difiere de la nª en un valor. Hay 14 valores coincidentes. Por lo tanto, si se toma la primera línea de dicho conjunto de datos para entrenar, y la segunda para probar, la tercera para entrenar, etc., entonces el modelo funcionará muy bien, porque hay muchas líneas en la prueba que realmente coinciden con los valores con los que el modelo fue entrenado en el entrenamiento. Sólo el OOS del modelo apestará (si te refieres al OOS real, que no incluye la prueba).
 
Vladimir Perervenko:

Cuando se trata de estimar predictores mediante modelos, creo que el paquete más avanzado es RandomUniformForest. Trata con gran detalle la importancia de los predictores desde diferentes puntos de vista. Te recomiendo que le eches un vistazo. En uno de mis artículos lo describí con detalle.

Me negué a utilizar la selección de modelos de predictores. Limitado a las particularidades del modelo utilizado.

Buena suerte

Sigo escribiendo sobre algo completamente diferente: NO me interesa la intensidad de uso de los predictores a la hora de construir un modelo, ya que creo que el predictor más "conveniente" para construir un modelo es aquel que tiene poca relación con la variable objetivo, ya que siempre se pueden encontrar valores "convenientes" en dicho predictor y en última instancia la importancia de los predictores reflejará la "conveniencia" del modelo a la hora de construirlo

Escribo todo el tiempo sobre la capacidad de predicción, el impacto de ... del predictor sobre la variable objetivo. Una de las ideas fue expresada arriba (información mutua), he expresado mi idea sobre esto muchas veces. Estas son ideas matemáticas. Mucho más efectivas son las ideas económicas, porque en ellas se pueden elegir predictores de la variable objetivo que se adelanten a ésta.


Así que de nuevo: no me interesa la IMPORTANCIA de la variable para el modelo, me interesa el IMPACTO del predictor sobre la variable objetivo


PS.

He comprobado su paquete recomendado: el resultado es casi el mismo.

 
Slasher111:
La cuestión es que el modelo se sobreajusta si no se separa el entrenamiento y la prueba por tiempo. Un ejemplo exagerado pero ilustrativo: tenemos incrementos absolutos como predictores, sin transformaciones. Usamos una ventana deslizante de ancho 15, es decir, cada vez que alimentamos 15 predictores incrementales, y desplazamos un valor hacia la derecha. Es más probable que la clase de las cadenas vecinas del conjunto de datos coincida que difiera, es decir, si la cadena n tiene la clase 1, es muy probable que la cadena n+1 tenga la clase 1. Las cadenas sólo pueden diferir ligeramente entre sí, la cadena n+1 sólo difiere de la nª en un valor. Hay 14 valores coincidentes. Por lo tanto, si se toma la primera línea de dicho conjunto de datos para entrenar, y la segunda para probar, la tercera para entrenar, etc., entonces el modelo funcionará muy bien, porque hay muchas líneas en la prueba que realmente coinciden con los valores con los que el modelo fue entrenado en el entrenamiento. Sólo el OOS del modelo apestará (si te refieres al OOS real, que no incluye la prueba).

Ese es un punto muy bueno. Ese resultado sorprendente y genial que publiqué más arriba sobre el muestreo aleatorio para las pruebas de aprendizaje y las validaciones es exactamente lo que lo explica. Y si excluyes las observaciones cercanas que resultan estar en diferentes conjuntos, obtienes todo como yo: un desastre.

 
Mihail Marchukajtes:

Recordad que he dicho que he recibido un modelo que ha ido ganando desde el 01.31.2018 hasta el día de hoy, y así es como se ha comportado este modelo estas dos semanas desde el 03.05.2018 hasta el día de hoy. Resultado de la prueba.

Bastante bien para una anciana entrenada en 40 puntos y que lleva como 1,5 meses en OOS.

Y este es su OOS completo desde el 31.01.2018

Y todavía piensas que es un fit???? Sólo un recordatorio de que las capturas de pantalla muestran la sección OOS.

¿dónde está el backtest normal? se golpea una tendencia alcista en 3 meses, en los descansos que va a sufrir

Debería tomar alguna cosa sencilla, como comprar todos los lunes, y sorprenderse de que funcione mejor que la suya cuando el mercado suba.

 

Se comprueba que no hay sobreentrenamiento y que no hay errores en la propia muestra, por supuesto que es interesante para la estadística y para entender lo que hace el algoritmo. pero la idea final es llevarse el dinero. entonces, ¿por qué no comprobar la predictibilidad en la prueba? .... en mi prueba resulta ser 50/50, pero debido al hecho de que puse la variable objetivo en las clases donde el alce es menor que el beneficio, resulta un crecimiento bastante suave en la prueba. y por cierto, en la prueba es sólo un sólido hacia adelante, la máquina fue entrenada en los datos antes del inicio de la negociación.... Debo añadir que lo más importante son los predictores de entrada, su número y su capacidad real para describir el objetivo.

aquí hay una fotoprueba

 
Muchos de los enfoques discutidos son terriblemente anticuados, eran relevantes en los años 80...
 
Anatolii Zainchkovskii:

Se comprueba todo para el sobreentrenamiento y para los errores en la propia muestra, es por supuesto interesante para las estadísticas y la comprensión de lo que el algoritmo hace. pero la idea final es tomar el dinero. así que ¿por qué no comprobar la previsibilidad en la prueba de inmediato? .... en mi prueba resulta ser 50/50, pero debido al hecho de que puse la variable objetivo en las clases donde el alce es menor que el beneficio, resulta un crecimiento bastante suave en la prueba. y por cierto, en la prueba es sólo un sólido hacia adelante, la máquina fue entrenada en los datos antes del inicio de la negociación.... Debo añadir que lo más importante son los predictores de entrada, su número y su capacidad real para describir el objetivo.

Sin embargo el reentrenamiento es muy importante, ya que por ejemplo en el boosting (bosques de gradiente) puedes conseguir un modelo con gran éxito, pero en adelante será inútil, pero tú mismo lo sabes.

 
Laselección de los predictores es importante, pero el andamiaje no sabe cómo modelar los factores de relación entre ellos, por lo que es un ajuste tonto, y la modelización inteligente con la variación en la forma de las relaciones de las variables es, por desgracia, muy lenta
 
transcendreamer:

el reentrenamiento sigue siendo un punto importante, ya que, por ejemplo en el boosting (bosques de gradiente) puedes obtener un modelo impresionante, pero en el forward obtendrás un desvanecimiento, pero tú mismo lo sabes

nadie dice que se use para siempre, hay un periodo en el que se puede volver a entrenar y volver a ir))

 
transcendreamer:
La selección de predictores es importante, pero los bosques no saben cómo modelar los factores de relación entre ellos, por lo que es un ajuste tonto, y la modelización inteligente con la variación en la forma de las relaciones de las variables es, por desgracia, un asunto que requiere mucho tiempo

Y estas conexiones no se pueden encontrar matemáticamente, así que hay que hacer un ajuste tonto o un estudio de mercado :)

El ajuste estúpido también es algo genial, en realidad, si se utiliza la generalización.