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

Торговый бот на Python с Искусственным Интеллектом: как обучить нейросеть и не поймать переобучение

Нейросеть в боте — это не волшебная палочка, а сложный фильтр. Главная проблема — модель подгоняется под историю и сыпется на новых данных. Разбираем, как строить прогноз на Python, не обманывая себя метриками.

Автор: ~8 мин

Коротко:

Почему обученная на истории нейросеть часто ошибается в реальной торговле?

Модель запоминает шум, а не паттерн. На истории она видит конкретные движения цены и подстраивает веса под них. На новых данных (другой тренд, волатильность) те же веса дают мусор. Классика — модель на SBER с 2020-2023 показывает +30%, а на отрезке 2024-2025 — минус.

Источник: Банк России — Ставки денежного рынка

Что такое переобучение (overfitting) в контексте трейдинга?

Ситуация, когда метрики на train-выборке (RMSE, accuracy) отличные, а на test-выборке — провал. В трейдинге это значит: бот блестяще торгует на истории, но на реальном счёте сливает. Проверяется просто: считаешь доходность на данных, которые модель не видела. Если разрыв больше 20% — переобучение.

Какие архитектуры нейросетей подходят для прогноза цен акций РФ в 2026?

LSTM и GRU — стандарт для временных рядов. Transformer-модели (а-ля TimeGPT) требуют много данных и видеокарт. Для инвестора разумный минимум — LSTM на 2 слоя с dropout 0,2. Не пытайся ставить 10-слойную сеть на котировки SBER за 3 года — переобучится гарантированно.

Какой минимальный объем исторических данных нужен для обучения?

Для LSTM — не менее 3–5 лет дневок по ликвидному инструменту (SBER, GAZP, YNDX). Если брать 1 год — выборка мала, шум перекроет сигнал. Лучше взять 7 лет с 2019 по 2025, разбить 80/10/10 на train/val/test. Данные по ОФЗ с 2021 бесполезны — ставки менялись, модель не поймёт текущую динамику.

Какие тикеры российского рынка допустимо использовать для теста бота в 2026?

Только ликвидные: SBER, GAZP, LKOH, YNDX, MOEX. Низколиквидные (например, многие акции второго эшелона) дают ложные сигналы из-за спреда и проскальзываний. Учитывай налог на купоны ОФЗ — 13% НДФЛ, это снижает реальную доходность облигационной стратегии.

Источник: Банк России — Ставки денежного рынка

Как проверить модель на data leakage (утечку данных) в бэктесте?

Запрещено использовать информацию из будущего. Типичная ошибка: нормировка признаков по всему датасету до разбивки. Делай нормализацию на train, затем применяй к test. Другая — добавляешь значение закрытия завтрашнего дня как признак. Проверка: запусти бота на свежих данных января 2026 — если результат сильно хуже истории, ищи утечку.

Источник: Московская биржа — Данные по акциям (MOEX ISS)

Какие библиотеки Python использовать для нейросетевого бота?

Keras с бэкендом TensorFlow — проще всего. Для признаков — pandas, TA-Lib (тех. индикаторы), для бэктеста — backtesting.py или vectorbt.

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

Сравнение метрик нейросети на разных выборках — пример для SBER (2020-2025)

МетрикаTrain (2020-2023)Test (2024-2025)
RMSE (среднекв. ошибка цены, ₽)4,218,7
Accuracy направления (рост/падение)63%43%
Доходность бота за период+34%–12%
Максимальная просадка–5%–28%
Иллюстрация

Сравнение подходов: «Looped Feature Engineering» vs «Simple LR» для прогноза

КритерийНейросеть (LSTM)Линейная регрессия
Устойчивость к шумуВысокая, но без регуляризации ломаетсяНизкая, выбросы портят модель
Количество признаковДо 50 (OHLCV, объем, макро)До 5 (риск мультиколлинеарности)
Риск переобученияВысокий (обязательно dropout/early stopping)Средний (требует отбора признаков)
ИнтерпретируемостьНулевая («чёрный ящик»)Высокая (коэффициенты понятны)
Порог входа для инвестораНужен Python, GPU необязателен (CPU на 3-5 лет ок)Хватит Excel или 3 строчек кода

Как начать: 5 шагов для интеграции нейросети в бота

  1. Сбор и подготовка данных

    Скачай дневные свечи SBER с MOEX через API или файлы. Длина ряда — минимум 5 лет. Удали пропуски, приведи все цены к единой валюте (₽). Создай признаки: скользящие средние (MA5, MA20), RSI, обьём. Не используй будущие значения — только прошлые.

  2. Выбор и обучение модели

    Напиши LSTM на Keras/TensorFlow. 2 слоя по 50 нейронов, Dropout 0,3. Обучай до 50 эпох с EarlyStopping (терпимость 5 эпох). Валидацию — на данных 2024 года. Если loss на валидации растёт — останавливай. Тест — на 2025 году.

  3. Симуляция торговли (бэктест)

    Запусти бота на тестовой выборке. Без комиссий и проскальзываний — пустая цифра. Учти комиссию брокера (0,05% на MOEX) и НДФЛ 13% с прибыли. Если итоговая доходность ниже, чем «купил и держал» — модель бесполезна.

  4. Проверка на новых данных (walk-forward)

    Раздели историю на 4 окна: 2019-2022 train, 2022 val, 2023 test1, 2024 test2. Обучай на train, проверяй на test1 и test2. Если на test2 метрики значительно хуже — модель переобучена. Пересобери признаки.

  5. Внедрение в live-режим

    API Квик/Transaq для получения свечей в реальном времени. Запускай инференс модели раз в день (на закрытии). Сигнал — предсказание на следующий день. Обновляй модель раз в неделю с новыми данными. Ставь стоп-лимиты на случай, если модель начнёт «гадать».

Иллюстрация

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

Какие библиотеки Python использовать для нейросетевого бота?

Keras с бэкендом TensorFlow — проще всего. Для признаков — pandas, TA-Lib (тех. индикаторы), для бэктеста — backtesting.py или vectorbt.

Нужна ли видеокарта (GPU) для обучения LSTM на котировках?

Нет, CPU хватит для 1-2 слоёв LSTM на 5-7 лет дневок. GPU ускорит работу, но не критично. Главное — не размер сети, а качество данных и борьба с переобучением.

Какой процент данных выделять на валидацию?

10-15% от всего набора. Если данных мало (менее 1000 точек), используй кросс-валидацию по временным блокам — не перемешивай случайно, иначе утечка.

Что делать, если модель показывает 100% точность на train?

Стопроцентное попадание — признак переобучения или data leakage. Проверь, не попал ли в признаки target (цена закрытия следующего дня). Регуляризуй (L2) и увеличь dropout.

Какие риски при запуске такого бота на реальные деньги в 2026?

Основные: слом модели на новом тренде (например, резкое повышение ставки ЦБ), технические сбои API, налоги (13% с купонов ОФЗ и прибыли по акциям). Никогда не ставь на бота больше 5–10% портфеля.

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

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

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

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

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

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

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

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

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

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

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

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

Иллюстрация

Источники

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