Terminal
-
Adicionados 28 novos EAs e 12 novos indicadores ao pacote padrão da
plataforma. Os aplicativos estão disponíveis nas seções "Advisors\Free
Robots" e "Indicators\Free Indicators" no Navegador. Para cada um deles,
o código fonte está disponível com comentários detalhados, o que
ajudará você a estudar a linguagem MQL5.
Nos robôs, foram
implementadas estratégias de negociação baseadas em indicadores técnicos
e padrões de velas, como 3 Black Crows – 3 White Soldiers, Bullish
Engulfing – Bearish Engulfing, Bullish Harami – Bearish Harami e outros.
Os novos indicadores são a implementação de canais populares:
Camarilla, DeMark, Donchian, Fibonacci, Keltner e outros.
- Estão em andamento preparativos para lançar assinaturas de dados de mercado Nasdaq.
Diretamente da plataforma, os traders poderão acessar cotações em tempo
real e um histórico de preços profundo de centenas de instrumentos
financeiros de uma das maiores bolsas. Para isso, é necessário apenas
uma conta demo no servidor MetaQuotes-Demo e uma conta MQL5.community.
Ao
assinar, basta adicionar os instrumentos relevantes à "Observação do
Mercado" e começar a trabalhar. Você poderá abrir gráficos, analisá-los
com qualquer objeto e indicador, bem como usar os dados para testar
estratégias de negociação no testador. O acesso a todas as informações é
feito de maneira padrão, como para os instrumentos financeiros comuns
com os quais você trabalha com a corretora.
- A seção de margem na especificação do instrumento foi aprimorada. Agora
ela mostra tanto os coeficientes de margem para cada tipo de instrumento
quanto os valores finais de margem calculados.
Também foram corrigidos erros na exibição da margem para alguns tipos de instrumentos.
- Adicionado um link para o canal do Telegram MQL5 no menu "Ajuda". No canal, são publicados regularmente materiais interessantes para desenvolvedores: revisões de novos artigos sobre programação e robôs e indicadores gratuitos da biblioteca de códigos CodeBase. Inscreva-se no canal para não perder informações importantes.
- Adicionado suporte para o parâmetro ShutdownTerminal na seção [StartUp] dos arquivos de configuração personalizados.
Use este parâmetro para iniciar a plataforma e executar tarefas únicas
por meio de scripts. Por exemplo, você tem um script que tira um
screenshot do gráfico. Você cria um arquivo de configuração que inicia
este script junto com a plataforma. Se adicionar a ele ShutdownTerminal
com o valor "Yes", a plataforma será automaticamente desligada logo após
a conclusão do script.
- Reforçada a segurança dos protocolos de rede e produtos no Mercado.
- o suporte ao serviço de "Sinais" foi desativado para contas demo. Para obter estatísticas avançadas sobre suas contas de treinamento, use o novo relatório de negociação.
Ele fornece uma série de indicadores sobre a rentabilidade e o risco da
sua estratégia, contém gráficos de crescimento, balanço e patrimônio
líquido, diagramas de distribuição de operações por direção e
instrumentos, e muito mais.
- Corrigida a exibição de links para contratos de corretagem no menu "Ajuda".
- Melhorada a seleção do melhor servidor ao alugar um VPS.
- Corrigida a atualização da página de assinaturas ao alternar entre seções no Navegador.
- Corrigida a atualização da lista de contratos ao abrir uma conta preliminar.
- Atualizadas as traduções da interface do usuário.
MQL5
- Adicionada a propriedade MQL_STARTED_FROM_CONFIG à enumeração ENUM_MQL_INFO_INTEGER. Retorna verdadeiro se o script/expert foi iniciado na seção StartUp do arquivo de configuração. Isso significa que este script/expert foi escrito no arquivo de configuração com o qual o terminal foi iniciado.
- Continua o trabalho de expansão do suporte para modelos ONNX.
As tarefas de aprendizado de máquina nem sempre exigem maior precisão
computacional. Para acelerar os cálculos, alguns modelos usam tipos de
dados com menor precisão, como Float16 e até mesmo Float8. Para que os
usuários possam fornecer esses dados como entrada para os modelos, as
seguintes funções foram adicionadas ao MQL5:
bool ArrayToFP16(ushort &dst_array[],const float &src_array[],ENUM_FLOAT16_FORMAT fmt);
bool ArrayToFP16(ushort &dst_array[],const double &src_array[],ENUM_FLOAT16_FORMAT fmt);
bool ArrayToFP8(uchar &dst_array[],const float &src_array[],ENUM_FLOAT8_FORMAT fmt);
bool ArrayToFP8(uchar &dst_array[],const double &src_array[],ENUM_FLOAT8_FORMAT fmt);
bool ArrayFromFP16(float &dst_array[],const ushort &src_array[],ENUM_FLOAT16_FORMAT fmt);
bool ArrayFromFP16(double &dst_array[],const ushort &src_array[],ENUM_FLOAT16_FORMAT fmt);
bool ArrayFromFP8(float &dst_array[],const uchar &src_array[],ENUM_FLOAT8_FORMAT fmt);
bool ArrayFromFP8(double &dst_array[],const uchar &src_array[],ENUM_FLOAT8_FORMAT fmt);
Como
os formatos de números reais para 16 e 8 bits podem variar, no
parâmetro fmt nas funções de conversão é necessário especificar qual
formato de número precisa ser processado. Para versões de 16 bits, é
utilizada a nova enumeração NUM_FLOAT16_FORMAT, que atualmente possui os
seguintes valores:
- FLOAT_FP16 — formato padrão de 16 bits, também conhecido como half.
- FLOAT_BFP16 — formato especial brain float point.
Para versões de 8 bits, é utilizada a nova enumeração ENUM_FLOAT8_FORMAT, que atualmente possui os seguintes valores:
- FLOAT_FP8_E4M3FN
— número de ponto flutuante de 8 bits, 4 bits para o expoente e 3 bits
para a mantissa. Geralmente usado como coeficientes.
- FLOAT_FP8_E4M3FNUZ
— número de ponto flutuante de 8 bits, 4 bits de expoente e 3 bits de
mantissa. Suporta NaN, não suporta zero negativo e Inf. Geralmente usado
como coeficientes.
- FLOAT_FP8_E5M2FN — número de ponto
flutuante de 8 bits, 5 bits de expoente e 2 bits de mantissa. Suporta
NaN e Inf. Geralmente usado para gradientes.
- FLOAT_FP8_E5M2FNUZ
— número de ponto flutuante de 8 bits, 5 bits de expoente e 2 bits de
mantissa. Suporta NaN e Inf, não suporta zero negativo. Também usado
para gradientes.
- Adicionados novos métodos de matrizes e vetores usados em aprendizado de máquina:
- PrecisionRecall — calcula valores para a construção da curva precision-recall. Este método, assim como o método ClassificationScore, é aplicado a um vetor de valores verdadeiros
- ReceiverOperatingCharacteristic
— calcula valores para a construção da curva Receiver Operating
Characteristic (ROC). Este método, assim como o método
ClassificationScore, é aplicado a um vetor de valores verdadeiros.
- ONNX Runtime atualizado para a versão 1.17. Detalhes do lançamento estão disponíveis no GitHub.
- pacote de integração com Python
atualizado para a versão 5.0.4200, adicionado suporte para Python 3.12.
Atualize seu pacote com o comando "pip install --upgrade MetaTrader5"
para obter as últimas mudanças.
- Corrigido o funcionamento da função OrderCalcMargin para alguns casos.
- Adicionado o valor DEAL_REASON_CORPORATE_ACTION à enumeração ENUM_DEAL_REASON
- operação realizada como resultado de uma ação corporativa: fusão ou
renomeação de um título, transferência de um cliente para outra conta,
etc.
- Adicionado suporte para comparação de vetores e matrizes complexos para o método Compare.
A comparação envolve estimar a distância entre números complexos. A
distância é calculada usando a seguinte fórmula sqrt(pow(r1-r2, 2) +
pow(i1-i2, 2)) e é um número real que já pode ser comparado com épsilon.
- Corrigida a conversão de variáveis de tipo de cor para texto no formato RGB.
- Corrigido o retorno do resultado da obtenção de autovetores no método Eig no caso de autovalor complexo. Adicionada sobrecarga de método para soluções complexas.
MetaEditor
- Adicionado um link para o recém-publicado livro "Programação no MQL5 para traders"
no menu Ajuda\MQL5.community. O livro também foi adicionado ao sistema
de busca, permitindo que você encontre materiais necessários diretamente
do MetaEditor:
- O recurso de busca embutido foi aprimorado:
- A
seção de resultados de busca na janela "Ferramentas" foi dividida em
duas abas: "Busca" — para resultados de busca online (documentação,
artigos, livro, etc.), "Busca em arquivos" — para resultados locais.
- Na
seção de resultados, foi adicionada uma linha de busca separada. Você
pode usá-la em vez da linha de busca na barra de ferramentas principal
do MetaEditor.
- Adicionado suporte aos modos AVX, AVX2 e AVX512 na compilação de programas a partir da linha de comando. Para isso, adicione um dos seguintes parâmetros ao comando: /avx, /avx2 ou /avx512.
- O motor SQLite para trabalhar com bancos de dados foi atualizado para a versão 3.45.
- Suporte ao Internet Explorer foi descontinuado. Agora, para a exibição de páginas HTML, é utilizado apenas Microsoft Edge WebView2.
Comparado com o obsoleto MSHTML, o novo componente expande
significativamente as capacidades de exibição de conteúdo web,
fornecendo acesso a tecnologias modernas. A transição para o WebView2
permitirá melhorar a aparência de algumas seções do MetaEditor, aumentar
sua performance, criar interfaces mais responsivas.
- Corrigido um travamento que ocorria em casos raros durante o preenchimento automático de funções.
- Corrigido um travamento que ocorria em casos raros durante o preenchimento automático de funções.
Testador
- Corrigido o cálculo do swap triplo caso o dia de início do teste caia no dia do swap triplo.
Correções de acordo com os logs de erro.
MetaTrader 5 Web Terminal
A
exibição dos requisitos de margem na especificação do contrato foi
melhorada. Agora, além dos coeficientes e parâmetros iniciais para
cálculo, é exibido o valor da margem final. Se o valor da margem
depender do volume da posição, os níveis correspondentes serão mostrados
na caixa de diálogo.
A margem é calculada considerando o preço do instrumento no momento da
abertura da janela de especificação e não muda em tempo real. Por isso,
os valores devem ser considerados como aproximados. Para recalcular os
valores com base nos preços atuais, reabra a especificação do
instrumento.
Veja as notícias anteriores, por favor: