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

Пошаговая настройка бота для отслеживания инвест-паттернов

Бот на Python + OpenAI API автоматически находит паттерны «двойное дно» и «голова и плечи» на графиках российских акций. Всё работает в реальном времени: скрипт каждую минуту запрашивает данные с MoEx, анализирует свечи и отправляет уведомления в Telegram. Нужен только код из гайда, API-ключ OpenAI и сервер на 1? в месяц.

Автор: ~8 мин

Коротко:

Как работает бот и какие паттерны ищет?

Бот каждые 60 секунд загружает последние свечи (1-минутные, 5-минутные) с MoEx по выбранным тикерам (SBER, GAZP, LKOH и др.). Алгоритм выделяет локальные экстремумы и проверяет соотношение плеч и головы, глубину двойного дна. После нахождения кандидата данные передаются в OpenAI API (GPT-4o-mini) для финальной проверки на ложные срабатывания. Итог — сообщение в Telegram с графиком и вероятностью отработки.

Источник: MoEx ISS API

Какие библиотеки Python нужны и сколько это стоит?

Минимум: `pandas`, `numpy`, `requests`, `matplotlib`, `python-telegram-bot`, `openai`. Все ставятся через pip. Стоимость — около 0,02 ₽ за запрос OpenAI (модель GPT-4o-mini). При 500 запросах/день (фильтрация шума) — ~300 ₽/мес. VPS на 1 GB — ~600 ₽/мес на Timeweb или Selectel. Итого ~1 000 ₽ в месяц.

Как получать данные с MoEx бесплатно?

Используйте MoEx ISS API (iss.moex.com) — официальный бесплатный REST-интерфейс. Пример запроса: `https://iss.moex.com/iss/engines/stock/markets/shares/boards/TQBR/securities/SBER/candles.json?from=2026-01-01&interval=5`. Лимит — 10 запросов/сек, для 10 тикеров хватает. Альтернатива — платные сервисы (Finam, Tinkoff API), но они не бесплатны.

Как бот различает «двойное дно» и ложные сигналы?

Первый фильтр — математический: разница между двумя минимумами не более 0,5%, объём на втором дне выше первого, RSI < 35. Второй фильтр — OpenAI: бот отправляет скриншот (base64) и просит подтвердить паттерн с вероятностью не менее 70%. Если модель (GPT-4o-mini) отвечает «да, это двойное дно, вероятность 85%» — сигнал считается истинным. Ложные срабатывания (флаг/вымпел, треугольники) отсеиваются.

Какие настройки под паттерн «голова и плечи»?

Минимальная глубина плеча от шеи — 3%, шея соединяет минимумы после левого плеча и после головы. Параметр max_pips = 0,02 (2% от цены). Плечи должны быть на одном уровне ±1%. Для таймфрейма 5 минут минимальная дистанция между плечами — 20 свечей. Бот также проверяет пробой шеи на 0,5% — только тогда сигнал актуален. Без подтверждения OpenAI (>65%) сигнал игнорируется.

Источник: MoEx ISS API

Налоги на купоны и доход от торговли — что с ними в 2026?

Купоны облигаций (включая ОФЗ) облагаются НДФЛ 13% — налог удерживается брокером как налоговый агент. Доход от продажи акций — 13% при сумме доходов до 5 млн ₽ за год, свыше — 15%. Если бот торгует на ИИС-3 (если продлят в 2026), на биржевой доход льгота до 30 млн ₽ (на первые 3 года). Уточняйте у брокера статус ИИС на 2026.

Источник: Документация OpenAI API

Какие тикеры MoEx поддерживает бот?

Любые акции из котировального списка MoEx — SBER, GAZP, LKOH, YNDX, NVTK, VTBR и др. Для ИИС-3 и нерезидентов уточните доступность через брокера (Т-Инвестиции, БКС).

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

Параметры сканера паттернов для бота

ПараметрЗначение по умолчаниюРекомендация 2026
Период свечного графика60 минут5 минут для скальпинга, 60 — для внутридневного
Минимальная дистанция между экстремумами10 свечей20 свечей на 5‑минутках (2+ часа)
Фильтр объёмов (двойное дно)объём второго дна > первого на 20%Увеличить до 30% для шумных тикеров (GAZP)
Проходной порог OpenAI70%80% для «голова-плечи» (снижает False Positives)
Иллюстрация

Сравнение ручного поиска и автоматического бота

КритерийРучной поискБот на Python + OpenAI
Скорость анализа (1000 свечей)15–30 минут3–5 секунд
Точность выделения паттерновсубъективная, ~50–60%~80% (с OpenAI-проверкой)
Время на настройку0 (готовые скринеры)2–3 часа (код + отладка)
Затраты в месяц0 ₽~1 000 ₽ (сервер + OpenAI)
Риск пропуска сигналавысокий (человек отвлекается)низкий (бота можно масштабировать)

Как развернуть бота: 5 шагов

  1. Установить окружение

    Создайте папку проекта, активируйте виртуальное окружение (python -m venv venv). Установите зависимости: pip install pandas numpy requests matplotlib python-telegram-bot openai. Для хранения ключей используйте .env файл с python-dotenv.

  2. Написать модуль загрузки свечей

    Сделайте функцию get_candles(ticker, interval=5, days=1). Используйте MoEx ISS API — запрос в JSON, обрабатывайте через pandas DataFrame. Пример: pd.DataFrame(data['candles']['data'], columns=data['candles']['columns']). Обновите колонки: ‘open’, ‘high’, ‘low’, ‘close’, ‘volume’.

  3. Реализовать поиск экстремумов

    Напишите алгоритм поиска локальных минимумов и максимумов с помощью rolling-окна или argrelextrema (scipy.signal). Для «двойного дна» найдите два минимума с допустимым разбросом. Для «голова-плечи» — последовательность: пик, минимум, пик, минимум, пик. Векторизуйте для скорости.

  4. Интегрировать OpenAI для верификации

    При обнаружении кандидата рисуйте график matplotlib с аннотациями, сохраняйте в base64. Отправьте в chat.completions.create: ‘Посмотри на график, найден паттерн “двойное дно”. Оцени вероятность от 0 до 100. Если < 60 — скажи “ложь”.’ Ответ парсите регуляркой.

  5. Настроить уведомления в Telegram

    Заведите бота через @BotFather, получите токен. В коде после подтверждения OpenAI отправляйте сообщение вида: ‘📈 SBER — Двойное дно, вероятность 85%. Цена 308,5 ₽. Цель: 313,0 ₽ (стоп 305,0)’. Прикрепите график. Запускайте бесконечный цикл с time.sleep(60).

Иллюстрация

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

Какие тикеры MoEx поддерживает бот?

Любые акции из котировального списка MoEx — SBER, GAZP, LKOH, YNDX, NVTK, VTBR и др. Для ИИС-3 и нерезидентов уточните доступность через брокера (Т-Инвестиции, БКС).

Можно ли подключить бота к Tinkoff API вместо MoEx?

Да, но нужен отдельный модуль с grpc-запросами (tinkoff-invest-api). Стоимость подписки — 0 ₽, есть лимит на число запросов. MoEx ISS проще — без авторизации.

Бот сможет сам торговать, а не только искать?

В гайде — только сканер. Добавление торгового модуля (заявки через Tinkoff API) — отдельная задача. Риски: требуется робо-счёт, блокировка при ошибках. Начинайте с анализа.

Как часто обновлять код под изменения MoEx API?

API не меняется с 2019 года. Единственное — в 2024 ввели новый раздел boards (TQBR — основной). Скрипт использует именно TQBR для акций. Обновления не требуются.

Можно ли запустить бота на домашнем ПК?

Да, если он включён 24/7. Лучше VPS за 600 ₽/мес (Ubuntu 22.04, 1 ядро, 1 GB RAM). Установите screen или tmux для фоновой работы.

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

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

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

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

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

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

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

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

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

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

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

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

Иллюстрация

Источники

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