Торговый робот своими руками: как обычно, немного теории

Торговый робот своими руками: как обычно, немного теории

Недавно ко мне обратился знакомый — торгует криптой на любительском уровне — и попросил “написать торгового робота”. Тут важно остановиться на терминологии. В разговоре всё это называют роботами, но на практике чаще нужен торговый советник

Советник анализирует рынок и выдаёт рекомендации: где входить, где ставить стоп, где лучше вообще ничего не делать.

Робот делает следующий шаг за вас — и сам открывает/закрывает позиции.

И вот почему “давай сразу робота” — обычно плохая идея. Пока алгоритм не отлажен, риск потери денег максимальный: ошибка в анализе, баг в логике, неверная обработка свечи/ордера — и робот спокойно сделает ровно то, что вы бы не сделали руками.

Поэтому разумная стратегия почти всегда одна: сначала советник (анализ + сигналы), потом — автоматизация исполнения, и то если есть статистика и контроль рисков.

О чём статья: архитектура торгового советника

В этой статье — без “сигналов на миллион” и без обещаний доходности — только теория: из чего вообще собирается торговый советник, как выглядит его архитектура и почему в ней важны границы ответственности.

Внутрь алгоритмов анализа мы глубоко не уходим — задача статьи другая: показать, какие компоненты обычно есть у советника и как они стыкуются между собой.

Для “мозга”, который интерпретирует данные и формулирует выводы, сегодня часто выбирают готовые LLM-сервисы: ChatGPT, Gemini, Grok. При желании их можно дообучать или заменить своей моделью, но для архитектуры это вторично.

Нюанс остаётся тем же: нейросеть не читает ваши мысли. Ей нужен промпт — внятный, формализованный и повторяемый.

Промпт — это текстовая инструкция (и контекст), которую вы передаёте модели: что за данные перед вами, что именно нужно сделать и в каком формате вернуть ответ.

И ещё нужны данные, с которыми мы будем работать.

Здесь дальше главный вопрос: что именно класть в промпт (свечи, индикаторы, стакан, сделки, контекст риска) и в каком виде.

Данные и API

Про промпт поговорим позже, а сейчас — о данных.

Начальный уровень выглядит просто:

  1. Получить данные о курсах (котировки).
  2. Скомпоновать их с контекстом запроса.
  3. Передать это в промпт нейросети — через тот самый API.

Почти все биржи дают доступ к котировкам программно. И да — тоже через API.

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

API (Application Programming Interface) — это интерфейс взаимодействия между программами.

На практике это “правила игры”:

  • какие запросы можно сделать (например: получить свечи, получить ордербук);
  • в каком формате передавать данные (часто JSON);
  • как выглядит ответ (структура полей, ошибки, лимиты, авторизация).

Проще говоря: API позволяет вам пользоваться возможностями биржи (или нейросети) как набором функций, не влезая внутрь реализации.

Пользовательский слой: как показывать результат

Итак, на этом этапе у нас уже есть два базовых компонента:

  • данные (мы берём их с биржи);
  • аналитик (нейросеть, которой мы скармливаем данные и получаем вывод/сигнал).

Но приложение, которое само в себе получает данные и само их анализирует, бесполезно до тех пор, пока результат не увидит человек.

Значит нужен третий компонент — интерфейс.

Самый простой и универсальный вариант — веб-интерфейс: график, последние сигналы, объяснение “почему так”, настройки риска.

Как опция — уведомления в мессенджеры (например, Telegram): краткий сигнал + ссылка на подробности в вебе.

Контекст поверх цены: новости

Для базовой версии этого достаточно, но если хочется глубже — можно добавить ещё один слой контекста: новости.

Идея простая: мы собираем релевантные новостные статьи и добавляем их в промпт. Обычно — не “сырьём”, а в виде коротких саммари (чтобы не забивать контекст и не улетать в токены).

Это не обязательная часть архитектуры, но в некоторых режимах она заметно повышает качество советов: модель начинает учитывать причины движения, а не только форму графика.

Как увязать всё вместе

Окей, модули понятны. Вопрос теперь практический: как это собрать в единое приложение.

На практике почти всегда получается два режима.

Анализ по запросу

Пользователь нажал кнопку (или дёрнул endpoint) → мы подтянули свежие котировки → собрали промпт → получили ответ модели → показали сигнал.

  • Плюсы: экономно по токенам/ресурсам, проще отлаживать.
  • Минусы: вы гарантированно пропускаете часть событий между запросами — вместе с ними пропускаются и точки входа.

Регулярный анализ по расписанию

Пользователь задаёт периодичность (например, раз в 5 минут/час/день) → система сама гоняет конвейер и пушит результат.

  • Плюсы: сигналы приходят регулярно, можно держать “пульс рынка”, легче собирать статистику.
  • Минусы: дороже (токены/инфраструктура), нужны лимиты и защита от “самострела” (rate limit, ретраи, дедупликация сигналов), плюс обязательны мониторинг и логирование — иначе вы не поймёте, почему в 03:17 всё внезапно замолчало.

В любом из режимов набор базовых компонентов одинаковый:

  • web-сервер (интерфейс и API для пользователя);
  • модуль биржевых данных (котировки, свечи, при необходимости — стакан/сделки);
  • модуль LLM (сбор промпта → вызов модели → парсинг ответа);
  • хранилище (настройки пользователя, история сигналов, кэш котировок, результаты анализа).

И нужен один “клей”, который всё это связывает: сущность уровня приложения — назовём её core/service — которая управляет зависимостями, жизненным циклом и сценариями (по запросу или по расписанию).

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

  • плагины для источников котировок (добавили новую биржу — не переписываем остальное);
  • плагины для LLM-провайдеров (появилась новая модель/поменялись тарифы — меняем адаптер, а не архитектуру).

Примечание: здесь планируется схема архитектуры (диаграмма) — в этой версии HTML она намеренно не вставлена.

Дальше можно уже приземляться на реализацию: какие интерфейсы у модулей, какие структуры данных, и где проходит граница между “советником” и “торговым роботом”.

По материалам itprolab.dev

Читайте также

77542018-06-16

Принимаем оплату в bitcoin: Часть четвертая, ближе к делу!

В предыдущих статьях мы рассмотрели общие принципы организации платежного шлюза bitcoin, разобрались с инструментами и необходимым программным обеспечением и даже собрали свою карманную bitcoin-сеть.

Разработчику
94012018-06-07

Apple опубликовали новые правила о криптовалютных приложениях

Согласно информации TechCrunch, ряд разработчиков Apple не так давно объединили усилия для создания “Союза разработчиков”. Союз обратился к Apple с просьбой предоставить пользователям Apple Store возможность скачивать бесплатные пробные версии их приложений. Это один из первых случаев, когда независимые iOS разработчики пытаются дать отпор политике Apple Store.

Разработчику

Последние статьи из раздела Разработчику

Выбор редакции

746672024-07-25

LendPal.io объявляет о начале бета-тестирования

LendPal.io с объявляет о начале бета-тестирования своей инновационной платформы для криптовалютного P2P-кредитования.

Новости, Стэйблкоины, Трейдинг, Инвестиции,
753342020-10-30

Топ 10 крипто кошельков в 2020 году

По мере роста популярности криптовалют растет и спрос на качественные и безопасные криптовалютные кошельки.

Кошельки
739552021-05-08

Какие альткоины принесут своим держателям доход в 2021 году?

Мы решили помочь тем, кто хочет заработать на криптовалютах, но не располагает большими средствами, чтобы покупать монеты из первой пятерки рейтинга.

Альткоины
700282018-05-12

Эволюция человека и денег

Развитие биткойна и блокчейна началось приблизительно 70000 лет назад, когда хомо сапиенс превзошли свои биологические лимиты как вид. Это история, которая уходит глубоко корнями в эволюцию человечества.

Это интересно
664892017-12-10

Bitcoin: пирамида или нет?

С января 2009 года, когда был сгенерирован первый генезиз-блок bitcoin-сети, прошло уже девять лет, но до сих пор всякого рода "эксперты" ломают копья в спорах: являются ли криптовалюты финансовой пирамидой или нет. Быстрый рост доходности bitcoin и прибыли тех, кто раньше стал участником этой системы, пугает схожестью с пирамидами 90-х.

Bitcoin
662702018-04-28

on-chain и off-chain управление: за и против

Чтобы понять важность управления блокчейном и дискуссии вокруг этого вопроса, сначала нужно определить что такое управление блокчейном, его роль и цели. Управление блокчейном в сфере криптовалют состоит из двух пунктов: правил протокола (кода) и экономических стимулов, на которых основана сеть.

Блокчейн