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

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

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

 

섹션별 군집화와 RAG에 기반한 ETF QA 시스템

공동작성자

stroke
2024.10.11 02:34 281 조회 language

본 팀은 ETF에 낯선 이들을 위한 RAG 기반의 QA 시스템을 기획하였으며 데이터 전처리 - 클러스터링 - RAG 모델 구축 순으로 코드를 작성하였다. 

1. 전처리
  전처리에서는 장기수익성/단기수익성/변동성/유동성/관심도의 5가지 섹션에 따라 피처들을 아래와 같이 생성한다. ETF별로 3개월 간의 지수이동평균이나 총 합계를 구하여 계산한다.

- 단기수익성 : 1개월 수익률 / 3개월 수익률 / MACD / RSI
- 장기수익성 : 1년 수익률 / 누적수익률(Z점수) / 정보비율(Z점수) / 샤프지수(Z점수) / 1년 배당수익
- 변동성 : 변동성(Z점수) / 최대낙폭(Z점수) / 볼린저갭 / 거래변동성 / 트래킹에러(Z점수) / 상관관계(Z점수)
- 유동성 : 총 거래금액 / 매수매도_차이 비율 / 유입금액_분산 / 유출금액_분산
- 관심도 : 종목조회수 / 관심종목등록수 / 계좌수 증감률 / 관심등록대비 신규매수계좌수

2. 클러스터링
  앞서 얻은 피처들로 클러스터링을 실시한다. 장기수익성/단기수익성/변동성/유동성/관심도별로, 총 5회 클러스터링을 실시하며 섹션에 속한 피처들은 간소화해서 사용한다. 이 후 실루엣 계수를 사용하여 군집의 수를 정하고 KMeans 클러스터링을 진행한다. 그 결과를 해석해서 각 ETF에 라벨링하며 모든 데이터와 결합하여 각종 수치와 라벨링 정보를 보유한 데이터프레임을 완성한다.

3. RAG 모델 구축
  완성한 데이터프레임을 기반으로 RAG 기반의 QA 시스템을 설계한다. RAG(Retrieve and Generate)는 질문에 대한 정확한 답변을 제공하고, 다양한 문맥에서 유용한 정보를 생산하는 데 효과적이다. 특히, 도메인에 특화된 AI 모델을 생성할 수 있는 장점이 있어서, 특정 분야의 데이터베이스에서 정보를 검색하고 도메인에 대한 정확한 답변을 제공해준다. 여기서는 ChatGPT 4 turbo-preview api를 활용하여 구현하며 구성한 프롬프트에 따라 질문을 받고 답변을 제공하도록 구축한다.

코드