Propriedades do Programa MQL5 em Execução

Para obter informações sobre o programa mql5 em execução no momento, as constantes ENUM_MQL_INFO_INTEGER e ENUM_MQL_INFO_STRING são usadas.

Para a função MQLInfoInteger

ENUM_MQL_INFO_INTEGER

Identificador

Descrição

Tipo

MQL_HANDLES_USED

Número atual de identificadores de objetos ativos. São considerados tanto objetos dinâmicos (criados por meio de new), bem como objetos não dinâmicos, variáveis globais/locais ou membros de classe. Quanto mais identificadores um programa usa, mais recursos ele consome.

int

MQL_MEMORY_LIMIT

Quantidade máxima possível de memória dinâmica para o programa MQL5 em MB

int

MQL_MEMORY_USED

O tamanho de memória usado pelo programa MQL5 em MB

int

MQL_PROGRAM_TYPE

Tipo do programa MQL5

ENUM_PROGRAM_TYPE

MQL_DLLS_ALLOWED

A permissão para usar DLL para o dado programa executado

bool

MQL_TRADE_ALLOWED

A permissão para negociar para o dado programa executado

bool

MQL_SIGNALS_ALLOWED

A permissão para modificar os Sinais para o determinado programa executado

bool

MQL_DEBUG

O flag, que indica o modo de depuração

bool

MQL_PROFILER

O flag, que indica que o programa está operando em modo de profiling de código

bool

MQL_TESTER

O flag, que indica o processo do testador

bool

MQL_FORWARD

O flag que indica o processo de otimização para frente (forward testing)

bool

MQL_OPTIMIZATION

O flag, que indica o processo de otimização

bool

MQL_VISUAL_MODE

O flag, que indica o processo de testador visual

bool

MQL_FRAME_MODE

O sinalizador, indicando que o Expert Advisor está operando na coleta de resultado no modo de otimização dos quadros

bool

MQL_LICENSE_TYPE

Tipo de licença do módulo EX5. A licença refere-se ao módulo EX5, a partir do qual é feita uma solicitação usando MQLInfoInteger(MQL_LICENSE_TYPE).

ENUM_LICENSE_TYPE

MQL_STARTED_FROM_CONFIG

Returns true if the script/expert was launched from the StartUp section of the configuration file. This means that this script/expert was registered in the configuration file with which the terminal was launched.

bool

Para a função MQLInfoString

ENUM_MQL_INFO_STRING

Identificador

Descrição

Tipo

MQL_PROGRAM_NAME

Nome do programa MQL5 executado

string

MQL_PROGRAM_PATH

Caminho para o dado programa executado

string

 

Para obter informações sobre o tipo do programa em execução, são utilizados valores de ENUM_PROGRAM_TYPE.

ENUM_PROGRAM_TYPE

Identificador

Descrição

PROGRAM_SCRIPT

Script

PROGRAM_EXPERT

Expert

PROGRAM_INDICATOR

Indicador

PROGRAM_SERVICE

Serviço

 

ENUM_LICENSE_TYPE

Identificador

Descrição

LICENSE_FREE

Um versão gratuita ilimitada

LICENSE_DEMO

Um versão trial de um produto pago do Market. Funciona somente no Provador de Estratégia

LICENSE_FULL

Uma versão licenciada adquirida permite pelo menos 5 ativações. O vendedor pode aumentar o número permitido de ativações.

LICENSE_TIME

Uma versão com termo de licença limitada

Exemplo:

   ENUM_PROGRAM_TYPE mql_program=(ENUM_PROGRAM_TYPE)MQLInfoInteger(MQL_PROGRAM_TYPE);
   switch(mql_program)
     {
      case PROGRAM_SCRIPT:
        {
         Print(__FILE__+" is script");
         break;
        }
      case PROGRAM_EXPERT:
        {
         Print(__FILE__+" is Expert Advisor");
         break;
        }
      case PROGRAM_INDICATOR:
        {
         Print(__FILE__+" is custom indicator");
         break;
        }
      default:Print("MQL5 type value is ",mql_program);
   //---
   Print("MQLInfoInteger(MQL_MEMORY_LIMIT)="MQLInfoInteger(MQL_MEMORY_LIMIT), " MB");
   Print("MQLInfoInteger(MQL_MEMORY_USED)="MQLInfoInteger(MQL_MEMORY_USED), " MB");
   Print("MQLInfoInteger(MQL_HANDLES_USED)="MQLInfoInteger(MQL_HANDLES_USED), " handles");