Примечания:
Если вы хотите поддержать меня, подпишитесь на Medium и LinkedIn.
Эта статья НЕ является финансовым советом. Вам следует обратиться к профессионалу, прежде чем принимать какие-либо финансовые решения.
Введение
Технологии меняют сбор финансовых данных, заменяя пыльные гроссбухи блестящими информационными панелями.
Давно прошли времена квадратных терминалов и трудночитаемого текста, как показано на картинке выше.
Владельцы малого бизнеса, обратите внимание: yfinance и Python — отличный дуэт для анализа ваших инвестиций.
Благодаря возможности доступа и визуализации финансовых данных от Yahoo в режиме реального времени у вас будет четкое представление о финансовом состоянии компании, прежде чем принимать инвестиционные решения.
Инвестировать с уверенностью никогда не было так просто, так как у вас под рукой будет куча информации.
Попрощайтесь с догадками и поприветствуйте разумные инвестиции.
Но почему Python и Yahoo?
Во-первых, Python можно использовать бесплатно, что делает его очевидным выбором для владельцев малого бизнеса, стремящихся минимизировать затраты.
Что касается данных, финансовую статистику может быть трудно получить из-за различных препятствий, таких как ограниченный доступ к надежным источникам, сложные и постоянно меняющиеся правила и потребность в специальных знаниях для точной интерпретации и анализа данных.
Yahoo делает за вас большую часть работы с самими акциями, а Python предоставляет вам бесплатный доступ к этой надежной базе данных. Обладая небольшими знаниями в области программирования и финансов, мы можем получить глубокое представление о компании или индексе.
Цель этой статьи — сообщить нынешним или потенциальным владельцам бизнеса, аналитикам и программистам, как использовать yfianance/matplotlib для анализа общедоступных данных.
Кодирование
Для начала нам нужно будет импортировать наши библиотеки и указать, какой запас мы хотим проанализировать. В качестве примера я буду изучать финансовую историю Майкрософт.
import pandas as pd import yfinance as yf from datetime import datetime plt.style.use('seaborn')
Выше мы импортируем библиотеки и стиль графика, который хотим использовать, затем мы сохраняем данные Microsoft в переменной.
msft = yf.Ticker("MSFT")
Оттуда мы хотим получить обзор финансового состояния Microsoft и поместить его в переменную.
stockinfo = msft.info
Вы заметите, что этот вывод беспорядочный, чтобы исправить это, мы используем простой цикл for.
#dictonary loop, prints line by line for key,value in stockinfo.items(): print(key, ":", value)
Это даст результат, который легче усваивается.
Если мы хотим вернуть только одно значение из этого списка, мы можем использовать следующую команду. Не стесняйтесь изменять «sharesOutstanding» и имя переменной, чтобы они соответствовали индивидуальному значению, которое вы ищете.
#return one value from info numshares = msft.info['sharesOutstanding'] print(numshares)
Следующие команды демонстрируют некоторые из самых популярных команд в yfinance для анализа данных.
# get stock info msft.info # get historical market data msft.history(period="max") # show actions (dividends, splits) msft.actions # show dividends msft.dividends # show splits msft.splits #show current analyst reccomednations msft.recommendations #see major holders msft.major_holders
В этой статье мы хотим точно знать, кто является главным держателем акций Microsoft.
Для начала мы используем следующий код для извлечения данных об этих держателях в переменную.
df = msft.institutional_holders print(df)
Первая визуализация
Наша первая визуализация не потребует какого-либо управления данными, данные достаточно чисты, чтобы визуализировать их как есть.
Чтобы начать визуализацию, нам нужно импортировать библиотеку, которую мы будем использовать, matplotlib. Мы также хотим создать фигуру и соответствующим образом настроить ее размер.
import matplotlib.pyplot as plt from matplotlib.pyplot import figure figure(figsize=(10,8), dpi=62) #adjust figure size here, fonts will adjust
Оттуда мы захотим включить переменные, которые мы хотим использовать в гистограмме, и соответствующим образом пометить оси.
plt.bar(df['Holder'],df['% Out']) plt.ylabel('% Holder of Microsoft') plt.xlabel('Holder') plt.title('Microsoft Major Holders') plt.show()
Результат:
Вторая визуализация
Для нашего второго визуального элемента нам нужно будет немного управлять данными. Для этого мы хотим проанализировать историю дивидендов Microsoft по годам.
Во-первых, мы сохраняем дивиденды в переменной, как обычно.
div = msft.dividends
Оттуда мы хотим суммировать дивиденды по годам и сохранить их в новой переменной.
data = div.resample('Y').sum()
Взяв новую переменную, нам нужно сбросить индекс, чтобы мы могли создать новый столбец под названием «Год», что значительно упростит его работу после того, как мы нарисуем его.
data = data.reset_index() data['Year'] = data['Date'].dt.year
С этого момента мы будем использовать те же методы, что и ранее, для создания графика.
plt.figure() plt.bar(data['Year'],data['Dividends']) plt.ylabel('Dividend Yield in $') plt.xlabel('Year') plt.title('Microsoft Dividend History') plt.xlim(2002,2023) #adjust limits plt.show()
Результат:
Пожалуйста, не принимайте никаких инвестиционных решений без консультации с профессионалом. Я не выступаю за покупку или продажу каких-либо акций. Эта статья существует, чтобы подчеркнуть мои навыки программирования и письма.
Заключение
- Технологии меняют способ сбора финансовых данных, заменяя ручные методы инновационными визуальными эффектами.
- Pandas и matplotlib позволяют нам управлять этими данными и визуализировать их.
- Yfinance и Python — это экономичное решение для владельцев малого бизнеса, желающих проанализировать свои инвестиции.
- Yfinance предоставляет финансовые данные от Yahoo в режиме реального времени, что позволяет лучше понять финансовое состояние компании.
- Python, будучи бесплатным для использования, является удобным инструментом для владельцев малого бизнеса, позволяющим минимизировать затраты.
Спасибо за прочтение!
- Ник
P.S. Чтобы просмотреть сценарий, на котором основан этот пост, нажмите здесь. Узнайте, как взаимодействовать с ценой и еще несколько трюков.