MetaTrader 5 build 1395: Velocidad de operaciones comerciales aumentada y mejoras en la simulación visual

Se ha optimizado y acelerado considerablemente el envío de comandos comerciales con el terminal de cliente

19 agosto 2016

Terminal

  1. Se ha optimizado y acelerado considerablemente el envío de comandos comerciales con el terminal de cliente.
  2. Corregido el error que provocaba que los programas MQL5 no se pudieran ejecutar en los terminales al trabajar con la versión de 32 bits de Windows 10, build 1607.
  3. Añadida al navegador la muestra del modo de funcionamiento de la cuenta comercial Hedging o Netting.
  4. Añadido al navegador un comando del menú de contexto para conectar la cuenta elegida al terminal web.
  5. Se ha reelaborado el apartado del menú "Manual", y añadido enlaces a vídeos tutoriales.
  6. Corregida una serie de errores de la interfaz al trabajar con pantallas de alta definición (4K).
  7. Corregidos errores en la traducción de la interfaz de usuario a la lengua persa.

MQL5

  1. Añadidos los punteros 'void *', lo que permitirá crear colecciones abstractas de objetos. En una variable de este tipo se puede guardar un puntero a un objeto de cualquier clase.
    Para esta transformación se recomienda usar el operador dynamic_cast<nombre de la clase *>(puntero void *). Si la transformación no es posible, el resultado será NULL.
    class CFoo { };
    class CBar { };
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       void *vptr[2];
       vptr[0]=new CFoo();
       vptr[1]=new CBar();
    //---
       for(int i=0;i<ArraySize(vptr);i++)
         {
          if(dynamic_cast<CFoo *>(vptr[i])!=NULL)
             Print("CFoo * object at index ",i);
          if(dynamic_cast<CBar *>(vptr[i])!=NULL)
             Print("CBar * object at index ",i);
         }
       CFoo *fptr=vptr[1];  // dará error de transformación de los punteros, vptr[1] no es un objeto de CFoo
      }
    //+------------------------------------------------------------------+
  2. Añadido el soporte del operador [ ] para la línea, lo que permitirá obtener un símbolo de la línea según el índice. Si el índice establecido sale de los límites de la línea, el resultado será 0.
    string text="Hello";
    ushort symb=text[0];  // retornará el código del símbolo 'H'
    
  3. Añadida una segunda variante del manejador de eventos TesterInit con la signatura int OnTesterInit(void), que puede retornar los códigos INIT_SUCCEEDED (0) o INIT_FAILED (o bien un valor cualquiera distinto a cero). Si OnTesterInit retorna un valor distinto a cero, entonces la optimización no comenzará.
  4. Corregido el error que provocaba que diferentes sobrecargas de la función  ChartGetString diesen un resultado distinto.

Tester

  1. Añadidos comandos adicionales y atajos de teclado para la simulación visual. Ahora los gráficos en el simulador visual se pueden ajustar de la misma forma que en el terminal: cambiar los colores, controlar la muestra de diferentes elementos, aplicar plantillas, etc.




  2. Corregido el funcionamiento de la función Sleep en el modo de simulación "Según precios de apertura".
  3. Corregido el error que provocaba la formación de un estado incorrecto de las barras al trabajar con los marcos temporales W1 y MN1.

MetaEditor

  1. MetaEditor: Añadida traducción de la interfaz de usuario al chino tradicional.

Se ha actualizado la documentación.