Автоматизований проєкт для щоденного моніторингу вартості інвестиційного портфеля акцій з використанням Python та GitHub Actions.
Проєкт автоматично:
- завантажує актуальні біржові дані з Yahoo Finance
- розраховує вартість кожної позиції в портфелі
- обчислює загальну вартість портфеля (Total Value)
- будує лінійний графік динаміки за останні 7 днів:
- для кожної акції
- для загальної вартості портфеля
- зберігає результати у файли (
CSV,HTML) - надсилає Telegram-сповіщення про зміну вартості портфеля
- запускається повністю автоматично за розкладом без ручної участі
Запуск реалізований через GitHub Actions:
- 🔄 автоматичний запуск за cron-розкладом (щодня)
▶️ можливість ручного запуску через GitHub UI- 🤖 надсилання сповіщень у Telegram при кожному виконанні
- ⛔ автозапуск обмежений у часі (до 31.12.2025)
📊 Total Value: $11,720.35 (+0.123%)
Пояснення:
Total Value— загальна вартість портфеля- значення в дужках — відсоткова зміна відносно попереднього дня
.
├── portfolio_report.py # Основний Python-скрипт
├── README.md # Опис проєкту
└── .github/
└── workflows/
└── daily_portfolio.yml # GitHub Actions workflow
- Python 3.11
- yfinance — отримання біржових даних
- pandas — обробка та агрегація даних
- plotly — побудова інтерактивних графіків
- Telegram Bot API — сповіщення
- GitHub Actions — автоматизація та планування запусків
- Репозиторій є публічним
- Telegram Bot Token та chat_id не зберігаються в коді
- Використовується GitHub Secrets для безпечного зберігання конфіденційних даних
- Секрети доступні лише під час виконання GitHub Actions
Проєкт створено як:
- приклад end-to-end автоматизації
- демонстрацію роботи з реальними фінансовими даними
- pet-project / portfolio project для Data Analyst / Data Engineer
- основу для подальшого розширення (алерти, ML, BI-дашборди)
- алерти при досягненні порогових значень
- інтеграція з BI-інструментами
- прогнозування вартості портфеля
- підтримка декількох портфелів
- деплой у хмарі