Skip to content

Анализ и визуализация данных об акциях. GUI-приложение. (python, Pandas, tkinter, matplotlib, yfinance)

Notifications You must be signed in to change notification settings

Topotun77/stock_data_analysis

Repository files navigation

Анализ и визуализация данных об акциях (GUI-приложение)

Описание приложения:

• Графический и консольный интерфейс приложения.
• Использование фреймворков: yfinance, Pandas, tkinter, matplotlib.
• Расчет различных финансовых индикаторов, таких как: RSI, MACD и ATR.
• Различные варианты выбора периодов для анализа.
• Выбор тикета из списка или ввод наименования вручную.
• Отображение результата запроса в виде таблицы в GUI версии.
• Построение различных графиков, вывод их на экран и сохранение в файл.
• Возможность выбора стиля оформления графиков.
• Определен список финансовых кризисов с 1969 года с возможностью отметки их на любом графике.
• Возможность построения интерактивного графика по ценам (Открытия, Закрытия, max, min).
• Возможность построения интерактивного графика по любым выбранным пользователем столбцам. Реализован выбор столбцов таблицы посредством нажатия на заголовок столбца в таблице.
• Экспорт данных в CSV формате через меню «Файл/Сохранить в CSV» и «Файл/Сохранить как...» с выводом результата экспорта пользователю через внешнее приложение.
• Уведомление пользователя, если цена акций колебалась более чем на заданный процент за период.
• ООП подход при создании окна GUI интерфейса.
• Подробная документация и аннотация переменных, функций и классов.
• Организовано меню приложения с возможностью вывода данных в файл и построения различных графиков.


Для консольной версии запустите main.py
Для GUI-версии запустите main_win.py

Окно приветствия - информация о приложении:

img01

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

img02

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

img02

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

img03

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

img04

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

img05

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

img06

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

img07

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

img08

Интерактивный график с возможностью выбрать данные для визуализации:

img09

Консольный вывод приложения:

Добро пожаловать в инструмент получения и построения графиков биржевых данных.
Вот несколько примеров биржевых тикеров, которые вы можете рассмотреть: 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
  1. Произведите все настройки в файле constants.py.
    В файле настроек есть подробное описание каждого параметра.

  2. Запустите приложение командой:

  • Для консольного приложения используйте команду:
python main.py
  • Для GUI-приложения приложения используйте команду:
python main_win.py

About

Анализ и визуализация данных об акциях. GUI-приложение. (python, Pandas, tkinter, matplotlib, yfinance)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages