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

 

Sólo algunas ideas:

Traté de hacer un sistema de este tipo puramente en MQL4:

formó un vector de insumos (sólo la diferencia entre los precios con un retardo)

formó entradas y salidas ideales (hay muchos métodos, yo tomé el que me llamó la atención).

Todo esto para barras de 5 minutos, por ejemplo.

A continuación, he rellenado la matriz en cada nueva barra y también he intentado encontrar patrones similares del pasado y calcular el porcentaje de entradas de compra y venta en una esfera multidimensional de radio variable. Esta cosa fue probada durante mucho tiempo. Los resultados fueron inestables.

Quiero volver a intentarlo alguna vez en R. Es decir, se trata de una búsqueda de entrada y salida por distancia euclidiana.

 
mytarmailS:

Pues bien, digamos que el mercado corresponde al clúster № 5, la siguiente vela será el clúster № 18 y no nos dará nada porque no nos dará tiempo a operar el clúster № 5, y en SMM existe el concepto de estado, el estado puede durar un tiempo determinado

¿O tal vez no entiendo su pensamiento?

Los racimos son secuencias de filas largas (incluso de 100 velas). Puedes hacer un montón de entradas sobre la base de estas largas secuencias. Y en algún momento el sistema pasa del grupo 5 al grupo 45, pero sucede, por así decirlo, sin problemas.
 
Alexey Burnakov:

Sólo algunas ideas:

Traté de hacer un sistema de este tipo puramente en MQL4:

formó un vector de insumos (sólo la diferencia entre los precios con un retardo)

formó entradas y salidas ideales (hay muchos métodos, yo tomé el que me llamó la atención).

Todo esto para barras de 5 minutos, por ejemplo.

A continuación, he rellenado la matriz en cada nueva barra y también he intentado encontrar patrones similares del pasado y calcular el porcentaje de entradas de compra y venta en una esfera multidimensional de radio variable. Esta cosa fue probada durante mucho tiempo. Los resultados eran inestables.

Quiero volver a intentarlo alguna vez en R. Es decir, búsqueda de entrada y salida por distancia euclidiana.

Yo también hice lo mismo, también la proximidad buscó a través de Euclides y la correlación de Pearson, Euclides debe ser menos de 0,27 y la correlación más de 0.97, es decir, los patrones eran casi uno a uno, se buscaron similitudes en la serie con tres velas para los 4 precios OHLC + volumen + volatilidad, los precios son normales, sólo escalados y centrados (escala, centro) resultando, como escribí antes, el precio va en contra de mis propias predicciones con correlación inversa -0.6-0,9, me temo que incluso la validación cruzada no ayudará aquí, al menos en el espacio euclidiano, tal vez esta es la respuesta por qué el 99% pierde su dinero
 
Alexey Burnakov:
Agrupación de secuencias largas (incluso 100 velas). Es posible hacer un montón de entradas basadas en estas largas secuencias. En algún momento el sistema pasa del cluster 5 al cluster 45, pero ocurre por así decirlo lentamente.
La cosa es que si hacemos el cluster 5 en la secuencia de 100 velas, sabemos que es el cluster 5 en 101 velas del cluster 5, es decir, perdimos 100 velas) Y en SMM, estando en el cluster #45, ya sabemos que probablemente iremos al cluster #5
 

Y otra pregunta para el R

biblioteca(kza)

DAT <- rnorm(1000)

KZP <- kzp(DAT,m=100,k=3)

summary(KZP ,digits=2,top=3)


cómo puedo sacarlo del "resumen" http://prntscr.com/bhtlo9 para poder trabajar con estos dígitos

Скриншот
Скриншот
  • prnt.sc
Снято с помощью Lightshot
 
Dr.Trader:


He intentado leer el artículo de p-bloggers, pero como no sé inglés no entiendo nada, ¿podéis explicar en lenguaje llano cuál es la esencia de este método de selección, cómo funciona?

De forma puramente intuitiva y basándome en los primeros resultados de las pruebas, sospecho que este método es muy similar al método de componentes principales, y quizá incluso el mismo...

Primera prueba, tenía una muestra de 30 predictores, entrené el error de RF y obtuve una precisión de 0,6511.

entonces los seleccioné usando su método

tenemos 14 predictores, el error fue Precisión: 0,6568

De hecho, hemos eliminado la mitad de los predictores y hemos mejorado un poco el resultado de la previsión, lo que no está mal

Probaré otros conjuntos de datos.....

Otra pregunta, ¿por qué recibo un error de 3-6% en los datos de validación cuando cargo los mismos datos en rattle?

 
mytarmailS:
Ahí la cosa es que si hacemos un cluster en una secuencia de 100 velas entonces sabemos que es el cluster #5 en 101 velas del cluster #5 , es decir 100 velas que hemos soplado) Y en SMM estando en el cluster #45 ya sabemos que probablemente iremos al cluster #5
No hemos perdido nada. En la primera medición averiguaremos el cluster, luego habrá una serie de cambios de cluster. En los puntos de transición de clúster a clúster, podemos construir una matriz cuadrada y cambiar el modus operandi: entrar en la compra en el clúster n, cerrar la operación en el clúster m. A continuación, la misma matriz para vender. Todas las variantes están pasando. Y podemos variar los parámetros de agrupación y ver el resultado en el bucle.
 
mytarmailS:

He intentado leer el artículo de p-bloggers, pero como no sé inglés no entiendo nada, ¿podéis explicar en lenguaje llano cuál es la esencia de este método de selección, cómo funciona?

De forma puramente intuitiva y basándome en los primeros resultados de las pruebas, sospecho que este método es muy similar al método de componentes principales, y quizá incluso el mismo...

Primera prueba, tenía una muestra de 30 predictores, entrené el error de RF y obtuve una precisión de 0,6511.

entonces los seleccioné usando su método

tenemos 14 predictores, el error fue Precisión: 0,6568

De hecho, nos deshicimos de la mitad de los predictores y mejoramos ligeramente el resultado de la previsión, lo que no está mal

Probaré otros conjuntos de datos.....

Otra pregunta, ¿por qué si utilizamos los mismos datos en rattle entonces el error es de 3-6% en los datos de validación, cómo lo sé?

1. Se utiliza el método de componentes principales con alguna modificación.

2. la idea principal de utilizar este método no es mejorar la precisión de la predicción. La idea principal es que la precisión de la predicción resultante siga siendo aproximadamente la misma en el futuro. En la práctica, y lo sabemos por el probador, casi siempre podemos obtener datos sorprendentes de los Asesores Expertos mediante la optimización. Sin embargo, con la monotonía aburrida en el futuro estos griales drenan la depo. Esto sucede porque durante el entrenamiento el Asesor Experto aprende algunas particularidades que no se repiten en el futuro. Los predictores que no tienen nada que ver con la variable objetivo, es decir, el ruido, son especialmente útiles como tales singularidades. Al optimizar o ajustar el modelo a R siempre es posible extraer de este ruido algunos valores que pueden mejorar radicalmente el rendimiento. Pero no sucederá en el futuro y el Asesor Experto fallará.

Una vez más: se utiliza una herramienta que permite eliminar las diferencias de rendimiento del modelo en la muestra de entrenamiento y en las cotizaciones futuras. En mi opinión, sólo resolviendo el problema de la reconversión profesional podremos avanzar.

3. un error inferior al 10% y además al 5% es una prueba contundente de que el modelo está reentrenado. Y el sobreentrenamiento del modelo está causado por el conjunto de predictores de entrada, no por el propio modelo.

 
SanSanych Fomenko:


3. un error inferior al 10%, y mucho menos al 5%, es una prueba clara de que el modelo está sobreentrenado. Y el sobreajuste del modelo se debe al conjunto de predictores de entrada, no al modelo en sí.

La pregunta no es por qué hay resultados diferentes en R y en rattle sobre los mismos datos y el mismo modelo

Segunda pregunta: ¿de qué sirve comprobar el modelo "fuera de muestra" en rattle si muestra el infierno

 
mytarmailS:

La cuestión no es por qué hay resultados diferentes en R y en rattle sobre los mismos datos y el mismo modelo

Segunda pregunta: ¿de qué sirve comprobar el modelo "fuera de muestra" en rattle si muestra el infierno

Probablemente tienes diferentes parámetros de andamiaje en r y rattle, de ahí los diferentes resultados. En el propio sonajero también se puede cambiar el número de árboles y variables.

¿Y tu sonajero tiene un 34% de error en los datos de entrenamiento y un 3% en los datos de validación? Algo está mal en los datos de prueba, o bien ya existía de alguna manera en los datos de entrenamiento, o bien tienes un conjunto de datos muy pequeño y simplemente ocurrió así.