MetaTrader 5 build 2085: Integración con Python y mejoras masivas en el simulador de estrategias

Añadida API para solicitar los datos desde el terminal MetaTrader 5 a través de aplicaciones que usen el lenguaje Python

12 junio 2019

Terminal

  1. Añadida API para solicitar los datos desde el terminal MetaTrader 5 a través de aplicaciones que usen el lenguaje Python.

    Python es un moderno lenguaje de programación de alto nivel para el desarrollo de escenarios y aplicaciones. Contiene multitud de bibliotecas para el aprendizaje de máquinas, la automatización de procesos, el análisis y la visualización de datos.

    El paquete MetaTrader para Python ha sido pensado para obtener de forma rápida y sencilla información bursátil a través de la interacción entre procesadores directamente desde el terminal MetaTrader 5. Los datos obtenidos de esta forma se pueden usar en lo sucesivo tanto para realizar cálculos estadísticos, como en el aprendizaje de máquinas.



    Conexión

    1. Descargue la última versión de Python de la página https://www.python.org/downloads/windows
    2. Al instalar Python, marque la casilla de verificación "Add Python X.X to PATH%", para que sea posible iniciar scripts en Python desde la línea de comandos.
    3. Instale el módulo MetaTrader5 desde la línea de comandos
      pip install MetaTrader5
    4. Añada los paquetes matplotlib y pytz
      pip install matplotlib
      pip install pytz

    Funciones

    • MT5Initialize — establece una conexión con el terminal MetaTrader 5
    • MT5Shutdown — cierra una conexión anteriormente establecida con el terminal MetaTrader 5
    • MT5TerminalInfo — obtiene el estado y los parámetros del terminal MetaTrader 5 conectado
    • MT5Version — retorna la versión del terminal MetaTrader 5
    • MT5WaitForTerminal — espera a que el terminal MetaTrader 5 se conecte al servidor comercial
    • MT5CopyRatesFrom — obtiene las barras del terminal MetaTrader 5, a partir de la fecha indicada
    • MT5CopyRatesFromPos — obtiene las barras del terminal MetaTrader 5, a partir del índice establecido
    • MT5CopyRatesRange — obtiene las barras en el intervalo de fechas indicado del terminal MetaTrader 5
    • MT5CopyTicksFrom — obtiene los ticks del terminal MetaTrader 5, a partir de la fecha indicada
    • MT5CopyTicksRange — obtiene los ticks en el intervalo de fechas indicado del terminal MetaTrader 5


  2. Optimizados los apartados "Mercado" y "Señales". Ahora, los escaparates de los productos y señales funcionan hasta siete veces más rápido, haciendo más cómodo el trabajo con los servicios comerciales integrados.




  3. Añadido el soporte del "Mercado", las "Señales" y la "Búsqueda" en Wine. Ahora, los usarios de Linux y Mac OS tendrán acceso a la mayor tienda de aplicaciones comerciales y el servicio de copiado automático de señales.




  4. El sistema de aprendizaje incorporado ha sido traducido a más 30 idiomas, incluyendo el español, el chino, el portugués y el alemán. Para visualizar los consejos interactivos en otro idioma, basta con cambiar el idioma de la interfaz en el menú "Ver".




  5. Añadida la posibilidad de confirmar los teléfonos y el email indicados al abrir cuentas demo o preliminares.

    El bróker determina la necesidad de verificar los datos. Si está activada, al solicitar una cuenta, el tráder recibirá automáticamente los códigos de confirmación, mientras que la ventana de diálogo aparecerán campos especiales para indicar estos:




    Los códigos de confirmación tienen una validez de varios minutos. Si el tráder no los usa para abrir una cuenta durante el tiempo requerido, se verá obligado a repetir el proceso.

    Antes de enviar los códigos, el sistema comprueba si el teléfono/email indicado ha sido confirmado anteriormente. Si el tráder no ha superado la verificación de estos datos desde su computadora, la apertura de las cuentas tendrá lugar como antes, sin confirmación adicional. De esta forma, los tráders no se encontrarán con excesivas dificultades al solicitar cuentas.

  6. Ampliadas las posibilidades de pago de los servicios de MQL5.community a través del sistema PayPal. Ahora, el sistema permite realizar compras en un clic.

    Cómo funciona
    Durante el proceso de compra, después de autorizarse en su cuenta en PayPal, se le ofrecerá permitir en lo sucesivo los pagos a nuestra compañía:





    Si el usuario está de acuerdo, todas las compras posteriores se podrán realizar en un solo clic, con solo pulsar el botón de la cuenta guardada anteriormente:




    Si usted pulsa "Cancelar y regresar a MetaQuotes Software Corp.", usted continuará realizando los pagos como antes, autorizándose en PayPal manualmente en cada compra.
    El sitio MQL5.com/la plataforma MetaTrader 5 no guarda sus datos de pago. La comprobación de los datos en caso de ingreso de fondos, compras en el Mercado o suscripciones a una Señal la realiza en su lado el sistema de pago.
    Usted siempre puede negarse a vincular su cuenta de PayPal, comprando los servicios del modo habitual.

  7. Mejoras masivas y optimización del funcionamiento del simulador de estrategias.

    Hemos realizado una enorme trabajo en la optimización interna del simulador de estrategias y la corrección de errores. Todo ello ha acelerado significativamente la simulación en una serie de tareas, aumentando asimismo la estabilidad general del funcionamiento. Las mejoras más significativas son:

    El trabajo con frames
    Se ha optimizado significativamente el trabajo con frames en los agentes locales, de red y en la nube. Ahora, estos se procesan a una mayor velocidad, y nunca se omiten.

    Distribución de tareas entre los agentes
    Ahora, al ejecutar la optimización, el simulador de estrategias puede redistribuir las tareas sobre la marcha. Si un nuevo agente está disponible (o uno de los utilizados anteriormente ha quedado libre), el simulador forma automáticamente un paquete de datos de aquellos que ya habían sido distribuidos entre otros agentes. De forma análoga, las tareas se redistribuyen al detectarse que ciertos agentes trabajan demasiado lento: sus tareas se asignan paralelamente a otros agentes, para finalizar la optimización más rápido.

    Asimismo, se ha acelerado significativamente la distribución de tareas en el modo de cálculos matemáticos.

    Estadísticas de optimización en el diario
    Se ha ampliado el registro del proceso de optimización en el diario: ahora se muestra una estadística de uso más detallada de MQL5 Cloud Network, el evento activación/desactivación de agentes en la nube, etc.

    Trabajo en el modo de registro de optimización completo
    Para ahorrar recursos durante la optimización, en el diario del simulador de estrategias no se muestran todos los mensajes de los agentes. Para mostrarlos forzosamente, se ha pensado el modo "Diarios de optimización completos", que se activa a través del menú contextual del diario del simulador. Antes, la activación de este modo ralentizaba sustancialmente el proceso de optimización, ahora prácticamente no influye en el tiempo de los cálculos,.

    MQL5 Cloud Network
    Optimizado el funcionamiento de los agentes de simulación en la nube. Ahora, las tareas se distribuyen de forma más efectiva.

  8. El calendario económico incluye más de 900 indicadores de las 18 mayores economías del mundo: los Estados Unidos, la Unión Europea, Japón, Gran Bretaña, etcétera. Los datos se recopilan en tiempo real a partir de fuentes públicas, permitiendo al usuario reaccionar a tiempo a la situación mundial y tomar decisiones comerciales equilibradas.

    El calendario económico está disponible no solo en los terminales y los sitios web, sino también en los dispositivos móviles. Ahora podrá pasar a la aplicación necesaria directamente desde el menú contextual del calendario en el terminal:




    Elija su plataforma y descargue la aplicación Tradays:


    En adición a todas las funciones del calendario de la plataforma de escritorio, en la versión móvil están disponibles la posibilidad de crear recordatorios sobre eventos, así como la historia completa de los indicadores en forma de gráficos y recuadros.

  9. Añadida la formación automática de la historia de barras de un instrumento personalizado al importar la historia de ticks. Ahora, al cambiar los datos de ticks de un instrumento personalizado, las barras correspondientes se recalculan automáticamente:

    • Esto permite evitar divergencias en los datos.
    • Después de importar los datos de ticks (si están lo suficientemente completos), podremos no gastar tiempo en la importación de barras, el terminal las calculará él mismo.

    Los cambios conciernen tanto a la improtación de ticks a través de la interfaz, como a la actualización de ticks a través de un programa MQL5 con la ayuda de la función CustomTicks*. Cualquier cambio de los datos de ticks conllevará el recálculo de las barras de minuto correspondientes del instrumento personalizado.

  10. Corregida la actualización de la información en la "Ventana de datos" al usar el cursor en cruz en un gráfico desprendido.
  11. Corregido el guardado de la historia de ticks. Antes, si se daban varios ticks en un milisegundo, el orden de guardado de los ticks podía sufrir incorrecciones.
  12. Corregida la construcción de gráficos cuando la historia de precios es demasiado corta (menos de un día).

MQL5

  1. Añadido el soporte de depuración de servicios MQL5. Ahora, usted podrá poner a prueba programas de forma análoga a asesores e indicadores.
  2. Añadidos nuevos tipos de cálculo del beneficio y el margen en la enumeración ENUM_SYMBOL_CALC_MODE:

    • SYMBOL_CALC_MODE_EXCH_BONDS — cálculo para las obligaciones bursátiles.
    • SYMBOL_CALC_MODE_EXCH_STOCKS_MOEX — cálculo para las acciones negociadas en la Bolsa de Moscú.
    • SYMBOL_CALC_MODE_EXCH_BONDS_MOEX — cálculo para las obligaciones negociadas en la Bolsa de Moscú.

  3. Añadida la función TesterDeposit, que permite emular operaciones de depósito de fondos en la cuenta durante la simulación. Puede resultar útil al poner a prueba diferentes sistemas de gestión de capital.
    bool  TesterDeposit(
       double money      // suma depositada
       );
  4. Ahora, durante la ejecución del método OnDeinit, el programa MQL5 no recibe ningún evento del terminal. Antes, los programas podían no tener tiempo de finalizar correctamente la desinicialización (por ejemplo, eliminar todos los objetos tras de sí), debido a que recibían otros eventos.
  5. Corregidos los errores surgidos al cambiar la historia de ticks del día actual de los instrumentos comerciales personalizados.
  6. Corregido el error que provocaba la ralentización del funcionamiento de los programas al usar un gran número (decenas de miles) de objetos gráficos.
  7. Corregido el bloqueo del terminal al realizar solicitudes frecuentes a la historia de ticks desde programas MQL5.
  8. Corregido el error en el funcionamiento de la función iBarShift. Con la bandera "exact=false" y una solicitud fuera de los datos, se retornaba el número de la barra más antigua, y no el de la más nueva.

Tester

  1. Corregida la definición del número de núcleos en las computadoras con procesadores que disponen de varios núcleos NUMA.
  2. Añadida la posibilidad de iniciar la simulación y la optimización con un depósito inicial de cero, puesto que ahora usted puede emular el depósito de fondos durante la simulación con la ayuda de la nueva función TesterDeposit.

MetaEditor

  1. Ahora, es posible añadir el comando de estilización de código al panel de herramientas de acceso rápido.
  2. Corregida la conmutación a la definición y la muestra de información sobre los parámetros al usar símbolos no pertenecientes a Unicode como nombre de las funciones y variables.

Documentación actualizada.

La actualización estará disponible a través del sistema LiveUpdate.