MetaTrader 5 build 4260: melhorias gerais

corrigido um erro de assinatura de produtos gratuitos no serviço "Assinaturas"

22 março 2024

Terminal

  1. Corrigido um erro de assinatura de produtos gratuitos no serviço "Assinaturas". Em alguns casos, o botão correspondente pode estar ausente na caixa de diálogo.
  2. Atualizações nas traduções da interface do usuário.

MQL5

  1. Expandido o suporte para eventos de teclado:

    • Adicionado o evento CHARTEVENT_KEYUP para o manipulador OnChartEvent. Ele permite monitorar quando um usuário solta uma tecla no teclado.
    • Adicionado o tratamento de teclas "Mortas" (Dead keys), que são teclas que permitem alterar a aparência do próximo caractere a ser inserido. Por exemplo, no layout grego, para colocar acentos em vogais ά, έ, ύ, etc., é necessário pressionar a tecla ";", e então digitar a letra. Agora, o pressionamento dessas teclas pode ser monitorado usando a função TranslateKey.
    • As funções TranslateKey e TerminalInfoInteger foram melhoradas. Agora, ao receber eventos CHARTEVENT_KEYUP ou CHARTEVENT_KEYDOWN no OnChartEvent, você pode obter o estado completo do teclado no momento do evento. Por exemplo, se um usuário pressionou a tecla Z, você poderá saber se a tecla Ctrl ou Shift foi pressionada naquele momento. Para outros eventos, as funções funcionarão como antes, retornando o estado do teclado no momento atual.

  2. Atualizada biblioteca Alglib. Devido à atualização, os seguintes métodos nas classes CMatrixDouble e CMatrixComplex foram alterados:
    vector<double/complex> operator[](const int i) const;
    vector<double/complex> operator[](const ulong i) const;
    Agora, em vez deles, é usado um método com um valor de retorno constante:
    const vector<double/complex> operator[](const ulong i) const;
    A correção permitirá capturar o uso incorreto do resultado no na nova versão do Alglib, o código mat[row][col]=x funciona de forma diferente do antigo. Antes, era uma escrita na matriz, e agora - escrita em um objeto vector<double/complex> temporário, que é destruído imediatamente após a escrita.

    Adicionar const ao valor de retorno torna impossível usar a gravação mat[row][col]=x. Como mat[row] agora retorna um vetor constante, tentar reescrever seu elemento através de mat[row][col] levará a um erro de compilação.

  3. Corrigido um erro que, em alguns casos, poderia levar a um funcionamento incorreto das funções ChartGet*.

MetaEditor

  1. Adicionada pesquisa pelo livro "Redes Neurais e Algotrading no MQL5". Agora, ele está unificado em uma seção com o livro anteriormente lançado "Programação em MQL5 para Traders".



Tester

  1. Corrigida a otimização em um grande número de agentes remotos. Em alguns casos, o erro poderia levar a uma carga excessiva no CPU.


MetaTrader 5 Web Terminal

  1. Corrigida a emissão de ordens limitadas para instrumentos com execução a mercado. Agora, ao alterar o preço de uma ordem limitada em relação ao atual (mais alto ou mais baixo), o tipo de ordem proposto não mudará de Buy Limit para Sell Limit e vice-versa, como acontece para instrumentos de outros tipos. Assim, o usuário poderá, se necessário, emitir ordens Buy Limit acima do mercado e Sell Limit abaixo do mercado, para garantir limitação de preço na transação.
  2. Corrigida a exibição de contadores de símbolos selecionados na "Observação do Mercado".