shuim f32bf412f3 fix: 로그 분석으로 찾은 버그 4건 (과다매도·수량 0 오염·LSTM 무력화·sync 충돌)
1) DT 분할매도가 ActiveTrade.quantity를 갱신하지 않아 재기동 복원 시 원래 수량이 되살아남
   → 잔량 4주인데 7주 매도되어 같은 종목 스윙 보유분 3주까지 청산됨(2026-09-23 LG씨엔에스).
2) reflect_sell이 '전략 포지션 잔량'을 Portfolio 행 잔량으로 사용 → DT 전량청산이 스윙
   보유분까지 0으로 만듦. 행 잔량은 항상 (행 수량 - 매도 수량)으로 계산.
3) LSTM 체크포인트에 numpy 배열이 들어가 weights_only=True 로드가 매번 실패 → 앙상블에서
   LSTM이 조용히 빠진 채 예측 중이었음. 저장을 list로 바꾸고, 기존 파일은 MODEL_DIR 내부일
   때만 완화 재시도.
4) 수동 매도(행 삭제)와 sync 동시 실행 시 StaleDataError로 sync 전체 실패 → 전량 매도는
   행 삭제 대신 수량 0, sync는 충돌 시 실패 기록 없이 다음 주기 재시도.
   추가로 비강제 sync는 락 점유 중이면 30초 대기 없이 캐시 반환.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-23 10:24:45 +09:00
2026-02-23 16:01:17 +09:00
2026-03-28 11:45:37 +09:00
2026-02-24 11:38:35 +09:00
2026-02-26 11:19:23 +09:00
2026-03-28 11:45:37 +09:00
2026-02-22 17:23:20 +09:00
2026-02-22 17:23:20 +09:00
2026-02-22 17:23:20 +09:00
2025-11-14 11:05:31 +09:00
2026-02-26 14:40:12 +09:00
2026-02-26 11:19:23 +09:00
2026-02-22 17:23:20 +09:00
2026-02-22 17:23:20 +09:00
2026-02-26 14:40:12 +09:00
2026-02-22 17:23:20 +09:00
2026-02-22 17:23:20 +09:00
2026-02-22 17:23:20 +09:00
2026-02-22 17:23:20 +09:00

Auto Stock Trading System with MCP

Claude AI와 MCP(Model Context Protocol)를 활용한 한국 주식 자동매매 시스템

시스템 아키텍처

  • Frontend: React + TypeScript + Vite
  • Backend: Python FastAPI + WebSocket
  • MCP Server: Claude AI 통합
  • Database: PostgreSQL
  • Cache: Redis
  • Message Queue: RabbitMQ
  • API: 한국투자증권 API

주요 기능

  1. 실시간 시장 데이터 수집
  2. Claude AI 기반 규칙 검증
  3. 자동 매매 실행
  4. 포트폴리오 관리
  5. 실시간 모니터링

프로젝트 구조

auto-stock/
├── frontend/          # React 프론트엔드
├── backend/           # FastAPI 백엔드
├── mcp-server/        # MCP 서버
├── docker/            # Docker 설정
└── scripts/           # 배포 스크립트

빠른 시작

# 환경 변수 설정
cp .env.example .env

# 기본값
#  - `DATABASE_URL`은 `.env.example`에 이미 도커 컨테이너(127.0.0.1:5432)를
#    가리키도록 설정되어 있습니다. 로컬 개발 시 별도 수정이 필요 없습니다.
#    원격 DB를 사용하려면 여기에 URL을 덮어쓰십시오.

# Docker로 전체 시스템 시작
./scripts/deploy.sh

# 개발 모드
./scripts/dev.sh

환경 변수

.env 파일에 다음 설정 필요:

  • KOREA_INVESTMENT_APP_KEY: 한국투자증권 앱키
  • KOREA_INVESTMENT_APP_SECRET: 한국투자증권 시크릿
  • ANTHROPIC_API_KEY: Claude API 키
  • DATABASE_URL: PostgreSQL 연결 URL (기본값은 도커 컨테이너)
  • REDIS_URL: Redis 연결 URL

라이센스

MIT

Description
No description provided
Readme 11 MiB
Languages
Python 90.6%
TypeScript 8.6%
Shell 0.5%
CSS 0.1%