---
name: kis-timing
description: 매수/매도 타점 분석 — "매수 타이밍", "타점 분석", "진입/청산 시점", "손절 라인", "기술적 분석" 등 요청 시 차트 툴(설치된 브로커/데이터 제공자 기준 — kis_technical · toss_chart · twelve_chart · finnhub_chart · coingecko_chart · binance_chart)로 지표(MA/RSI/ATR/볼린저/지지저항/추세)를 계산하고 아래 판단 규칙대로 매수·매도·관망을 제시하며, 결론에 맞는 실행 시나리오(조건부 대응 계획)까지 제공한다. 실전 주문은 사용자 확인 후에만.
---

# Timing (매수/매도 타점 분석)

가격·차트 기반 기술적 분석으로 진입/청산 타점을 판단하는 파이프라인.
**결론은 모델이 내리되, 지표 계산은 반드시 차트 툴로** 한다 (직접 계산 금지 — 오류 발생).
**차트 그림 금지**: mermaid / xychart / ascii / 스파크라인으로 가격 그래프를 그리지 말 것. 일·주·월봉 툴을 치면 웹챗이 캔들 카드를 붙인다.

- **KIS 설치 시**: `kis_technical` (KIS 차트 + 지표)
- **토스 설치 시**: `toss_chart` (토스 캔들 → 동일 지표 로직)
- **pi-kis 설치 시**: `broker_chart` (KIS 우선 퍼사드 — 주봉/월봉 KIS 전용, 1분봉은 토스 전용)
- **pi-twelve-data 설치 시**: `twelve_chart` (글로벌 주식/지수/외환/암호, 무료 키)
- **pi-finnhub 설치 시**: `finnhub_chart` (미국 주식, 무료 키)
- **pi-coingecko 설치 시**: `coingecko_chart` (암호화폐 OHLC — **volume 없음**)
- **pi-binance 설치 시**: `binance_chart` (현물/USDT-M 캔들 + volume)

## 0. 실행 시퀀스

```
차트·지표 수집(설치된 브로커의 차트 툴) → 4층 판단(추세/모멘텀/밸류교차/리스크)
→ 결론(매수/매도/관망) → 결론에 맞는 실행 시나리오 3개(조건부 대응) → 리포트
```

## 1. 데이터 수집

설치된 브로커/데이터 패키지에 따라 차트 툴을 선택한다 (설치 여부로 판단 — 지표 로직은 전부 공용 indicators라 동일):

```jsonc
// KIS (pi-kis 설치 시) — kis_technical: 차트 + 지표 일괄
{ "symb": "005930", "market": "domestic", "period": "D" }   // 국내 일봉
{ "symb": "RKLB",  "market": "overseas", "period": "D", "excd": "NAS" } // 해외

// 토스 (pi-toss 설치 시) — toss_chart: 토스 캔들 → 공용 indicators (동일 로직)
{ "symbol": "005930", "interval": "1d", "count": 100 }
{ "symbol": "AAPL",  "interval": "1d", "count": 200 }

// pi-kis 설치 시 — broker_chart: KIS 우선 퍼사드 (실패 시 toss_* 툴 안내)
{ "symbol": "005930", "period": "D" }        // 국내 일봉
{ "symbol": "RKLB",  "period": "W" }        // 해외 주봉 (KIS 전용)
```

- 브로커 중 하나만 설치돼 있어도 동작한다 (KIS만 → KIS 데이터, Toss만 → Toss 데이터, 둘 다 → KIS 우선).

- `period`: D=일봉(기본)/W=주봉/M=월봉
- **한계**: 국내 최대 100봉, 해외 최대 100행 (주봉이면 100주 = 약 2년)
- **장기 지표**(200일 MA 등) 필요 시: 기간을 나눠 2회 호출해 합산 (KIS: `kis_domestic_chart { date1, date2 }`)
- 종목코드가 틀리면 빈 응답 — KIS면 `kis_domestic_price`, 토스면 `toss_price`로 유효성 확인

- 토스는 **1d(일봉)/1m(1분봉)만 지원 — 주봉/월봉 없음** (필요 시 일봉을 주/월 단위로 집계)
- 1분봉은 당일 단기 타점(스캘핑)에 활용 가능 — KIS 차트에는 없는 옵션
- **차트 카드**: 「RSI/볼린저/일목 보여줘」는 설명 그림 금지. 즉시 `broker_chart_card { symbol, kinds: ["rsi","bollinger"] }` (별도 카드). 종류 없이 「차트 보여줘」만 있으면 되묻기. 타점용 `kis_technical` 숫자는 표로 써도 되지만, **보여줘** 요청은 반드시 카드 툴.

## 2. 지표 해석

| 지표 | 판단 |
|---|---|
| MA5/20/60 | 정배열(MA5>MA20>MA60)=상승 추세, 역배열=하락 추세 |
| RSI(14) | >70 과매수, <30 과매도, 50 회복 = 강세 전환 |
| ATR(14) | 변동성 척도 — 손절 폭·포지션 크기 산정에 사용 |
| 볼린저(20,2) | 상단 터치=과열, 하단 터치=과매도, 중단 회복=추세 재개 |
| 지지/저항 | 최근 20봉 저점(지지)·고점(저항) — 돌파/이탈 확인 |
| 추세 | 지표 종합 결과 "상승/하락/횡보" |

## 3. 4층 판단

1. **추세층**: MA 정배열 + 고점·저점 상승 구조 → 매수 우위. 역배열 → 매도/관망 우위.
2. **모멘텀층**: RSI 과매도(<30) 회복, 골든크로스(MA5>MA20), 저항 돌파 → 매수 신호. RSI 과매수(>70), 데드크로스, 지지 이탈 → 매도/관망 신호.
3. **밸류 교차층**: `kis-stock-research` 결과(재무·컨센서스)와 결합 — 지표는 좋아도 펀더멘털이 나쁘면 관망, 반대도 동일.
4. **리스크층**: 손절 = 지지선 아래 또는 ATR×1.5~2. 포지션 = 총자산 대비 리스크 1~2% 기준. 분할 매수 권장.
   - **실현 손익은 항상 수수료 차감 후 기준** (명목 수익 아님) — 손익분기/목표 수익률 산정에 수수료 반영 (아래 §5 공통 규칙).
   - **이벤트 민감도**: "이 종목은 무슨 이벤트가 반대 방향으로 터지면 죽는가?"를 분석 결과에 포함 — 에너지=유가·중동, 방산=휴전, 반도체=수출규제, ETF=구성 섹터 이벤트. 임박 이벤트(실적·FOMC·CPI·OPEC·선거·지정학) 직전에는 진입 자제 또는 갭 리스크 반영.

## 4. 결론 규칙

- **매수**: 추세 상승(또는 횡보→상승 전환) + (RSI 과매도 회복 또는 골든크로스) + 지지/밸류 양호
- **매도**: 데드크로스 또는 RSI 과매수 또는 지지선 이탈 (보유 전제)
- **관망**: 위 조건 불충분, 신호 상충, 밸류 교차 불일치
- **실전 주문은 사용자 확인 후에만** (기존 안전 규칙 — `kis_api`/roles/trading.ts)
- 실행 계획은 결론에 맞춘 **시나리오 세트**로 제시 — 매수면 진입 시나리오, 매도면 청산 시나리오, 관망이면 전환 조건 시나리오

## 5. 리포트 포맷

```markdown
# ○○ 종목 타점 분석 (기준일)

### 지표
| 현재가 | MA5 | MA20 | MA60 | RSI(14) | ATR(14) | 볼린저 | 지지 | 저항 | 추세 |
|---|---|---|---|---|---|---|---|---|---|
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |

### 신호
- 골든크로스(MA5>MA20), RSI 과매도(<30), ...

### 판단 결론: 매수 / 매도 / 관망
- 근거: 추세층/모멘텀층/밸류교차층 요약

### 📋 실행 시나리오 (결론: 매수 / 매도 / 관망 중 택1)

시나리오는 **예측이 아니라 조건부 대응 계획** — "가격이 X가 되면 Y를 한다". 결론 유형에 맞는 3개를 제시하며, 각 트리거는 가격·지표(RSI/볼린저/MA 크로스)로 구체적으로 명시하고 상호배타적으로 설계한다.

**매수 결론 → 진입 시나리오**

| 시나리오 | 트리거 조건 | 액션 | 비중 | 손절 / 목표 |
|---|---|---|---|---|
| S1 기준·되돌림 매수 | 지정가 구간(지지·볼린저 중단 등) 도달 + RSI 과열 해소 | 1차 분할 진입 | 40% | 손절: 지지선 아래(또는 ATR×1.5~2) / 목표: 1차 저항 |
| S2 강세·돌파 추격 | 저항 돌파 + 거래량 동반 확인 | 2차 추격 진입 | 30% | 손절: 돌파 기준선 아래 / 목표: 2차 저항 |
| S3 약세·이탈 회피 | 지지선 이탈 / 데드크로스 | 진입 보류, 대기 | 0% | 매수 취소 → 관망 전환 |

**매도 결론 → 청산 시나리오**

| 시나리오 | 트리거 조건 | 액션 | 비중 | 손절 / 목표 |
|---|---|---|---|---|
| S1 기준·이익 실현 | 1차 목표가 도달 | 분할 청산 | 50% | 잔여분 손절선 하향 |
| S2 강세·홀드/트레일링 | 추세 유지(MA 정배열·고점 갱신) | 보유 + 손절선 상향(트레일링) | 유지 | 손절: 전일 저점/ATR 기준 |
| S3 약세·손절 | 지지선 이탈 / 데드크로스 | 전량 청산 | 100% | 즉시 |

**관망 결론 → 전환 조건 시나리오**

| 시나리오 | 트리거 조건 | 전환 액션 |
|---|---|---|
| S1 상승 전환 | 골든크로스 / 저항 돌파 | 매수 전환 — 진입가·비중 재산정 |
| S2 하락 전환 | 지지 이탈 / 데드크로스 | 매도·회피 |
| S3 횡보 유지 | 트리거 미충족 | 관망 유지 |

**공통 규칙**
- 포지션 크기: 총자산 리스크 1~2% 기준 (손절 시 손실 한도를 기준으로 수량 산정)
- 트리거는 구체적으로 명시 (예: "$143 도달 + RSI 60 이하") — 막연한 "조정 오면" 금지
- 동시에 2개 이상 발동 시 보수적인 시나리오 우선
- 이벤트(실적·공시) 직후 급등/급락일 경우 갭 리스크를 반영해 S1 트리거 구간을 실제 지표값(볼린저 상단·MA 갭 등) 기준으로 산정
- **주문 실행 전에는 (pi-kis 설치 시) `kis-trading` 스킬의 '주문 전 최종 점검'(이벤트 민감도·갭·포지션 비중·대응 설정)을 통과** — 실전 주문은 사용자 확인 후에만

**수수료·세금 반영 (실현 손익 계산)**
- **손익분기** = 진입가 × (1 + 왕복 수수료율). 예: 왕복 0.03%면 100 → 100.03, 수익은 이 선부터
- **분할 매도 실현 수익** = (매도가 − 매도 수수료 − 매수 수수료) × 수량 — 리포트의 실현 수익/목표 수익률은 항상 "수수료 차감 후"로 표기
- **수수료율 소스 우선순위**: ① pi-toss 설치 시 `toss_balance`의 commissions(실수수료율, KR/US) ② 없으면 사용자 제공 수수료율 ③ 미확인 시 가정값 — KR 왕복 ~0.03%(0.015%×2), US 왕복 ~0.2~0.3%. 가정값은 "(가정)" 명시
- 해외주식 **양도소득세**: 장기 보유·대량 매도 시 고려 (250만원 기본공제) — 대략적 세후 수익 언급만, 정확한 세금은 세무 확인
- 수수료가 실현 수익에 유의미한 비중(예: 소액·단타)이면 리스크층에 명시

### ⚠️ 리스크
- ...

> 시세·공시 기반 참고 분석이며, 투자 결정의 책임은 본인에게 있습니다.
```

## 6. 주의

- **과거 지표는 미래 수익을 보장하지 않음** — 참고용으로만
- **시나리오는 예측이 아니라 조건부 대응 계획** — 트리거가 발동하지 않으면 해당 시나리오는 실행하지 않는다
- 장중 데이터는 실시간 변동 — 기준 시각 명시
- **실전 주문은 사용자 확인 후에만** — 자동 주문 금지
- 밸류 교차층은 (pi-kis 설치 시) `kis-stock-research` 스킬과 조합 (이 스킬 단독은 가격 지표 기반)
- 52주 고저 등 장기 기준은 KIS 설치 시 `kis_domestic_price`의 w52/d250 필드와 교차 확인
- **수수료율은 가정값일 수 있음** — 정확한 수수료는 `toss_balance`의 commissions(pi-toss 설치 시) 또는 증권사 수수료표로 확인 후 보정
