WeCore
Automazione

Automatizzare gli alert di TradingView con i webhook

Cos'è un webhook, alert da indicatore vs alert da strategia, come costruire un messaggio JSON con i placeholder e cosa controllare perché l'automazione resti affidabile e sicura.

WeCore·Pubblicato il ·5 min di lettura

TradingView è uno degli strumenti più diffusi per l'analisi grafica e la costruzione di strategie, ma i suoi alert non inviano da soli ordini al broker. Il ponte tra un alert e un'esecuzione è il webhook: un messaggio automatico inviato a un indirizzo scelto da te nel momento in cui l'alert scatta. In questo articolo vediamo come funziona, cosa mettere nel messaggio e quali trappole di affidabilità e sicurezza è meglio conoscere in anticipo.

Cos'è un webhook

Un webhook è un meccanismo con cui un sistema invia una richiesta HTTP a un altro quando succede qualcosa, invece di costringere il secondo sistema a chiedere di continuo "ci sono novità?". Con TradingView, quando la condizione di un alert si verifica, i server di TradingView inviano una richiesta POST all'URL del webhook che hai configurato, e il corpo della richiesta contiene il testo che hai scritto nel campo del messaggio.

Il lato ricevente, per esempio una piattaforma di automazione, legge il messaggio, capisce cosa fare (comprare, vendere, chiudere, quantità) e invia l'ordine al conto presso il broker. Tieni presente che TradingView si limita a inviare il messaggio. Tutte le decisioni su esecuzione, gestione del rischio e controlli di coerenza avvengono sul lato ricevente.

Secondo il centro assistenza di TradingView, l'invio dei webhook dipende dal piano di abbonamento e di solito richiede l'autenticazione a due fattori sull'account. I requisiti possono cambiare, quindi verifica i dettagli aggiornati sul sito ufficiale.

Alert da indicatore vs alert da strategia

Per l'automazione si usano principalmente due tipi di alert:

  • Alert da indicatore o da condizione: creato su un indicatore, sul prezzo o su una funzione di alert nel codice Pine. Adatto quando la logica è semplice o quando è l'indicatore stesso a decidere quando inviare un segnale.
  • Alert da strategia: creato su uno script di tipo strategia e attivato quando il motore della strategia esegue un ordine simulato (entrata, uscita, inversione). Il vantaggio è che il messaggio può contenere informazioni sull'ordine stesso, come direzione e size.

La differenza conta perché cambia il comportamento. Un alert da strategia dipende dalle impostazioni della strategia, per esempio se calcola solo alla chiusura della barra o a ogni tick. Se il tuo backtest girava alla chiusura della barra e l'alert dal vivo gira intrabar, i risultati possono differire. Controlla le impostazioni e assicurati che siano coerenti.

Costruire il messaggio: JSON e placeholder

La maggior parte dei sistemi di automazione si aspetta un messaggio in formato JSON, una struttura di campi e valori. A parole, un messaggio tipico contiene campi come lo strumento da tradare, la direzione, il numero di contratti e a volte un ID della strategia o un token identificativo della connessione. Il formato esatto è definito dal lato ricevente, quindi copia sempre il modello dalla documentazione della piattaforma che usi.

TradingView supporta i placeholder: variabili tra doppie parentesi graffe che al momento dell'invio vengono sostituite con valori reali. Ci sono placeholder per il simbolo, il prezzo di chiusura, l'orario e, negli alert da strategia, anche per la direzione e la quantità dell'ordine. Usare correttamente i placeholder ti permette di riutilizzare lo stesso modello di messaggio su più grafici senza riscriverlo.

Alcune regole da rispettare:

  • Mantieni il JSON valido: virgolette doppie intorno ai nomi dei campi e ai testi, virgole tra i campi, nessuna virgola finale.
  • Non fare affidamento su campi che potrebbero non essere valorizzati in ogni situazione.
  • Controlla nel registro degli alert di TradingView il messaggio con le sostituzioni, per vedere cosa è stato effettivamente inviato.

Il simbolo giusto e il rollover dei contratti

I futures aggiungono un problema specifico: il grafico continuo (per esempio NQ1!) mostra il contratto front e passa automaticamente al successivo, ma il broker deve sapere quale contratto specifico tradare. Se il messaggio invia il nome del grafico continuo, il lato ricevente deve tradurlo nel contratto corretto. Se invia un contratto specifico, l'alert va aggiornato quando arriva il momento del rollover. La spiegazione completa è nell'articolo sul rollover dei contratti futures.

Considerazioni sull'affidabilità

Una buona automazione è un'automazione in cui sai quando non ha funzionato. Punti a cui prestare attenzione:

  1. Scadenza degli alert: su alcuni piani gli alert hanno una data di scadenza. Un alert scaduto smette semplicemente di inviare, in silenzio. Impostati un promemoria.
  2. Modifiche allo script: se modifichi l'indicatore o la strategia, l'alert esistente può continuare a girare sulla versione vecchia. Di solito va ricreato.
  3. Alert duplicati: due alert sullo stesso grafico, o un alert che scatta più di una volta per barra, possono inviare un ordine doppio. Imposta con cura la frequenza di attivazione e, idealmente, lascia che sia il lato ricevente a rilevare i duplicati.
  4. Ritardi: un webhook viaggia su internet e può subire ritardi. In un mercato veloce anche un piccolo ritardo incide sul prezzo; vedi l'articolo su slippage e costi di esecuzione.
  5. Guasto del ricevente: se il server ricevente non è disponibile, il messaggio può andare perso. Un buon sistema ti avviserà.

Proteggere l'URL del webhook

L'URL del tuo webhook è di fatto una chiave: chiunque lo conosca, e conosca il formato del messaggio, può inviare ordini al tuo conto. Quindi:

  • Non pubblicare l'URL in screenshot, forum o gruppi di chat.
  • Dove possibile, usa nel messaggio un token segreto che il lato ricevente verifica.
  • Se sospetti che l'URL sia trapelato, crea una nuova connessione e revoca quella vecchia.
  • Imposta limiti di rischio sul lato ricevente, così che nemmeno un messaggio malformato possa aprire una posizione enorme.

Checklist prima del lancio

  • La strategia è stata testata con le stesse impostazioni di calcolo su cui gira l'alert?
  • Il messaggio è un JSON valido secondo la documentazione del ricevente?
  • Il simbolo è associato al contratto corretto?
  • Conosci la data di scadenza dell'alert?
  • Hai impostato un limite di perdita giornaliero e un numero massimo di contratti?
  • Hai testato tutto prima in simulazione?

Punti chiave

  • Un webhook è solo un messaggero: TradingView invia un messaggio, il lato ricevente esegue e gestisce il rischio.
  • Gli alert da strategia possono passare direzione e quantità, ma richiedono impostazioni di calcolo coerenti.
  • Un JSON valido e placeholder corretti evitano moltissimi errori.
  • Scadenza, duplicati e modifiche allo script sono fonti di errore frequenti.
  • L'URL del webhook è un segreto: trattalo come una password.

Se vuoi vedere come funziona in pratica, c'è una guida su come collegare gli alert di TradingView a WeCore. WeCore riceve gli alert, li trasforma in ordini sul tuo conto presso un broker o una prop firm e applica limiti di rischio automatici, e puoi iniziare in modalità simulazione.

Fonti e letture di approfondimento