Asesores Expertos: Ejemplos del libro "Redes neuronales en el trading algorítmico en MQL5" - página 3
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
¿Desde qué script puedo generar este study_data_not_norm.csv? He probado con el script create_initial data pero no ha funcionado. Obtuve un rango fuera de los límites al ejecutar el script gpt_test_not_norm.mq5.
Estimados administradores,
¡Muchas gracias por la oportunidad de aprender en un campo tan único!
Me gustaría volver a los posts anteriores con respecto al error 5008.
Tampoco he podido cargar el probador de estrategias para el modelo entrenado gpt_not_norm.net con error 5008, el archivo del modelo no se carga.
Al mismo tiempo, cuando se ejecuta en un gráfico, el robot se comporta correctamente, el archivo de modelo recoge los valores adecuados después de un pase directo, los mostré en el gráfico, todo está bien.
El archivo de modelo, como debe ser, se encuentra en el directorio de acuerdo con la bandera True para Common \Terminal\Common\Files .
Por otra parte, cuando corrí lo mismo en otro equipo, en mi portátil, el probador de la estrategia se inició sin error.
¿Podría ser alguna configuración del sistema que impide que el Probador de Estrategias funcione?
1.El Probador de Estrategias no funciona en un ordenador con
Procesador Intel Core i5-9400F 2.90GHz, 16295 MB
Windows 10 doméstico.
2.Strategy Tester funciona en un ordenador portátil con
procesador Intel Core i7-2760QM 2 .40GHz, 12238 MB
Windows 10 Pro.
Por favor, ayúdame a resolver este problema.
Realmente necesito comprometer el comp, tiene una tarjeta de vídeo en él y es más rápido seguro.
Al ejecutar el script gpt_test_not_norm.mq5, he obtenido una salida fuera de rango.
En la línea 40 del programa
if(!loss_history.Resize(0,Epochs))
Cambiar por:
if(!loss_history.Resize(Epochs))
Hola. Mucho escribir, resultó ser un libro. Empecé a leerlo, pensé en escribir algo para el mercado.
Es un buen trabajo. Porque no hay nada tan universal que explique cómo abordar el aprendizaje automático con herramientas mql5.
Sin embargo.
La muestra se divide en 3 partes - 60% de entrenamiento, 20% de validación y 20% de prueba. De 40 barras de cada cadena de barras, 35 barras se repiten. Moraleja - se entrena y se valida utilizando los mismos datos. He hecho un dibujo. Este no es sólo el problema de este libro, me lo encuentro una y otra vez.
Al principio pensé que el indicador Zigzag era el indicado para resaltar los movimientos que no se repiten. Como de cima a valle, de valle a valle, de valle a cima. Estos serían patrones únicos, como se llama en el libro. Pero no, el autor construye patrones barra por barra, y eso es por supuesto un craso error. Y no necesitas un Zigzag para eso. Usted puede simplemente mirar hacia adelante 10 bares y calcular donde el mercado ha ido.
Este es el primer punto - práctico. Y el segundo punto es técnico - también erróneo. ¿El autor proporciona formación con validación sólo en Tensorflow? Eso está bien, Tensorflow es una biblioteca de aprendizaje automático que hace Google. Pero el objetivo de este trabajo era mostrar cómo hacerlo con herramientas mql5, ¿no?
No hay ejemplos de aprendizaje con validación en mql5. Todavía no he encontrado ejemplos con validación. Lo escribiré más tarde si quieres. Por supuesto, deberías intentar hacerlo tú mismo. Por supuesto que deberías. Hay mucho trabajo para preparar el historial y seleccionar los parámetros de entrenamiento. Tensorflow parece tenerlo todo, pero hay mucho que hacer. Y aquí resulta que la parte técnica no está terminada.
¿Es este el 95% que pierde valor sin el 5%?
Me detengo en que es un buen trabajo. Porque no hay nada igual.
¿No es el método de optimización de Adán ajustar el learning_rate basado en la tasa de aprendizaje? También utiliza un "techo" en lugar de un valor constante.
Si se hace una red recurrente, ¿por qué añadir capas ocultas de enlace completo? El tema full-link destruye el tema lstm. Por supuesto, al final de la red se necesita 1 neurona full-link para activar.
Dropout es una propiedad de la capa en cualquier red neuronal. Por ejemplo, en lstm la propiedad dropout es imprescindible, de lo contrario se acostumbra a datos de varias epochs. Sé que en pytorch la propiedad dropout sólo se puede utilizar en una transición entre dos capas idénticas, por lo que necesita 2 capas recurrentes. Y en tensorflow cualquier capa puede tener dropout. Ventaja obvia de tensorflow sobre pytorch.
Batch processing in back propagation. ¡¿Por qué el autor tiene un lote es cualquier número! Resulta que en cada epoch elige una cantidad aleatoria de datos para entrenar. ¡Un lote es una cantidad! Por ejemplo, muestrea 1000 elementos, y eso son 10 paquetes de 100 valores cada uno. Cada época es un paquete diferente, pero siempre hay 100 valores. Hago el entrenamiento paquete a paquete, y ajusto los pesos al final de cada paquete. Esto puede asegurar que no me quedo atascado en un mínimo local. Y utilizo todos los datos de muestra, no sólo algunos.
La optimización del comercio aún no funciona. Aparece un extraño error en la ventana de diálogo. El ordenador se ha apagado una vez. Es decir, si entrenas la red y luego intentas optimizar la operación con ella.
En mi opinión, es un error utilizar un estimulador gráfico para forex. Se mire como se mire, no hay muchos datos. Más correcto, en mi opinión, sería utilizar agentes metatrader en el optimizador para ejecutar diferentes flujos de entrenamiento para diferentes redes. Por ejemplo, en tensorflow estoy entrenando 7 flujos. Uno se agota, se añade otro. Y así sucesivamente en orden de 100 variantes. Luego los ejecuto en el historial.
El punto aquí es que una red neuronal puede ser buena. Pero no todas las redes neuronales pueden pasar su historial de entrenamiento. Por eso necesitas muchas variantes de redes.
ChatGPT sugiere que la mejor manera de clasificar entre los dos es utilizar un sigmoide. Y eso es exactamente lo que no pude encontrar. Y las funciones de activación son diferentes. ¿Pero la función de pérdida es la misma - MSE?
Tangente sigue siendo una regresión, no una clasificación. -1 a 1 no es una probabilidad, es un cálculo de valor.
En resumen. No hay nada más. Así que el trabajo es ciertamente bueno. Lo usaré.
LG 2 10:07:44.216 Core 1 desconectado
KP 0 10:07:44.216 Núcleo 1 conexión cerrada
¿Has tenido suerte en encontrar una solución? Si la encuentro, la publicaré.
No hay ningún archivo"nuestro_modelo.net " OMI