feat: v2.2.162-168 — /stocks analysis 6차원 확장 + position + /youtube info 재설계
v2.2.162-163: 신규 /stocks analysis <심볼> (펀더멘털 + 1년 차트 + LLM 종합). - 6차원: 가치/수익성/안정성(부채비율)/추세(MA 정배열+224회복)/안전마진/RSI 진입 타이밍 - 신규 /stocks position [심볼] <총자산> <리스크%> <손절%> — 포지션 사이징 계산기 v2.2.164-165: /youtube info 3-tier 재설계 (사용자 피드백: 중복·이모지·표 깨짐). - 9개 섹션 → 4개 ## 섹션 (30초 요약 / 핵심 개념 / 깊이 분석 / 정리자 노트) - 헤더 이모지 전면 제거, 표 → bullet, 한 줄 요약 중복 제거 v2.2.166: /stocks analysis 매매 타점 신규 섹션 (사용자 매매 규칙 raw 데이터 적응). - 매수 진입(3순위 시나리오) / 손절 / 익절 / 관망 해제 트리거 - LLM이 실제 가격(MA값, 1년 고가, 60일 저점) 자동 채움 v2.2.167: /stocks analysis 분석 로직 정밀화 (사용자 피드백 5건). - MA224 3-state (passed/failed/notApplicable) — 추세 확립 종목 ❌ 오해 차단 - 낙폭과대 failReason 명시 — 인과 거꾸로 해석 차단 - 우선주(끝자리 5/7/9) 자동 감지 → 보통주 현재가 fetch → 할인율 계산 - 프롬프트 판단 절제 규칙 4건 (PBR 절대값 단정/거래량 미세변동/우선주 특이/오탈자) v2.2.168: 재패키징 (별개 Datacollect bridge 수정과 함께 깨끗한 설치본). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
+116
@@ -1,5 +1,121 @@
|
||||
# Astra Patch Notes
|
||||
|
||||
## v2.2.168 (2026-05-27)
|
||||
### 📦 재패키징 (소스 변경 없음)
|
||||
- ASTRA 소스 변경 없음. 별개로 적용한 **Datacollect Bridge `/api/lm` 복원력 수정**(LM 서버가 raw text 응답해도 OpenAI shape 으로 wrap → ASTRA `/youtube info` 등이 깨진 에러 벽 대신 정상 결과를 받음)에 맞춰 깨끗한 설치본 제공.
|
||||
- **신규 패키징:** `astra-2.2.168.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.167 (2026-05-27)
|
||||
### 🔬 /stocks analysis — 분석 로직 정밀화 (사용자 피드백 5건 반영)
|
||||
**로직 수정 (yahooClient.ts):**
|
||||
- **MA224 3-state 도입** — passed / failed / **`notApplicable`** (N/A). 현재가가 MA224 보다 +20% 이상 위면 추세 이미 확립 상태로 보고 N/A 처리. ❌ 미통과로 표기하던 오해 차단(예: 삼성전자우 +93% 위에 있는데도 ❌ 표시되던 문제).
|
||||
- **낙폭과대 `failReason` 명시** — 두 조건(고점 -25% / 저점에서 +10%) 중 어느 게 어긋났는지 구체 사유 반환. LLM 이 인과 거꾸로 해석("64% 반등이라서 미통과") 하던 문제 차단.
|
||||
|
||||
**데이터 보강 (slashStocks.ts):**
|
||||
- **우선주 자동 감지** (symbol 끝자리 5/7/9 → 보통주 자동 도출, 예: 005935→005930). 보통주 현재가 자동 fetch 후 **할인율** 계산. 할인 범위 가이드 동봉 (10~30% 정상, <10% 프리미엄, ≥30% 확대).
|
||||
|
||||
**프롬프트 강화 (ANALYSIS_SYSTEM_PROMPT):**
|
||||
- **판단 절제 규칙 4건 신설**:
|
||||
- (a) PBR/PER 절대값으로 "고평가/저평가" 단정 금지 — 업종 평균 부재 시 절대값만 제시
|
||||
- (b) 거래량 ±20% 미만은 무의미 — "상승 동력 약화" 같은 강한 해석 금지(예: -9% 변동이 부정 신호로 잡히던 문제)
|
||||
- (c) 우선주 특이항목 반영 필수 — `[우선주 정보]` 블록 있으면 할인율을 매수 의견 근거에 반영
|
||||
- (d) 오탈자 자기 점검 — "순위→순칭", "근거→근례" 같은 한국어 토큰 깨짐 방지
|
||||
- MA224 N/A 상태 / 낙폭과대 failReason 을 LLM 이 인지하도록 6차원 평가 가이드 갱신.
|
||||
|
||||
**보류** (별도 작업 필요): 배당수익률 fetch (Naver crawl 확장), 섹터 자동 보강.
|
||||
|
||||
**신규 패키징:** `astra-2.2.167.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.166 (2026-05-27)
|
||||
### 💹 /stocks analysis — 매매 타점(진입·손절·익절·관망 해제) 신규 섹션
|
||||
- **신규 `## 매매 타점` 섹션** ([ANALYSIS_SYSTEM_PROMPT](src/features/stocks/slashStocks.ts)) — 매수 의견 바로 아래, 리스크 위.
|
||||
- **4개 sub-section** (사용자 제공 매매 규칙을 raw 데이터 기반으로 적응):
|
||||
1. **매수 진입 타점** — 3순위 시나리오(MA20 지지 / MA60 눌림 / 낙폭과대+RSI≤30) 중 현재 기술 상태에 부합하는 것만 출력. 회피 권장도면 sub-section 생략.
|
||||
2. **손절 기준** — 종가 기준 이탈 (장중 터치 미적용). 매수 시나리오별 (MA20/MA60/60일저점) 가격 + 최대 허용 손실%.
|
||||
3. **익절 타점** — 1차(1년 최고가×0.98) → 2차(라운드 넘버) → 3차(업종 PER 비교, 데이터 미수집 명시).
|
||||
4. **관망 해제 트리거** — 권장도가 "관망"일 때만 출력. 4개 트리거 중 2개+ 충족 시 진입.
|
||||
- **LLM이 raw 데이터로 실제 가격 채우도록** — `__원` placeholder 금지, 실제 MA값·1년 고가·60일 저점으로 구체화. 권장도/기술 상태에 따라 적응적으로 출력(부적합 시나리오는 생략).
|
||||
- **신규 패키징:** `astra-2.2.166.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.165 (2026-05-27)
|
||||
### 📋 /youtube info — 3-tier 재설계 (중복 제거 + 깊이 단순화 + 표 제거)
|
||||
- **앞 턴(2.2.164)의 "대시보드 위에 추가" 방식이 중복을 만들었다는 사용자 피드백 수용.** 9개 섹션 → **4개 ## 섹션 3-tier 구조**로 재설계.
|
||||
- **새 구조** ([youtubePrompts.ts:buildInfoExtractionPrompt](src/features/datacollect/prompts/youtubePrompts.ts)):
|
||||
1. **30초 요약** (skim) — 한 줄 + 핵심 포인트 3개 + 화자 한 줄 비유. 바쁜 사람은 여기서 멈춤.
|
||||
2. **핵심 개념 설명** (이해) — 영상이 사용한 주요 개념·용어 2-5개 정의 + 등장 맥락.
|
||||
3. **깊이 분석** (deep dive) — 타임라인 / 결정적 발언 / 더 파고들 질문 / 구체 수치.
|
||||
4. **정리자 노트** (선택) — `[정리자 추론]` 라벨 전용.
|
||||
- **중복 제거**: "한 줄 요약"은 30초 요약에 한 번만. 기존엔 대시보드·TL;DR·핵심 주장에 분산.
|
||||
- **표 → bullet**: "사실·데이터" 표가 깨진 셀(`way` 같은 LLM artifact)을 노출하던 문제 → 표 금지, bullet로만, 완성된 항목만.
|
||||
- **헤더 이모지 제거**: 스캔할 때 시선이 분산되어 내용을 가린다는 피드백 수용. 모든 ## · ### 헤더에서 이모지 제거.
|
||||
- **신규 시스템 원칙 3건 추가**: 헤더 이모지 금지 / 표 사용 신중 / 중복 금지.
|
||||
- **신규 패키징:** `astra-2.2.165.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.164 (2026-05-27)
|
||||
### 📋 /youtube info — 상단 "구조화된 요약" 대시보드 추가
|
||||
- **신규 `## 📋 구조화된 요약` 섹션**을 메타데이터 바로 아래에 추가 ([youtubePrompts.ts:buildInfoExtractionPrompt](src/features/datacollect/prompts/youtubePrompts.ts)).
|
||||
- 하위 3개 sub-section:
|
||||
- **🎯 핵심 3요소**: 주제 / 핵심 주장 / 근거·사례
|
||||
- **⏱️ 타임라인 기반 요약**: 30분 이상 영상은 4-7개 구간 압축, 미만은 생략(`🧭 구조 요약` 참조)
|
||||
- **📝 한 줄 요약 + 기억할 포인트 3~5개**
|
||||
- 기존 8개 섹션(`🎯 한 줄 요약`·`💡 화자 한 줄 비유`·`📌 핵심 주장`·`📊 사실·데이터·인용`·`🧭 구조 요약`·`🔗 인용용 카드`·`❓ 더 파고들 질문`·`🧩 정리자 노트`)은 그대로 유지 — 대시보드는 *압축 버전*, 아래 섹션들은 *깊이 버전*.
|
||||
- 약간의 redundancy(한 줄 요약 두 번 등장)는 의도 — 대시보드에서 빠르게 잡고, 필요하면 깊이 섹션에서 풀어 읽는 dual-layer.
|
||||
- **신규 패키징:** `astra-2.2.164.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.163 (2026-05-27)
|
||||
### 📊 /stocks analysis 6차원 확장 + 신규 /stocks position
|
||||
- **`/stocks analysis` 6차원으로 확장** — 가이드(주식 분석 6단계) 흡수:
|
||||
- 부채비율 추가 (재무 안정성 차원 강화 — 200% 이하 안전, 100% 이하 우량)
|
||||
- **MA 정배열/역배열** (5/20/60/120일 이평선 배열 판정 — 추세 차원에 추가)
|
||||
- **RSI(14)** (Wilder's smoothing, 과열≥70 / 침체≤30 / 중립 — 진입 타이밍 신규 차원)
|
||||
- LLM 시스템 프롬프트도 6차원 + 각 지표 해석 가이드로 갱신
|
||||
- 추가 API 호출 없음 — 이미 fetch한 1년 시세에서 모두 계산
|
||||
- **신규 `/stocks position [심볼] <총자산> <리스크%> <손절%>`** — 포지션 사이징 계산기:
|
||||
- 공식: `권장 투자금 = 총자산 × 리스크% ÷ 손절%` (가이드 5단계)
|
||||
- 심볼 주면 Yahoo 현재가로 **매수 가능 주수**까지 자동 계산
|
||||
- 권장 투자금이 총자산의 50% 초과 시 입력값 재검토 경고
|
||||
- 별칭: `/stocks size`
|
||||
- **보류한 가이드 항목** (현실적 한계): PEG(이익 성장률 데이터 부재), 업종 평균 PER / 5년 역사적 PER(별도 데이터소스 필요), 사업 해자(LLM 환각 위험), MACD(우선순위 낮음).
|
||||
- 새 helper ([yahooClient.ts](src/features/stocks/yahooClient.ts)): `evalMaAlignment`, `evalRsi14`.
|
||||
- **신규 패키징:** `astra-2.2.163.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.162 (2026-05-27)
|
||||
### 🔎 /stocks analysis <심볼> — 단일 종목 심층 분석
|
||||
- **신규 sub-command** ([slashStocks.ts](src/features/stocks/slashStocks.ts)): 한 종목에 대해 Naver 펀더멘털 fresh fetch + Yahoo 1년 시세 기반 기술 지표(224일선 회복, 낙폭과대) + LLM 종합 평가까지 한번에. `stocks.json` 미등록 종목도 가능.
|
||||
- **차이점** vs 기존 `/stocks judge`: judge는 stocks.json 저장된 펀더멘털만 사용한 4-criteria 평가. analysis는 fresh fetch + 차트 패턴 + LLM 매수권/관망/회피 권장도.
|
||||
- **출력 형식 (LLM 강제):** `## 종합 평가` 2-3문장 / `## 매수 의견` 권장도 + 근거(수치 인용) / `## 리스크` 1-2줄.
|
||||
- **데이터 투명성:** LLM에 보내는 raw 데이터 요약을 사용자에게도 코드블록으로 먼저 표시. 모델 응답과 비교 검증 가능.
|
||||
- 별칭: `/stocks analyze <심볼>` 도 동일하게 동작.
|
||||
- **신규 패키징:** `astra-2.2.162.vsix`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## v2.2.161 (2026-05-22)
|
||||
### 📈 /stocks discover — 낙폭과대 키워드 + 224회복 거래량 확인
|
||||
- **신규 `낙폭과대` 키워드** ([evalDropRecovery](src/features/stocks/yahooClient.ts)): 영상(주식단테 "이미 빠진 종목 + 바닥 찍고 회복")의 정량화. 현재가 ≤ 1년 최고가 × 0.75(25%↓) AND 현재가 ≥ 60일 최저가 × 1.10(저점에서 10%↑) → `낙폭과대` +1. 224회복(추세 전환)과는 다른 각도 — 안전마진 + 반등 초입.
|
||||
|
||||
Reference in New Issue
Block a user