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

 
Olga Shelemey:
Gracias. Seguramente lo leerá más tarde. Ahora mismo está dormido, leyendo algo de Shelepin. Me dijo que no lo molestara.

DE ACUERDO.

Que encuentre el teorema de Tuckens.

 
Aleksey Vyazmikin:

He puesto todo en una tabla según este principio

También hice un predictor de agrupación por arr_TimeH - tal vez sea útil en esta forma.

Adjunto los archivos.

El programa que utilizo tiene la siguiente imagen: sólo hay un 30,81% de aciertos


Sin embargo, si sumamos, por ejemplo, los errores -2 y -1 y añadimos las soluciones encontradas correctamente y las comparamos con las no encontradas correctamente e ignoramos el número objetivo 3 porque es un filtro y no afectará a los resultados financieros, obtendremos la siguiente imagen

en este caso, el error será del 49,19% para entrar en la posición, ¡que no está tan mal!

 
Maxim Dmitrievsky:

¿Has experimentado con kfold alglib? ¿Mejora los resultados? Vi en uno de tus antiguos posts que no parece mezclar la muestra. ¿Es necesario?

¿Alguna conclusión sobre qué sobreentrena menos, bosque o mlp? en los mismos datos. Tengo la sospecha de que para las tareas de regresión el bosque funciona torcido y devuelve errores torcidos (muy pequeños), para las normas de clasificación.

2. He visto gente interesada en OpCl, ¿se ha pensado en reescribir NS para ello? Por ejemplo, dejé el GA por completo como una pesadilla sin sentido, todo se entrena ahora en 1 hilo en 1 núcleo. Podrías acelerarlo en Cl (aunque tan rápido como eso). O, si se entrena en Spark, se paraliza de todos modos y no tiene sentido.

3. Más o menos entendido lo que pones en el git y cómo lo aplicas. ¡Un gran e interesante trabajo, respeto! :)

Cuando empecé a investigar las redes, el resultado fue https://github.com/Roffild/RoffildLibrary/blob/master/Experts/Roffild/Alglib_MultilayerPerceptron.mq5. Pasé por diferentes conjuntos de predictores en diferentes secuencias (con y sin barajar) - el parámetro File_Num es responsable de esto. Y, por supuesto, he probado a poner el mismo número de registros para dos clases.

El problema de esta red es que no hay un criterio claro para seleccionar una muestra válida. Por ejemplo, al reconocer imágenes de frutas, puede identificar claramente dónde están una manzana y una naranja. Con los gráficos de precios no existe un criterio de selección del 100% y, por tanto, tampoco un criterio de reciclaje del 100%.

https://github.com/Roffild/RoffildLibrary/blob/master/Experts/Roffild/Alglib_RandomForest.mq5

Un bosque aleatorio depende menos del ruido y tiene más probabilidades de obtener el mismo resultado en diferentes condiciones de muestreo. Por ejemplo, en el gráfico.

Los datos azules y amarillos son casi idénticos. Aunque esperaba más diferencia porque se eliminó parte de la muestra para el segundo bosque.

Y en mi opinión, algunas personas tratan de obtener el precio de apertura de una orden utilizando el neto o el bosque, pero olvidan que la toma de beneficios tiene lugar cuando la orden se cierra. Para resolver este problema apareció https://github.com/Roffild/RoffildLibrary/blob/master/Include/Roffild/OrderData.mqh, pero esta clase se utiliza exactamente como "padre".

OpenCL sólo es necesario para el entrenamiento de la red. Para los cálculos finales en los que la red o el bosque ya han sido entrenados, OpenCL no sirve, ya que el tiempo necesario para transferir los datos a la tarjeta de vídeo es muy largo. Y los algoritmos para recuperar datos de la red o del bosque son realmente muy sencillos y la CPU los maneja muy bien.

En general, Spark paraliza los cálculos no sólo entre los núcleos de un único ordenador, sino que también puede utilizar toda una red de ordenadores. Es un estándar para la computación entre servidores. Por ejemplo, suelo comprar 32 núcleos en amazon por 0,25 dólares/hora para tener un bosque aleatorio terminado rápidamente.

 
Roffild:

El problema de esta red es que no hay un criterio claro para seleccionar una muestra válida. Por ejemplo, al reconocer imágenes de frutas, puede identificar claramente dónde hay una manzana y dónde una naranja. Con los gráficos de precios no existe un criterio de selección del 100% y, por tanto, tampoco un criterio de reentrenamiento del 100%.

https://github.com/Roffild/RoffildLibrary/blob/master/Experts/Roffild/Alglib_RandomForest.mq5

Un bosque aleatorio es menos dependiente del ruido y suele devolver el mismo resultado en diferentes condiciones de muestreo. Por ejemplo, en el gráfico

eso es porque en NS hay que recoger la arquitectura, mientras que los bosques siempre funcionan igual, sí :)

Y para recoger una arquitectura, hay que mapear el espacio de características multidimensional y averiguar qué capa es responsable de qué, o simplemente usar el instinto. Pero el NS correctamente recogido, en teoría, debería dar mejores resultados y en términos de sobreajuste, también.

todavía no todas las bibliotecas, gracias, voy a investigar más.

 
Pesadilla
 
Cuanto más se adentra en el bosque, más grande es la leña...
 

Otro libro útil en ruso.

Джулли А.,Пал С. - Библиотека Keras - инструмент глубокого обучения [2018, PDF, RUS] :: RuTracker.org
  • rutracker.org
Автор : 2018 : Джулли А.,Пал С.: ДМК Пресс : 978-5-97060-573-8 : Русский: PDF : Отсканированные страницы : 298: Книга представляет собой краткое, но обстоятельное введение в современные нейронные сети, искусственный интеллект и технологии глубокого обучения. В ней представлено более 20 работоспособных нейронных сетей, написанных на языке...
 
Vladimir Perervenko:

Otro libro útil en ruso.

¿Cómo se encuentra Keras? ¿Es mejor que Darch o es igual? ¿Puede aprender más rápido con los mismos datos, número de épocas, etc.?
 
elibrarius:
¿Qué te ha parecido Keras? ¿Es mejor que Darch o las capacidades son las mismas? ¿Es más rápido el aprendizaje con los mismos datos, número de épocas, etc.?

No hay comparación. Kegas: posibilidades ilimitadas en cuanto a estructura, formación y personalización, muchos ejemplos y documentación detallada. Por otra parte, sobre TensorFlow - se está desarrollando muy rápido (ya 1.8). Está claro que esto tiene sus pros y sus contras. No es tan rápido de aprender, hay que hacer algo más de gimnasia. Es difícil optimizar los hiperparámetros. Por lo demás, este es el principal objetivo de cara al futuro.

Buena suerte

 
Aleksey Vyazmikin:

Todavía no me he hecho amigo de R, ¡así que me interesaría ver lo que se te ocurre!

Hizo una descomposición de TF semanal, 1400 barras (casi toda la historia disponible en el terminal)

No muestra las fechas aquí, así que no es muy conveniente. Tendré que reescribirlo en Plot o en un indicador para marcarlo en un gráfico.

Hay un tscc más pronunciado en los mods más pequeños. Y la mayor es de +- 14 años (2 medios periodos de 28 años), que se dividen en 4 ciclos de 7 años (como he dicho). Además, el último ciclo de 7 años terminó a principios de este año (aproximadamente), lo que sugiere que no tiene mucho sentido enseñar la parrilla en fechas anteriores

Los ciclos en el centro no son tan pronunciados

Y no es para devanarse los sesos, sólo hay que meter todos los mods en el NS, además no se correlacionan.

Entonces reconocerá los diferentes ciclos, y tal vez no, una cuestión filosófica, como lo hace será :)