Files
Stock-trading-programming/README.md
T
2026-06-15 18:52:42 +09:00

96 lines
3.9 KiB
Markdown

# StockBot v3.0
KIS Open API를 이용한 한국 주식 단타 자동매매 프로젝트입니다.
현재는 실거래 전 검증 단계로, 모의투자와 DRY_RUN 중심으로 신호 품질과
운영 안정성을 확인하고 있습니다.
## 기획 의도
이 프로젝트의 목표는 사람이 매일 반복해서 하던 단타 후보 탐색, 시장 분위기
판단, 진입/청산 기록, 장후 복기를 자동화하는 것입니다. 다만 실시간 매매 판단을
AI에게 맡기지는 않습니다. AI는 장 전/장중/장후 시장을 분석하고 제안서를 만드는
역할만 하고, 실제 진입과 청산은 코드에 고정된 규칙이 결정합니다.
핵심 원칙은 세 가지입니다.
- 손절은 항상 최우선입니다.
- `14:50` 강제 청산은 변경하지 않습니다.
- 실거래 전에는 충분한 모의투자 기간과 성과 조건을 통과해야 합니다.
## 전체 흐름
하루 운영은 다음 흐름으로 설계되어 있습니다.
| 시간 | 흐름 | 내용 |
|---|---|---|
| 08:15 | 장 전 분석 | 뉴스, 수급, 업종 분위기를 분석해 `daily_context.json` 생성 |
| 08:30 | 봇 시작/준비 | AI 컨텍스트 로드, 유니버스 선정 |
| 08:50 | 목표가 계산 | 전일 고저와 당일 시가 기반, `open=0`이면 계산 제외 |
| 09:00 | 오전 매매 | 변동성 돌파 조건과 AI 컨텍스트 필터를 함께 확인 |
| 09:00-15:05 | Watchdog | 5분마다 봇 생존 감시, 15:10 결산 직후 재시작 금지 |
| 11:20 | 장중 분석 | 오전 결과와 현재 시장을 비교해 `midday_context.json` 생성 |
| 14:00 | 신규 진입 종료 | 새 진입은 막고 보유 포지션 청산 감시만 계속 |
| 14:50 | 강제 청산 | 모든 포지션 정리 |
| 15:30 | 장후 복기 | 일일 리포트와 전략 제안서 작성 |
| 16:00 | 학습 파이프라인 | 거래 데이터와 외부 데이터를 모아 관찰용 모델 갱신 |
## 현재 운영 상태
- 현재 모드: `KIS_MOCK=true`, `DRY_RUN=true`
- 전략: 변동성 돌파(`K=0.5`)
- 진입 시작: `09:20`
- 강제 청산: `14:50`
- 일일 결산: `15:10`
- Watchdog: `09:00-15:05`, 5분 간격
- DB: SQLite (`data/stockbot.db`)
- 알림: Discord Webhook
- AI/ML: 시장 분석과 관찰용 점수 기록까지만 사용
운영 모드는 아래처럼 나뉩니다.
| KIS_MOCK | DRY_RUN | 의미 |
|---|---|---|
| true | true | 신호 확인만 수행, 주문 없음 |
| true | false | 모의투자 주문 수행 |
| false | false | 실거래 주문 수행 |
현재 실거래는 승인되지 않았습니다.
## 주요 구성
```text
app/ 매매 봇, 전략, 리스크, KIS API, DB, 알림 코드
scripts/ 스케줄러, 봇 시작, 데이터 수집, 학습 스크립트
data/ 로컬 실행 데이터와 SQLite DB
logs/ 실행 로그
models/ 관찰용 ML 모델 산출물
reports/daily/ 장후 일일 리포트
reports/proposals/ 수동 승인이 필요한 전략 제안서
```
## 자주 쓰는 명령
```powershell
python -m pip install -r requirements.txt
python test_connection.py
python app/main.py
python scripts\start_bot.py
powershell -ExecutionPolicy Bypass -File scripts\setup_scheduler.ps1
powershell -ExecutionPolicy Bypass -File scripts\run_training_pipeline.ps1
```
## 에이전트 운영 문서
- `AGENTS.md`: Codex가 읽는 운영 지침
- `CLAUDE.md`: Claude Code가 읽는 운영 지침
두 파일은 에이전트가 정확하게 행동하기 위한 상세 규칙입니다. 일반적인 프로젝트
개요는 이 README만 보면 됩니다.
## 주의사항
- `.env`, 토큰, DB, 로그 파일은 Git에 올리지 않습니다.
- 전략 파라미터 변경은 원칙적으로 장후 제안서에 기록하고 사람이 승인합니다.
- `FORCE_EXIT = "14:50"`은 절대 변경하지 않습니다.
- 실거래 전에는 모의투자 결과, 손실 제한, 주문 안정성 검증이 필요합니다.