https://github.com/topotun77/stock_data_analysis
Анализ и визуализация данных об акциях. GUI-приложение. (python, Pandas, tkinter, matplotlib, yfinance)
https://github.com/topotun77/stock_data_analysis
gui matplotlib pandas python tkinter yfinance
Last synced: 8 months ago
JSON representation
Анализ и визуализация данных об акциях. GUI-приложение. (python, Pandas, tkinter, matplotlib, yfinance)
- Host: GitHub
- URL: https://github.com/topotun77/stock_data_analysis
- Owner: Topotun77
- Created: 2024-11-27T22:33:13.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2025-02-02T15:44:40.000Z (8 months ago)
- Last Synced: 2025-02-02T16:28:21.190Z (8 months ago)
- Topics: gui, matplotlib, pandas, python, tkinter, yfinance
- Language: Python
- Homepage:
- Size: 78.7 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Анализ и визуализация данных об акциях (GUI-приложение)
### Описание приложения:
• Графический и консольный интерфейс приложения.
• Использование фреймворков: yfinance, Pandas, tkinter, matplotlib.
• Расчет различных финансовых индикаторов, таких как: RSI, MACD и ATR.
• Различные варианты выбора периодов для анализа.
• Выбор тикета из списка или ввод наименования вручную.
• Отображение результата запроса в виде таблицы в GUI версии.
• Построение различных графиков, вывод их на экран и сохранение в файл.
• Возможность выбора стиля оформления графиков.
• Определен список финансовых кризисов с 1969 года с возможностью отметки их на любом графике.
• Возможность построения интерактивного графика по ценам (Открытия, Закрытия, max, min).
• Возможность построения интерактивного графика по любым выбранным пользователем столбцам. Реализован выбор столбцов таблицы посредством нажатия на заголовок столбца в таблице.
• Экспорт данных в CSV формате через меню «Файл/Сохранить в CSV» и «Файл/Сохранить как...» с выводом результата экспорта пользователю через внешнее приложение.
• Уведомление пользователя, если цена акций колебалась более чем на заданный процент за период.
• ООП подход при создании окна GUI интерфейса.
• Подробная документация и аннотация переменных, функций и классов.
• Организовано меню приложения с возможностью вывода данных в файл и построения различных графиков.---
Для консольной версии запустите `main.py`
Для GUI-версии запустите `main_win.py`### Окно приветствия - информация о приложении:

### Меню `Файл` и интерфейс приложения:

### Меню `Построение графиков`:

### График с RSI и MACD (исторический момент - 05.12.2024 стоимость биткойна обновила исторический максимум, превысив $100 тыс.):

### Сообщение в случае превышения порога уведомления о разнице цен:

### Визуализация данных с отметками финансовых кризисов:

### Индикаторы ATR и MACD:

### Другой стиль оформления графика:

### Интерактивный стандартный график цен:

### Интерактивный график с возможностью выбрать данные для визуализации:
### Консольный вывод приложения:
```
Добро пожаловать в инструмент получения и построения графиков биржевых данных.
Вот несколько примеров биржевых тикеров, которые вы можете рассмотреть: AAPL (Apple Inc), GOOGL (Alphabet Inc), MSFT (Microsoft Corporation), AMZN (Amazon.com Inc), TSLA (Tesla Inc).
Общие периоды времени для данных о запасах включают: 1д, 5д, 1мес, 3мес, 6мес, 1г, 2г, 5г, 10л, с начала года, макс.
Введите тикер акции (например, «AAPL» для Apple Inc): aapl
Введите период для данных (например, '1mo' для одного месяца): 3mo
График сохранен как AAPL_3mo_stock_price_chart.png
Среднее цена закрытия: 227.5798
Введите значение порога колебания цены, при котором следует уведомлять пользователя: 10
Цена акций колебалась более чем на 10.0 % за выбранный период.
Максимальная цена: 242.39999389648438
Минимальная цена: 216.082275390625
Колебание составило: 12.18 %
Данные сохранены в файл: AAPL_2024-09-03-2024-12-03_data.csv.
```## Для запуска приложения:
1. **Установите все необходимые зависимости, выполнив команду:**
```
pip install -r requirements.txt
```
2. **Произведите все настройки в файле [`constants.py`](https://github.com/Topotun77/stock_data_analysis/blob/master/constants.py).**
В файле настроек есть подробное описание каждого параметра.3. **Запустите приложение командой:**
- Для консольного приложения используйте команду:
```
python main.py
```
- Для GUI-приложения приложения используйте команду:
```
python main_win.py
```