---
title: "MetaTrader 5 build 3980: Melhorias e correções - Última atualização"
description: "Aprimorado o novo relatório de negociação. Corrigida a exibição dos valores totais dos swaps, bem como o gráfico de lucros para os... - Última atualização"
image: "https://www.metatrader5.com/i/logo_metatrader5.png"
url: "https://www.metatrader5.com/pt/releasenotes/terminal/2308"
---

# MetaTrader 5 build 3980: Melhorias e correções

## Aprimorado o novo relatório de negociação. Corrigida a exibição dos valores totais dos swaps, bem como o gráfico de lucros para os símbolos

21 setembro 2023

### Terminal

1.  Aprimorado o [novo relatório de negociação](https://www.metatrader5.com/pt/releasenotes/terminal/2304). Corrigida a exibição dos valores totais dos swaps, bem como o gráfico de lucros para os símbolos.
2.  Otimizadas as páginas de depósito e saque. Saiba mais sobre a nova integração da plataforma com sistemas de pagamento lendo nossa [anterior notícia sobre o build 3950](https://www.metatrader5.com/pt/releasenotes/terminal/2304).
3.  Otimizado o recálculo de operações financeiras em toda a plataforma, incluindo o testador de estratégias. Os lucros, as margens e muitos outros parâmetros agora são calculados mais rapidamente.
4.  Atualizadas as traduções da interface do usuário.

### MQL5

1.  adicionados os métodos Conjugate para os tipos complex, vetor<complex> e matrix<complex>. Eles realizam a [conjugação](https://pt.wikipedia.org/wiki/Conjugado_de_um_número_complexo) para números complexos.

   ```
   //+------------------------------------------------------------------+ //| Script program start function                                    | //+------------------------------------------------------------------+ void OnStart()   {    complex a=1+1i;    complex b=a.Conjugate();    Print(a, "  ", b);    /*    (1,1)  (1,-1)    */    vectorc va= {0.1+0.1i, 0.2+0.2i, 0.3+0.3i};    vectorc vb=va.Conjugate();    Print(va, "  ", vb);    /*    [(0.1,0.1),(0.2,0.2),(0.3,0.3)]  [(0.1,-0.1),(0.2,-0.2),(0.3,-0.3)]    */    matrixc ma(2, 3);    ma.Row(va, 0);    ma.Row(vb, 1);    matrixc mb=ma.Conjugate();    Print(ma);    Print(mb);    /*    [[(0.1,0.1),(0.2,0.2),(0.3,0.3)]     [(0.1,-0.1),(0.2,-0.2),(0.3,-0.3)]]    [[(0.1,-0.1),(0.2,-0.2),(0.3,-0.3)]     [(0.1,0.1),(0.2,0.2),(0.3,0.3)]]    */       ma=mb.Transpose().Conjugate();    Print(ma);    /*    [[(0.1,0.1),(0.1,-0.1)]     [(0.2,0.2),(0.2,-0.2)]     [(0.3,0.3),(0.3,-0.3)]]    */   }
   ```
2.  Adicionado o processamento da saída do [modelo ONNX](https://www.mql5.com/pt/docs/onnx) do tipo Sequence of maps.Para modelos ONNX que fornecem sequências Map (ONNX_TYPE_SEQUENCE of ONNX_TYPE_MAP) na camada de saída, um array dinâmico ou fixo de estruturas deve ser passado como parâmetro de saída. Os dois primeiros campos dessa estrutura devem corresponder aos tipos de chave e valor de ONNX_TYPE_MAP e devem ser arrays fixos ou dinâmicos.Veja o modelo iris.onnx criado pelo seguinte script Python:

   ```
   from sys import argv data_path=argv[0] last_index=data_path.rfind("\\")+1 data_path=data_path[0:last_index] from sklearn.datasets import load_iris iris_dataset = load_iris() from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split(iris_dataset['data'], iris_dataset['target'], random_state=0) from sklearn.neighbors import KNeighborsClassifier knn = KNeighborsClassifier(n_neighbors=1) knn.fit(X_train, y_train) #  Convert into ONNX format from skl2onnx import convert_sklearn from skl2onnx.common.data_types import FloatTensorType initial_type = [('float_input', FloatTensorType([None, 4]))] onx = convert_sklearn(knn, initial_types=initial_type) path = data_path+"iris.onnx" with open(path, "wb") as f:     f.write(onx.SerializeToString())
   ```

   Abra o arquivo onnx criado no MetaEditor:

   ![Visualização do modelo ONNX no MetaEditor](https://www.metatrader5.com/c/17/1/onnx.png)

   A saída "output_probability" é uma sequência Map, cuja chave tem o tipo INT64 (que corresponde ao tipo long da linguagem MQL5) e o valor do tipo float. Para obter dados dessa saída, declaramos a seguinte estrutura:

   ```
   struct MyMap   {    long              key[];    float             value[];   };
   ```

   Aqui usamos arrays dinâmicos com tipos apropriados. Nesse caso, é possível usar arrays fixos, já que para esse modelo o Map sempre contém 3 pares de chave+valor.Como uma sequência é retornada do Map, como parâmetro para aceitar os dados com a saída output_probability deve ser passada um array de tais estruturas - dinâmico ou fixo, com base nas propriedades do modelo específico. Por exemplo:

   ```
   //--- declaramos um array para receber dados da camada de saída output_probability MyMap output_probability[]; ... //--- execução do modelo OnnxRun(model,ONNX_DEBUG_LOGS,float_input,output_label,output_probability);
   ```

### MetaEditor

1.  Corrigida a exibição do tipo de parâmetro de saída no [visualizador de modelos ONNX](https://www.metatrader5.com/pt/metaeditor/help/machine_learning#onnx).

### MetaTrader 5 Web Terminal build 3980

1. Adicionada a seção de contato da corretora ao menu principal.
2. Adicionado o tratamento de erro de autorização com certificado SSL. Esse tipo de autorização não é compatível com o terminal da Web e, em vez disso, a autorização por senha de uso único pode ser ativada.
3. Corrigido o link para download da versão desktop da plataforma no menu principal.
4. Alterado o diálogo de gerenciamento de contas. Se a corretora não tiver contas de demonstração ou reais disponíveis, o item de menu correspondente ficará oculto.

**Veja as notícias anteriores:**

- [MetaTrader 5 build 3950: Retirada/depósito no terminal e relatório de negociação atualizado](https://www.metatrader5.com/pt/releasenotes/terminal/2304)
- [MetaTrader 5 build 3800: ordens Book or Cancel, assistência de IA ao escrever código e suporte aprimorado para ONNX](https://www.metatrader5.com/pt/releasenotes/terminal/2286)
- [MetaTrader 5 build 3660: Aprimoramentos e correções](https://www.metatrader5.com/pt/releasenotes/terminal/2281)
- [MetaTrader 5 build 3640: terminal web disponível em 11 idiomas](https://www.metatrader5.com/pt/releasenotes/terminal/2279)
- [MetaTrader 5 build 3620: melhorias no terminal web, suporte ONNX e multiplicação mais rápida de matrizes em MQL5](https://www.metatrader5.com/pt/releasenotes/terminal/2278)
