본문 바로가기

API

[Fred API] 물가연동채권(TIPS)과 기준금리 및 소비자물가지수(CPI)

반응형

Fred API를 이용해서 물가연동채권과 기준금리, 소비자 물가지수(CPI)를 수집하고 비교해 보겠습니다.

Fredpy로 데이터를 수집하는데 Fred API Key가 필요합니다.

 

1. Fred 가입 후 API KEY 신청 및 확인하기

2. 물가연동채권과 기준금리

3. 물가연동채권과 소비자 물가지수(CPI)

 

 

 

1. Fred 가입 후 API KEY 신청 및 확인하기

https://yenpa.tistory.com/65

 

[Fred API] 가입 후 API KEY 신청 및 확인하기

Fred 사이트에 가입 후 API Key 확인하는 방법을 알아보겠습니다. 1. Fred 사이트 가입 아래의 사이트에 접속합니다 https://fred.stlouisfed.org/ Federal Reserve Economic Data | FRED | St. Louis Fed Welcome to FRED, your trust

yenpa.tistory.com

 

 

 

 

2. 물가연동채권과 기준금리

필요 라이브러리를 import 합니다. API_KEY는 본인의 데이터가 필요합니다.

import pandas as pd
import fredpy as fp
from datetime import datetime
#fp.api_key = 'YOUR_API_KEY'

물가연동 채권 데이터가 2003-01-01부터 있으니 기준 금리 및 소비자 물가 지수도 아래의 기간으로 통일하겠습니다.

startdate='2003-01-01'
enddate=datetime.now().strftime('%Y-%m-%d')

 

물가연동 채권의 Symbol은 'DFII10'입니다.

#물가연동채권
df1 = fp.series('DFII10',enddate)
df1.data
df11=df1.data.loc[(df1.data.index>=startdate) & (df1.data.index<=enddate)]
df11

 

 

다음으로 기준금리 데이터를 수집하겠습니다. Symbol은 'FEDFUNDS'입니다.

df2 = fp.series('FEDFUNDS',enddate)
df22=df2.data.loc[(df2.data.index>=startdate) & (df2.data.index<=enddate)]
df22

 

 

그래프로 비교해 보겠습니다.

import plotly.express as px
import plotly.graph_objects as go
from plotly.subplots import make_subplots

fig = make_subplots(specs=[[{'secondary_y':True}]])

fig.add_trace(
    go.Scatter(x=df11.index, y=df11.values, name='물가연동채권'),
    secondary_y=True
)

fig.add_trace(
    go.Bar(x=df22.index, y=df22.values, name='기준금리'),
    secondary_y=False
)

fig.update_layout(
    title_text = '물가연동채권과 기준금리',
    title = {'x':0.5, 'y':0.9}
)

fig.show()

 

 

 

반응형

 

 

3. 물가연동채권과 소비자 물가지수(CPI)

소비자 물가지수 수집하고 그래프로 비교해 보겠습니다.

Symbol은 'CPIAUCSL'입니다.

df3 = fp.series('CPIAUCSL',enddate)

dftemp=df3.apc().data
cpi=dftemp.loc[(dftemp.index>=startdate) & (dftemp.index<=enddate)]
cpi
fig = make_subplots(specs=[[{'secondary_y':True}]])

fig.add_trace(
    go.Scatter(x=df11.index, y=df11.values, name='물가연동채권'),
    secondary_y=True
)

fig.add_trace(
    go.Bar(x=cpi.index, y=cpi.values, name='CPI(YOY)'),
    secondary_y=False
)

fig.update_layout(
    title_text = '물가연동채권과 CPI(YOY)',
    title = {'x':0.5, 'y':0.9}
)

fig.show()

 

Core CPI를 수집하고 그래프로 보겠습니다.

df4 = fp.series('CPILFESL',enddate)

dftemp=df4.apc().data
corecpi=dftemp.loc[(dftemp.index>=startdate) & (dftemp.index<=enddate)]
corecpi

fig = make_subplots(specs=[[{'secondary_y':True}]])

fig.add_trace(
    go.Scatter(x=df11.index, y=df11.values, name='물가연동채권'),
    secondary_y=True
)

fig.add_trace(
    go.Bar(x=corecpi.index, y=corecpi.values, name='Core CPI(YOY)'),
    secondary_y=False
)

fig.update_layout(
    title_text = '물가연동채권과 CoreCPI(YOY)',
    title = {'x':0.5, 'y':0.9}
)

fig.show()

 

 

물가연동채권과 기준금리 및 CPI를 하나의 그래프로 보겠습니다.

fig = make_subplots(specs=[[{'secondary_y':True}]])

fig.add_trace(
    go.Scatter(x=df11.index, y=df11.values, name='물가연동채권'),
    secondary_y=True
)

fig.add_trace(
    go.Scatter(x=df22.index, y=df22.values, name='기준금리'),
    secondary_y=False
)

fig.add_trace(
    go.Scatter(x=cpi.index, y=cpi.values, name='CPI(YOY)'),
    secondary_y=False
)

fig.update_layout(
    title_text = '물가연동채권과 기준금리 및 CPI(YOY)',
    title = {'x':0.5, 'y':0.9}
)

fig.show()

 

 

이상으로 Fred API를 이용해서 물가연동채권과 기준금리, 소비자 물가지수(CPI)를 수집하고 비교해 봤습니다.

 

 

반응형