Nova versão da plataforma MetaTrader 5 build 2650: carregamento de gráficos em segundo plano e melhorias na criador de perfil de código MQL5

O que há de novo na MetaTrader 5?

9 outubro 2020

Terminal

  1. Adicionada a opção "Carregar com antecedência os dados dos gráficos para posições e ordens abertas".

    Para economizar tráfego, a plataforma de negociação carrega o histórico de preços dos instrumentos apenas ao serem realmente solicitados, por exemplo, ao abrir um gráfico ou ao iniciar um teste. No entanto, para instrumentos usados ativamente, isso pode nem sempre ser conveniente. Se você habilitar a nova opção, os gráficos dos instrumentos com posições abertas ou ordens pendentes serão sempre atualizados em segundo plano. Assim, ao abrir gráficos, você não precisará esperar pelo carregamento adicional de dados, uma vez que eles estarão imediatamente disponíveis para análise.




  2. Corrigida a formação de barras diárias após os finais de semana.
  3. Corrigida a atualização de gráficos. Em alguns casos, após a adição de dados de preços atualizados, os gráficos não eram reconstruídos.
  4. Otimizada a atualização do cache do histórico de negociação da conta. Isso torna possível reduzir os atrasos ao receber dados usando as funções History*.
  5. Corrigida a exibição de colunas de comentários ao visualizar o histórico de negociação na forma de posições.
  6. Corrigida a exibição do botão de renovação de assinatura de "Sinais".

MQL5

  1. Continuamos trabalhando na atualização total do criador de perfil de código. Além das inovações da versão 2615:

    Adicionados novos parâmetros
    Como anunciado na atualização anterior, para criação de perfil agora é usado o método "Sampling". O criador de perfil faz uma pausa durante a operação de um programa MQL (~1000 vezes por segundo) e coleta estatísticas sobre quantas vezes ocorre uma pausa em uma seção específica do código. Isso inclui a análise de pilhas de chamadas para determinar a "contribuição" de cada função no tempo total de operação do código. No final da criação de perfil, você obtém informações sobre quantas vezes há uma pausa e quantas vezes cada uma das funções acaba na pilha de chamadas:

    • Atividade total da CPU [unidade de medida, %] — número total de "aparições" de uma função na pilha de chamadas.
    • Atividade intrínseca da CPU [unidade de medida, %] — número de "pausas" que ocorrerem diretamente na função especificada. Este contador é mais importante para identificar gargalos, uma vez que, de acordo com as estatísticas, a parada ocorre com mais frequência nas partes do programa que requerem mais tempo de CPU.


    Adicionada a capacidade de desativar o inlining de função durante a criação de perfil
    Ao compilar programas MQL, é realizado o inlining (incorporação) — o código das funções é colocado diretamente no seu local de chamada, o que permite obter uma aceleração significativa durante o trabalho No entanto, isso torna difícil a criação de perfil de funções. Para obter um relatório sobre funções "puras", você pode desativar o inlining durante a criação de perfil nas configurações do MetaEditor:




    Atualizado o design de relatórios
    Redesenhamos o relatório de criação de perfil, bem como a apresentação das informações de criação de perfil na janela de código fonte. O design se tornou mais moderno e familiar para os usuários do Visual Studio.




  2. Corrigido um erro no funcionamento da função CopyTicksRange. Ele causava que, em alguns casos, a função não retornasse todos os dados.
  3. Adicionado o novo código de erro TRADE_RETCODE_HEDGE_PROHIBITED — é impossível abertura de posição ou colocação de ordem pendente, uma vez que posições sobrepostas são restritas. O erro é retornado em resposta a uma tentativa de realizar uma operação de negociação se a conta estiver proibida de fazer cobertura e já tiver uma posição ou ordem na direção oposta para o mesmo símbolo.
  4. Eliminada a capacidade de chamar a função MessageBox ao depurar indicadores. MessageBox não é chamada desde indicadores, pois ela pausa o thread de execução enquanto espera por uma resposta do usuário.
  5. Otimizada e acelerada significativamente a adição de instrumentos de negociação na "Observação do mercado" com ajuda da função SymbolSelect.
  6. Corrigido o comportamento da função ArrayInsert para arrays de tamanho fixo. Agora corresponde ao especificado na documentação: ao inserir elementos, o tamanho do receptor de matriz não muda, enquanto os elementos do receptor de matriz são deslocados desde a posição de inserção para a direita (os últimos elementos de contagem "caem") e os elementos são copiados desde o receptor de matriz para o espaço vazio.

Tester

  1. Corrigido o trabalho com configurações personalizadas de condições de negociação ao testar, redesenhada a caixa de diálogo das configurações.

    • Corrigida a adição de comissões personalizadas. Agora, para o trabalho da comissão, basta indicar o nome do símbolo, e não todo o caminho para ele.
    • Alterada a disposição das guias para um trabalho mais conveniente.
    • Renomeados a caixa de diálogo e a opção para incluir configurações personalizadas.
    • Otimizada a largura das colunas nas tabelas de configurações.
    • Quando você desativa a opção "Usar configurações personalizadas", todas as outras configurações na caixa de diálogo são desativadas. Anteriormente, as configurações permaneciam editáveis e os usuários pensavam erroneamente que seriam aplicadas durante o teste.




  2. Corrigido um erro que ocorria em alguns casos ao receber pedidos do histórico de negociação com base em um ticket.

MetaEditor

  1. Adicionados esquemas de cores predefinidos para a janela de edição de código: claro (por padrão), escuro e azul. Agora, para um trabalho mais confortável à noite, você não precisa reconfigurar manualmente a aparência do editor.

    Além disso, foi adicionada a capacidade de personalizar a cor da borda da janela de dicas de função.



     
  2. Completamente atualizados ícones nas barras de ferramentas para oferecer suporte a monitores HiDPI.

Documentação atualizada.