1. 개요 및 비전
Poke-Quant는 대한민국 주식 시장을 위한 완전 자동화된 시스템 트레이딩 프로그램입니다. 본 시스템의 핵심 목표는 데이터에 기반한 객관적인 분석을 통해 인간의 감정적 개입을 배제하고, 정의된 전략에 따라 꾸준하고 안정적인 투자 기회를 포착하는 것입니다.
클라우드 서버에서 24시간 운영되며, 장중에는 실시간으로 시장 데이터를 분석하여 자동으로 매매를 수행합니다.
2. 시스템 아키텍처
Poke-Quant 시스템은 여러 독립적인 모듈이 유기적으로 협력하여 동작하는 마이크로서비스 아키텍처 사상을 일부 채용하여 설계되었습니다.
- 실시간 데이터 수집기 (Real-time Data Collector)
- 증권사(한국투자증권)에서 제공하는 실시간 API(WebSocket)에 접속
- 관심 종목들의 체결 데이터를 틱(tick) 단위로 수신
- 수십 개 종목의 데이터를 동시에, 지연 없이 처리
- 비동기(Asynchronous) 방식으로 구현
- 데이터 처리 및 분석 엔진 (Data Processing & Analysis Engine)
- 수집된 틱 데이터를 1분봉 캔들로 가공
- 기술적 지표 및 통계적 분석 기법 적용
- 시장의 추세와 변동성 평가
- 비정상적 패턴 종목은 거래 대상에서 제외
- 의사결정 및 거래 실행 엔진 (Decision & Execution Engine)
- 분석 결과 기반으로 매매 전략의 진입/청산 조건 판단
- 조건 충족 시 즉시 매수/매도 주문 생성
- 실거래 계좌에 주문 전송 및 체결
- 수수료·세금 포함 결과 즉시 반영
- 데이터베이스 (Time-Series Database)
- 모든 시장 데이터 및 거래 내역 영구 저장
- TimescaleDB 사용 → 시계열 데이터 최적화
- 빠른 조회 및 백테스팅 가능
- 관제 및 리포팅 시스템 (Control & Reporting System)
- CLI 기반 원격 제어 (ON/OFF 확인 및 제어)
- 매일 장 마감 후 자동 리포트 이메일 발송
- 거래 발생 시 JSON 파일 자동 업데이트 → GitHub 업로드
- 웹을 통해 실시간 거래 현황 확인 가능
3. 적용 기술 및 특징
Poke-Quant는 안정성과 성능을 최우선으로 고려하여 다음과 같은 기술 스택으로 구성됩니다.
- 언어: Rust
- 메모리 안전성과 높은 실행 속도
- 컴파일 시점 오류 방지 → 금융 시스템 안정성 극대화
- 비동기 처리: Tokio
- Rust의 대표 비동기 런타임
- 종목 데이터 수신, API 요청, DB 작업 등 동시 처리
- 시스템 응답성과 처리량 향상
- 데이터베이스: PostgreSQL + TimescaleDB
- 대용량 금융 데이터 저장 및 압축
- 빠른 조회 성능
- 홈서버 기반 운영
4. 시장 접근 방식
본 시스템은 구체적인 매매 로직을 공개하지 않으나, 다음과 같은 원칙에 따라 시장에 접근합니다.
- 데이터 기반 의사결정: 감이나 예측이 아닌, 통계적 우위 기반 판단
- 단기 변동성 활용: 장기 추세보다 분 단위 가격 변동성에 집중
- 엄격한 위험 관리: 진입 시 손절 기준 명확히 설정, 하나의 포지션만 보유, 데이터 수신 불안정 종목 자동 배제
- 검증된 전략 사용: 백테스팅 및 모의투자 환경에서 전략 검증 후 실거래 적용
5. 서버 인프라 요약
본 시스템은 개인 홈서버 환경에 최적화된 소형 인프라 위에서 운영됩니다.
- 하드웨어 구성: 인텔 N100 미니PC 2대 (램 16GB, NVMe SSD 500GB), UPS 적용
- 네트워크 및 OS: 가정용 500Mbps 인터넷, Ubuntu Server
- 서버 구성
- 서버1: Cloudflared Tunnel + Nginx Reverse Proxy + Rust/Go 백엔드
- 서버2: Redis, PostgreSQL + TimescaleDB (내부망 접근)
- 보안: Cloudflare Zero Trust 기반 SSH 터널만 허용, HTTP/HTTPS 직접 접속 차단
- 보안 자동화: rkhunter, ClamAV, Lynis, AIDE 정기 검사 및 리포트
- 운영 특성
- 프론트엔드: Cloudflare Pages + CDN + Access 기반 웹앱 (SvelteKit PWA)
- 백엔드: Rust 기반 시스템 트레이딩 앱 및 웹서비스
- 경량/고성능 설계 → 안정적 운영 가능
- 비용 및 효율: 총 투자 약 70만 원, 오라클 클라우드 무료 티어 대비 성능 우수