This repository has been archived on 2025-06-07. You can view files and clone it, but cannot push or open issues or pull requests.
2025-05-06 21:23:04 +09:00

98 lines
2.8 KiB
Plaintext

# 📈 ATR (Average True Range) 개념 정리
---
## ✅ ATR이란?
**ATR(Average True Range)**는 자산의 **일일 평균 가격 변동폭**을 나타내는 기술적 지표입니다.
> "이 종목은 하루에 평균적으로 얼마나 출렁이는가?"
1978년 J. Welles Wilder가 고안했으며, 변동성 중심의 트레이딩 전략에 널리 사용됩니다.
---
## 📊 True Range(TR) 계산 방식
True Range는 단순히 고가 - 저가가 아니라 다음 세 가지 중 **가장 큰 값**을 사용합니다:
1. 고가 - 저가
2. |고가 - 전일 종가|
3. |저가 - 전일 종가|
> 이유: 갭 상승/하락까지 포함한 **진짜 변동폭**을 측정하기 위해
---
## 🔢 공식
- True Range(TR): `max(high - low, |high - prev_close|, |low - prev_close|)`
- Average True Range(ATR): `TR의 N일 이동평균`
```python
# ATR 계산 예시
tr1 = high - low
tr2 = abs(high - prev_close)
tr3 = abs(low - prev_close)
true_range = max(tr1, tr2, tr3)
atr = true_range.rolling(N).mean()
```
---
## 💡 사용 목적
| 목적 | 설명 |
|------|------|
| **변동성 측정** | 일일 가격의 출렁임 정도(리스크)를 수치화 |
| **손절/익절 기준** | 트레일링 스탑 설정 시 활용 가능 (예: 1.5 * ATR) |
| **시장 과열 판단** | 갑작스런 ATR 상승은 과도한 움직임의 신호로 해석 가능 |
---
## ⚙️ SightRay에서의 활용 방식
- CDS를 기반으로 최신 14일 기준 ATR을 계산
- ATR이 높을수록 리스크 점수 증가
- ROI 대비 ATR이 지나치게 크면 **변동성이 과도한 종목으로 간주**
```python
from atr import calculate_atr
atr = calculate_atr(cds_df, period=14)
```
---
## 📈 예시 그래프 개념
```
가격 차트 vs ATR 지표
▲ 가격 ▲ ATR
│ │
200 ──┐ ┌── 3.0 ──┐ ┌──
150 ──┘┌──┘ 상승장 2.0 ──┘┌──┘ 상승 추세
100 ───────────────▶ 1.0 ───────────▶
시간 시간
```
---
## 🚧 한계점
| 항목 | 설명 |
|------|------|
| **방향성 정보 없음** | ATR은 변동성만 측정하며 상승/하락 구분 불가 |
| **추세 없는 시장에 민감** | 박스권 장세에서 ATR이 낮아질 수 있음 |
| **종목 특성 반영 어려움** | 일부 종목은 원래부터 ATR이 높은 경향이 있음 |
---
## ✅ 정리
ATR은 가격의 **안정성 또는 출렁임을 정량적으로 측정**하는 지표이며,
SightRay에서는 ROI와 함께 고려하여 **리스크 점수화에 포함**되는 중요한 요소 중 하나입니다.
> 📘 기본 설정: 14일 기준 ATR 사용
> → 변동성이 과도한 종목은 자동 필터링 또는 감점 처리 가능