Перейти к содержимому
Все статьи

Алерты TradingView в Discord (настройка вебхука)

Как отправлять алерты TradingView в канал Discord через вебхуки. Пошаговая настройка, правильный формат JSON, динамические плейсхолдеры, embed и решение частых ошибок.

tradingviewtradingview discord вебхукалерты tradingview discordторговые алертыtradingview webhook 2026автоматизация webhook

🇬🇧 Доступно также на English

Алерты TradingView в Discord (настройка вебхука)

Зачем отправлять алерты TradingView в Discord?

Алерты TradingView мощные, но по умолчанию они показываются лишь как всплывающие окна, письма или пуши в приложении. Отправка их в канал Discord даёт общий ленту с метками времени, которую видит вся ваша торговая группа — входы, выходы, пересечения индикаторов и сигналы стратегий в одном месте.

TradingView умеет вызывать вебхук при срабатывании алерта, а Discord принимает вебхуки нативно. Подвох: TradingView отправляет текст алерта ровно так, как вы его написали, поэтому сообщение должно быть валидным JSON для Discord. Здесь разберём настройку и форматирование, на котором спотыкаются большинство.

Требования

  • Платный тариф TradingView (Essential, Plus или Premium). Вебхук-алерты недоступны на бесплатном тарифе.
  • Включённая двухфакторная аутентификация в аккаунте TradingView — без 2FA добавить URL вебхука не получится.
  • URL вебхука Discord. Создайте в Настройки сервера → Интеграции → Вебхуки → Новый вебхук → Копировать URL. Новичок? См. руководство по настройке.

Шаг 1: Добавьте вебхук в алерт

  1. Откройте график и нажмите кнопку Алерт (иконка будильника) или Alt + A.
  2. Настройте условие (пересечение индикатора, уровень цены, сигнал стратегии и т. д.).
  3. Прокрутите до вкладки Уведомления в окне алерта.
  4. Отметьте Веб-хук URL и вставьте URL вебхука Discord.

TradingView отправит POST-запрос на этот URL в момент срабатывания алерта.

Шаг 2: Оформите сообщение как JSON для Discord

Это ключевой шаг. В поле Сообщение алерта не пишите обычный текст. Discord игнорирует сырой текст из вебхука — он ожидает JSON. Простейшее валидное сообщение:

{ "content": "Сработал сигнал BUY" }

Эта строка отправит «Сработал сигнал BUY» в ваш канал. Если вставить обычное предложение, Discord отклонит его с 400 Bad Request, и ничего не появится.

Шаг 3: Подставляйте значения через плейсхолдеры

TradingView заменяет плейсхолдеры {{...}} на актуальные значения перед отправкой. Ставьте их внутри JSON-строки:

{ "content": "{{strategy.order.action}} {{ticker}} @ {{close}} — таймфрейм {{interval}}" }

Сработавший алерт отправит примерно:

buy BTCUSDT @ 64210.5 — таймфрейм 15

Полезные плейсхолдеры:

ПлейсхолдерЗначение
{{ticker}}Символ, напр. BTCUSDT
{{exchange}}Биржа, напр. BINANCE
{{close}}Цена закрытия бара-триггера
{{open}} {{high}} {{low}}Значения OHLC
{{volume}}Объём бара
{{interval}}Таймфрейм графика
{{time}}Время бара (UTC)
{{strategy.order.action}}buy или sell (алерты стратегии)
{{strategy.position_size}}Текущий размер позиции

Следите за кавычками. Всё внутри JSON должно остаться валидным после подстановки. Оборачивайте текстовые значения в двойные кавычки и избегайте плейсхолдеров, которые могут содержать случайную " — сломанная строка станет невалидным JSON, и Discord вернёт 400.

Шаг 4: Отправьте embed вместо простого текста

Простой content работает, но embed с заголовком, цветом и полями читается куда лучше для торговых сигналов. Вставьте полный объект embed как сообщение:

{
  "embeds": [
    {
      "title": "{{strategy.order.action}} {{ticker}}",
      "color": 5763719,
      "fields": [
        { "name": "Цена", "value": "{{close}}", "inline": true },
        { "name": "Биржа", "value": "{{exchange}}", "inline": true },
        { "name": "Таймфрейм", "value": "{{interval}}", "inline": true }
      ],
      "footer": { "text": "Алерт TradingView" }
    }
  ]
}

Используйте зелёный (5763719) для покупок и красный (15548997) для продаж. Удобнее всего собрать макет в бесплатном конструкторе вебхуков, скопировать сгенерированный JSON и вставить свои {{плейсхолдеры}} в значения полей.

Про цвета buy/sell: TradingView отправляет ровно то сообщение, что вы сохранили, поэтому он не может выбрать цвет динамически. Создайте два алерта — один на условие покупки с зелёным embed, второй на продажу с красным.

Шаг 5: Сообщения alert() в Pine Script

Если вы генерируете сигналы из стратегии на Pine Script, можно собрать JSON прямо в коде и передать в alert():

//@version=5
strategy("Discord Signal", overlay=true)

longCondition = ta.crossover(ta.sma(close, 10), ta.sma(close, 30))
if longCondition
    strategy.entry("Long", strategy.long)
    alert('{"content": "LONG ' + syminfo.ticker + ' @ ' + str.tostring(close) + '"}', alert.freq_once_per_bar_close)

Задайте условие алерта «Любой вызов функции alert()» и оставьте поле сообщения пустым — JSON приходит из скрипта. Используйте alert.freq_once_per_bar_close, чтобы избежать дублей из-за перерисовки.

Шаг 6: Упоминайте роль на важных сигналах

Чтобы пингануть роль при приоритетном сигнале, добавьте ID роли и блок allowed_mentions, чтобы пинг реально уведомлял. См. полный гайд по упоминаниям:

{
  "content": "<@&ROLE_ID> {{strategy.order.action}} {{ticker}} @ {{close}}",
  "allowed_mentions": { "parse": ["roles"] }
}

Решение проблем

ПроблемаПричина и решение
Ничего не приходит, алерт «отправлен»Сообщение не является валидным JSON. Проверьте через гайд по ошибкам и валидатор JSON.
400 Bad Request в логах TradingViewПлейсхолдер сломал JSON, либо контент больше 2000 символов / превышены лимиты embed.
Не получается добавить URL вебхукаВключите 2FA в аккаунте TradingView и убедитесь, что у вас платный тариф.
Дублирующиеся сигналыИспользуйте alert.freq_once_per_bar_close в Pine или режим «Раз за бар на закрытии».
Вебхук перестал работать спустя месяцыВебхук мог быть удалён/пересоздан в Discord — вставьте свежий URL.

Лимиты

Вебхук Discord принимает около 30 запросов в минуту. Высокочастотные скальп-алерты по нескольким символам могут упереться в лимит и вернуть 429. Если алертите много тикеров, разводите группы символов по разным вебхукам в разных каналах.

Что дальше

Теперь вы можете стримить сигналы TradingView прямо в Discord аккуратными цветными embed. Соберите макет алерта визуально в конструкторе вебхуков и вставьте JSON в TradingView со своими {{плейсхолдерами}}. Больше паттернов автоматизации — в гайде по уведомлениям и автоматизации.

Похожие статьи

Попробуйте в нашем инструменте

Открыть конструктор Discord Webhook