AI 자동화 투자 코딩 실패기 - ISA로 꿈꾼 자동투자, 초보 코더의 GitHub 코드와의 한판 승부

최근 GitHub에서 흥미로운 코드를 발견했습니다. ChatGPT를 응용해 미국 중소형주에 투자하고, S&P500 수익률을 가볍게 뛰어넘었다는 기록이 있었죠.

"이걸 한국 시장에도 적용할 수 있지 않을까?"

마침 정부가 ISA 및 DC형 연금 계좌를 밀어주고 있었고, 세금이 이연되는 구조 덕분에 투자 수익을 극대화할 수 있겠다는 기대가 있었습니다. 그래서 TIGER 미국 나스닥100, ACE 엔비디아 밸류체인 액티브 같은 국내 상장 해외 ETF를 자동으로 투자 운영하는 시스템을 만들어보자는 마음으로 도전하게 되었습니다.

진행 방법

  • Codex: GitHub에서 받은 코드를 분석해 PRD(Product Requirement Document)를 뽑아내고, 전략 로직을 세부적으로 파악. Codex가 코드 분석에 클로드 보다 우수한 듯 함.

  • Cursor / Claude Code: 코드 수정 및 투자 전략 한국 ETF 연동 시도.

# PRD: KRX ETF 기반 DC형 퇴직연금 트레이딩 엔진

본 문서는 기존 엔진(trading_script.py, simple_automation.py, CSV 계약)을 한국 주식시장(KRX) 상장 ETF의 DC형 퇴직연금 운용 시나리오로 전환하기 위한 명세입니다. 핵심은 “채권 비중 최소 30% 상시 유지”와 “퇴직연금(DC) 적격 ETF만 거래” 제약을 트레이딩 의사결정 흐름에 반영하는 것입니다.

## 1) 목표와 범위
- 목표: KRX 상장 “퇴직연금(DC) 적격” ETF만을 거래 대상으로 하여, 일일 평가·매수/매도(수동 + 자동 스톱로스)·성과 기록·리포팅을 일관되게 운영한다.
- 범위: `trading_script.py`의 트레이딩/정산 로직, 한국 시장 데이터 소스, CSV 스키마 계약, 자산배분(채권 비중 최소 30%) 규칙, `simple_automation.py`의 LLM 연동(현재 시뮬레이션 수준) 포함.
- 비범위: 실제 브로커 API 연동, 실시간 체결 엔진, 틱/호가 규제 상세.

## 2) 시스템 구성
- 핵심 엔진: `trading_script.py`
  - 데이터 수집: Yahoo Finance(KRX 티커: `XXXXXX.KS`/`XXXXXX.KQ`) 우선. Stooq 폴백은 KRX 지원 한계로 비활성/제한적 사용.
  - 거래 처리: 수동 매수(MOO/지정가), 수동 매도(지정가), 자동 스톱로스. 체결 전 DC 적격성·채권비중 검증.
  - 일일 평가/정산 및 CSV 기록, 리포팅/분석(Sharpe/Sortino/MDD/알파/베타 등)
- 데이터/기록: `Scripts and CSV Files/`
  - `chatgpt_portfolio_update.csv`: 일자별 보유/평가/현금/총자산 기록
  - `chatgpt_trade_log.csv`: 체결 로그(사유 포함)
- LLM 연동: `simple_automation.py`
  - LLM 프롬프트 생성 → 응답(JSON) 파싱 → 현재는 “시뮬레이션”(현금만 가감) → JSONL 저장
  - 실체결 연동 시, DC 제약 검증 및 채권 비중 검사 후 `trading_script.py`의 수동 체결 API 경로 호출 필요
- 실행 래퍼: `Scripts and CSV Files/ProcessPortfolio.py`

## 2-1) 한국 DC 운용 제약(신규)
- 거래 가능 종목: 한국 증권사에서 “퇴직연금(DC)” 계좌로 매매 가능한 ETF 한정.
- 최소 채권 비중: 포트폴리오 시가 기준 채권 ETF 비중이 항상 30% 이상이어야 함(체결 전후, 일일 리밸런스 후에도 충족).
- 통화/시장: KRW, KRX(코스피/코스닥) 상장 ETF. 거래시간/휴장일은 한국 거래소 기준.
- 벤치마크/테마 예시(가이드):
  - 주식(광범위): KOSPI200, KOSDAQ150 등
  - 채권: 국채·회사채 단기/중기 지수 추종 DC 가능 채권 ETF
  - 테마: AI(반도체/데이터센터/클라우드 등), 암호화폐 관련(블록체인/크립토 익스포저 연계형), AI 전력 인프라(전력망/전선/발전/원자력/재생에너지 밸류체인) ETF 중 DC 적격인 종목
  • 전략 변환 시도: “이 아이디어를 국내 상장 ETF로 연동하라”는 요구를 여러 차례 반복 → 코드가 계속 수정되고 재작성됨.

  • 문제 발생:

    • 원본 코드가 Yahoo Finance 데이터를 기반으로 설계되어 있어, 실행할 때마다 Yahoo Finance 접속을 시도.

    • 하지만 국내 환경에서는 접속 실패가 반복되어 원활히 데이터 수집 불가.

    • Claude code는 뭔가 지시할 때마다 대공사(?)를 진행해서 초보자는 수습이 어렵습니다.

  • 다음 단계 구상:

    • 국내 증권사 API와 직접 연동해 데이터를 받아오는 방식으로 다시 개선해볼 예정입니다. 반자동으로 매수/매도하는 기능도 만들어 보려합니다

결과와 배운 점

Codex를 이용해서 코드를 분석하고, 투자 전략을 역으로 뽑아내는 건 비교적 쉽게 가능했습니다. 예전 같으면 머리 싸매고 끙끙거리며 분석해야 할 게 엄청 쉬워졌다는 걸 배웠습니다.

참고자료

https://www.gpters.org/nocode/post/business-automation-actor-claude-sFEC8phXq537sbD

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요