Акции с высокой дивидендной доходностью часто являются отличной инвестиционной стратегией для инвесторов, стремящихся получать приток денежных средств каждый год. В данной статье буден создан скрипт на Python для отбора их на бирже NASDAQ.
Что такое дивидендная доходность?Пример
При цене акции ОАО «Лукойл» 1124,37 рублей и дивиденде 28 рублей на акцию дивидендная доходность будет равна:

Расчет дивидендной доходности является простой задачей, которую можно выполнить с помощью финансового API под названием fmpcloud и Python. Этот API предлагает несколько бесплатных запросов в день после регистрации.
Первым делом нужно извлечь список тикеров для всех акций, торгующихся на Nasdaq, по которым собираемся рассчитать дивидендную доходность.import requests
demo = 'Ваш API CODE'
tickers = requests.get(f'https://fmpcloud.io/api/v3/symbol/available-nasdaq?apikey={demo}')
tickers = tickers.json()
symbols = []
for ticker in tickers:
symbols.append(ticker['symbol'])После необходимо пройтись по полученному списку акций и получить финансовую информацию по компании. Так же необходимо понимать, что получаем только последние данные, а не за все время существование компании.DivYield = {}
for company in symbols:
try:
companydata = requests.get(f'https://fmpcloud.io/api/v3/profile/{company}?apikey={demo}')
companydata = companydata.json()
latest_Annual_Dividend = companydata[0]['lastDiv']
price = companydata[0]['price']
market_Capitalization = companydata[0]['mktCap']
name = companydata[0]['companyName']
exchange = companydata[0]['exchange']
dividend_Yield= latest_Annual_Dividend/price
DivYield[company] = {}
DivYield[company]['Dividend_Yield'] = dividend_Yield
DivYield[company]['latest_Price'] = price
DivYield[company]['latest_Dividend'] = latest_Annual_Dividend
DivYield[company]['market_Capit_in_M'] = market_Capitalization/1000000
DivYield[company]['company_Name'] = name
DivYield[company]['exchange'] = exchange
except:
passСбор данных может занять значительное по продолжительности время. После их можно представить в виде отсортированного DataFrame, где сверху будут акций с высокой дивидендной доходностью.import pandas as pd DivYield_dataframe = pd.DataFrame.from_dict(DivYield, orient='index') DivYield_dataframe = DivYield_dataframe.sort_values(['Dividend_Yield'], ascending=[False]) DivYield_dataframe.head(15)

meanDivNasdaq = DivYield_dataframe[DivYield_dataframe['Dividend_Yield']>0]['Dividend_Yield'].mean()
print("Средняя дивидендная доходность по рынку Nasdaq равна ", "{:.2%}".format(meanDivNasdaq))Средняя дивидендная доходность по рынку Nasdaq равна 2.80%Самой высокой дивидендной доходностью в полученных результатах у акций компании Triumph Bancorp Inc — 21,57%. Но необходимо быть осторожным при выборе компаний по данному показателю, так как он может являться результатом падения цены акций и как следствия ростом дивидендной доходности. Правда не в этом случае. Так же выплата высоких дивидендов может не сохраниться в будущем, тем более если у компании возникнут финансовые проблемы.
Основной смысл в следующем — анализ дивидендной доходности не должен быть единственным критерием. Я для одного из своих портфелей так же смотрю: EPS, EBITDA, FCF, срок выплаты дивидендов, капитализация компании, чистая рентабельность (отношение выручки к прибыли) и коэффициент Net Debt/EBITDA.
Но как говориться — все вышеприведенное не является инвестиционной рекомендацией и выбор остается за каждым самостоятельно.
Только начинаю знакомство с американским рынком и как раз подумывал выбрать дивидендные компании, а тут еще и с Питоном интересное упражнение.
Это означает, что в формуле про дивы Лукойла не хватает коэффициента приведения к году, а точнее — к периоду получения денег.
Правильный расчет покажет, что, если указанная в формуле цена продержится до дня, скажем, отстоящего 1 месяц до даты выплаты, а фактическое поступление денег Вам на счет — через 1 месяц от начала выплат, то процентная ставка дивидендной доходности равна 2,49%/2*12 = 14,94% годовых.
Вот что считать нужно! Тогда будет понятно, какая цена должна быть в какой день до даты выплаты. Отсюда легко будет понятно, покупать ли бумагу или продавать.