Skip to content

SEC(미국증권거래위원회) 전자 공시 정보를 실시간으로 번역·요약하고, 투자자가 효율적으로 매매전략을 수립할 수 있도록 지원하는 트레이딩 플랫폼 프로젝트

Notifications You must be signed in to change notification settings

Pda-Final-Project/.github

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

image

📌 프로젝트 개요

FinPago는 미국 SEC(증권거래위원회) EDGAR 공시 데이터를 활용하여 해외 주식 투자자들이 빠르고 정확한 공시 정보를 확인하고, 실시간으로 트레이딩을 할 수 있도록 지원하는 플랫폼입니다.

🚀 주요 기능

image image

📑 공시 데이터 제공

  • SEC EDGAR 공시 API를 활용하여 실시간 공시 제공
  • 해외 공시 번역 및 요약 기능 지원 (ChatGPT, Google Translate 활용)
  • 주요 공시 유형(10-K, 10-Q, 8-K 등)별 요약 및 분석 제공
  • 공시별 주요 재무 정보 비교 및 시각화

image image

📊 실시간 트레이딩

  • 해외 주식 실시간 체결 정보 제공
  • 주문 유형(시장가, 지정가, 단일가) 지원
  • 체결된 주문 내역 및 매매 손익 분석
  • Redis Pub/Sub + SSE를 이용한 실시간 체결 정보 반영

image

📅 어닝콜 일정 및 분석

  • 어닝콜(실적 발표) 일정 제공 및 기업 로고 표시
  • 어닝콜 분석 데이터 및 요약 제공
  • EPS 및 매출 변동 추이 그래프 시각화
  • 실적 발표 캘린더 기능 구현 image image

💰 My계좌 관리

  • 보유 종목 평가금액 및 매매 손익 분석
  • 실시간 환율 적용하여 원화/외화 변환
  • 해외 주식 결제 방식(D+1, D+2) 적용
  • 예수금, 사용 가능 예수금 분리 관리 image

Others

image image

🔧 아키텍처 및 사용 기술

🔹 프론트엔드

  • React, JavaScript, Tailwind CSS
  • SSE(Server-Sent Events)를 이용한 실시간 데이터 반영
  • recharts를 이용한 EPS 및 매출 변동률 시각화

🔹 백엔드

  • Spring Boot, Java, Spring Data JPA, MySQL
  • Kafka를 이용한 비동기 트레이딩 메시징 시스템
  • Redis를 활용한 캐싱 및 Pub/Sub 실시간 데이터 처리
  • SEC EDGAR API, 한국투자증권 API, Google Translate API 연동

🔹 인프라 및 배포

  • AWS Cloud, Kubernetes, MySQL Operator, Redis Cluster
  • Jenkins, ArgoCD, GitHub Actions을 활용한 CI/CD 자동화
  • AWS ALB 및 API Gateway를 통한 로드밸런싱 image

ERD

image

데이터 수집 원천 및 수집 방법

image

🛠 트러블슈팅 사례

1️⃣ Kafka 기반 트레이딩 시스템 최적화

  • 주문 생성, 매칭, 체결, 정산 등 단계별 토픽 분리하여 이벤트 기반 설계
  • 실패 처리(Failure Topic) 및 알림 시스템 분리 (Filling Notice, General Notice)
  • 체결 테이블을 BuyTradeExecution, SellTradeExecution 으로 정규화하여 데이터 확장성 확보 image image

2️⃣ 실시간 체결 데이터 반영

  • 외부 체결 데이터(증권사 API) + 내부 체결 데이터(매칭 엔진) Redis 리스트에 저장
  • Redis Pub/Sub + SSE(Server-Sent Events) 를 이용하여 실시간 반영

image

image

image

image

image

image

image

3️⃣ MySQL Operator 기반 InnoDB Cluster 구성

  • EBS 기반 PersistentVolume 설정 문제 해결
  • 특정 노드에 데이터베이스 인스턴스를 배치하는 Affinity & NodeSelector 적용 image

4️⃣ CORS 중복 헤더 문제 해결

  • Spring Gateway에서 중복된 CORS 헤더가 응답에 포함되는 문제 발생
  • DedupeResponseHeader 설정을 통해 중복 헤더 제거 image

5️⃣ 10-Q 공시(140페이지) 번역 성능 개선

  • Google Translate API는 속도가 느리고 HTML 태그 번역 문제 발생
  • 멀티스레딩 적용하여 번역 속도 10배 향상 (10분 → 1분)
  • HTML 태그 제거 후 문단 단위 번역하여 번역 품질 개선 image

🔮 향후 고도화 계획

  • 소수점 거래 지원
  • ETF 및 레버리지 종목 추가
  • 어닝콜 스크립트 및 요약 자동화
  • 공시 유형 확장 (EDGAR API 활용 극대화)
  • 트레이딩 시스템 UI 개선 및 모바일 대응

👥 팀원 소개

역할 이름
🏆 PM 양일교
👨‍💻 CTO 김동재
🚀 백엔드 리더 김민승
🎨 프론트엔드 리더 곽성은
☁️ 인프라 리더 함건욱

FinPago는 공시 데이터와 트레이딩 시스템을 결합한 혁신적인 금융 플랫폼으로, 투자자들에게 더욱 신속하고 정확한 정보를 제공하는 것을 목표로 합니다.
감사합니다! 🎉

📅 프로젝트 기간: 2025.03.17

About

SEC(미국증권거래위원회) 전자 공시 정보를 실시간으로 번역·요약하고, 투자자가 효율적으로 매매전략을 수립할 수 있도록 지원하는 트레이딩 플랫폼 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published