Project note · Personal project

AI는 답을 대신하는 도구가 아니라,
판단을 구조화하는 도구였습니다.

Yahoo Finance의 시장 데이터와 최신 뉴스를 모으고, 서로 다른 관점을 가진 AI 에이전트들이 의견을 낸 뒤 의장이 하나의 신호로 정리하는 투자 보조 시스템을 만들었습니다. 이 페이지는 결과보다 그 과정을 통해 배운 점과 다음 개선 방향을 기록한 프로젝트 노트입니다.

PythonGemini APIyfinanceTelegramTelegraph
How it works

복잡한 판단을
작은 단계로 나눴습니다.

한 번의 프롬프트에 모든 판단을 맡기지 않고, 데이터 수집·역할 분리·합의·전달을 각각 검증할 수 있게 구성했습니다.

01 / INPUT

시장 데이터 수집

관심 종목과 보유 자산을 읽고 현재가, 뉴스, 분기 재무제표, 애널리스트 목표주가를 하나의 브리핑으로 묶습니다.

02 / ANALYSIS

4인의 관점

기술적 분석가·가치투자자·매크로 분석가·포트폴리오 매니저가 같은 자료를 각자의 기준으로 해석합니다.

03 / CONSENSUS

의장 에이전트

의견을 대조해 0~100점 점수, 추천 수량, 3줄 요약을 JSON 형식으로 만들고 기준 점수와 비교합니다.

04 / ACTION

알림과 기록

매수·매도·리밸런싱 신호를 Telegram으로 보내고, 긴 분석은 Telegraph 페이지 링크로 전달하며 로그에 남깁니다.

What I learned

만들면서 배운 세 가지

코드를 연결하는 것보다 중요한 것은 입력의 품질, 실패를 다루는 방식, 그리고 결과를 해석하는 태도였습니다.

역할을 나누면 질문이 선명해진다

한 모델에게 “사도 될까?”라고 묻는 대신 전문 분야를 나누자 각 의견의 근거를 비교할 수 있었습니다. AI의 성능보다 좋은 질문의 구조가 먼저라는 점을 배웠습니다.

자동화에는 안전장치가 필요하다

API 응답이 JSON이 아닐 수 있고, 뉴스·재무 데이터가 비어 있을 수도 있습니다. 파싱 검증, 메시지 길이 제한, 예외 처리와 로그는 기능만큼 중요한 시스템의 일부였습니다.

신호와 의사결정은 다르다

75점이라는 기준은 결론을 쉽게 만들지만 수익을 보장하지 않습니다. 이 시스템은 주문을 실행하는 로봇이 아니라, 확인해야 할 근거를 빠르게 보여주는 의사결정 보조 도구로 정의했습니다.

Next iteration

다음에는 이렇게
개선하고 싶습니다.

현재 버전은 작동하는 프로토타입입니다. 신뢰할 수 있는 시스템이 되려면 데이터·검증·운영의 층을 더 단단하게 만들어야 합니다.

01

백테스트와 성과 지표 추가

과거 시점의 데이터만 사용해 신호를 재현하고, 수익률뿐 아니라 최대 낙폭, 승률, 거래 비용을 함께 비교하겠습니다. 그래야 CONSENSUS_THRESHOLD가 실제로 의미 있는지 검증할 수 있습니다.

02

데이터 시점과 출처를 명확히 관리

뉴스 발행 시각, 재무제표 기준 분기, 가격 조회 시점을 저장하고 출처를 리포트에 표시하겠습니다. 서로 다른 시점의 정보가 섞이는 look-ahead bias도 점검해야 합니다.

03

비밀키와 실행 환경 분리

현재 코드의 API 키 입력부는 환경변수와 비밀 저장소로 옮기고, 로컬 파일 대신 안전한 설정·권한 관리 방식을 적용하겠습니다. 운영 로그에도 민감한 값이 남지 않도록 하겠습니다.

04

여러 AI 모델의 토론과 교차검증으로 결론 도출

서로 다른 AI 모델이 같은 데이터를 독립적으로 분석한 뒤, 각자의 근거와 반론을 교환하며 결론을 검토하는 방식으로 시스템을 발전시키고 싶습니다. 모델 간 의견이 일치하는 지점과 충돌하는 지점을 교차검증해 단일 모델의 편향을 줄이고, 더 신뢰할 수 있는 최종 판단을 도출하겠습니다.

※ 이 프로젝트는 투자 권유나 자동 주문 시스템이 아니라 학습 목적의 투자 분석 프로토타입입니다. 실제 투자 판단 전에는 원자료를 직접 확인하고, 별도의 리스크 관리 기준을 적용해야 합니다.