Рассмотрим прим ер робота, торгующего по новостям, которые обрабатывает ИИ (искусственный интеллект) и дает торговые сигналы.
ИИ в нашем случае – это известные большие языковые модели (LLM, Large Language Models), которые обучены на огромных массивах данных, включая финансовые отчёты, новости и аналитику. В роботе есть возможность использовать почти все популярные модели нейросетей.
Код робота внутри проекта находится здесь:
Модели GigaChat от Сбера.
Имеется бесплатный тариф с ограниченным количеством токенов для каждой модели, которых достаточно для тестирования, и при необходимости токены можно купить.
Модели ChatGPT-4, Mistral, LLaMA, Grok 3, Qwen, DeepSeek.
К некоторым из них доступ в России ограничен, поэтому в роботе используется GPTunnel — специальный сервис, предоставляющий через API доступ к нескольким моделям ИИ с поддержкой платежей в нескольких валютах, включая российские рубли.
Для использования GigaChat моделей необходимо зарегистрироваться и получить ключ авторизации.
Переходим на страницу https://developers.sber.ru/portal/products/gigachat-api
Клиенты Сбера могут войти через свой Сбер ID:
После входа в личный кабинет создаём проект GigaChat API:
Внутри кабинета созданного проекта получаем ключ API:
Полученный ключ надо сохранить для дальнейшего использования.
Также для работы с GigaChat API необходимо установить сертификаты НУЦ Минцифры.
Ссылка на скачивание появится в личном кабинете либо можно скачать сертификаты с Госуслуг: https://www.gosuslugi.ru/newsearch/sertifikat-mincifry
Баланс токенов отслеживается в личном кабинете проекта:
В роботе присутствуют основные модели GigaChat и их модификации:
Для использования в роботе других нейросетей через GPTunnel необходимо зарегистрироваться, получить токен API и пополнить баланс в данном сервисе.
Заходим на сайт https://gptunnel.ru/?ref=AlgoPromo
По промокоду доступна 10% скидка: ALGOPROMO10
Можно выбрать язык интерфейса.
Регистрация возможна через соц. сети, СМС, эл. Почту.
После регистрации необходимо перейти в свой профиль и зарегистрировать бизнес-аккаунт для использования API:
Если используем от физического лица, нажимаем Individual и придумываем название для своего проекта:
Затем переходим на вкладку созданного бизнес-аккаунта, переходим в раздел API и создаём ключ авторизации:
Полученный ключ надо сохранить в отдельном месте, потому что впоследствии из кабинета его скопировать не получится.
Далее пополняем баланс. Пока сервис не используется для корпоративных целей в промышленных масштабах, можно пополнить кошелёк только личного аккаунта, поскольку для бизнес-аккаунта минимальная сумма пополнения 3000 руб., а для личного 390 руб. Способы пополнения разнообразные.
После получения доступа к моделям искусственного интеллекта можно запускать робота.
Робот сочетает в себе 2 источника: новости и скринер. Соответственно надо подключиться к двум коннекторам.
Источник для получения новостей не принципиален. Это может быть RSS каналы либо Телеграм каналы. Главное – чтобы новости содержали экономические показатели компаний, торгующихся на той бирже, доступ к которой у нас имеется.
Базовые настройки.
1. Regime:
On — включен.
Off – отключен.
OnlyLong – только покупаем.
OnlyShort – только продаем.
OnlyClosePosition – сможет только закрыть позицию, а входить не будет.
2. Volume type – режим выбора объёма.
Contracts – кол-во контрактов инструмента.
Contract currency – валюта контракта.
Deposit percent – процент от депозита.
3. Volume – значение объёма. Это значение зависит от предыдущего пункта. Если указано Contracts, то указывается объём инструмента. Если Contract currency, то указывается кол-во рублей или долларов, которыми нужно войти. Если Deposit percent, то указывается % от общего депозита, которым нужно войти в контракт.
4. Asset in portfolio – тут нужно указывать название валюты, которое будет использовано для расчёта объёма, если Вы выбрали тип объёма “Deposit percent”. В тестере оставляем «Prime». На крипте это обычно “USDT”. В АЛОР это «RUB».
5. Profit percent – на каком расстоянии от цены входа установить take profit в процентах.
6. Stop percent– на каком расстоянии от цены входа установить stop-loss в процентах.
AIнастройки:
1. Language for promt – выбор языка промта (русский или английский). Дело в том, что не все модели хорошо понимают русский язык, и предпочтительнее с ними работать, используя английский язык.
2. Use GPTunnel – установка флажка – выбран сервис GPTunnel.
3. GPTunnel Models – список моделей, доступных для использования через GPTunnel. Модели могут отличаться стоимостью запросов, длиной контекста, точностью ответов.
4. GPTunnel key – ключ для доступа к API GPTunnel.
5. GPTunnel payment balance – выбор кошелька в аккаунте GPTunnel:
Если надо списывать плату с личного кошелька, выбираем Private, с бизнес-аккаунта — Buisness.
6. Use GigaChat – установка флажка – выбрано использование моделей GigaChat.
7. GigaChat Models – список моделей, доступных для использования через GigaChat API.
8. GigaChat key – ключ для доступа к API GigaChat.
При получении новости её текст включается в промт, в котором для LLM назначаем роль финансового аналитика, и просим определить, влияет ли данная новость на котировки какого-либо финансового инструмента, и спрогнозировать направление движения цены. Также в промте обозначаем формат ответа: тикер, направление, например, AAPL, Buy;
В роботе NewsAIBot промты записаны в глобальных переменных класса. Их можно и нужно корректировать, учитывая торговую стратегию. Например, сообщить нейросети биржу, на которой будет вестись торговля, класс инструментов, чтобы в сигналах возвращались точные названия тикеров инструментов.
Если модель не сможет связать новость с конкретным финансовым инструментом, придет ответ с коротким ответом: NO.
Если от LLM приходит ответ в виде сигнала, производится поиск тикера среди инструментов, подключенных к скринеру. Если соответствующий инструмент найден, открывается сделка в направлении, указанном в сигнале.
Выход из позиции осуществляется либо по стоп-лоссу, либо по тейк-профиту, уровни которых мы задаем в параметрах.
В терминале в логах робота можно посмотреть ответ от модели:
Удачных алгоритмов!
Комментарии открыты для друзей!
https://smart-lab.ru/company/os_engine/blog/1024149.php
OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support
Канал научный трейдинг: https://t.me/bad_quant