QFinance — проект, посвящённый разработке и применению нейросетей для торговли на Московской бирже. В рамках проекта разрабатываются модели на основе алгоритмов обучения с подкреплением для принятия торговых решений.
Проект включает в себя:
- Анализ финансовых данных, включая технические и фундаментальные индикаторы;
- Разработку и тестирование гипотез для улучшения эффективности торговых стратегий;
- Оптимизацию портфелей и ребалансировку на основе реальных рыночных данных.
Цель проекта — исследовать возможности применения искусственного интеллекта в финансовых рынках и разработать оптимальные алгоритмы для принятия решений в условиях неопределенности.
Вдохновлён следующими исследованиями:
- Выгрузка данных Мосбиржи с использованием Tinkoff Invest API
- Расширение котировок техническими индикаторами (см. StockStats)
- Дополнение датасета фундаментальными индикаторами (парсинг Finam)
- Реализация Среды и Агента из статьи
- Доработки Среды под специфику биржи (лотность акций, комиссия)
- Эксперименты с RNN
- Оптимизация гиперпараметров модели
- Бэктест на брокерском счёте-песочнице
- Создание обвязки в виде Телеграмм бота с уведомлениями о сделках
conda update conda
conda create -n sb3 python=3.12
conda activate sb3
python -m pip install --upgrade pip
pip install -r ./requirements.txt- Добавьте переменную окружения
TOKENсо значением токена для песочницы, который можно создать здесь - https://www.tbank.ru/invest/settings/api/ - Настройте переменные
start_date,end_dateиtime_intervalв файле src/data_engine/pipeline.py - Выполните
python pipeline.py, результаты появятся в директории data/pre
- Отредактируйте путь до датасета в
src.rl.traint_test.trainer.load_dataset - Выполните
python trainer.py, результаты появятся в src/rl/traint_test/trained_models