Разработка AI-агента для автоматической криптоторговли

Рынок не прощает задержек: советник без контроля риска теряет депозит на первой же резкой сессии. Мы разрабатываем AI Trading Agent под ключ — от аудита стратегии до регламентов и передачи команде. Реакция на сигнал сокращается, просадка держится в заданных лимитах.
Часто задаваемые вопросы

Почему AI Trading Agent теряет на реальном рынке

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

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

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

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

Измеримые эффекты: реакция, риск, простой

Скорость реакции на рыночное событие

Путь от сигнала до выставленной заявки сокращается с ручных минут до долей секунды: агент читает стакан и ленту сделок, считает сигнал по модели и отправляет ордер без оператора. Ценность не в «мгновенности», а в том, что решение принимается по цене, которая ещё актуальна: на волатильном рынке разрыв между сигналом и заявкой забирает у стратегии всю прибыль. Задержку меряем по участкам — приём данных, расчёт, постановка заявки — и следим, чтобы она не росла на пиковой нагрузке.

Контроль риска и лимитов на сделку

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

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

Сравнение режимов: советник, автоторговля, гибрид

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

Режим Когда подходит Ограничения
Советник Стратегия проверяется, объёмы небольшие, исполнение отдавать роботу не готовы Реакция человека добавляет задержку: на быстрых движениях цена уходит от сигнала
Полуавтоматический Нужен поток сигналов и расчёт объёма, финальное решение — за трейдером Требует внимания в моменте: без подтверждения сделка просто не исполняется
Полностью автоматический Правила формализованы, стратегия прошла проверку на исторических данных Ошибка в логике тиражируется без остановки, убыток ограничен только защитными лимитами

Ручное подтверждение сделок

Агент считает сигнал, объём заявки и уровень защиты и показывает расчёт — исполнение ждёт решения трейдера. Такой полуавтоматический режим снимает целый класс ошибок, связанных с неверно понятым контекстом рынка, и оставляет контроль за человеком. Плата за это — задержка между сигналом и заявкой и невозможность вести много инструментов сразу.

Полностью автоматический режим

Здесь агент сам выставляет и снимает заявки, а человек подключается к настройке правил. Обязательные условия автоматической торговли — лимит риска на сделку и на день, отдельный канал уведомлений и ручной «стоп» на всё. Отдельно проектируется поведение при обрыве канала: незакрытые позиции и лимиты нельзя оставлять без присмотра после восстановления связи — это и есть основное ограничение автоторговли.

Этапы внедрения: от аудита стратегии до передачи

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

Аудит данных и правил стратегии

  1. Аудит стратегии: разбираем правила входа, выхода и масштабирования позиции, источники сигналов и доступность данных по качеству и задержке.
  2. Формализуем правила в спецификацию: условия срабатывания, лимиты на сделку и на день, сценарии аварийной остановки агента.
  3. Проверяем данные: глубина истории, пропуски, расхождения между источниками — на грязных котировках любая проверка ниже теряет смысл.

Проверка на истории и в тестовом режиме

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

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

Конфигурации, схемы и регламенты: состав поставки

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

Документация и схемы

  • Файлы конфигурации: параметры стратегии, лимиты на сделку и на дневной оборот, список торговых пар — с пометкой, что меняется без пересборки.
  • Схема потоков данных: от источника котировок до подтверждения заявки, с точками, где агент решает сам и где ждёт подтверждения.
  • Описание логики стратегии: условия входа и выхода, пауза при разрыве связи, поведение при расхождении цен между площадками.
  • Журнал событий: формат записей по каждой заявке и способ восстановить картину дня, если сделка вызвала вопросы.

Политики доступа и разделение ключей

  • Ключи с правом торговли, но без права вывода; отдельные ключи для тестового и рабочего контура.
  • Роли: кто меняет лимиты, кто останавливает агента, кто обновляет конфигурацию — каждое действие в журнале.
  • Хранение секретов вне кода, ротация по регламенту, порядок отзыва ключа при утечке или уходе сотрудника.

Это и есть состав поставки: документация по агенту, схемы, политики доступа к ключам и чек-лист запуска с порядком подъёма сервисов и критериями перевода в рабочий режим. Перед передачей прогоняем остановку и перезапуск по этому чек-листу — вы видите, что процедура выполняется без нас.

Кейс: меньше просадка, короче восстановление после сбоя

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

Метрики до и после:

  • Время восстановления после обрыва связи: 20–40 минут ручной сверки позиций и заявок → 40–90 секунд автоматического подъёма.
  • Доля ручных вмешательств: 10–15 раз в сутки → 1–2 в неделю, и только при изменении лимитов риска.
  • Глубина просадки на историческом отрезке: 17% → 6–7% за счёт жёсткого стопа на стороне биржи и ограничения размера позиции.
  • Снятый класс отказов: дубли заявок и «зависшие» позиции без защиты — ушли полностью.

Что именно меняли в логике агента

Состояние вынесли в журнал: намерение и подтверждение исполнения пишутся до отправки заявки, поэтому при старте агент дочитывает журнал и продолжает с точки останова, а не с нуля. Каждой заявке присваивается идемпотентный ключ — повтор после сбоя не создаёт вторую позицию. Защитный стоп ставится на бирже сразу после входа, а не удерживается в памяти процесса. Отдельная проверка живости следит за потоком котировок и останавливает торговлю, если данные не приходят дольше заданного окна.

Дополнительно добавили сверку с биржей по закрытию сессии: расхождение позиций или объёма поднимает сигнал до того, как ошибка накопится. Логика сигнала при этом не менялась — переписали только слой исполнения и восстановления, поэтому поведение стратегии на истории осталось прежним.

Чем AI-советник отличается от автономного агента?

AI-советник и автономный агент решают одну задачу — найти и отработать рыночную ситуацию, — но по-разному распределяют ответственность. Советник считает сигнал и отдаёт его человеку: направление, объём, стоп подтверждает оператор. Автономный агент сам выставляет заявки, переставляет стопы и закрывает позицию, а человек задаёт только правила игры.

Границы автоматизации фиксируют до запуска, а не по ходу: какие инструменты агент торгует, максимальный размер позиции, число сделок в сутки, поведение при разрыве связи с биржей. Каждое решение попадает в журнал — вход, обоснование, параметры, результат; без него нельзя разобрать убыточный день и доказать, что алгоритм не вышел за лимиты. Ответственность за сделки остаётся на владельце счёта: агент исполняет правила, правила утверждает человек.

Хранение ключей — водораздел между режимами. Мягкий вариант: агент работает торговым ключом без права вывода — видит баланс и выставляет ордера, но вывести активы не может. Автономный контур: ключ живёт в отдельном модуле подписи, а перевод требует второго подтверждения — в сети Ethereum это смарт-контракт с мультиподписью или суточным лимитом на вывод.

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

Риски, лимиты биржи и устойчивость: технические вопросы

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

Что произойдёт, если соединение с биржей оборвётся?

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

Как исключается дублирование заявок?

Каждая заявка получает клиентский номер, который биржа принимает один раз: повторная отправка с тем же номером второй заявки не создаёт. Если ответ не дошёл, агент переспрашивает статус по номеру, а не отправляет команду заново. Это закрывает самый частый класс ошибок — двойные позиции после таймаута.

Что делать с лимитами биржи на частоту обращений?

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

Как понять, что стратегия деградировала на смене рынка?

Агент следит не только за итогом сделок, но и за отклонением факта от ожиданий: проскальзывание, доля отмен, частота срабатывания сигналов. При выходе метрик за коридор включается пониженный режим — уменьшенный объём или полная остановка с уведомлением. Смена характера рынка приводит к паузе, а не к серии убыточных входов.

Обсудим задачу: с чего начнём работу

Чтобы старт работ не превратился в переписку на неделю, достаточно одного сообщения с пяти пунктов. Мы не просим готовое ТЗ: для оценки хватает описания того, как вы торгуете сейчас и что должен делать агент. Ниже — минимальный набор входных данных для агента, после которого мы возвращаемся с оценкой, архитектурой и планом работ.

  • Стратегия в свободной форме: какие сигналы использует агент (уровни, объёмы, новостной фон, метрики из сети), на каком таймфрейме работает и по какому условию входит в позицию и выходит из неё.
  • Правила риска: максимальная доля депозита на сделку, лимит одновременных позиций, дневной стоп по просадке и что агент делает при срабатывании — закрывает всё или замораживает входы.
  • Тестовый доступ к бирже: ключи только с правом торговли, без вывода средств, и лучше к тестовому контуру — так прогоняем логику без риска для реального баланса.
  • Инструменты и рынки: список пар или активов, спотовый или срочный сегмент, ограничения по минимальному объёму ордера и ликвидности.
  • Пожелания к управлению: нужен ли ручной стоп, уведомления в мессенджер, журнал сделок и выгрузка истории для разбора.

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

  • Заказывают «стратегию вообще», без описания своей логики входа и выхода: агенту нечего воспроизводить, а на выходе получается набор случайных правил, который невозможно ни проверить, ни улучшить.
  • Оценивают результат только по красивой кривой на прошлых данных, без проверки на задержках, проскальзывании и простоях — на живом рынке поведение оказывается другим, и доверие к агенту теряется на первой же неделе.
  • Не описывают, что делать при сбое: считают, что агент «сам разберётся», если пропадёт связь с биржей или изменится доступ. В итоге открытые позиции остаются без присмотра, а решения принимаются задним числом.
  • Правят правила вручную прямо во время работы и не фиксируют, что и зачем меняли. Через месяц невозможно понять, какое изменение дало эффект, а какое — только увеличило просадку.
  • Пытаются сразу включить полностью автономный режим, минуя гибридный этап, где часть решений подтверждает человек. Без периода наблюдения ошибки в логике всплывают уже на реальных сделках.
  • Ведут торговый капитал и текущие расходы на одном счёте, из-за чего лимиты риска считаются неверно и агент получает доступ к суммам, которыми не должен распоряжаться.
  • Не передают историю сделок, выписки и журналы за прошлый период: аудит стратегии начинается с нуля, и первое, что приходится делать, — восстанавливать картину, вместо того чтобы настраивать агента.
  • Ожидают гарантированного дохода и фиксированной доли прибыли, а не управляемого риска. Такой запрос приводит к подгонке правил под ожидания вместо честной проверки на устойчивость.
  • Выдают агенту полные права на счёт и используют один и тот же ключ доступа для него и для ручных операций — при инциденте невозможно отделить действия человека от действий системы.
  • Игнорируют ограничения самой биржи: минимальный размер ордера, лимиты на частоту запросов, правила остановки торгов. Агент упирается в них в самый неподходящий момент.

Направления блокчейн-разработки

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1543
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1394
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1369
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    816
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1142