Aller au contenu
Signal Pilot

Webhooks (TradingView → bot)

Les webhooks permettent d'envoyer les alertes de TradingView vers des services extérieurs, des bots ou des API afin d'automatiser des tâches. Ce guide explique comment les régler et les utiliser avec les indicateurs de Signal Pilot.

À visée pédagogique

Ce guide décrit le raccordement de webhooks à des fins pédagogiques et d'automatisation. Le trading automatisé comporte des risques importants. Ceci n'est pas un conseil financier.

📡 Qu'est-ce qu'un webhook ?

Un webhook est une requête HTTP POST que TradingView envoie de lui-même à l'adresse que vous indiquez, dès qu'une alerte se déclenche. On s'en sert surtout pour :

  • Notifier: envoyer les alertes vers Discord, Telegram ou Slack
  • Consigner: garder les alertes dans une base de données ou un tableur
  • Automatiser: déclencher des actions via vos propres API
  • Vérifier: suivre à quelle fréquence et dans quelles conditions les alertes tombent

✅ Ce qu'il faut avoir d'abord

Avant de régler un webhook, il vous faut en général ceci :

  • Une formule TradingView payante (Essential, Plus ou Premium) : les comptes gratuits n’ont pas accès aux webhooks
  • L'adresse du destinataire: un service qui accepte les requêtes HTTP POST, par exemple un webhook Discord, un serveur à vous ou une plateforme d'automatisation
  • Un indicateur de Signal Pilot: réglé et posé sur votre graphique
  • Quelques notions de JSON: utile si vous voulez composer le message vous-même, mais pas indispensable

🔧 Étape par étape

Étape 1 : récupérer l'adresse du webhook

L'adresse dépend de l'endroit où vous voulez que les alertes arrivent :

Webhook Discord

  1. Dans Discord, allez dans Paramètres du serveur → Intégrations → Webhooks
  2. Cliquez sur « New Webhook »
  3. Donnez-lui un nom et choisissez le salon
  4. Copiez l'adresse du webhook (de la forme : https://discord.com/api/webhooks/...)
La page Integrations des réglages de serveur de Discord, montrant la ligne Webhooks avec son bouton Create Webhook, à côté de Channels Followed, Twitch et YouTube.
Les webhooks se trouvent sous Integrations, dans les réglages du serveur Discord lui-même. En créer un produit l’adresse à laquelle TradingView enverra.

Bot Telegram

  1. Cherchez « @BotFather » dans Telegram
  2. Envoyez /newbot puis suivez ce qu'il vous demande
  3. Récupérez le jeton du bot
  4. Utilisez un service passerelle ou un serveur à vous pour retransmettre vers Telegram les webhooks de TradingView

Serveur ou API à vous

Vous pouvez monter votre propre destinataire avec des plateformes comme :

  • Webhook.site: pour les essais ; il reçoit le contenu du webhook et vous l'affiche
  • Make.com (anciennement Integromat): pour relier plusieurs services entre eux
  • Zapier: pour automatiser des enchaînements de tâches
  • Un serveur à vous: Python avec Flask, Node.js avec Express, et ainsi de suite

Étape 2 : régler l'alerte dans TradingView

  1. Sur le graphique où se trouve votre indicateur de Signal Pilot, cliquez sur l'icône Alerte (le réveil avec un +)
  2. Dans la fenêtre de l'alerte :
    • Condition: choisissez votre indicateur de Signal Pilot et la condition à surveiller
    • Options: cochez « Once Per Bar Close » pour éviter les redessins en cours de bougie
    • Échéance: réglez-la selon vos besoins ; le plus souvent « Open-ended »
  3. Descendez jusqu'à l'onglet « Notifications ».
  4. Cochez la case « Webhook URL ».
  5. Collez l'adresse de votre destinataire
L’onglet Notifications de la fenêtre d’alerte de TradingView, avec Notify in app, Show toast notification, Send email et Webhook URL cochés, le champ d’adresse affichant un exemple, et Play sound et Send plain text décochés.
Le champ Webhook URL apparaît dès que la case au-dessus est cochée. TradingView envoie le texte de l’alerte comme corps d’une requête POST à l’adresse que vous y collez.

Étape 3 : composer le message (facultatif)

Dans le champ « Message » vous décidez quelles données partent. TradingView accepte ces variables :

{
  "indicator": "{{ticker}}",
  "price": "{{close}}",
  "time": "{{time}}",
  "signal": "Pentarch: IGN event",
  "timeframe": "{{interval}}"
}

Les variables TradingView les plus courantes :

  • {{ticker}}: le nom du symbole, par exemple « BTCUSDT »
  • {{close}}: le cours de clôture du moment
  • {{time}}: l'heure à laquelle l'alerte est tombée
  • {{interval}}: l'unité de temps, par exemple « 15 » ou « 1D »
  • {{exchange}}: le nom de la place de marché

Étape 4 : essayer le webhook

  1. Une fois l'alerte créée, cliquez sur le bouton « Test » des réglages de l'alerte.
  2. Allez voir du côté du destinataire : salon Discord, webhook.site ou ce que vous avez mis
  3. Vérifiez que le message arrive bien mis en forme
  4. Si rien n'arrive, regardez :
    • Que l'adresse du webhook soit la bonne
    • Le compte TradingView a accès aux webhooks (Essential, Plus ou Premium)
    • Que le destinataire soit joignable et qu'aucun pare-feu ne le bloque
Un message Discord publié par une application nommée Signal Pilot Alerts, indiquant BULLISH FLOW sur BTCUSDT.P 4h avec des pourcentages de qualité et de régime et des valeurs d’entrée, de stop, d’objectif, de taille et de risque.
L’alerte telle qu’elle arrive dans Discord. Le webhook publie le texte exactement comme TradingView l’a envoyé, si bien que ce que vous voyez ici est ce que le modèle d’alerte a produit.

💬 Exemples de mise en forme

Message au format Discord

{
  "content": "🔔 **Signal Pilot Alert**",
  "embeds": [{
    "title": "Pentarch: IGN event",
    "description": "IGN event printed on {{ticker}}",
    "color": 65280,
    "fields": [
      {"name": "Price", "value": "{{close}}", "inline": true},
      {"name": "Timeframe", "value": "{{interval}}", "inline": true},
      {"name": "Time", "value": "{{time}}", "inline": false}
    ]
  }]
}

Message en texte simple

Signal Pilot : {{ticker}} - changement de régime Harmonic Oscillator à {{close}} en unité de temps {{interval}}

JSON structuré pour une API à vous

{
  "alert_type": "signal_pilot",
  "indicator": "janus_atlas",
  "symbol": "{{ticker}}",
  "exchange": "{{exchange}}",
  "timeframe": "{{interval}}",
  "price": "{{close}}",
  "timestamp": "{{time}}",
  "condition": "Level Break Alert"
}

🌐 Les plateformes les plus courantes

Plateforme Cas d'usage Difficulté de réglage
Discord Prévenir l'équipe et garder trace Très facile
Telegram Notifications sur le téléphone Moyenne ; il faut un bot et une passerelle
Make.com Relier plusieurs services Facile, avec un schéma visuel
Zapier Se relier à plus de 5000 applications Facile, avec un schéma visuel
Webhook.site Essais et mise au point Très facile
Serveur à vous Maîtrise totale, logique sur mesure Élevée ; il faut programmer

🔍 Quand ça ne marche pas

🔍 Le webhook n'envoie rien ? Reprenez ceci :
  1. L'adresse est-elle bien dans l'alerte ? → Sinon, ajoutez-la
  2. L'alerte se déclenche-t-elle ? → Sinon, réparez d'abord l'alerte
  3. L'avez-vous essayée sur webhook.site ? → Sinon, commencez par là. Si ça échoue, générez une nouvelle adresse
  4. La mise en forme est-elle bonne ? → Revoyez le format propre à Discord ou à Telegram
  5. Le JSON est-il valide ? → Passez-le dans un validateur JSON pour vérifier la syntaxe
  6. Avez-vous une formule TradingView payante ? → Les comptes gratuits ne peuvent pas utiliser de webhooks

Essai rapide : Faites toujours un premier essai sur webhook.site. Si ça arrive là et pas dans Discord ou Telegram, le problème vient du réglage côté destinataire.

Le webhook n'arrive pas

  • Vérifiez votre offre TradingView: les comptes gratuits ne peuvent pas utiliser de webhooks
  • Revoyez l'adresse: pas d'espace en trop, et le protocole doit être https://
  • Testez le destinataire: passez par webhook.site pour confirmer que TradingView atteint bien votre adresse
  • L'alerte est-elle tombée ?: regardez le journal des alertes de TradingView pour confirmer qu'elle s'est bien déclenchée

Le message contient les mauvaises données

  • Écriture des variables: il faut écrire {{ticker}} pas {ticker}
  • Mise en forme du JSON: si vous utilisez le format structuré, validez-le sur jsonlint.com
  • Guillemets échappés: mettez \" si vous avez besoin de guillemets à l'intérieur d'une chaîne JSON

Trop de webhooks d'un coup

  • Fréquence de l'alerte: passez de « Once Per Bar » à « Once Per Bar Close »
  • Précision de la condition: resserrez la condition pour qu'elle tombe moins souvent
  • Temps de repos: certains services de webhooks limitent le nombre de requêtes acceptées

🔒 Sécurité

Points de sécurité à retenir

  • L'adresse d'un webhook est une donnée sensible: traitez-la comme un mot de passe et ne la publiez nulle part
  • Changez-la de temps en temps: surtout si des tâches importantes en dépendent
  • Contrôlez ce qui arrive: si vous passez par un serveur à vous, vérifiez que les requêtes viennent bien de TradingView
  • Privilégiez HTTPS: un destinataire qui n'accepte que du HTTP en clair est un risque

📋 Un montage en exemple

Scénario : Recevoir les alertes IGN de Pentarch dans un salon Discord

  1. Créé : un webhook Discord dans le salon #trading-alerts
  2. Réglé : Pentarch v1.0 sur le graphique BTCUSDT en 15 minutes
  3. Alerte posée : sur la condition « Pentarch: IGN event »
  4. Fréquence : « Once Per Bar Close »
  5. Collée : l'adresse du webhook Discord dans les réglages de l'alerte
  6. Message sur mesure : au format d'encart Discord montré plus haut
  7. Essayée : l'alerte ; le message est bien apparu dans Discord
  8. Alerte active : - le salon reçoit un message chaque fois qu’un évènement IGN s’imprime

(Exemple de montage réel, à titre pédagogique seulement. Ceci n'est pas un conseil financier. Les résultats varient d'une personne à l'autre.)