Skip to content

oQaris/QFinance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QFinance

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

Загрузка и предобработка данных

  1. Добавьте переменную окружения TOKEN со значением токена для песочницы, который можно создать здесь - https://www.tbank.ru/invest/settings/api/
  2. Настройте переменные start_date, end_date и time_interval в файле src/data_engine/pipeline.py
  3. Выполните python pipeline.py, результаты появятся в директории data/pre

Обучение модели

  1. Отредактируйте путь до датасета в src.rl.traint_test.trainer.load_dataset
  2. Выполните python trainer.py, результаты появятся в src/rl/traint_test/trained_models

About

QFinance focuses on developing neural networks for stock trading on the Moscow Exchange. It explores reinforcement learning algorithms, financial data analysis, and hypothesis testing to optimize trading strategies and portfolio rebalancing based on real market data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors