Discusión sobre el artículo "Tercera generación de neuroredes: "Neuroredes profundas"" - página 6
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Otra prueba rápida, esta vez con un conjunto de entrenamiento de 6000 barras desde septiembre de 2014 hasta febrero de 2015. La prueba fuera de muestra comienza en marzo:
De nuevo tenemos una fase rentable de unas 5 semanas hasta que el modelo se deteriora.
Creo que la división en datos de prueba y de entrenamiento es innecesaria: podemos utilizar todos los datos para el entrenamiento. La precisión y la matriz de confusión son engañosas porque en la mayoría de los casos el signo ZZ es idéntico al signo de la barra anterior, lo que sugiere erróneamente una alta precisión. Para el beneficio, sólo importan los cambios de signo.
Ahora he entrenado un nuevo modelo con predicción de la siguiente barra, y parece que efectivamente funciona. La precisión sigue estando en el rango del 74%. Esta es la curva de equidad ahora:
:
Se comporta como yo esperaba: el sistema es rentable inmediatamente después del entrenamiento, y luego se deteriora lentamente a medida que cambia el mercado.
Así que el siguiente paso es una prueba WFO con re-entrenamiento regular del modelo. Para ello, el entrenamiento debe integrarse en el script de la estrategia.
Esta es la función corregida para calcular el Sig de la siguiente barra:
La función "Compute" que es ejecutada cada 30 mins por el script de estrategia:
El script de estrategia, el "EA":
Ahora he entrenado un nuevo modelo con predicción de la siguiente barra, y parece que efectivamente funciona. La precisión sigue en el rango del 74%. Esta es la curva de equidad ahora:
:
Se comporta como yo esperaba: el sistema es rentable inmediatamente después del entrenamiento, y luego se deteriora lentamente a medida que cambia el mercado.
Así que el siguiente paso es una prueba WFO con re-entrenamiento regular del modelo. Para ello, el entrenamiento debe integrarse en el script de la estrategia.
Esta es la función corregida para calcular el Sig de la siguiente barra:
La función "Compute" que es ejecutada cada 30 mins por el script de estrategia:
El script de estrategia, el "EA":
Hola
Has movido la serie ZZ una barra en el futuro.
Ha movido la serie dz una barra en el futuro.
Así que moviste la variable objetivo en las dos barras en el futuro.
Esto equivale a
dz <- Hmisc::Lag(diff(ZZ), shift=-2)También se puede utilizaresta opción.
De nuevo tenemos una fase rentable de unas 5 semanas hasta que el modelo se deteriora.
Esto es normal. El modelo puede y debe reaprenderse periódicamente.
Creo que la división en datos de prueba y de entrenamiento es innecesaria: podemos utilizar todos los datos para el entrenamiento.
Puede. Es importante recordar algunos puntos importantes:1. los conjuntos de entrenamiento y prueba no deben cruzarse.
2. El conjunto de entrenamiento debe ser mixto
3. Si la proporción de clases de equilibrio - para hacer el ajuste.
Me alegro de que había colegas que utilizan R.
Saludos cordiales
Vladimir
Tienes razón con lo del doble desplazamiento: Lo que el sistema de hecho predice es una diferencia ZZ que se basa en el precio medio de la siguiente barra. La ZZ se calcula a partir de los precios medios, pero en el momento del cálculo tenemos el precio de cierre, que normalmente está a medio camino entre el último precio medio y el siguiente. Así que el desplazamiento adicional predice alrededor de 1,5 barras en el futuro, y de hecho obtuve resultados mucho peores sin el desplazamiento adicional.
Ahora tengo un script Zorro que re-entrena cada 4 semanas, y prueba las 4 semanas siguientes en el entrenamiento. La deepnet es bastante rápida, el script sólo necesita unos 10 minutos para una ejecución que cubra unos 60 ciclos de entrenamiento/prueba. Este es el resultado:
Esto no se ve tan bien como las primeras impresiones. Hay claramente potencial de mejora, por lo que los próximos pasos serían experimentar con diferentes configuraciones de red, períodos de tiempo y diferentes indicadores.
¿Qué es Zorro? dar los enlaces?
Tenemos que recoger no sólo los indicadores , sino también sus parámetros. Algoritmo de genes ayudarle.
¿Qué es Zorro? dar los enlaces?
He descargado e instalado todo y he puesto todos los archivos en las carpetas. Todos los paquetes están instalados. Las carpetas están en mis destinos.
Cuando pongo el experto en el gráfico EURUSD m30 todo va bien incluso en DebugView, pero tan pronto como pongo el indicador en el gráfico obtengo un error:
ExecutedCode: in >>> as.Logical(res <-GetRes()) [1]
Error en if (z) { :
El resultado de la función GetRes en "i_SAE_fun.r" es siempre NA por lo que no puede convertirlo a bool y deja de funcionar.
¿Alguien me puede indicar la dirección correcta? ¿qué me estoy perdiendo?
Saludos cordiales,
APoLLo
He descargado e instalado todo y he puesto todos los archivos en las carpetas. Todos los paquetes están instalados. Las carpetas están en mis destinos.
Cuando pongo el experto en el gráfico EURUSD m30 todo va bien incluso en DebugView, pero tan pronto como pongo el indicador en el gráfico obtengo un error:
ExecutedCode: in >>> as.Logical(res <-GetRes()) [1]
Error en if (z) { :
El resultado de la función GetRes en "i_SAE_fun.r" es siempre NA por lo que no puede convertirlo a bool y deja de funcionar.
¿Alguien me puede indicar la dirección correcta? ¿qué me estoy perdiendo?
Saludos cordiales,
APoLLo
Hola APoLLo
¿Qué versión R tienes ?
Es un artículo bastante largo y después de la actualización de los paquetes en R algunas funciones dejan de funcionar. Mejor utiliza Revolution R Open (RRO 8.01)
Para comprobarlo, ejecuta un script en Rstudio.
Si tienes tiempo , también compruebo dónde está el error.
Saludos cordiales/
Vladimir
Hola APoLLo.
¿Qué versión de R tienes ?
Es un artículo bastante largo y después de la actualización de los paquetes en R algunas funciones dejan de funcionar. Mejor usa Revolution R Open (RRO 8.01)
Para comprobarlo, ejecuta un script en Rstudio.
Si tienes tiempo , también compruebo dónde está el error.
Saludos cordiales/
Vladimir
Estoy usando la última versión de R 3.2.0 64bit junto con la última versión de MT4. Todos los paquetes de R se descargaron ayer, por lo que también deberían ser la última versión.
Si inicio el EA en EURUSD M30 puedo incluso conectarme a él con la RGUI y comprobar "SAE" y "prepr" y obtener un montón de números.
Para mí parece que la función GetRes en R está comprobando si una conexión está abierta recuperando el valor flag1 que no está disponible en el servidor (EA).
Tal vez es la causa porque "Acc" o "K" o "Kmax" nunca se calculan correctamente.
Tengo tiempo así que si usted tiene la oportunidad de echar un vistazo yo sería muy feliz.
Más tarde probaré Revolution R 8.01 para comprobar si esto funciona mejor.
Gracias por su ayuda :)
MUCHAS GRACIAS al autor por el artículo. Empecé a familiarizarme con la aplicación de las redes neuronales al mercado con su artículo. Antes no estaba familiarizado con las redes neuronales y nunca había utilizado el lenguaje R. Pero ahora lo he instalado y lo estoy aprendiendo. Pero ahora lo he instalado y estoy aprendiéndolo. Parece complicado, ¡pero interesante!
Y sí, por favor, dime, no puedo entender cómo funciona el archivo SAE.model como una biblioteca para un Asesor Experto o como qué? Es decir, ¿podemos guardar la estructura de la red neuronal de R y luego utilizarlo como una biblioteca regular en un Asesor Experto, o qué? Es todo muy confuso y complicado (para mí).