Começar grátis

Quickstart TradingView

O seu primeiro alerta TradingView em 10 minutos

Copie o URL webhook da sua conta TheConnector, cole-o no TradingView, envie um sinal de teste e verifique o estado no dashboard.

Detalhes técnicos

Estados e expiração ficam explícitos.

Webhook ingress, ACK, Delivered, BrokerRejected, Expired, ttl_ms, no replay, symbol mapping e routing são úteis quando o primeiro teste já está claro.

URL webhook https://webhook.theconnector.fr/YOUR_ACCESS_KEY

A chave está na URL. Account/platform apenas para roteamento partilhado.

Expiração Janela realtime 1-3s

Não use ttl_ms: WebhookIngress não lê isso hoje. Se perder a janela, expira.

Sem replay Accepted significa realtime

Comando rejeitado/expirado/offline aparece em Transactions.

Gerador

Mensagem aceite pelo WebhookIngress

Mensagem de alerta

Cole este JSON no Message. Webhook URL recebe a URL da conta.

Validador dry-run

Validar sintaxe sem webhook

Contrato atual

Campos lidos hoje pelo WebhookIngress

action Obrigatório. Também aceita side, command, type, msgtype.
symbol Obrigatório para comandos trading. Também aceita pair, ticker, instrument, market, asset.
risk Risco numérico enviado ao robô. Use volume/lot/lots/fixedVolume para lotes exatos.
sl / tp Os nomes atuais sao sl e tp, com aliases stoploss/stop_loss e takeprofit/take_profit.
price Obrigatorio apenas para pendentes: buystop, buylimit, sellstop, selllimit.
source Rótulo opcional, útil para identificar TradingView ou Pine Script no diagnóstico.
id / streamId Opcional, mas recomendado para diagnóstico. O servidor gera um se faltar.
account / platform Opcional usando URL webhook da conta copiada do dashboard.
Detalhes da conta com URL webhook 1. Copiar URL da conta

Não misture chave e conta.

Janela alerta TradingView 2. Colar URL + JSON

Use once per bar close e veja Transactions.

Pine Script

Exemplos do parser atual

MT4 / MT5
//@version=5
indicator("TC first alert", overlay=true)
longSignal = ta.crossover(ta.sma(close, 9), ta.sma(close, 21))
if longSignal
    message = "{\"action\":\"buy\",\"symbol\":\"" + syminfo.ticker + "\",\"risk\":1,\"sl\":20,\"tp\":40,\"source\":\"TradingView\",\"id\":\"" + syminfo.ticker + "-" + str.tostring(time) + "\"}"
    alert(message, alert.freq_once_per_bar_close)
Lotes exatos
//@version=5
indicator("TC fixed lots", overlay=true)
shortSignal = ta.crossunder(ta.ema(close, 12), ta.ema(close, 26))
if shortSignal
    message = "{\"action\":\"sell\",\"symbol\":\"" + syminfo.ticker + "\",\"volume\":\"0.10\",\"sl\":25,\"tp\":50,\"source\":\"TradingView\",\"id\":\"fixed-" + str.tostring(time) + "\"}"
    alert(message, alert.freq_once_per_bar_close)
Ordem pendente cTrader
//@version=5
indicator("TC pending", overlay=true)
breakout = close > ta.highest(high, 20)[1]
if breakout
    message = "{\"action\":\"buystop\",\"symbol\":\"" + syminfo.ticker + "\",\"price\":" + str.tostring(high, format.mintick) + ",\"risk\":1,\"sl\":20,\"tp\":45,\"source\":\"TradingView\",\"id\":\"pending-" + str.tostring(time) + "\"}"
    alert(message, alert.freq_once_per_bar_close)