Те, кто делает количественный трейдинг с помощью TradingView, рано или поздно столкнутся с одной и той же проблемой:

Сигнал стратегии появился, но для выставления ордера всё равно приходится действовать вручную. Когда срабатывает тревога, вы спите, вы на совещании или смотрите другой график — пока вы реагируете, «окно возможностей» уже закрывается.

Более фундаментальная проблема в том, что само ручное размещение ордеров противоречит логике количественного трейдинга. Вы пишете стратегию, чтобы исключить влияние эмоций и заставить правила исполняться, но пока «человек» находится посредине, правила невозможно выполнить строго.

Эта статья решает эту проблему. Прочитав её, вы поймёте, как работает вся автоматизация трейдинга, и сможете выполнить полную настройку от оповещений TradingView до автоматического исполнения на Binance.

Сначала поймите принцип: как работает эта система

Перед началом настройки потратьте две минуты, чтобы понять весь сценарий — так дальше конфигурация будет намного яснее, а при проблемах их будет легче отследить.

Вся цепочка автоматизированной торговли состоит из трёх частей:

TradingView → FlamoTrade → Binance
(источник сигнала) (исполнительный центр) (биржа)

TradingView отвечает за генерацию сигнала. После того как выполнится условие вашей стратегии или индикатора, TradingView отправит оповещение. Это оповещение может содержать данные и отправляется через Webhook на указанный URL.

FlamoTrade — это промежуточный движок исполнения. Он принимает Webhook-запросы от TradingView, парсит внутри JSON-команды на сделки и затем вызывает Binance API для размещения ордера. Его ключевая ценность: надёжно связать «получение сигнала» и «исполнение сделки», одновременно решая целый ряд инженерных задач — параллельная работа по нескольким аккаунтам, повторные попытки при неудачах размещения ордера, Telegram-уведомления и т.д.

Binance отвечает за фактическое исполнение. FlamoTrade размещает ордера в вашем аккаунте через API Key, который вы авторизовали.

После понимания этого сценария вы увидите, что логика настройки очень простая: TradingView нужно знать, куда отправлять сигнал, а FlamoTrade — в какой аккаунт размещать ордера.

Зачем нужен этот промежуточный слой FlamoTrade

Часто спрашивают: может ли TradingView напрямую вызывать Binance API?

Технически, Webhook TradingView может отправлять только HTTP-запросы: у него нет функций проверки подписи, управления аккаунтами, асинхронного параллелизма и т.п., поэтому он не может напрямую управлять Binance.

Некоторые пытаются поднять промежуточный сервер самостоятельно, чтобы сделать это, но на практике проблем больше, чем кажется: правила подписи Binance API, валидация временной метки, конкурентное управление для нескольких аккаунтов, механизм повторных попыток при неудаче размещения ордера, защита биржи от лимитов нагрузки (rate limit) … Всё это требует значительных инженерных затрат и долгого сопровождения.

FlamoTrade делает именно это, и уже стабильно работает более года. Для трейдеров — использовать готовые инструменты, чтобы решать инженерные задачи, а сосредоточиться на стратегии — правильное распределение ролей.

Начать настройку

Шаг 1: зарегистрируйте FlamoTrade и получите Webhook URL

Откройте flamotrade.com, зарегистрируйте аккаунт и войдите.

После входа перейдите на страницу подписок: включите бесплатную версию Standard навсегда, затем откройте страницу управления пользователями. Найдите раздел «Webhook URL» и скопируйте этот адрес:

https://api.flamotrade.com/webhook/ваш_уникальный_ключ

Этот URL — ваш персональный адрес для приёма сигналов. TradingView отправляет сюда запросы, а FlamoTrade выполняет соответствующие торговые команды. Ключ — это уникальный идентификатор вашей личности, не передавайте его другим.

Шаг 2: привязка Binance API

FlamoTrade должен размещать ордера в вашем аккаунте через Binance API. Тут есть важный элемент безопасности, который стоит понять:

Binance API Key настраивается по уровням прав. Вам нужно включить только право на торговлю по контрактам, а право на вывод средств не требуется. Это означает, что даже если API Key утечёт, злоумышленник не сможет вывести ваши средства — максимум он сможет проводить операции только в рамках контрактов. Это практическое применение принципа минимальных прав.

При создании API Key добавьте в белый список следующие IP:

192.243.127.172

Это фиксированный IP-с адрес сервера FlamoTrade. Только запросы с этого IP могут использовать ваш API Key; запросы с других IP Binance будет напрямую отклонять, дополнительно ограничивая риск экспозиции.

После создания в разделе управления API на странице FlamoTrade добавьте ваш API Key и Secret Key. FlamoTrade хранит ключи в зашифрованном виде и не сохраняет их в открытом виде.

Шаг 3: настройка Telegram-уведомлений

Этот шаг не обязателен, но настоятельно рекомендуется настроить.

Потенциальный риск автоматизированной торговли — «потеря контроля»: система выполняет действия, и вы не знаете, что именно она делает. Именно это решает Telegram-рассылка: каждое срабатывание, исполнение и неудача по каждому ордеру будет в реальном времени отправляться на ваш телефон, чтобы вы всегда понимали состояние системы.

Способ настройки:

  1. В Telegram найдите @BotFather, введите /newbot, создайте бота и сохраните Token

  2. С помощью @userinfobot получите ваш Chat ID

  3. На странице настроек TelegramBot в интерфейсе API FlamoTrade укажите Token и Chat ID, в языке уведомлений выберите нужный, затем сохраните

  4. Нажмите «Тест»; сообщение будет означать, что настройка выполнена успешно

Шаг 4: создать оповещение в TradingView

Это самый ключевой шаг во всей настройке и при этом самое частое место, где возникают проблемы. Понимание структуры JSON-команд сильно упростит дальнейшую настройку параметров.

Откройте TradingView, создайте оповещение на вашей стратегии или индикаторе. Обратите внимание на два ключевых момента:

Webhook URL: укажите адрес FlamoTrade, полученный на шаге 1.

Сообщение-уведомление: здесь нужно указать торговую команду в формате JSON. FlamoTrade после получения запроса распарсит этот JSON и решит, как разместить ордер.

Ниже приведены самые часто используемые шаблоны команд — поймите смысл каждого параметра:

Рыночная покупка (самый базовый способ)

{
"action": "buySell",
"account": "ALL",
"symbol": "ETHUSDT",
"side": "BUY",
"amount": "0",
"usdt": "100",
"multiple": "0",
"price": "0",
"orderType": "market",
"cancelLast": "false",
"closeLast": "reverse",
"reduceOnly": "false",
"delay": "0",
"memo": ""
}

Описание параметров:

  • action: тип команды. buySell — обычные покупки/продажи, также есть create (композитный ордер), closePosition (закрытие позиции) и т.п.

  • side: направление. BUY — покупать/лонг, SELL — продавать/шорт

  • usdt:сумма для размещения ордера. Поля amount、usdt、multiple берутся по приоритету — выбирается первое ненулевое значение. Здесь usdt задаёт 100U

  • multiple:размещение ордера по доле от баланса аккаунта; например, "0.3*5" означает использование 30% баланса аккаунта × кредитное плечо 5 (плечо, которое уже установлено у вас)

  • orderType:market — рыночная цена, limit — лимитная цена (при limit нужно указать price)

  • closeLast:reverse означает, что перед размещением ордера сначала закрываются обратные позиции, чтобы избежать одновременного удержания long и short

  • cancelLast:перед размещением ордера нужно ли отменить все отложенные ордера по этому инструменту

Открывайте позицию одновременно с установкой take profit и stop loss (рекомендуется использовать этот вариант)

{
"action": "create",
"account": "ALL",
"symbol": "ETHUSDT",
"side": "BUY",
"amount": "0",
"usdt": "100",
"multiple": "0",
"price": "0",
"stopPrice": "{{close}}*(1-2%)",
"profitPrice": "{{close}}*(1+4%)",
"orderType": "market",
"cancelLast": "true",
"closeLast": "reverse",
"reduceOnly": "false",
"delay": "0",
"memo": ""
}

stopPrice и profitPrice поддерживают математические выражения; {{close}} — это плейсхолдер оповещения TradingView, который автоматически заменяется на цену закрытия в момент срабатывания. *(1-2%) означает -2% вниз, *(1+4%) означает +4% вверх.

Это означает, что вам не нужно самостоятельно рассчитывать цену — система в момент срабатывания сигнала динамически рассчитает уровни take profit и stop loss на основе текущей цены.

Закрытие позиции

{
"action": "closePosition",
"account": "ALL",
"symbol": "ETHUSDT",
"side": "X",
"amount": "0",
"ratio": "1.0",
"price": "0",
"orderType": "market",
"cancelLast": "true",
"delay": "0",
"memo": ""
}

side = X — закрытие позиций в обе стороны (closeBuy закрывает только long, closeSell — только short). ratio — доля закрытия: 1.0 = закрыть полностью, 0.5 = закрыть половину.

Шаг 5: проверка всего процесса

После завершения настройки выполните полный тест с небольшим объёмом и проверьте три вещи:

  1. После срабатывания оповещения TradingView, получил ли FlamoTrade запрос (в TelegramBot будет показан исходный json с подставленными значениями вместо плейсхолдеров)

  2. Пришло ли Telegram-уведомление с состоянием по ордеру

  3. Появилась ли в контрактном аккаунте Binance запись об этом ордере

Похоже, всё настроено — если три пункта «всё верно», значит вся цепочка связана.

Несколько деталей, на которые стоит обратить внимание

Проблема задержки: от отправки Webhook из TradingView до исполнения на Binance — обычно в течение 1 секунды. Эта задержка обусловлена передачей по сети, а не временем обработки FlamoTrade.

Несколько аккаунтов: поле account = ALL означает размещение ордеров одновременно для всех аккаунтов. Если вы управляете несколькими аккаунтами, можно указать конкретные имена, например "bnc1 bnc2"; FlamoTrade выполнит параллельно, а не будет ждать последовательно.

Обработка ошибок размещения ордера: в FlamoTrade встроен механизм повторных попыток. Если ордер не удалось разместить из‑за колебаний сети или ограничений биржи по лимитам, система автоматически повторит попытку и через Telegram сообщит причину неудачи.

Бесплатная версия: Standard навсегда бесплатно, лимит 60 ордеров в месяц. Этого достаточно для низкочастотных стратегий или этапа тестирования. Если нужно больше, тогда рассмотрите платное обновление.

Итоги

Суть автоматизированной торговли такова: заставить правила выполняться строго без вашего присутствия.

Эта конфигурация делает всё очень просто: TradingView отвечает за определение сигнала, FlamoTrade — за надёжное исполнение, Binance — за фактическое исполнение сделки. На каждом этапе делается только то, что нужно, и нет места для ручного вмешательства.

Один раз настройте — после этого при работе стратегии вам даже не нужно держать компьютер открытым.

Адрес регистрации FlamoTrade: flamotrade.com (Standard — бесплатно навсегда, без кредитной карты)