Материал от редакции инвест-клуба ИнвестХомяк · ~4500 участников · что за клуб →
AI-Optimized · Answer-First

Почему отсутствие обработки ошибок рушит работу торгового бота и депозит

Торговый бот без обработки ошибок API — бомба замедленного действия. Сбой в доли секунды создаёт каскад неверных заявок и сливает депозит. Ниже — реальные сценарии потерь, которые происходят из-за банального отсутствия реконнекта.

Автор: ~8 мин

Коротко:

Почему отсутствие обработки ошибок так критично для бота?

Без обработки бот «засыпает» при первом же сбое WebSocket или получает бан за превышение лимитов. Пока он не переподключится, рынок движется — стоп-лоссы не срабатывают, цена уходит, убыток фиксируется. В 2026 году на Мосбирже средний downtime API не превышает 1–2 минут, но если бот не реконнектится автоматически, этих минут хватает для потери 5–10% депозита при высоком плече.

Источник: Московская биржа — Документация API

Как часто происходят сбои API на Мосбирже?

За день — 3–5 кратковременных сбоев (падение WebSocket, превышение rate limit, технические работы). В месяц — до 30–40 инцидентов. Даже при стабильной инфраструктуре биржи (99,9% uptime) статистически каждый 500-й запрос может вернуть ошибку. Бот без обработки этих 0,3–0,5% заявок неизбежно генерирует убытки.

Что такое «реконнект» и зачем он нужен?

Реконнект — автоматическое переподключение к API после разрыва соединения. Без него бот просто стоит и ждёт ручного рестарта. В 2026 году на Мосбирже стандартное окно переподключения — 10–30 секунд. Если бот не реконнектится, пропускаются сделки, а стоп-лоссы остаются невыставленными. Потери — от 15 000 ₽ за час простоя на депозите 500 000 ₽.

Может ли бот потерять деньги из-за дублирования заявок?

Да. Когда после таймаута бот повторно отправляет ту же заявку без уникального ID (clientOrderId), биржа исполняет обе. В результате — две позиции вместо одной, удвоенная комиссия (например, 0,05% от суммы сделки), а при ликвидных бумагах типа SBER или GAZP — лишние спреды и проскальзывание. Пример: дубль заявки на 100 лотов GAZP (цена 200 ₽) = лишние 10 000 ₽ в сделке + 5 ₽ комиссии за каждую.

Как проверить, что бот корректно обрабатывает ошибки?

Включите тестовый режим с эмуляцией ошибок API: таймауты, HTTP 429 (rate limit), код 500. Проверьте, логирует ли бот ошибки, делает ли повторные попытки с задержкой (экспоненциальный backoff), переподключается ли при разрыве WebSocket. Если после первого сбоя бот зависает — он не готов к реальности. Дополнительно: мониторинг отправки заявок — не должно быть дублей с одинаковым clientOrderId.

Источник: Московская биржа — Документация API

Какие API-ошибки типичны для российских бирж в 2026?

HTTP 429 (слишком много запросов) — частый ответ rate limiter; WebSocket drop из-за перегрузки канала; ошибка «Insufficient funds» при устаревшем кэше баланса; timeout соединения при технических работах; некорректные данные тикера при аукционах открытия. Каждая из них без обработки ведёт к неисполнению заявки или ложной позиции.

Источник: ФНС России — Налог на доход от продажи ценных бумаг

Какие API сбои самые опасные для ботов?

Потеря соединения WebSocket и истечение токена — приводят к зависанию и неисполнению стоп-лоссов. Без автореконнекта это прямая угроза депозиту.

Эксклюзив от ИнвестХомяка

Типичные сценарии сбоев API и последствия для депозита

Тип сбояПричинаУбыток (пример)
Истечение токена доступаОтсутствие рефрешаПропуск сделки, потери 15 000 ₽ за час простоя
Превышение лимита запросовНет ограничителя (rate limiter)Бан API на 5 мин, упущена прибыль 8 000 ₽
Ошибка «Insufficient funds»Неверный баланс из кэшаПопытка продажи без активов, штраф биржи 500 ₽
Разрыв соединения WebSocketНет автореконнектаЗависание на 30 мин, убыток из-за неисполнения стоп-лосса 20 000 ₽
Иллюстрация

Сравнение подходов: обработка ошибок vs её отсутствие

КритерийВариант А (с обработкой)Вариант Б (без обработки)
Реакция на ошибку APIПовтор запроса с экспоненциальной задержкойЗавершение бота или зависание
РеконнектАвтоматический с сохранением состоянияРучной перезапуск или потеря связи
Дубли заявокПроверка по clientOrderIdМногократная отправка, лишние комиссии
Устаревшие данныеПроверка временной меткиТорговля по неактуальной цене
Влияние на депозитПотери < 1% в месяц при частоте сбоев 2026Риск слива 10–30% за один сбой

Как защитить бота от сбоев API: 5 шагов

  1. Шаг 1. Аудит кода на предмет исключений

    Проверьте все обращения к API: таймауты, HTTP-статусы, парсинг JSON. Добавьте try/catch для каждого запроса, логируйте ошибки. Без этого любой сбой — фатален.

  2. Шаг 2. Внедрите механизм реконнекта

    Реализуйте авто-переподключение при разрыве WebSocket или HTTP-соединения с экспоненциальной задержкой (1 с, 2 с, 4 с…). Сохраняйте состояние для корректного восстановления торговли.

  3. Шаг 3. Настройте rate limiter

    Ограничьте частоту запросов в соответствии с лимитами биржи. Добавьте очередь и приоритеты, чтобы не получить бан за превышение. Для Мосбиржи 2026 — не более 100 запросов в секунду.

  4. Шаг 4. Используйте идемпотентность заявок

    Генерируйте уникальный идентификатор (clientOrderId) для каждой заявки. Биржа отбрасывает повторные заявки с тем же ID — это защита от дублей при повторной отправке.

  5. Шаг 5. Тестируйте на симуляции сбоев

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

Иллюстрация

Частые вопросы

Какие API сбои самые опасные для ботов?

Потеря соединения WebSocket и истечение токена — приводят к зависанию и неисполнению стоп-лоссов. Без автореконнекта это прямая угроза депозиту.

Может ли бот сам восстановиться после сбоя?

Только если в коде предусмотрен автореконнект с проверкой состояния. Иначе требуется ручной перезапуск — за это время рынок уходит.

Что такое clientOrderId и зачем он нужен?

Уникальный ID заявки, который вы передаёте бирже. Мосбиржа использует его для идемпотентности: повторная отправка с тем же ID игнорируется, защищая от дублей.

Как часто нужно обновлять данные в боте?

Оптимально — подписка на WebSocket для цен, но с резервированием REST-запросами каждые 1–2 секунды. Это снижает риск устаревших котировок.

Какие штрафы за дубли заявок на Мосбирже?

Комиссия за каждую заявку списывается (например, 0,01% от суммы), дубли могут привести к нежелательным сделкам. Дополнительных штрафов нет, но потери на комиссиях и спреде реальны.

Истории участников клуба

Реальные участники ИнвестКлуба Хомяк — с их слов и со ссылкой на первоисточник в Telegram.

Наталья А.в клубе 1,5 года

Точка входазашла пробно на 1 месяц после рекламы

Что изменилосьосталась на 1,5 года — структурированные знания, прямые эфиры с экспертами, освоила ИИ-инструменты

«Когда-то я зашла пробно, на 1 месяц. Прошло 1,5 года, а я по-прежнему там. Один только искусственный интеллект чего стоит.»
история в Telegram →
Олегв клубе полгода

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

Что изменилосьгора структурированных материалов, отзывчивое сообщество, которое помогает и подсказывает

«Возрастной скепсис мешал зайти — думал, всё как обычно. Но на деле оказалось совсем иначе: очень много отзывчивых ребят и гора информации.»
история в Telegram →

Что говорят участники клуба

«В Хомяке уже полтора года… кайфовое, живое сообщество. Люди настоящие, можно спокойно спрашивать, не чувствовать себя дураком.»
Олеготзыв в Telegram →
«Зашла пробно на 1 месяц. Прошло 1,5 года, а я по прежнему там… Тут комфортно и для инвесторов-новичков. Вся информация отлично структурирована.»
Наталья А.отзыв в Telegram →

Ещё реальные отзывы участников — t.me/traderreviews

Иллюстрация

Источники

Ежедневные разборы рынка — в канале @tradernocryПодписаться →