2024 NH 투자증권 빅데이터 경진대회

빅데이터 | NH | 분석 | AI | ETF | Microsoft | Tableau | 시각화 | 아이디어

  • moneyIcon 상금 : 6,300만원
  • 883명 마감

 

ETF 종목 분석 데이터와 경제 지수를 근거로 한 프롬프트 포트폴리오 모델

공동작성자

stroke
2024.10.09 00:28 694 조회 language

1. 포트폴리오 구성 모델 
 이 코드는 ETF 데이터를 기반으로 사용자에게 맞춤형 포트폴리오를 추천하는 기능을 구현합니다. 먼저, 과거 성과 데이터를 이용해 각 ETF의 최근 데이터를 더 크게 반영한 가중 평균을 계산합니다.  배당 데이터를 분석해 최근 1년간 배당금 합계를 구하고, 배당수익률을 계산한 후 배당형 ETF를 식별합니다. 이후 각 ETF의 리스크 성향 점수를 계산하는데, 여러 성과 지표에 가중치를 부여하여 위험도와 수익성을 반영합니다. 사용자가 입력한 리스크 허용도, 기대 수익률, 배당 선호 여부에 따라 ETF를 필터링하고, 위험 대비 수익 점수를 기준으로 상위 5개 ETF를 추천합니다. 투자 비율은 위험 점수의 역수를 사용해 계산하며, 위험이 낮을수록 더 큰 비중을 할당합니다. 이렇게 선별된 ETF를 현실 경제 지수와 함께 프롬프트로 생성형 AI에게 넘겨 포트폴리오를 받습니다. 

2. 포트폴리오 리밸런싱 모델 
 먼저, yfinance 라이브러리를 통해 지정된 ETF와 주식의 과거 데이터를 가져와 각 티커의 연간 수익률과 변동성을 계산합니다. 그런 다음, 사용자는 목표하는 연간 수익률, 최대 허용할 변동성, 추가로 투자할 금액을 입력합니다. 이 정보를 기반으로, 현재 포트폴리오의 총 가치를 계산하고 각 종목에 대한 투자 비율을 구해 포트폴리오의 예상 수익률과 위험을 산출합니다. 또한, 주어진 ETF 목록에 대해 연간 수익률과 변동성을 계산하여 리밸런싱에 사용할 ETF 후보군을 선정합니다. 이때, Gemini API를 사용하여 사용자가 설정한 목표 수익률과 변동성에 맞춘 포트폴리오 리밸런싱 권장 사항을 요청합니다. API로부터 받은 추천 사항에는 ETF 매수/매도 비율이 포함되어 있으며, 이를 통해 총 투자 금액을 초과하지 않고 목표를 달성할 수 있는 최적의 투자 전략을 제시합니다. 최종적으로, 추천된 ETF와 각 종목의 매수/매도 비율, 포트폴리오의 예상 수익률과 변동성 등을 출력하여 사용자에게 제공됩니다.

코드