배당 일정 캘린더 구현 – 지급일과 Ex-Div 날짜 시각화 (22)

2025. 8. 7. 06:15프로젝트 (Project)/바이낸스 코인 자동거래

반응형

22. 배당 일정 캘린더 구현 – 지급일과 Ex-Div 날짜 시각화

실제 배당 투자에서 중요한 건 배당 지급일과 Ex-Div 날짜를 정확히 확인하는 것입니다. 이번 편에서는 Streamlit과 calendar view를 활용하여 배당 일정 캘린더 기능을 만들어봅니다.


22-1. 기능 구성

  • 📆 월 단위 캘린더 UI
  • 🟡 Ex-Div 날짜는 노란 점으로 표시
  • 💰 배당 지급일은 금액 + 종목 리스트로 표시
  • 👆 날짜 클릭 시 상세 내역 표시

22-2. 필요한 데이터 구조 예시


[
  {
    "date": "2025-08-15",
    "type": "dividend_payment",
    "amount": 25.5,
    "stocks": ["KO", "PFE"]
  },
  {
    "date": "2025-08-10",
    "type": "ex_dividend",
    "stocks": ["T", "VZ"]
  }
]

22-3. Streamlit Calendar 뷰 구현 예시


import streamlit as st
import pandas as pd
import calendar
from datetime import datetime

# 날짜별 이벤트 불러오기
events = load_dividend_events()

# 날짜 선택
selected_date = st.date_input("날짜 선택", datetime.today())

# 해당 날짜에 이벤트가 있다면 표시
for e in events:
    if e['date'] == selected_date.strftime('%Y-%m-%d'):
        if e['type'] == 'dividend_payment':
            st.success(f"💰 배당 지급일! 금액: ${e['amount']}, 종목: {', '.join(e['stocks'])}")
        elif e['type'] == 'ex_dividend':
            st.warning(f"🟡 Ex-Div 날짜! 종목: {', '.join(e['stocks'])}")

💡 추가적으로 달력 UI에 색깔 점 표시를 넣고 싶다면 `plotly`, `streamlit-calendar` 같은 외부 라이브러리를 함께 사용할 수 있습니다.


22-4. 고도화 기능 제안

  • 📊 일별 배당 총액을 달력 하단에 표시
  • 📩 배당 예정일 1일 전 푸시 알림
  • 🖥️ 종목 클릭 시 상세 배당 히스토리 팝업

마무리 및 다음 편 예고

이번 편에서는 배당 일정 관리의 핵심 기능을 달력 형태로 시각화했습니다. 다음 편에서는 자동화된 전략 추천 기능을 GPT 기반으로 구현하고, 투자자에게 적합한 전략을 제안하는 기능을 소개할 예정입니다.

 

반응형