Skip to content

E03S/Portfolio_Optimisation

Repository files navigation

Система Оптимизации Портфеля

Запуск проекта

Локльно проект можно запустить через

poetry install cp portfolio_optimisation/.env.example portfolio_optimisation/.env Добавьте переменные bot_token и benzinga_token

make start-api

make start-bot

Чтобы запустить через docker-compose cp portfolio_optimisation/.env.example portfolio_optimisation/.env Добавьте переменные bot_token и benzinga_token docker compose up

Обзор

Проект направлен на разработку системы, предлагающей рекомендации по балансировке портфеля ценных бумаг, учитывая цены на акции и связанные новости для максимизации прибыли.

Архитектура Системы

  • Модель Встраивания: Использует векторные представления, сгенерированные из заголовков новостей.
  • Модель Машинного Обучения: Применяет различные алгоритмы машинного обучения.
  • Алгоритм Оптимизации: Для оптимизации портфеля.

Данные

  • Исторические Данные: Акции из индекса S&P 500, полученные из Yahoo Finance, начиная с 2010 года, более миллиона записей.
  • Финансовые Новости: Также по акциям индекса S&P 500, полученные из Benzinga, включая более 300 000 новостных статей и заголовков.

Предобработка и Создание Признаков

  • Обработка Текста: Токенизация, удаление стоп-слов и пунктуации, стемминг с использованием SnowballStemmer.
  • Встраивание: Генерация векторных представлений из заголовков новостей с использованием all-MiniLM-L6-v2.
  • TF-IDF: Применяется для агрегирования текстов новостей по дням.
  • Обработка Исторических Данных: Включает MACD, скользящие средние, тренды и лаги.

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

Исследованы модели без NLP для скорости: CatBoost, XGBoost, LGBM, GBoost и Random Forest от Sklearn. Метрики, такие как R2-скор, MAE и MSE, предоставляются для оценки производительности.

Планы на Будущее

  • Исследование дополнительных источников новостей и расширение набора данных.
  • Применение моделей глубокого обучения, например, LSTM.
  • Разработка комплексного веб-приложения.

Ресурсы

Контакт

Result of research at checkpoint 5

model mean_absolute_error mean_squared_error r2 full_train_min full_train_sec train_size
metrics_financial_data_only 0.016942 0.000640 0.665110 0 10.02 946211
metrics_titles_embedding_financial_data 0.017106 0.000689 0.824685 0 20.25 60358
metrics_news_tfidf_title_embedding_financial_data 0.019028 0.000883 0.775300 45 42.97 60358
metrics_nlp_news_financial_data 0.019148 0.000893 0.772712 43 19.21 60358

About

Optimising portfolio earnings with nueral networks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages