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

 
Dr.Trader:

Vtreat es mejor. Evalúa todo estadísticamente, lo bueno/malo que es el predictor en general para predecir la variable objetivo, sin ajustarse a un modelo de predicción concreto. Se recomienda utilizar predictores con una puntuación máxima de 1/(número de predictores). Por ejemplo, si hay 200 predictores, puede tomar de ellos sólo los que tengan una evaluación inferior a 1/200. Es posible estimar los predictores y si todas las estimaciones son superiores al umbral, en lugar de intentar infructuosamente enseñar el modelo y predecir nuevos datos, es mejor empezar a buscar otros predictores.

Hay un par de desventajas: el paquete trabaja con los predictores uno por uno, y no tiene en cuenta su interacción. Tampoco me gusta que aunque haya predictores totalmente idénticos, o altamente correlacionados, vtreat no elimine los repetitivos, a veces es muy molesto.

En realidad, los predictores correlacionados son malos.

Tal vez el paquete requiera el preprocesamiento de los predictores en general, por ejemplo, el escalado, el centrado, la eliminación de la correlación ..... como en caret

¿Quizás?

 
SanSanych Fomenko:

En realidad, los predictores correlacionados son malos.

Tal vez el paquete necesite un preprocesamiento de los predictores en general, por ejemplo, el escalado, el centrado, la eliminación de la correlación ..... como en caret

¿Quizás?

Por cierto, nadie canceló la extracción de datos. Hay un artículo impresionante sobre este tema de nuestro colega aquí en el sitio. Lamentablemente, el autor no participa en este hilo.
 
Dr.Trader:

Buen juego de herramientas que has desarrollado para evaluar la heurística, sólido. Ha demostrado que el método de formación del modelo (comité) que ha desarrollado no es adecuado para el mercado de divisas, pero ¿qué sigue?


Todavía no has puesto un punto en el método. Es intrigante aunque sólo sea porque 1/3 de los mejores modelos en entrenamiento y prueba pasan por otros 5 años de validación con un plus. Si todo el mundo estuviera filtrando.

Además, hay otro pensamiento con respecto a mi gráfico. Si un modelo es tan bueno que el 95% de sus valores se sitúan por encima de 0 en la validación, entonces puede olvidarse de la relación validación/prueba y tomar cualquier modelo entrenado.

Ese es el objetivo de buscar modelos potentes (con buenos efectos de generalización).

 
Siempre leo este tipo de temas (no sólo en este foro) en los que intentan construir complejas teorías de trading.
Algoritmos genéticos, redes neuronales, fórmulas enrevesadas que sólo entiende el autor, etc.

Y siempre veo que esos sistemas no funcionan en el mercado. El control va a cero o a menos.
Pero en el siguiente hilo alguien gana utilizando un Expert Advisor en dos resbalones. Y ganan buen dinero.

La pregunta es: ¿tiene todo esto sentido?
Porque, según mi experiencia, cuanto más sencillo y claro es el sistema, más rentable es.
 
SanSanych Fomenko:

.... Pero sólo después de haber eliminado el ruido. Y el hecho de que no haya ruido viene determinado por la invariancia aproximada del rendimiento del modelo en diferentes muestras. No es el valor absoluto del error de predicción, sino el hecho de la igualdad aproximada de los indicadores de rendimiento que (la igualdad) puede interpretarse como una prueba de la ausencia de sobreentrenamiento del modelo.

También quiero responderte.

Aquí se observa la igualdad de los indicadores. Lo llamas falta de sobreentrenamiento. Pero, ¿ha intentado alguna vez estimar la ausencia real de sobreentrenamiento probando su modelo seleccionado con una muestra más grande, la retrasada? ¿La igualdad en una parte de los datos no degeneraría en un modelo ajustado a esos datos, y el modelo se agotaría en el futuro? Sigo ese patrón en mi investigación.

 
Lee sobre elasticnet. Es un método y un paquete. Regularización híbrida para modelos lineales. La correlación de los predictores sólo se maneja ahí.
 
¿Alguien entrena sus modelos por separado para los byes y los selves?
 
Alexey Burnakov:

Yo también quiero responderte.

Aquí se observa la igualdad de los indicadores. Lo llamas falta de sobreentrenamiento. ¿Ha intentado evaluar la ausencia real de sobreentrenamiento probando su modelo seleccionado con otra muestra grande, una muestra retardada? ¿La igualdad en una parte de los datos no degeneraría en un modelo ajustado a esos datos, y el modelo se agotaría en el futuro? Sigo este patrón en mi investigación.

Tengo mi propio algoritmo para filtrar el ruido.

Si se aplica, en predictores seleccionados entrena el modelo, entonces en cualquier muestra el rendimiento de este modelo es casi igual. Mis pensamientos sobre los intervalos de confianza son de aquí, para deshacerse de las palabras "aproximadamente igual".

Diré más que eso.

La práctica parece diferente.

Hay que trabajar en la ventana. Así que para trabajar en la ventana empiezo a seleccionar predictores de mi conjunto preseleccionado de predictores por rfe de caret. Para una ventana determinada, obtengo un subconjunto que reduce el error en un 5-7%. Lo hago una vez a la semana en H1. Este subconjunto se cambia el próximo fin de semana. Vivo así desde el año pasado.

Pero deshacerse del ruido de antemano es imprescindible. Si no lo hago veré maravillas.

 
No creo que tenga sentido construir dos modelos con resultados opuestos:
¿Quién entrena a sus modelos por separado para comprar y vender?

Sólo preveo 2 clases: "comprar" y "vender", lo que significa que siempre tendré alguna operación abierta. Yo trabajo con un solo modelo, no veo el sentido de hacer dos modelos que dan resultados opuestos.

Pero me gustaría cambiar gradualmente a 3 clases - "comprar"/"cerrar todo y no comerciar"/"vender". Esto daría la oportunidad de operar con una estrategia más compleja. Lo he intentado un par de veces, pero he tenido problemas con el entrenamiento de los modelos a tres clases, especialmente si el modelo es regresivo seguido del redondeo del resultado a las clases.
Creo que vale la pena intentar crear dos modelos con las clases originales 1/0/-1 transformadas en 1/0/0 para el primer modelo(sólo compra), y 0/0/1 para el segundo modelo (sólo venta). Esto llevaría a clases desequilibradas en cada modelo (el número de ejemplos con una clase es mucho mayor que la otra), pero he encontrado buenas métricas para evaluar los modelos que funcionan en tales condiciones: F-score y kappa. Todavía no he hecho nada en este sentido, pero ese plan parece muy posible.

 
SanSanych Fomenko:

En realidad, los predictores correlacionados son malos.

Tal vez el paquete necesite un preprocesamiento de los predictores en general, por ejemplo, el escalado, el centrado, la eliminación de la correlación ..... como en caret

¿Quizás?

No, vtreat no analiza las interacciones de los predictores en absoluto, por desgracia. Los estudia estrictamente de uno en uno. No es un paquete gráfico:(
No creo que el escalado o el centrado supongan ninguna diferencia. Y si activas la opción "y-aware", el paquete escalará y centrará los datos por sí mismo.

Interesante artículo de Vladimir, gracias por el enlace. El análisis de la interacción entre los predictores es justo el tema.