← Todos os tutoriais
MT4 API · 4:32

Cotações MT4 por WebSocket

Conecte, assine, leia os ticks e desconecte.

Passo a passo por escrito

  1. 0:00

    Cotações MT4 por WebSocket

    Este tutorial mostra como receber preços do MetaTrader quatro em tempo real por WebSocket. Vamos conectar uma conta demo, assinar um símbolo, ler mensagens reais e terminar encerrando o fluxo e desconectando o terminal.

  2. 0:20

    Abra o console da API

    Abra eme tê quatro ponto eme erre pê cê ponto pro. O console abre automaticamente. Selecione Connect Ex nos métodos de conexão. Este tutorial apenas consulta cotações, sem abrir ou fechar operações.

  3. 0:43

    Conecte sua conta demo

    Use Trial ou sua chave API. Informe o login da conta demo, a senha de negociação e o nome exato do servidor da corretora. Deixe o campo id opcional vazio para esta nova conexão e execute a solicitação. Mantenha suas credenciais em sigilo.

  4. 1:04

    Guarde o id do terminal

    Em Connect Ex, verifique o código de status HTTP duzentos e depois o JSON. Se error contiver um erro, leia os detalhes antes de continuar. Quando há sucesso, data contém terminal Instance Guid. O console salva esse id para as próximas solicitações e mostra o terminal conectado.

  5. 1:30

    Escolha um símbolo

    Nas assinaturas, selecione On Symbol Tick. Mantenha o id da conexão. Em symbol Names, digite o símbolo exato da corretora, aqui EURUSD. Os nomes podem ter sufixos diferentes conforme a corretora. Clique para conectar o fluxo.

  6. 1:55

    Acompanhe as cotações

    O indicador conectado mostra que o WebSocket está aberto. O cartão de cotação muda conforme os ticks chegam. Os quadros recebidos são mensagens reais do servidor. É um fluxo contínuo, não chamadas HTTP repetidas. Em cada mensagem, verifique error antes de ler data ponto symbol Tick.

  7. 2:20

    Entenda bid e ask

    Dentro de symbol Tick, symbol identifica o instrumento. Bid é a cotação de venda e ask a de compra. A diferença é o spread. São cotações, não confirmações de execução. Last e volume podem ser zero quando a corretora não fornece dados do último negócio desse instrumento.

  8. 2:46

    Use o horário UTC

    Para comparar horários entre sistemas, use time U T C ou time M S C U T C para milissegundos. Nesta captura, o horário da corretora está duas horas à frente do campo UTC explícito. Não interprete o horário da corretora como UTC só porque o texto termina em Z. O horário de recebimento do quadro é separado.

  9. 3:13

    O exemplo JavaScript

    O exemplo JavaScript usa o endereço WebSocket seguro e o mesmo símbolo. O navegador não permite definir cabeçalhos personalizados no WebSocket. Por isso, a chave API e o id vão nos parâmetros da URL. Mantenha a URL completa em sigilo. Leia o JSON, trate error primeiro e depois leia o tick e o horário UTC.

  10. 3:39

    Encerre a assinatura

    Ao terminar, clique em desconectar no painel do fluxo. No código, feche o WebSocket. Isso encerra a assinatura, mas não desconecta o terminal. A ausência de mensagens não indica necessariamente falha: confira a conexão, o símbolo e se a corretora está publicando cotações.

  11. 4:05

    Desconecte o terminal

    Selecione Disconnect e execute a solicitação com o mesmo id. Verifique o código de status HTTP duzentos e o campo error. A resposta bem-sucedida desta captura contém o identificador do terminal e seu tempo de atividade. O indicador muda para desconectado. A assinatura e a sessão do terminal foram encerradas.