Nueva versión de la plataforma MetaTrader 5 build 3390: Float en OpenCL y funciones matemáticas, métodos de activación y pérdida para el aprendizaje automático
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
El 4 de agosto de 2022 se lanzará la versión actualizada de la plataforma MetaTrader 5. La actualización contiene los siguientes cambios:
En todo el mundo cotizan al menos 7.000 acciones líquidas y más de 2.000 ETF. Además, hay muchos futuros y otros derivados. La plataforma MetaTrader 5 contiene una enorme base de datos de instrumentos bursátiles y le permite ir directamente desde la Observación de Mercado a la página web del agregador en un solo clic para obtener datos fundamentales. Para la comodidad de los inversores, ofrecemos una variedad de fuentes de información a elegir para cada valor.Seguimos ampliando las capacidades de la plataforma MetaTrader 5 para el trading algorítmico y el aprendizaje automático. Antes, añadimos un nuevo tipo de datos, matrices y vectores, que nos permite eliminar el uso de arrays para el procesamiento de datos. Para manejarlos, hemos añadido al lenguaje MQL5 más de 70 métodos que nos permiten realizar cálculos de álgebra lineal y estadística como una sola operación. La multiplicación, la conversión y la resolución de un sistema de ecuaciones se realizan ahora de forma sencilla y sin programación innecesaria. La incorporación de nuevos tipos no ha dejado intactas las funciones matemáticas.
Las funciones matemáticas se diseñaron originalmente para realizar operaciones matemáticas con cantidades escalares. Ahora la mayoría de estas funciones pueden utilizarse con los nuevos tipos de datos (matrices y vectores) MathAbs, MathArccos, MathArcsin, MathArctan, MathCeil, MathCos, MathExp, MathFloor, MathLog, MathLog10, MathMod, MathPow, MathRound, MathSin, MathSqrt, MathTan, MathExpm1, MathLog1p, MathArccosh, MathArcsinh, MathCosh, MathSinh, MathTanh. En este caso, la matriz o el vector se procesarán término a término. Ejemplo:
En el caso de MathMod y MathPow, el segundo parámetro podrá ser un escalar, o una matriz o vector del tamaño correspondiente.
Vamos a mostrar con un ejemplo cómo calcular la desviación estándar usando las funciones matemáticas sobre un vector.
MQL5: Mejoradas las funciones matemáticas para trabajar con el tipo float. Debido a la nueva posibilidad de aplicar funciones matemáticas a matrices y vectores de tipo float, también se han mejorado las funciones correspondientes aplicadas a escalares del tipo float. Antes, los parámetros de estas funciones se convertían incondicionalmente al tipo double, se llamaba a la implementación correspondiente de la función matemática y luego el resultado se convertía en float. Ahora, en el caso del tipo float, los parámetros y los resultados no se convierten, ya que se llaman las implementaciones de las funciones matemáticas correspondientes al tipo float.
Diferencia en los cálculos usando como ejemplo el seno matemático:
La función de activación en una red neuronal determina cómo la suma ponderada de la señal de entrada se transforma en la señal de salida de un nodo o varios nodos a nivel de red. La elección de la función de activación ejerce una gran influencia en las capacidades y el rendimiento de la red neuronal. Las diferentes partes del modelo pueden usar funciones de activación distintas. En MQL5 no solo se implementan todas las funciones de activación conocidas, sino también las derivadas de la función de activación. Las funciones derivadas son necesarias a la hora de calcular rápidamente una corrección basada en el error resultante durante el entrenamiento de una red neuronal.
La función de pérdida se encarga de valorar lo bien que el modelo predice el valor real. La construcción del modelo se reduce a resolver el problema de la minimización del valor de esta función en cada etapa. Dependiendo del tipo de datos, se requerirán enfoques distintos, es decir, funciones diferentes. La función de pérdida también puede depender de las variables de los pesos y el desplazamiento. La función de pérdida es unidimensional y no supone un vector, ya que evalúa el rendimiento global de la red neuronal.
Si el problema requiere usar solo GPUs que soporten double, esto podrá indicarse explícitamente al llamar a CLContextCreate utilizando el nuevo valor CL_USE_GPU_DOUBLE_ONLY (solo se permiten dispositivos con soporte de cálculos de tipo double).
volume=-1 && volume_real=2 — se utilizará volume_real=2,
volume=3 && volume_real=0 — se utilizará volume=3.
El volumen con la precisión MqlBookInfo.volume_real tiene mayor prioridad en comparación con MqlBookInfo.volume normal. Si se especifican ambos valores para un elemento de la profundidad de mercado, se usará volume_real.
Si al menos un elemento de la profundidad de mercado se describe de forma incorrecta, el sistema descartará por completo el estado transmitido.
La actualización estará disponible a través del sistema Live Update.