100 lines
3.1 KiB
Plaintext
100 lines
3.1 KiB
Plaintext
# 📈 SightRay 전략 엔진 요약 (`strategy_engine`)
|
|
|
|
---
|
|
|
|
## ✅ 엔진 목적
|
|
|
|
전략 엔진은 리스크 관리 엔진에서 통과된 `tradable 종목들`에 대해,
|
|
**실제 투자 전략을 구성하고, 자금 배분 및 매수 실행 조건을 설정하는 역할**을 수행합니다.
|
|
|
|
> 🎯 핵심 목표: "이 종목을 얼마에, 얼마나, 어떤 조건으로 살 것인가?"
|
|
|
|
---
|
|
|
|
## 📦 주요 기능
|
|
|
|
| 기능 | 설명 |
|
|
|------|------|
|
|
| **전략 템플릿 적용** | TP/SL 기준 전략(`basic`), risk_score 기반 전략(`adjusted`) 선택 적용 |
|
|
| **자금 배분 및 수량 계산** | total_capital을 종목 수 또는 전략 기준에 따라 분배 |
|
|
| **실행 결과 저장** | 포지션, 전략 조건 포함 최종 전략 테이블 생성 |
|
|
|
|
---
|
|
|
|
## 📁 디렉토리 구조
|
|
|
|
```plaintext
|
|
strategy_engine/
|
|
├── templates/
|
|
│ ├── basic_strategy.py # 고정 TP/SL 전략
|
|
│ └── risk_adjusted_strategy.py # 리스크 점수 기반 전략
|
|
├── selector.py # tradable 종목 중 전략 조건 필터링
|
|
├── position_manager.py # 자금 배분 및 포지션 수량 계산
|
|
└── run_strategy.py # 전체 전략 흐름 실행 (CLI 지원)
|
|
```
|
|
|
|
---
|
|
|
|
## 🧠 전략 템플릿 비교
|
|
|
|
| 전략 | 설명 | TP | SL | Action 기준 |
|
|
|--------|------|----|----|----------------|
|
|
| `basic` | 고정 비율 설정 | +5% | -3% | 모두 Buy |
|
|
| `adjusted` | risk_score 기준 조정 | +3~7% | -2~3% | score < 60 → 제외 |
|
|
|
|
---
|
|
|
|
## 🧪 실행 흐름
|
|
|
|
```plaintext
|
|
[risk_filtered_result.csv]
|
|
↓
|
|
selector.py → 전략 조건 만족 종목 추출
|
|
↓
|
|
templates/ 전략 템플릿 적용 (TP/SL 설정)
|
|
↓
|
|
position_manager.py → 자금 배분, 포지션 수량 결정
|
|
↓
|
|
run_strategy.py → 결과 저장: final_strategy_result.csv
|
|
```
|
|
|
|
---
|
|
|
|
## 📊 최종 출력 예시
|
|
|
|
| symbol | entry_price | target_price | stop_loss | position_size | capital_allocated | action |
|
|
|--------|-------------|--------------|-----------|----------------|--------------------|--------|
|
|
| AAPL | 186.5 | 199.55 | 180.9 | 1340 | 250000 | Buy |
|
|
| TSLA | 241.3 | — | — | 0 | 0 | None |
|
|
|
|
---
|
|
|
|
## ⚙️ 실행 예시 (CLI)
|
|
|
|
```bash
|
|
python run_strategy.py \
|
|
--input risk_filtered_result.csv \
|
|
--capital 1000000 \
|
|
--strategy adjusted \
|
|
--output final_strategy_result.csv
|
|
```
|
|
|
|
---
|
|
|
|
## 📌 구성 파일 요약
|
|
|
|
| 파일 | 역할 |
|
|
|------|------|
|
|
| `selector.py` | tradable 종목 중 전략 조건 만족 종목 필터링 |
|
|
| `basic_strategy.py` | 고정 비율 기반 TP/SL 설정 전략 |
|
|
| `risk_adjusted_strategy.py` | risk_score에 따라 전략을 조절하는 템플릿 |
|
|
| `position_manager.py` | 자본 분배 및 실제 매수 수량 결정 |
|
|
| `run_strategy.py` | 전체 전략 실행 컨트롤러 + CLI 지원 |
|
|
|
|
---
|
|
|
|
## ✅ 정리
|
|
|
|
SightRay 전략 엔진은 분석/리스크 단계를 통과한 종목에 대해 **실행 전략을 자동 구성**하며,
|
|
**전략 템플릿 기반 + 자금 배분 + 매수 조건 설정**의 완전한 실행 구조를 갖춘 엔진입니다.
|