Versão beta do MetaTrader 5 build 1995: calendário econômico, programas MQL5 como serviços e APIs para linguagem R
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Na sexta-feira, 15 de fevereiro de 2019, será lançada uma versão atualizada da plataforma MetaTrader 5 no modo beta. Convidamos todos os traders a testar a nova versão da plataforma para experimentar todas as suas possibilidades e ajudar os desenvolvedores a corrigir os erros encontrados.
Para atualizar para o novo build 1995 da plataforma MetaTrader 5, basta clicar em "Ajuda \ Verificar Atualizações Desktop \ + Última versão beta":
Após a etapa do teste beta, será lançado o novo build final da nova plataforma MetaTrader 5.
Ela contém as seguintes alterações:
- Terminal: calendário econômico embutido totalmente atualizado.
- Terminal: adicionado um novo tipo de programa MQL5, Serviços. Eles permitem que você crie suas próprias fontes de preços para o terminal, transferindo preços vindos de sistemas externos em tempo real, como fazem os servidores de negociação das corretoras.
- Terminal: adicionado sistema de educação.
- Terminal: o histórico da conta de negociação pode ser representado como posições — a plataforma coleta dados sobre transações relacionadas à posição (abertura, aumento, fechamento parcial e total) e agrupa esses dados em um único registro. Isso facilita a visualização do horário de abertura e fechamento de posições, seu volume, preço e resultado total. Essa exibição agora também está disponível em relatórios de histórico exportados para arquivos.
- Terminal: adicionada uma API para solicitar dados do terminal MetaTrader 5 através de aplicativos usando linguagem R.
R CMD INSTALL --build MetaTraderR
Atualmente, os seguintes comandos estão disponíveis para consulta de dados:
- MT5Initialize — inicializa e estabelece uma conexão com o terminal MetaTrader 5. Quando o comando é executado, o terminal é iniciado, se necessário.
- MT5Shutdown — desinicialização e desconexão do terminal MetaTrader 5.
- MT5Version — obtém a versão do terminal MetaTrader 5.
- MT5TerminalInfo — obtém o status e os parâmetros de conexão do terminal ao servidor da corretora (número da conta e endereço do servidor).
- MT5WaitTerminal — espera de 2 minutos para o terminal MetaTrader 5 se conectar ao servidor da corretora.
- MT5CopyTicksFrom(symbol, from, count, flags) — copia os ticks com a data especificada no valor especificado. A data é especificada em milissegundos desde 1970.01.01.
- MT5CopyTicksRange(symbol, from, to, flags) — copia ticks a partir do período de data especificado. A data é especificada em milissegundos desde 1970.01.01.
- MT5CopyRatesFrom(symbol, timeframe, from, count) — copia as barras de minuto de uma data especificada no valor especificado. A data é indicada em segundos desde 1970.01.01.
- MT5CopyRatesFromPos(symbol, timeframe, start_pos, count) — copia as barras de minuto de uma posição especificada começando com última barra.
- MT5CopyRatesFromRange(symbol, timeframe, date_from, date_to) — copia barras do período de data especificado. As datas são especificadas em segundos desde 1970.01.01.
- Terminal: otimizado o diálogo fechar posição de negociação usando outra oposta. Agora seu trabalho não diminui com um grande número de posições abertas.
- Terminal: corrigidos erros de cálculo de instrumentos sintéticos, o que levava à formação de omissão de dados.
- Terminal: agora, ao excluir instrumentos personalizados, são excluídos os arquivos com seu histórico de ticks e de barras. Isso evita o acúmulo de dados não utilizados no disco rígido.
- MQL5: corrigido e significativamente acelerado o trabalho com histórico de ticks e de barras.
- MQL5: corrigidas e significativamente aceleradas funções para alterar o histórico de ticks e de barras nos instrumentos de negociação personalizados CustomTicks* e CustomRates*.
- MQL5: adicionadas novas funções de conversão de dados.
- Adicionada a função MathSwap para alterar a ordem dos bytes no valor ushort, uint e ulong.
- MQL5: adicionadas funções de rede para criar conexões TCP para hosts remotos por meio de soquetes de sistema:
- SocketCreate — cria um soquete com os sinalizadores especificados e retorna seu identificador
- SocketClose — fecha o soquete
- SocketConnect — conecta-se a um servidor com controle de tempo limite
- SocketIsConnected — verifica se o soquete está conectado no momento
- SocketIsReadable — obtém o número de bytes que podem ser lidos no soquete
- SocketIsWritable — verifica se os dados podem ser gravados no soquete no momento atual
- SocketTimeouts — define os tempos limite para receber e enviar dados para o objeto do sistema de soquete
- SocketRead — lê dados do soquete
- SocketSend — grava dados em um soquete
- SocketTlsHandshake — inicia uma conexão TLS (SSL) segura com o host especificado usando o protocolo TLS Handshake
- SocketTlsCertificate — obtém informações sobre o certificado usado para proteger a conexão de rede.
- SocketTlsRead — lê dados de uma conexão TLS segura
- SocketTlsReadAvailable — lê todos os dados disponíveis a partir de uma conexão TLS segura
- SocketTlsSend — envia dados por meio de uma conexão TLS segura
O endereço do host ao qual você está se conectando - usando funções de rede - deve ser explicitamente da lista permitida nas configurações do terminal.
Para trabalhar com funções de rede, adicionados novos códigos de erro:
- ERR_NETSOCKET_INVALIDHANDLE (5270) — identificador de soquete inválido passado para a função
- ERR_NETSOCKET_TOO_MANY_OPENED (5271) — muitos soquetes abertos (máximo de 128)
- ERR_NETSOCKET_CANNOT_CONNECT (5272) — erro de conexão com host remoto
- ERR_NETSOCKET_IO_ERROR (5273) — erro ao enviar/receber dados para/de um soquete
- ERR_NETSOCKET_HANDSHAKE_FAILED (5274) — erro de estabelecimento de conexão segura (handshake TLS)
- ERR_NETSOCKET_NO_CERTIFICATE (5275) — não há informações sobre o certificado protegendo a conexão
- MQL5: adicionadas novas funções para trabalhar com strings:
- MQL5: adicionadas novas funções para trabalhar com arrays:
- MQL5: às funções CustomRatesUpdate, CustomRatesReplace, CustomTicksAdd e CustomTicksReplace adicionado o parâmetro "uint count" para especificar o número de elementos do array transmitido a ser usado. Por padrão, para o parâmetro, é usado o valor WHOLE_ARRAY. Isso significa que será usado todo o array.
- MQL5: adicionada a função CustomBookAdd — transmite o estado do livro de ofertas para o instrumento personalizado. A função permite transmitir um livro de ofertas como se viesse do servidor de uma corretora.
- MQL5: adicionada a sobrecarga da função CustomSymbolCreate, permitindo que você crie um instrumento de negociação personalizado com base em um existente. Após a criação, qualquer propriedade de símbolo pode ser alterada para o valor desejado pelas funções correspondentes.
- Atualizada a função StringToTime que converte uma string de data/hora em um valor de data e hora. Agora suporta os seguintes formatos de data:
- yyyy.mm.dd [hh:mi]
- yyyy.mm.dd [hh:mi:ss]
- yyyymmdd [hh:mi:ss]
- yyyymmdd [hhmiss]
- yyyy/mm/dd [hh:mi:ss]
- yyyy-mm-dd [hh:mi:ss]
- MQL5: à enumeração ENUM_TERMINAL_INFO_INTEGER adicionada a propriedade TERMINAL_VPS — sinal de que o terminal está sendo executado em um servidor virtual Hospedagem Virtual MetaTrader (VPS MetaTrader). Se o programa estiver sendo executado em um serviço de hospedagem, você poderá desabilitar todas as suas funções visuais, já que o servidor virtual não possui uma interface gráfica de usuário.
- MQL5: à enumeração ENUM_SYMBOL_INFO_INTEGER adicionada a nova propriedade SYMBOL_EXIST — sinal de que existe um símbolo com o mesmo nome.
- MQL5: corrigida tipificação ao usar declaração preliminar de uma função de template.
- MQL5: adicionada a reinicialização de indicadores ao alterar uma conta de negociação.
- MQL5: otimizado o trabalho da função StringSplit.
- MQL5: corrigidos erros na biblioteca padrão.
- Tester: adicionada a função TesterStop — término antecipado do trabalho um EA em um agente de teste. Agora você pode forçar a interrupção do teste quando for atingido um determinado número de negociações perdedoras, um determinado nível de rebaixamento ou qualquer outro critério.
- Tester: desativado o recurso para testar e otimizar EAs via MQL5 Cloud Network no modo de uso de ticks reais. Este modo pode ser usado somente em agentes locais e farms na rede local.
- Tester: aprimorado o trabalho com indicadores para testes visuais. Agora, o gráfico de preços e as linhas de indicadores são desenhados em sincronia, mesmo na velocidade máxima de renderização.
- Tester: otimizados e significativamente acelerados teste e otimização.
- Tester: corrigida a depuração de indicadores em dados históricos. Agora a função OnInit e OnDeinit dos indicadores podem ser depuradas corretamente.
- Tester: acelerado o acesso a dados históricos ao testar EAs em várias moedas.
- Tester: corrigidos erros que faziam o testador visual congelar ao depurar dados históricos.
- Tester: acelerado início de passagens quando o agente processa o pacote de tarefas.
- Tester: alterada a política de distribuição de pacotes de tarefas para agentes de teste. O tamanho do pacote foi aumentado, o que levava a uma redução significativa nos custos indiretos das operações de rede.
- Tester: alterado o comportamento da opção de usar agentes locais, de rede e de nuvem. Agora, quando essas opções estão desativadas, as tarefas já emitidas são processadas no final e as novas não são mais emitidas. Anteriormente, essas opções funcionavam de forma semelhante ao comando "Desativar", impedindo o trabalho dos agentes imediatamente.
- MetaEditor: adicionado suporte para símbolos não-ANSI no depurador. Agora as expressões observadas são exibidas corretamente, mesmo se o nome da variável for especificado em cirílico.
- Adicionada tradução da interface do usuário para o idioma croata.
- Documentação atualizada.
A atualização estará disponível através do sistema LiveUpdate.O Calendário econômico foi desenvolvido propriamente por nós. Mais de 600 indicadores e indicadores das 13 principais economias do mundo estão disponíveis: os EUA, a União Europeia, o Japão, a Grã-Bretanha, o Canadá, a Austrália, a China, etc. Todos os dados são coletados em tempo real a partir de fontes abertas.
Além de atualizar o conteúdo, filtros de eventos avançados estão disponíveis no calendário: por hora, por prioridade, por moeda e por país.
Em breve, será exibido o acesso aos dados do calendário a partir de programas MQL5.
Ao contrário de EAs, de indicadores e de scripts, os serviços não estão vinculados a um gráfico específico. Eles correm em segundo plano e começam a trabalhar automaticamente quando é iniciado o terminal (se eles não foram forçados a parar).
Para gerenciar serviços, ao Navegador foi adicionada uma subseção:
Criação de serviços
Para criar um modelo de serviço, use o item correspondente em Assistente MQL5. Serviços têm um ponto de entrada OnStart semelhante a scripts. Nele, você pode organizar um loop interminável de recebimento e processamento de dados usando funções de rede.
Inicialização de serviços
Para iniciar várias cópias de um EA ou indicador com parâmetros diferentes, basta colocá-lo em gráficos diferentes. Isso cria instâncias separadas do programa, que operam independentemente umas das outras. Os serviços não estão vinculados a gráficos, portanto, é fornecido um mecanismo separado para criar suas instâncias.
Selecione serviço no navegador e clique em "Adicionar serviço" em seu menu de contexto. Uma caixa de diálogo padrão do programa MQL5 é aberta, nela você pode ativar/desativar a negociação e o acesso a sinais, bem como definir parâmetros.
Para iniciar e parar a instância do serviço, use seu menu. Para gerenciar todas as instâncias, use o menu do próprio serviço.Agora os iniciantes podem aprender facilmente como trabalhar com a plataforma. Nós adicionamos mais de 100 dicas interativas nas principais funções.
- As dicas não distraem do trabalho com a plataforma, pois elas são incorporadas na barra de ferramentas na forma de uma barra de progresso.
- As dicas são exibidas apenas para ações que você ainda não realizou na plataforma.
- Links interativos são incorporados nas dicas para ir a elementos específicos da interface da plataforma. Por exemplo, diretamente do EA, você pode abrir um diálogo de negociação ou um menu com o comando desejado.
Conforme você passa pelo treinamento e executa ações na plataforma, a barra de progresso é preenchida.Para o trabalho, preparamos o pacote especial MetaTraderR. Ele contém uma DLL para interação entre o terminal R e o terminal MetaTrader 5, bem como documentação e arquivos auxiliares-r. O pacote está atualmente no processo de registro no repositório CRAN e, em breve, estará disponível para download e instalação.
Para instalar um pacote, use o seguinte comando:
No futuro, a lista de comandos suportados será expandida.
CharArrayToStruct — copia um array de tipo uchar para uma estrutura POD.
StructToCharArray — copia uma estrutura POD para um array de tipo uchar.
StringReserve — reserva na memória para o string o buffer do tamanho especificado.
StringSetLength — define para a string o comprimento especificado nos símbolos.
ArrayRemove — remove o número especificado de elementos da matriz, iniciando no índice especificado.
ArrayInsert — insere o número especificado de elementos do array de origem no array de destino, iniciando no índice especificado.
ArrayReverse — inverte o número especificado de elementos no array, iniciando no índice especificado.
O nome do símbolo - do qual serão copiadas as propriedades do símbolo personalizado criado - é especificado no parâmetro "symbol_origin".
O teste concluído com essa função é considerado bem-sucedido. Depois de ser chamado, o terminal recebe o histórico de negociação obtido como resultado de testes, bem como todas as estatísticas de negociação.