반응형

안녕하세요, 왕초보 코린이를 위한 코딩유치원에 오신 것을 환영합니다.

코딩유치원에서는 파이썬 기초부터 사무자동화, 웹크롤링, 데이터 분석 등의 다양한 패키지까지 초보자도 알기 쉽도록 내용을 정리해 놓았습니다.

업무는 물론 투자에도 도움이 될만한 전자공시시스템(DART) 텔레그램(Telegram), 주가/지표 차트(FinanceDataReader) 관련 패키지도 배울 수 있으니 많은 관심 부탁드립니다.

 

 

<FinanceDataReader 패키지 시리즈>

 

2021.08.10 - [파이썬 패키지/데이터분석] - [Python/FinanceDataReader] 1편. 파이썬으로 국내/해외 상장주식 가격데이터 가져오기 (ft. 환율, 코인가격도 가능)

2021.08.11 - [파이썬 패키지/주식투자] - [Python/FinanceDataReader] 2편. 파이썬으로 국내/해외 상장주식 차트 그리기

 

이번 시간에는 지난 시간에 배운 FinanceDataReader를 이용해서 FRED 주요 경기 선행 지표를 분석하는 방법에 대해 공부해보겠습니다.

 


 

경기 지표란?

 

경제 지표(혹은 지수)란 너무나도 복잡한 경제를 한 눈에 파악하기 위해서 만든 통계 데이터입니다.

 

당연히 경제란 하나의 변수 혹은 데이터로 설명할 수 없으므로 다양한 데이터를 지표가 활용되며, 주로 경제적 성과를 측정하거나, 미래 경제를 예측하기 위한 수단으로 활용됩니다.

 

ex) 실업률, 이직률, 주택 착공 건수, 소비자 물가지수, 산업 생산 지수, 국내 총생산, 주식 시장의 주가, 통화량의 변화

 

또한 이러한 경기지표는 경기와의 시간순서에 따라 아래의 3가지로 크게 나뉩니다.

 

1) 경기 선행 지수

2) 경기 동행 지수

3) 경기 후행 지수

 

경기 선행 지표만 잠시 설명드리면, 경기가 좋아질지 나빠질지를 앞서 보여주는 지표를 말합니다. 즉, 선행지표를 보면 앞으로의 경기가 어떻게 될지 조금이나마 예측할 수 있는 것이죠.

 

 

 

FRED 경기 지표란?

FinanceDataReader 라이브러리는 FRED 주요 경기 선행지표 데이터를 불러올 수 있는데 여기서 FRED란 Federal Reserve Economic Data의 줄임말로 직역하자면 '연방 준비 경제 데이터'를 뜻합니다.

 

수십만 개의 국가, 국제, 공공 및 민간 출처의 경제 데이터 시계열로 구성된 온라인 데이터베이스로 너무 다양한 데이터가 존재합니다.

저도 아직 FRED에 대해 완벽히 파악하지 못하여 자세한 내용이 궁금하신 분은 아래의 링크를 참고해주세요.

 

https://fredhelp.stlouisfed.org/fred/about/about-fred/what-is-fred/

 

What is FRED? | Getting To Know FRED

What is FRED? Short for Federal Reserve Economic Data, FRED is an online database consisting of hundreds of thousands of economic data time series from scores of national, international, public, and private sources. FRED, created and maintained by the Rese

fredhelp.stlouisfed.org

 

 

FRED에서 얻을 수 있는 지표는 너무 다양하기에, 가장 흔히 사용하는 대표적인 지수만 다루어보겠습니다.

 

그 전에 필요한 라이브러리와 설정을 좀 하고 넘어가도록 하겠습니다. 참고로 데이터 분석 환경은 VSCODE와 쥬피터 노트북을 활용하였습니다.

 

# FinanceDataReader 불러오기
import FinanceDataReader as fdr

# matplotlib 불로오기 및 그래프 설정
import matplotlib.pyplot as plt

plt.rcParams["axes.grid"] = True
plt.rcParams["figure.figsize"] = (12,6)
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams["axes.formatter.limits"] = -10000, 10000

 

 

 

1. 주간 실업수당 청구 건수 (ICSA)

 

해당 지표는 미국의 주간 실업수당 청구 건수를 보여줍니다. 

 

작년 코로나19 사태가 한창이던 3월 넷째 주(3월 22일~28일) 687만건으로 정점을 찍었던 적이 있으며, 참고로 코로나19 이전에는 매주 21만~22만건에 불과했다고 합니다.

 

# 2020년~현재의 나스닥지수(NASDAQCOM)와 주간 실업수당 청구 건수(ICSA) 추이

df = fdr.DataReader(['NASDAQCOM', 'ICSA'], start='2020', data_source='fred')
ax = df.plot(secondary_y='NASDAQCOM')

 

<실행 결과>

참고로 ICSA 지수는 경기가 나빠질 때는 경기 후행 지표의 성격을 띄지만, 경기가 좋아지는 경우에는 선행지표로 활용가능하다고 하네요.

 

여러분들의 생각은 어떠신가요? 주황색 그래프의 추이를 보고 파란색 그래프(나스닥 지수)가 상승할 것이란 걸 예측해볼 수 있으시겠나요?

 

어제 기준으로 실업수당 청구건수가 37만건인데 코로나 이전인 22만건 정도의 수준으로는 아직 도달하지 않았으니, 주가 상승여력이 좀 더 남았다는 의미로 해석할 수 있을까요??

 

 

2. M2 통화량

 

통화량이란 시중에 풀린 돈의 양을 의미합니다. 그중 M2 통화량이 우리의 삶에 영향을 끼치는 지표라고 생각하시면 됩니다.

 

다들아시겠지만 통화량이 많아진다는 것은 나라에서 돈을 많이 찍어낸다는 것을 의미하고, 희소하고 가치가 있는 자산들은 그대로이므로 자연스럽게 자산들의 가격이 상승하게 됩니다. 우리는 이를 인플레이션이라고도 부릅니다.

 

아래는 통화량의 개념에 대해 정리된 글이니 M2가 정확히 무엇을 의미하는지 궁금하신분들만 참고해주세요.

 

■ 통화량 개념  (출처. e-나라지표)

 

  ° 본원통화:  화폐발행액 + 금융기관의 對한은 원화예치금

  ° M1(협의통화)

    -   현금통화 + 요구불예금.수시입출식 저축성예금 - 동 금융상품의 예금취급기관 간 상호거래분

  ° M2(광의통화)

     -   M1 + 기간물 정기예금,적금 및 부금 + 시장형금융상품(CD,RP,표지어음) + 실적 배당형금융상품(금전신탁,수익증권 등) + 금융채 + 기타(투신증권저축, 종금사 발행어음) - 동 금융상품 중 장기(만기 2년이상) 상품 - 동 금융상품의 예금취급기관 간 상호거래분

 

 

# 1991~2021년, 나스닥지수(NASDAQCOM)와 M2통화량(M2) 

df = fdr.DataReader(['NASDAQCOM', 'M2'], start='1991', data_source='fred')
ax = df.plot(secondary_y='NASDAQCOM')

 

<실행 결과>

개인적으로 이 그래프를 보니, 돈만 가지고 있으면 왜 안되는지 확연히 알겠습니다.

 

91년부터 약 30년이 지난 21년까지 M2 통화량은 약 3300에서 19400까지 커졌습니다.

 

단위는 잘 모르겠지만 약 5.9배 통화량이 늘었으니, 30년 전에 비해 돈의 가치가 1/6토막 났다고 생각할 수 있겠죠?

 

중간중간 나스닥 지수가 급등락하는 기간이 있지만 장기적으로 보면 인플레이션에 무조건 올라타야겠다는 생각이 듭니다.

 

 

3. 하이일드 채권 스프래드

: 하이일드 채권 수익률 - 미국 국채 수익률

 

앞서 언급한 지표들 보다 조금 생소할 수도 있는 개념입니다.

 

하이일드(High-Yeild) 채권이란 높은 수익률, 즉 채권의 가격 대비 이자를 많이 받을 수 있는 채권을 말합니다.

 

미국같이 신용이 엄청나게 좋은 나라에서 발행하는 국채와 낮은 신용등급 회사에서 발행하는 회사채는 그 수익률이 차이나는 것은 당연하겠죠?

 

신용이 좋으면 돈을 떼일 리스크가 낮으니 이자를 낮게 받고, 신용이 낮으면 돈을 떼일 리스크가 높으니 이자를 높게 받고 돈을 빌려주는 개념입니다.

 

여기서 스프래드란 차이를 의미하며, 하이일드 채권 스프래드는 하이일드 채권 수익률에서 미국국채 수익률을 뺀 값을 의미합니다.

 

# 2008년 금융위기, 나스닥지수(NASDAQCOM)와 하이일드 채권 스프레드 

df = fdr.DataReader(['NASDAQCOM', 'BAMLH0A0HYM2'], start='2005', end='2011', data_source='fred')
ax = df.plot(secondary_y='NASDAQCOM')

# 회색으로 중요한 부분을 표시하는 코드 (참고)
ax = ax.axvspan('2007-12-01', '2009-03-30', color='gray', alpha=0.2)

 

<실행 결과>

 

하이일드 채권 스프레드가 상승하면 거시 경제 상황이 악화되고 있다는 신호로 볼 수 있다고 합니다.

 

일반적으로 경기 전망이 좋을 때는 하이일드 채권에 대한 수익률이 상대적으로 낮아져 하이일드 채권 스프레드가 낮아지며, 반대로 경기 전망이 좋지 않을 때는 부도 가능성이 높은 하이일드 채권을 보유하려는 수요가 급감하여 수익률은 상대적으로 높아지고 안전자산에 자금이 몰리면서 국채 금리가 낮아집니다. 그래서 이 시기에는 하이일드 채권 스프레드가 높아지는 것입니다.

 

그렇다면 코로나 위기 때는 어땠을까요? 예측할 수 있었을까요? (코드는 생략)

 

결과론적으로, 억지로 예측을 해보자면 하이일드 스프래드가 올라가는 상황에서 4~5%를 넘었을 때는 조금 조심할 필요가 있지 않나 생각됩니다. 이런 추론이 다음에 큰 위기기 다시 왔을 때 큰 손실을 막아줄 수 있기를 바래봅니다.

 

오늘 준비한 내용은 여기까지입니다.

 

오늘도 코딩유치원을 찾아주신 여러분께 감사드립니다.

 


<참고 자료>

 

깃허브 FinanceDataReader Tutorial - FRED 경기 선행 지표.ipynb

 

https://github.com/FinanceData/FinanceDataReader

 

GitHub - FinanceData/FinanceDataReader: Financial data reader

Financial data reader. Contribute to FinanceData/FinanceDataReader development by creating an account on GitHub.

github.com

 

옐로우의 블로그 - 하이일드 채권 스프레드

 

http://yellow.kr/blog/?p=4249 

 

하이일드 채권 스프레드 – 옐로우의 블로그

고위험, 고수익을 대표하는 하이일드 채권(High-Yield Bond)은 투자 등급 채권보다 신용 등급이 낮은 회사가 발행한 채권으로 원리금 상환에 대한 불이행 위험이 높지만 그만큼 이자율도 높다. 세계

yellow.kr

 

 

 

반응형

+ Recent posts