카테고리 없음

fred 데이터로 연준 유동성 확인하는 방법 240924

mezzanineX 2024. 9. 24. 06:07

q1: fred 데이터로 연준 유동성 확인하는 방법

a1:

FRED (Federal Reserve Economic Data) 앱을 통해 연준의 전체 유동성을 주간 단위로 상세히 확인하는 방법을 설명해 드리겠습니다:

1. FRED 앱 설치 및 실행:
   - App Store나 Google Play에서 "FRED Economic Data" 앱을 다운로드하고 설치합니다.
   - 앱을 실행합니다.

2. 검색 기능 사용:
   - 앱 상단의 검색 바를 탭합니다.
   - "H.4.1" 또는 "Federal Reserve Balance Sheet" 등의 키워드를 입력합니다.



3. 관련 시리즈 선택:
   - "Total Factors Supplying Reserve Funds" 시리즈를 찾습니다.
   - 이 시리즈는 주간 데이터를 제공하며, 연준의 전체 유동성을 나타냅니다.

4. 그래프 설정:
   - 선택한 시리즈의 그래프가 표시됩니다.
   - 그래프 아래의 설정 아이콘을 탭하여 표시 옵션을 조정합니다.

5. 시간 범위 조정:
   - "Observation Range" 옵션에서 원하는 기간을 선택합니다.
   - 최근 몇 주나 몇 달의 데이터만 보고 싶다면 해당 기간을 선택합니다.

6. 주간 데이터 확인:
   - "Frequency" 옵션에서 "Weekly" 를 선택합니다.
   - 이렇게 하면 주간 단위의 데이터를 볼 수 있습니다.

7. 상세 데이터 보기:
   - 그래프의 특정 지점을 탭하면 해당 주의 정확한 수치를 볼 수 있습니다.
   - "View Data" 옵션을 선택하면 표 형식으로 모든 데이터를 볼 수 있습니다.

8. 추가 관련 시리즈 탐색:
   - "Related Series" 섹션을 확인하여 연준 유동성과 관련된 다른 지표들을 살펴봅니다.
   - 예: "Total Factors Absorbing Reserve Funds", "Reserve Balances with Federal Reserve Banks" 등

9. 알림 설정:
   - 관심 있는 시리즈에 대해 알림을 설정할 수 있습니다.
   - 데이터 업데이트 시 자동으로 알림을 받을 수 있습니다.

10. 데이터 내보내기:
    - 필요한 경우, 데이터를 CSV 파일로 내보내어 더 자세한 분석을 할 수 있습니다.

11. 정기적인 체크:
    - H.4.1 데이터는 매주 목요일에 업데이트됩니다.
    - 정기적으로 앱을 체크하여 최신 데이터를 확인하세요.

이 방법을 통해 FRED 앱에서 연준의 전체 유동성을 주간 단위로 상세히 모니터링할 수 있습니다. 이 데이터는 통화 정책과 금융 시장 동향을 이해하는 데 매우 유용합니다.

q2: series list up

a2:

연준의 유동성과 관련하여 FRED 앱에서 탐색해야 할 주요 시리즈 목록을 제공해 드리겠습니다:

1. 총 준비금 공급 요인 (Total Factors Supplying Reserve Funds)
   - 시리즈 ID: WSHORUSQ

2. 총 준비금 흡수 요인 (Total Factors Absorbing Reserve Funds)
   - 시리즈 ID: WABORRUSQ

3. 연방준비은행 보유 준비금 잔액 (Reserve Balances with Federal Reserve Banks)
   - 시리즈 ID: WRESBAL

4. 연준 총자산 (Total Assets of the Federal Reserve)
   - 시리즈 ID: WALCL

5. 국채 보유량 (U.S. Treasury Securities Held by the Federal Reserve)
   - 시리즈 ID: TREAST

6. 모기지 담보부 증권 보유량 (Mortgage-Backed Securities Held by the Federal Reserve)
   - 시리즈 ID: MBST

7. 연방기금금리 (Federal Funds Effective Rate)
   - 시리즈 ID: DFF

8. 통화량 M1 (M1 Money Stock)
   - 시리즈 ID: M1SL

9. 통화량 M2 (M2 Money Stock)
   - 시리즈 ID: M2SL

10. 리버스 레포 (Reverse Repurchase Agreements)
    - 시리즈 ID: RRPONTSYD

11. 레포 (Repurchase Agreements)
    - 시리즈 ID: RPTSYD

12. 중앙은행 유동성 스왑 (Central Bank Liquidity Swaps)
    - 시리즈 ID: SWPT

13. 지준 요구량 (Required Reserves of Depository Institutions)
    - 시리즈 ID: REQRESNS

14. 초과 지준 (Excess Reserves of Depository Institutions)
    - 시리즈 ID: EXCSRESNS

15. 통화 기반 (Monetary Base)
    - 시리즈 ID: BOGMBASE

이 시리즈들을 통해 연준의 유동성 상황을 종합적으로 파악할 수 있습니다. 각 시리즈는 연준의 대차대조표와 통화 정책의 다양한 측면을 보여줍니다. 시리즈 ID를 사용하면 FRED 앱에서 해당 데이터를 쉽게 찾을 수 있습니다. 주간 데이터가 제공되는 시리즈를 우선적으로 확인하되, 일부는 월간 또는 분기별 데이터일 수 있으므로 각 시리즈의 업데이트 주기를 확인하시기 바랍니다.

q3: python code

a3:

Python을 사용하여 FRED 데이터를 최신으로 DB화하는 코드를 작성해드리겠습니다. FRED 데이터를 쉽게 가져올 수 있는 'fredapi'라는 라이브러리가 있습니다. 이 라이브러리와 함께 SQLite를 사용하여 데이터를 저장하는 예제 코드를 제공하겠습니다.

먼저, 필요한 라이브러리를 설치해야 합니다:

```
pip install fredapi pandas sqlalchemy
```

그리고 다음은 Python 코드입니다:

```python
from fredapi import Fred
import pandas as pd
from sqlalchemy import create_engine
from datetime import datetime, timedelta

# FRED API 키 설정 (https://fredaccount.stlouisfed.org/apikeys에서 얻을 수 있습니다)
fred = Fred(api_key='your_api_key_here')

# SQLite 데이터베이스 연결
engine = create_engine('sqlite:///fred_data.db')

# 시리즈 ID 리스트
series_ids = [
    'WSHORUSQ', 'WABORRUSQ', 'WRESBAL', 'WALCL', 'TREAST', 'MBST', 'DFF',
    'M1SL', 'M2SL', 'RRPONTSYD', 'RPTSYD', 'SWPT', 'REQRESNS', 'EXCSRESNS', 'BOGMBASE'
]

# 현재 날짜로부터 1년 전 날짜 계산
end_date = datetime.now()
start_date = end_date - timedelta(days=365)

# 각 시리즈에 대해 데이터를 가져와 DB에 저장
for series_id in series_ids:
    try:
        # FRED에서 데이터 가져오기
        data = fred.get_series(series_id, start_date, end_date)
        
        # DataFrame으로 변환
        df = pd.DataFrame(data, columns=['value'])
        df.index.name = 'date'
        df['series_id'] = series_id
        
        # DB에 저장 (기존 데이터 덮어쓰기)
        df.to_sql(name='fred_data', con=engine, if_exists='append', index=True)
        
        print(f"Data for {series_id} has been updated.")
    except Exception as e:
        print(f"Error updating {series_id}: {str(e)}")

print("All series have been updated in the database.")
```

이 코드는 다음과 같은 작업을 수행합니다:

1. FRED API와 SQLite 데이터베이스에 연결합니다.
2. 지정된 시리즈 ID 목록을 순회합니다.
3. 각 시리즈에 대해 최근 1년간의 데이터를 가져옵니다.
4. 가져온 데이터를 pandas DataFrame으로 변환합니다.
5. DataFrame을 SQLite 데이터베이스의 'fred_data' 테이블에 저장합니다.

주의사항:
- API 키를 발급받아 'your_api_key_here' 부분을 실제 키로 교체해야 합니다.
- 이 코드는 데이터를 누적하여 저장합니다. 중복을 피하려면 추가적인 로직이 필요할 수 있습니다.
- 일부 시리즈는 주간 데이터가 아닐 수 있으므로, 필요에 따라 시작 날짜를 조정할 수 있습니다.
- 에러 처리를 포함하여 각 시리즈의 업데이트 실패에 대비합니다.

이 코드를 정기적으로 실행하면 (예: 크론 작업으로 설정) FRED 데이터의 최신 상태를 유지할 수 있습니다.

반응형