Resolução de problemas

Webhook do TradingView que não funciona: encontrar onde fica bloqueado

Um alerta que não produz nenhuma ordem parou numa das quatro etapas: o próprio alerta, o envio do webhook, a leitura da mensagem, ou a ordem na sua plataforma. Esta página percorre a cadeia pela ordem, com o que deve verificar em cada etapa e a correção correspondente.

Quatro etapas, quatro sítios onde olhar Cada motivo de recusa, e a sua correção A armadilha da mensagem predefinida Testar sem mexer em nenhuma conta

A mensagem do alerta

alert-payload.json
{
  "action":  "buy",
  "symbol":  "EURUSD",
  "volume":  0.10,
  "sl":      1.0820,
  "tp":      1.0910
}
Cole o URL webhook da sua conta no alerta TradingView e envie esta mensagem JSON. Cada etapa (Received, Route, ACK, Delivered) fica visível no dashboard.
Ações disponíveis
buy sell — ordem a mercado (alias long / short)
buylimit buystop selllimit sellstop — ordem pendente — adicione um campo price
closelong closeshort closelongshort — fecha a(s) posição(ões) desse símbolo
cancellong cancelshort — cancela uma ordem pendente
newsltplong newsltpshort — atualiza SL/TP (alias breakeven…)

Lista completa e aliases: referência de sintaxe de comandos.

Quatro etapas, quatro sítios onde olhar

Siga o alerta pela ordem em que viaja e pare na primeira etapa que falhar: procurar mais longe não serve de nada. No TradingView, o gestor de alertas diz se o alerta está ativo, e o registo de alertas se disparou e se o webhook saiu. No TheConnector, o Histórico de alertas mostra os alertas que chegaram à sua conta, com o respetivo resultado. Na sua plataforma, o diário da conta dá a resposta exata da corretora.

  • O alerta dispara: o gestor de alertas do TradingView
  • O webhook sai: o estado do envio no registo de alertas
  • A mensagem é lida: o Histórico de alertas do TheConnector
  • A ordem é colocada: o diário da conta em MT4, MT5 ou cTrader

O alerta não dispara

A maioria dos alertas mudos tem uma causa simples, visível no gestor de alertas do TradingView. O alerta expirou, ou estava definido como «uma só vez» e desativou-se após o primeiro disparo. O TradingView também interrompe um alerta disparado mais de 15 vezes em 3 minutos. Num mercado fechado, não chega nenhuma cotação nova, por isso nada dispara. Por fim, um alerta definido para o fecho da vela espera por esse fecho e só dispara se a condição ainda se verificar.

  • Reative um alerta expirado, ou definido como «uma só vez»
  • Mais de 15 disparos em 3 minutos: torne a condição mais seletiva
  • No fecho da vela, o sinal sai quando a vela termina, não antes

O alerta dispara, mas o webhook não sai

O campo Webhook URL só aparece num plano pago do TradingView, Essential ou superior, e o TradingView só envia webhooks se a autenticação de dois fatores estiver ativada. A caixa tem de estar marcada no separador Notifications do alerta, com o endereço completo da sua conta. Se o registo de alertas indicar um envio falhado, comece pelo endereço: releia-o carácter a carácter.

  • Um plano pago, Essential ou superior, com a autenticação de dois fatores ativada
  • A caixa Webhook URL marcada no separador Notifications
  • O endereço copiado por inteiro a partir de Minhas contas, chave de acesso incluída

Não aparece nada no Histórico de alertas

O Histórico de alertas lista os alertas que chegaram à sua conta, aceites ou recusados; só a recusa por quota diária não é repetida em cada alerta. Fora desse caso, um alerta que lá não aparece nunca chegou tão longe: ou não saiu do TradingView, ou o seu endereço tem uma chave de acesso errada. Um alerta com uma chave desconhecida não pode ser associado a nenhuma conta: não aparece em lado nenhum e não conta para a sua quota. Cada conta tem a sua própria chave, e um alerta tem de levar a chave da conta a que se destina.

  • Uma chave por conta: verifique se é mesmo a da conta pretendida
  • Sem campo account a não ser que precise dele: se não corresponder, o alerta é recusado
  • Um webhook enviado mas ausente aqui: o problema está no endereço ou na chave

O alerta é recusado por causa da sua mensagem

Quando o TheConnector não consegue ler uma mensagem, o alerta aparece no filtro «Falhadas» do Histórico de alertas, com o respetivo motivo. Ao lado, o botão «Perceber esta recusa» abre o testador de webhook com a mensagem tal como chegou, sem a chave de acesso. Um JSON mal formado, com uma aspa esquecida ou uma vírgula a mais, também é recusado, como «Comando não suportado».

Motivo apresentado Causa Correção
Comando não suportadoNenhum comando legível: texto predefinido do TradingView, ou JSON mal formadoUm comando em action, ou no início da linha: buy, sell, closelong…
Falta o símbolo no alertaA mensagem não indica nenhum símboloAdicione symbol, por exemplo {{ticker}}
Campo numérico inválidoUm valor contém texto, como 20pips ou 1%Apenas números: 20, 1
Quota diária de webhooks excedidaOs alertas do dia do seu plano estão esgotados para esta contaEspere pelo dia seguinte e corrija qualquer alerta que dispare em ciclo
  • Cole a mensagem recusada no testador para ver que campo falha
  • Uma mensagem recusada conta na mesma para a quota do dia

A armadilha da mensagem predefinida do TradingView

Ao criar um alerta, o TradingView preenche o campo Message com o seu próprio texto, por exemplo «EURUSD Crossing 1.0850». Esse texto não é um comando: o TheConnector recusa-o como «Comando não suportado», e cada disparo conta para a sua quota. Se nele aparecer uma vírgula, como separador decimal ou de milhares, o texto chega mesmo a ser cortado em dois, e o histórico pode mostrar um símbolo sem relação com o seu gráfico, muitas vezes um número. Substitua todo o texto por uma mensagem TheConnector.

message.json
{"action":"buy","symbol":"{{ticker}}","risk":1,"sl":20,"tp":40}
  • Apague todo o texto proposto pelo TradingView
  • Cole uma mensagem TheConnector no seu lugar
  • Verifique-a no testador de webhook antes de guardar o alerta

O robô está offline

«Robô offline — alerta não entregue» significa que nenhum robô estava ligado a essa conta quando o alerta chegou. O alerta não é guardado para mais tarde: um sinal que não pode ser executado de imediato é abandonado, nunca reenviado, e conta para a quota do dia. O robô funciona dentro da sua plataforma: com a plataforma fechada ou o computador em suspensão, não há robô. Este motivo também aparece quando um alerta ainda se destina a uma conta que arquivou: elimine esse alerta no TradingView.

  • Abra a sua plataforma no computador onde o robô está a funcionar
  • Verifique se o robô TheConnector mostra «Play» a verde
  • Deixe a plataforma aberta e o computador ligado

A plataforma recusa enviar a ordem

«Negociação desativada» significa que a sua plataforma recusou enviar a ordem: nada chegou ao mercado. No MT5, o Algo Trading tem de estar ativado (AutoTrading no MT4), e a plataforma pode desativá-lo sozinha quando muda de conta. O robô também tem de estar autorizado a negociar, e tem de iniciar sessão com a sua palavra-passe de negociação: a palavra-passe de investidor abre a conta em modo só de leitura. Se tudo isto já estiver ativado, pergunte à sua corretora se a negociação automática é permitida nesta conta.

  • Algo Trading ativado no MT5, AutoTrading no MT4
  • Propriedades do robô, separador Comum: «Permitir Algo Trading» marcado
  • Sessão iniciada com a palavra-passe de negociação, não com a de investidor

A corretora recusa a ordem

Aqui, o encaminhamento funcionou: o robô recebeu a ordem, e foi a plataforma ou a corretora que disse não. O motivo aparece por baixo do alerta no Histórico de alertas, e o diário da conta, na sua plataforma, dá a formulação exata da corretora. Os motivos mais frequentes:

Motivo apresentado O que significa O que fazer
Símbolo desconhecidoA corretora não conhece este nome: outro sufixo, ou ausente do Market WatchMostre-o no Market Watch, ou adicione um mapeamento de símbolo à conta
Mercado fechadoO mercado estava fechado quando o sinal chegouNada a corrigir: o sinal não é reenviado na abertura
Stop demasiado perto do preçoO stop não respeita a distância mínima da corretoraAfaste sl no alerta
Margem insuficienteNão há margem livre suficiente para este volumeReduza o risco ou o volume
Risco demasiado baixo para o lote mínimoMesmo o lote mais pequeno da corretora excede o seu riscoAumente o risco, ou indique volume no alerta
Volume inválidoO volume está fora dos limites ou do passo da corretoraRespeite o lote mínimo e o seu passo

Um alerta atrasado nunca é reenviado

O TheConnector executa um sinal de imediato, ou não o executa. Um comando que não pôde sair a tempo expira: não é guardado nem enviado mais tarde, para que nenhuma ordem seja alguma vez colocada a um preço que a sua estratégia não tenha escolhido. Um comando que chegou tarde demais ao robô aparece como «Ordem demasiado antiga (bloqueada)». Se um sinal se perdeu enquanto o seu robô estava offline, retomar essa operação continua a ser decisão sua: nada a colocará por si.

  • Sem nova tentativa nem reenvio: um sinal expirado continua expirado
  • Mantenha o robô ligado durante o seu horário de negociação

Testar a mensagem antes do alerta real

O testador de webhook executa o analisador exato da gateway de produção e fica por aí: não procura nenhuma conta, não mexe em nenhuma quota e não chega a nenhuma corretora. Cole primeiro aí a sua mensagem: indica-lhe como a gateway lê cada campo, ou porque a recusaria. Depois, envie um primeiro alerta para uma conta demo e leia o resultado no Histórico de alertas.

  • Primeiro o testador: gratuito e sem mexer em nenhuma conta
  • Depois um alerta real, numa conta demo
  • Depois o Histórico de alertas, para ver o que o robô fez

Continua bloqueado? O que enviar ao suporte

Três elementos permitem ao suporte encontrar o seu alerta: a hora a que disparou, a conta a que se destinava e o motivo apresentado no Histórico de alertas. Adicione a mensagem tal como a escreveu no TradingView, mas nunca a sua chave de acesso: quem a tiver pode enviar ordens para a sua conta.

  • A hora do alerta e a conta a que se destina
  • O motivo apresentado no Histórico de alertas
  • A mensagem, sem a chave de acesso

Guias relacionados

FAQ

Porque é que o meu alerta do TradingView não dispara?

Há três causas frequentes: atingiu a data de expiração, estava definido como «uma só vez» e desativou-se, ou disparou mais de 15 vezes em 3 minutos e o TradingView interrompeu-o. Num mercado fechado, nada dispara. O gestor de alertas do TradingView indica o seu estado.

É preciso uma subscrição paga do TradingView para o webhook?

Sim: o campo Webhook URL exige um plano pago, Essential ou superior, com a autenticação de dois fatores ativada. Sem plano pago, a extensão de navegador Relay permite-lhe testar o TheConnector a partir de um separador do TradingView aberto.

O webhook sai do TradingView mas nada aparece no TheConnector: porquê?

O alerta não foi associado à sua conta: há um erro no endereço ou na respetiva chave de acesso. Volte a copiar o endereço completo a partir de Minhas contas, com a chave incluída. Um alerta com uma chave desconhecida não aparece em lado nenhum e não conta para a sua quota.

O alerta é recebido mas nenhuma ordem é colocada: o que devo verificar?

O motivo apresentado por baixo do alerta, no Histórico de alertas. Os mais frequentes: robô offline, Algo Trading desativado na plataforma, um símbolo que a corretora não conhece, um stop demasiado perto do preço, ou margem insuficiente. Cada motivo vem acompanhado do que é preciso verificar.

Um alerta que chegou durante uma interrupção é reenviado depois?

Não. Um sinal que não pode ser executado de imediato expira: o TheConnector não o guarda nem o envia mais tarde, para que nenhuma ordem seja alguma vez colocada a um preço que a sua estratégia não tenha escolhido.

Porque é que o Histórico de alertas mostra «Comando não suportado»?

A mensagem não contém nenhum comando que o TheConnector consiga ler. Na maioria das vezes, é o texto que o TradingView coloca por defeito no campo Message, ou um JSON inválido por causa de uma aspa esquecida ou de uma vírgula a mais. Substitua-o por uma mensagem TheConnector e depois verifique-a no testador de webhook.