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

 
Andrey Dik:

Anteriormente he descrito mi enfoque para dividir en 3 clases (vender, cercar, comprar). La clase "valla" incluye todos los casos que se contradicen o que no pueden dividirse en clases de compra y venta. Resulta que sólo el 3-10% entra en las clases de compra y venta. Lo bueno de este enfoque es que al trabajar con datos desconocidos (reales) con el tiempo la red deja de reconocer las situaciones del mercado y empieza a atribuirlas a la "valla" cada vez más, es decir, deja de operar gradualmente. Esto es cien veces mejor que empezar a errar en la entrada cada vez más con el tiempo.

Pero todo es inútil, nadie quiere, nadie escucha.

¿Qué es la valla? ¿Cuando la red para comprar dice comprar y la red para vender dice vender?

Es el mismo ternario de Reshetov.

 
Andrey Dik:

Anteriormente he descrito mi enfoque para dividir en 3 clases (vender, cercar, comprar).

Esto ya está implementado en jPrediction. Por eso se llama clasificador ternario en lugar de binario.

Implementado de forma muy trivial:

  1. Entrenamiento: entrenar dos clasificadores binarios en dos partes de la muestra que no se solapen.
  2. Validación cruzada: probar los clasificadores binarios en aquellas partes de la muestra en las que no fueron entrenados.
  3. Clasificación: si las lecturas de ambos clasificadores binarios coinciden, entonces tomamos el valor de salida de cualquiera de ellos como resultado. Si las lecturas de los clasificadores binarios son diferentes, la salida es: "sentarse en la valla y fumar bambú".

Anteriormente, se suponía que utilizaba el método de la "bicicleta":

  1. Entrenar un clasificador binario en una mitad de la muestra
  2. Pruébalo en la segunda mitad de la muestra
  3. Utilizando el análisis ROC, aumentar uno de los umbrales para aumentar la sensibilidad y disminuir el segundo umbral para aumentar la especificidad.
  4. Clasificación: Si el patrón a clasificar está por encima del umbral de sensibilidad - comprar. Si el patrón está por debajo del umbral de especificidad - vender. Si el patrón se encuentra entre ambos umbrales, siéntese en la valla y fume bambú.

Sin embargo, la "rueda" anterior produce más señales falsas en comparación con la clasificación por dos binarios debido a la falta de validación cruzada, pero es más fácil de implementar.

El binario ternario más tonto e inútil, aunque el más primitivo en su implementación: es una RNA con tres salidas. Si cada una de estas salidas tiene su propio umbral de clasificación, producen no tres, sino ocho estados potencialmente posibles, de los cuales sólo tres son inequívocos (un valor por encima del umbral en sólo una de las tres salidas), y cinco no están claros de cómo interpretarlos (valores por encima del umbral en más de una de las salidas, o por debajo del umbral en las tres salidas).

 
mytarmailS:

¿Qué es una valla? ¿Cuando la red para comprar dice comprar y la red para sentarse dice sentarse?

Este es el mismo ternario de Reshetov

No. No voy a dar un enlace, búsquelo.
 
Yury Reshetov:

Esto ya está implementado en jPrediction. Por eso se llama clasificador ternario en lugar de binario.

Implementado de forma muy trivial:

  1. Entrenamiento: entrenamos dos clasificadores binarios en dos partes de la muestra que no se solapan.
  2. Validación cruzada: probar los clasificadores binarios en aquellas partes de la muestra en las que no fueron entrenados.
  3. Clasificación: si las lecturas de ambos clasificadores binarios coinciden, entonces tomamos el valor de salida de cualquiera de ellos como resultado. Si las lecturas de los clasificadores binarios son diferentes, la salida es: "sentarse en la valla y fumar bambú".

Anteriormente, se suponía que utilizaba el método de la "bicicleta":

  1. Entrenar un clasificador binario en una mitad de la muestra
  2. Pruébalo en la segunda mitad de la muestra
  3. Utilizando el análisis ROC, aumentar uno de los umbrales para aumentar la sensibilidad y disminuir el segundo umbral para aumentar la especificidad.
  4. Clasificación: Si el patrón a clasificar está por encima del umbral de sensibilidad - comprar. Si el patrón está por debajo del umbral de especificidad - vender. Si el patrón está entre los umbrales, siéntese en la valla y fume bambú.

Sin embargo, la "bicicleta" anterior produce más señales falsas en comparación con la clasificación por dos binarios, pero es más fácil de implementar.

El binario ternario más tonto e inútil y el más primitivo en su implementación: es una RNA con tres salidas. Si cada una de estas salidas tiene su propio umbral de clasificación, entonces no tienen tres, sino ocho estados potenciales, de los cuales sólo tres son inequívocos (un valor por encima del umbral en sólo una de las tres salidas), y cinco no están claros de cómo interpretarlos (valores por encima del umbral en más de una de las salidas, o por debajo del umbral en las tres salidas).

Hay otra forma que no has considerado. La salida es una de la neurona-clave, pero el área de valores se divide condicionalmente en tres áreas. Lo hice como [-1,5...1,5]. El área de valor medio [-1,0...1,0] es la "valla". Resulta que cuanto más familiar es la situación para la red neuronal, más se excita y los valores tienden más hacia los valores extremos. Los valores fuera del rango [-1,0...1,0] son señales apropiadas para Comprar y Vender.

Pero la gente sigue luchando con la clasificación binaria.

 
Andrey Dik:

Hay otra manera, que no has considerado. La salida es la misma de la llave neuronal, pero el área de valores se divide condicionalmente en tres áreas. Lo hice como [-1,5...1,5]. El área de valor central [-1,0...1,0] es la "valla".

No lo he ignorado, no lo has leído con atención. Véase el método de dos umbrales "bicicleta" con un n binario. 3 y párr. 4, y cito:

Yury Reshetov:
...

Antes de esto, se suponía que se aplicaba el método de la "bicicleta":

  1. Entrenar un clasificador binario en una mitad de la muestra
  2. Pruébalo en la segunda mitad de la muestra.
  3. Utilizando el análisis ROC, aumentar uno de los umbrales para aumentar la sensibilidad y disminuir el segundo umbral para aumentar la especificidad.
  4. Clasificación: Si el patrón a clasificar está por encima del umbral de sensibilidad - comprar. Si el patrón está por debajo del umbral de especificidad - vender. Si el patrón está entre los umbrales, siéntese en la valla y fume bambú.
...
 
Yury Reshetov:

El problema de tu enfoque es que inicialmente (antes del filtrado ternario de las señales de compra/venta) tus MOs se entrenan con datos que pueden explicar más del 5% de todos los datos, ¿ves?

Andrey Dik:

Creo que es la misma historia aquí...

==================================

Mi manera no utiliza el MO en absoluto en la toma de decisiones y no trata de explicar toda la muestra, sino sólo lo que considera una fuerte regularidad estadística, y si tales datos son sólo el 0,01% de todos los datos, entonces sólo se quedarán...

 
Andrey Dik:

...

Pero la gente sigue jugando con la clasificación binaria.

Porque a la mayoría de la gente le resulta más fácil coger un paquete ya preparado con una clasificación binaria ya implementada que experimentar con una ternaria. No a todo el mundo le gusta reinventar las "bicicletas", porque no todas las ideas dan buenos resultados. A algunas personas les resulta más fácil montar en una bicicleta estándar, aunque tenga ruedas cuadradas.

Si se utiliza la clasificación ternaria, la mayoría de las fuentes sobre aprendizaje automático sugieren el método menos prometedor: entrenar una RNA con tres salidas, lo cual es fácil de implementar pero totalmente inadecuado en la práctica.

 
Yury Reshetov:

Porque a la mayoría de la gente le resulta más fácil coger un paquete ya preparado con la clasificación binaria ya implementada que experimentar con la ternaria. No a todo el mundo le gusta reinventar la "rueda", porque no todas las ideas dan buenos resultados. A algunas personas les resulta más fácil montar una bicicleta ya existente, aunque tenga ruedas cuadradas.

Si se utiliza la clasificación ternaria, la mayoría de las fuentes sobre aprendizaje automático sugieren el método menos prometedor: entrenar una RNA con tres salidas, lo cual es fácil de implementar pero totalmente inadecuado en la práctica.

Pues sí, estoy de acuerdo, lo es.

Pero una cosa es cierta (perdón por la taftalogía): un binario es lo peor que se puede utilizar para el mercado.

 
mytarmailS:

El problema con tu enfoque es que inicialmente (antes del filtrado ternario de las señales de compra/venta) tus MOs están entrenados con datos que pueden explicar tal vez el 5% de todos los datos, ¿ves? antes del filtrado ternario los MOs ya están entrenados con ruido y sus salidas son correspondientemente

No digas tonterías. En jPrediction, se implementa un algoritmo para reducir el tamaño de las entradas de modo que no se obtenga un modelo en la salida que haya sido entrenado con predictores ruidosos o sin importancia. Es decir, se elige entre una variedad de modelos con diferentes combinaciones de predictores, de los cuales sólo queda el que tiene la mejor generalizabilidad.
 
mytarmailS:

Verás, intentamos dividir toda la muestra en compra y venta y queremos predecir todos los movimientos del mercado, pero nuestros predictores son tan mierdosos que sólo pueden predecir objetivamente el ~3% de todos los movimientos, así que ¿qué necesitamos? tenemos que intentar coger al menos ese3% y tirarel resto de cosas inseparables porque es la misma basura de entrada/ruido que hay que cribar/motivo de reconversión, etc. llámalo como quieras, está bien...

Veo que entiende la causa de los problemas. Pero estoy tratando de resolverlo de manera diferente a la que usted sugiere.

Me inclino por las palabras de SanSanych: hay que reclutar predictores y objetivos que no sean basura. Con buenos predictores obtendrás un gráfico de ejemplos de entrenamiento, no como el que hice en mi último post, sino como el de Vizard_. Es mucho más difícil que eliminar ejemplos de entrenamiento conflictivos, pero creo que una selección adecuada de predictores será más fiable al final.

No puedo decir nada sobre tu método, no se me da bien, pero espero que puedas hacerlo.