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

 
Alexey Burnakov:
Esta es una descripción de las salidas multivariadas. Lo he puesto en práctica yo mismo. Aumenta la posibilidad de que se produzca un ataque.
¿Aumenta? Es extraño. Lo disminuye para mí.
Como siempre, aparentemente, el diablo está en los detalles.
 
SanSanych Fomenko:

El principal problema está en el sobreentrenamiento, cuando en futuras muestras los árboles existentes no predicen correctamente la clase, o más bien la predicen cada vez peor. Esta es la cuestión que se aborda en este hilo, es decir, tratamos de demostrar que los árboles resultantes se producirán en el futuro y el error de clasificación en las muestras futuras será aproximadamente el mismo que en la muestra de entrenamiento.

Aunque está implícito, prefiero añadirlo para que quede más claro.

Normalmente, el sobreaprendizaje en los modelos tiene el efecto de que el modelo recuerda los ejemplos de entrenamiento con mucha precisión. El aprendizaje comienza con el modelo derivando algunas reglas generales, dependencias de valores objetivo en los predictores, pero cuanto más avanza el aprendizaje, más estrictas se vuelven estas reglas en el modelo, lo que finalmente conduce a ejemplos completamente memorizados, con una completa incapacidad del modelo para predecir en nuevos datos. Esto se maneja mediante la validación cruzada, y deteniendo el entrenamiento cuando el modelo ha aprendido algunas reglas generalizadas pero aún no ha comenzado a aprender ejemplos específicos, esto dará un mejor rendimiento predictivo en los nuevos datos.

Esto funciona muy bien en los datos en los que las dependencias se mantienen constantes a lo largo del tiempo: el reconocimiento de imágenes o el reconocimiento de sonidos, por ejemplo. Pero el forex es diferente porque muchas de las dependencias encontradas no son persistentes en el tiempo. El problema no es sólo aprender sin memorizar los ejemplos de entrenamiento, sino también asegurarse de alguna manera de que los patrones encontrados permanezcan en el futuro.

La tarea es más completa: desarrollar una forma de estimar los predictores con respecto a una variable objetivo que garantice que la relación entre los predictores y la variable objetivo es constante y también existirá en los nuevos datos.

Qué valores objetivo utilizar(color de la barra, o inversión, o tendencia), o qué predictores (precios, indicadores, índices) son los matices. Si podemos evaluar el conjunto de predictores y su capacidad de predicción de los valores objetivo, y el cambio de esta capacidad de predicción en el tiempo, entonces podemos incluso encontrar tales combinaciones de predictores y valores objetivo, que tienen la mejor estimación.
Entonces podemos tomar cualquier modelo, entrenarlo (quizás incluso con control de reentrenamiento, lo que es importante para la neurona por ejemplo), y hay un grial.

 
Dr.Trader:


Normalmente, el sobreaprendizaje en los modelos tiene el efecto de que el modelo recuerda los ejemplos de entrenamiento con mucha precisión. El aprendizaje comienza con el modelo derivando algunas reglas generales, la dependencia de los valores objetivo en los predictores, pero cuanto más avanza el aprendizaje, más estrictas se vuelven estas reglas en el modelo, lo que lleva finalmente a ejemplos completamente memorizados, con una incapacidad total del modelo para predecir en nuevos datos.

Parece que sólo estamos nosotros dos, ya que la posición de Alexey no me queda del todo clara.

El resto es la experiencia de personas que llevan mucho tiempo en el mercado. Creo que son comerciantes de éxito. Conozco por la literatura a algunas personas que han tenido éxito utilizando la heurística durante muchos años, pero el único resultado fue una monotonía lúgubre: una pérdida de la depo. Cualquier heurística no responde a la cuestión del reaprendizaje, por eso el final llegará: en un día, un mes, un año... pero siempre de forma inesperada y extremadamente inoportuna.

PS.

El sobreaprendizaje es un problema básico de la ciencia, en el sentido de que el objeto de la ciencia es la extracción de unas leyes básicas, a partir de las cuales se pueden explicar muchos particulares.

Por ejemplo, la ley de Newton.

Coge un trozo de papel: seguro que se cae al suelo. Arrastra ese trozo de papel: seguro que cae, pero más rápido. Newton dice que todo cae con la misma aceleración. ¿Cómo es eso? Así es como, el hombre consigue descartar la realidad particular, que es mucha, a grosso modo y conseguir una ley universal, y si no funciona, siempre se pueden explicar estas desviaciones.

Así es como funciona la ciencia.

Lo que hacemos es tratar de "emparejar" el cociente, presentar este cociente en forma de modelo para tener una idea de todos los cocientes futuros.

La lucha contra el sobreentrenamiento es un problema básico del comercio.

 
Dr.Trader:

Esto funciona bien en los datos en los que las dependencias se mantienen constantes a lo largo del tiempo: el reconocimiento de imágenes o el reconocimiento de sonidos, por ejemplo. Pero el forex es diferente porque muchas de las dependencias encontradas no son persistentes en el tiempo. El problema no es sólo lograr el aprendizaje sin memorizar los ejemplos de entrenamiento, sino también asegurarse de alguna manera de que los patrones encontrados permanezcan en el futuro.

Un poco fuera de tema, pero sólo un poco de información...

En el reconocimiento de voz, en particular, el habla es un problema cuando una persona dice una palabra - un patrón espectral de la palabra alimentado al algoritmo "HMM" o "RNN" ...el patrón es el mismo pero estirado en el tiempo, y ahora la analogía - el patrón de cabeza y hombros ancho de 33 velas y el mismo patrón de cabeza y hombros ancho de 88 velas, el ancho es diferente, pero el patrón es el mismo .....

Para resolver el problema con el algoritmo de reconocimiento del habla se desarrolló - un tiempo dinámico de deformación "DTW" La tarea del algoritmo es que pueda encontrar dos vectores similares aunque tengan longitudes diferentes. Así, cuando diferentes personas dicen la misma palabra, este patrón espectral de la palabra pasa primero por el "DTW" y luego por el algoritmo "MO" y la palabra se reconoce con éxito. Todavía no lo he usado así que no puedo decir nada pero supongo que tendré que probarlo, aunque si dices que no hay patrones en el mercado entonces por supuesto que este algoritmo no funcionará, todavía no me he decidido con mi visión del mundo...

Paquetes R: "DTW" , "dtwclust"

 
Alexey Burnakov:
Esta es la descripción de la salida multivariante de una operación. Yo mismo lo he puesto en práctica. Aumenta la posibilidad de conseguir un buen ajuste.
Andrey Dik:

El método es el siguiente (todo lo que sigue se aplica por igual a la ST de tipo ML y a la clásica).

Se trata de deshacerse de la incertidumbre, lo que significa, por un lado, deshacerse del ajuste en el entrenamiento y la optimización y, por otro, formular sin ambigüedades los requisitos "blandos" al sistema. El TP y el SL en la entrada también es una incertidumbre, por lo que lo utilizamos sólo para la salida de emergencia (depende de la volatilidad del instrumento y lo seleccionamos empíricamente, por lo que las operaciones al 100% activan los stops tan raramente como sea posible, idealmente - nunca. Predecir toda la operación, desde la entrada hasta la salida. Consideramos que el resultado con un beneficio que excluye el diferencial y las comisiones es una operación exitosa (la operación del sistema se determina después de comprobar si el diferencial y las comisiones están cubiertos). En cuanto se recibe la señal de entrada, el sistema entra y luego espera una cierta cantidad de barras (se determina empíricamente y depende de los predictores y del instrumento). - Cerrar el trato, si está perdiendo, esperamos una barra más. A veces utilizo dos parámetros: el mínimo y el máximo (si una operación no se cierra después del número máximo de barras - se cierra de todos modos), y a veces utilizo sólo uno - el número mínimo de barras.

Mucha gente se sorprenderá, pero muchos, incluso los sistemas aparentemente sin esperanza, comienzan a funcionar, incluyendo el TS en las varitas, por no hablar de todo tipo de sistemas con ML. El truco es no exigir reglas férreas de CT a ti mismo y a la máquina, no tratar de describir completamente los movimientos del mercado y dar esas reglas muy "suaves" para el ML. Además, nos deshacemos del mal legado del mercado en forma de colas pesadas (o más exactamente, las colas dejan de importar), la falta de estacionariedad en la BP deja de importar - porque sabemos que las formas del mercado pueden ser escaladas vertical y horizontalmente sin cambiar sus propiedades internas (y esto hace la vida extremadamente difícil para los emleoners).

Lo escribí en el 4º foro, creo que en el hilo de Swinosaurios, sobre dos tipos de todos los TS (con límites definidos e indefinidos), pero la idea no se completó allí. Ahora todo es más claramente visible, o así...

En general, utilizo mi regla cuando desarrollo sistemas de comercio: si los cambios en la lógica conducen a aumentar la proporción de variantes exitosas de los parámetros de todas las variantes posibles, entonces es un buen cambio (la probabilidad de elegir una mala variante para el comercio se reduce, no importa cómo cambiemos los parámetros - estaremos en el lado positivo). Este enfoque permitió aumentar esta cuota en mi ST.

Me parece que todo lo que has descrito encaja en la optimización del modelo ARIMA. Al optimizar, se selecciona el número de barras sobre las que se construye el modelo
 
Alexey Burnakov:SanSanych Fomenko:

¿Cuál es la salvaje costumbre de responder en dos palabras y citar 100 líneas del interlocutor???? El foro tiene 120 páginas. Si quitas estas citas innecesarias te quedan quizás 60 páginas de texto útil... Respeta a las personas que lo leen o lo leerán en el futuro

 
Andrey Dik:

El método es el siguiente (todo lo que sigue se aplica por igual a la ST clásica y a la ML) ....

Puedes describir punto por punto qué y cómo hacer, a modo de algoritmo, porque no entiendo muy bien cómo sugieres hacer

 
SanSanych Fomenko:
Me parece que todo lo que has descrito encaja en la optimización del modelo ARIMA. Durante la optimización se selecciona el número de barras sobre las que se construye el modelo
No se trata de un valor fijo de barras, sino de valores posibles "de ahora en adelante"
 
mytarmailS:

Puedes describir punto por punto qué hacer y cómo hacerlo, como un algoritmo, porque no entiendo muy bien cómo propones hacerlo.

Tienes razón en lo que respecta al estiramiento en el tiempo de las cifras de los precios. A eso me refería, al estiramiento/escalado vertical y horizontal. Pero no sólo las figuras en su conjunto se estiran de forma diferente, sino también los candelabros individuales dentro de ellas. Este es un problema adicional y dudo que se puedan aplicar adecuadamente losmétodos de tratamiento previo y posterior tipo DTW. Son formas de mercado distorsionadas de alguna manera desconocida.

Para ser más exactos: tenemos señal de compra en la barra actual, contamos el menor número de barras por delante y comprobamos si la operación será rentable, si es así - la cerramos, si no - contamos una barra más por delante y volvemos a comprobarlo. Y así llegamos al máximo número de barras y las cerramos finalmente. Se trata de un mecanismo de aprendizaje.

En general, el aprendizaje automático de los datos de mercado es similar a lo siguiente: mostramos a la máquina una combinación de formas gráficas, círculos, cuadrados, triángulos, trapecios, formas de diferentes tamaños y formas. La máquina tiene que responder con alguna forma, un triángulo un cuadrado o un círculo (exagerado). Ponemos la respuesta al patrón y ¡f*ck! - ¡La forma de la respuesta no coincide con la plantilla! Y en el proceso de aprendizaje, por alguna razón, coincidieron como un maldito dickens.... Ese es el tipo de problema que estamos resolviendo aquí. Y yo digo: no hay problema, podemos estirar un poco el patrón, para que las respuestas resulten correctas incluso fuera de los datos de entrenamiento.

Es un "pez" básico de un sistema, que ya funciona por sí mismo. Pero nadie prohíbe añadir al TS y utilizar en el trading herramientas como el SL Breakeven. El sistema sigue siendo el mismo, pero para que cuando el mercado se mueva en nuestra dirección, obtendremos beneficios extra más allá del "plan" y entonces arrastraremos el SL, o iniciaremos el cierre parcial de posiciones, dependiendo de la distancia recorrida en comparación con el movimiento estadístico del precio en un periodo de tiempo determinado, etc.

 
Andrey Dik:
¿Está aumentando? Es extraño. Pero disminuye.
Como siempre, aparentemente, el diablo está en los detalles.

¿Evalúa el rendimiento de la estrategia en función de la historia o hay un largo plazo? El diablo puede estar en la evaluación de la historia.

Mira, yo tenía una estrategia escrita en 100 líneas en MT4 por mí mismo. Lo escribí en mi perfil en diciembre de 2014:https://www.mql5.com/ru/users/alexeymosc/page3?#userActions

Este es el aspecto de la última versión, elaborada en enero de 2015:

Luego lo probé en la realidad, junto con otras estrategias. También he escrito sobre ellos en todas partes.

Esto y lo otro, la mano lo escurrió.

Hoy he visto una prueba de avance desde el final de la optimización hasta el final de julio con la misma configuración. Mira:

Todo está ahí. El diferencial es de 30, el lote de 0,1.

Lo probaré también en todas las garrapatas, para que las tomas funcionen mejor:

Entrada por impulso, salida por O en una serie de condiciones. En principio, parece funcionar. Pero si entro en el pico, y luego espero un año para el retiro de una reducción...

Alexey Burnakov
Alexey Burnakov
  • www.mql5.com
Профиль трейдера