3년 만기 국채 수익율은 시장 금리와 같은 역할을 하기 때문에 현금배당 수익률과 비교하여 1보다 큰 경우 주식 배당금 수익이 은행에 저금을 해서 얻는 이자 수익보다 높다는 함의를 갖는다.
\[\text{국채시가 배당률} = \frac{\text{현금배당 수익률}}{\text{3년 만기 국채 수익률}}\]
library(tidyverse)
library(rvest)
library(janitor)
bond_url <- 'http://www.index.go.kr/potal/main/EachDtlPageDetail.do?idx_cd=1073'
bond_dat <- bond_url %>%
read_html() %>%
html_nodes(xpath='//*[@id="t_Table_107301"]') %>%
html_table() %>%
.[[1]]
bond_df <- bond_dat %>%
clean_names() %>%
rename(`구분` = `x`) %>%
filter(row_number() != 1) %>%
gather(`연도`, `금리`, -`구분`)
# 2018년은 월별로 되어 있어 이를 평균내기 위해서 연도별로 그룹을 묶어 평균을 냄.
bond_viz_df <- bond_df %>%
separate(`구분`, into=c("채권", "쓰레기"), sep="\\(") %>%
select(-`쓰레기`) %>%
mutate(`연도` = str_extract(`연도`, "^x[0-9]{4}")) %>%
group_by(`채권`, `연도`) %>%
summarise(`금리` = round(mean(`금리`),2)) %>%
ungroup() %>%
mutate(`연도` = parse_number(`연도`))
bond_viz_df %>%
spread(`연도`, `금리`) %>%
DT::datatable()
앞서 시장금리에 대해서 데이터를 정리한 후에 gghighlight
팩키지를 사용해서 가장 관심이 가는 국고채 3년과 회사채 3년에 대해서 추세를 하이라이트 기능을 동원해서 시각화한다.