728x90
1. 배당 히스토리 가져오기
종목 배당 이력 데이터를 가져오는 방식은 많지만 여기서는 Yahoo Finance 데이터를 가져올 수 있게 해주는 yahoo_fin 라이브러리를 활용하도록 하겠다. 해당 라이브러리는 아래 코드로 쉽게 설치할 수 있다.
pip install yahoo_fin
아래와 같이 get_dividends 함수를 사용하면 지난 모든 마이크로소프트의 배당 이력을 확인할 수 있다.
import yahoo_fin.stock_info as yf
yf.get_dividends("MSFT")
2. 배당 성장률 구하기
import yahoo_fin.stock_info as yf
import pandas as pd
import datetime
def get_div_growth(ticker):
if len(yf.get_dividends(ticker))==0 :
div_growth="No Dividend"
return div_growth
elif len(set(yf.get_dividends(ticker).index.year)) >=5:
div = yf.get_dividends(ticker)
month = div.index[-1].month
from_ = datetime.datetime(div.index[-1].year-5, month, 1)
to_ = datetime.datetime(div.index[-1].year, month+1, 1)
this_div = div[from_:to_].iloc[-1]['dividend']
five_year_ago_div = div[from_:to_].iloc[0]['dividend']
div_growth = (this_div/five_year_ago_div)**(1/5)-1
return div_growth
테슬라와 같이 배당을 지급하지 않는 종목을 가지고 돌리면 아래와 같이 배당 없음 결과가 나타난다.
반대로 마이크로소프트를 돌리고나면은 아래와 같이 배당금 연간 성장률을 확인할 수 있을 것이다.
위 소스코드는 아래 "게으른 쿼트"님 포스팅을 보면서 연습 삼아서 하나하나 만들어봤다.
미국 주식 데이터 수집 #6 배당 정보 가져오는 방법
안녕하세요, 이번 포스팅에서는 배당 정보를 가져오는 방법에 대해서 알아보겠습니다. 이 또한 댓글로 요청주신 분이 계셔서 주간 데이터에 반영하기 위해 작업한 내용입니다. 요청주신 정보
lazyquant.tistory.com
개인적으로 배당을 가장 중요시하는 투자자로서 해당 데이터를 가지고 계속해서 여러 방향으로 분석을 해보도록 하겠다.
728x90
반응형
'문송충의 코딩하기 > 퀀트 투자 스터디' 카테고리의 다른 글
S&P 500 50일 이동평균선을 활용한 SPY, SH 전략 백테스팅 with Python (0) | 2022.02.20 |
---|---|
[동퀀트] VAA(Vigilant Asset Allocation) 동적자산배분 파이썬으로 백테스팅 (1) | 2022.02.02 |
파이썬으로 라오어 무한매수법 백테스팅, 이렇게 하는게 맞나? (0) | 2022.01.14 |
파이썬으로 포트폴리오 자산별 상관관계 구하기 (0) | 2022.01.14 |
파이썬으로 업비트 내 자산 잔고 조회하기 with pyupbit (0) | 2022.01.13 |
댓글