Thread Management Guide
Thread = 계속 팔 주제
한 번 끝나는 연구가 아니라 시간이 갈수록 깊어지는 축이다. Exit 전략을 v1, v2, v3 파고 또 파도 이 thread 안에 쌓인다.
7개 Thread
| Thread | 설명 |
|---|---|
universe | 스크리닝 — 어떤 종목을 거래 대상으로. Price filter 포함. |
entry | 진입 전략 — 언제 사나. |
exit | 청산 전략 — 언제 파나. |
ensemble | 앙상블 — 여러 entry/exit 결합. |
grid-search | 하이퍼파라미터 서치. |
catalyst | 이벤트 기반 (PDUFA, Phase readout) — 데이터 대기 중. |
regime | 거시/섹터 regime (XBI 상대강도, VIX overlay). |
각 thread 폴더 구조
<thread>/
├── README.md ← 현재 상태 + open questions + experiments 매트릭스
├── decisions.md ← 시간순 결정 로그 (append only)
└── experiments/
├── 001-slug/
├── 002-slug/
└── ...
universe thread 만 추가:
universe/
├── specs/ ← V3.json, V3-p3.json 등 완전한 필터 명세
└── snapshots/ ← V3-p3_2026-04-21.csv 등 (불변)
README.md 구성
---
title: <Thread Name>
last_updated: YYYY-MM-DD
---
# <Thread Name>
## 현재 Best
- Primary: [[experiments/005-fixed-70-30-180]] — OOS Sharpe 2.34
- Alt: [[experiments/003-chandelier-atr]] — best in-sample
## Next
- [ ] [[experiments/007-profit-gated-time-stop]] (planned for v13.3)
- [ ] XBI relative strength exit
## Open Questions
- 앙상블 엔트리에서도 fixed_70_30_180 이 최고인가?
- Hold 30~180일 구간의 어느 시점이 exit hit rate 최고인가?
## Experiments
| # | 제목 | Status | Universe snapshot | 핵심 결과 |
|---|---|:-:|---|---|
| 001 | exit-v1-deprecated | 🗑 | UNKNOWN | legacy |
| 002 | exit-v2 | ✅ | UNKNOWN | fixed > trailing (short hold) |
| 003 | chandelier-atr | ✅ | V3-p3_2026-03-15 | k=3 default |
| 004 | breakeven-stop | ✅ | V3-p3_2026-03-15 | +30% trigger 유효 |
| 005 | fixed-70-30-180 | ✅ | V3-p3_2026-03-15 | OOS 최강 |
## Decisions (latest 3)
- 2026-04-18: v13 에서 fixed_70_30_180 을 baseline exit 으로 고정
- 2026-04-15: chandelier k=4 는 early-stop 너무 많음. k=3 유지
- ...
전체 → [[decisions]]decisions.md 구성
Append-only 로그.
# <Thread> Decisions
## 2026-04-21 fixed_70_30_180 을 baseline 으로
**Context**: v13.N variant 비교할 baseline exit 필요
**Decision**: [[experiments/005-fixed-70-30-180]] 채택
**Reason**: OOS Sharpe 2.34 로 최강, trade 수 31 로 통계적 충분, slippage 현실 반영된 조건에서 robust
**Alternatives rejected**:
- chandelier_atr3: OOS Sharpe 1.56 (trade 수 16 — 통계적으로 약함)
- breakeven_70_30_180: OOS 2.18 이지만 MDD 깊음
**Consequences**: v13.1~v13.8 의 A/B baseline 으로 고정. 비교 해석 시 이 선택 고려.
---
## 2026-04-15 ATR multiplier k=3 default
...Universe thread 특수성
universe/ 는 다른 thread 와 달리 spec + snapshot 를 관리한다.
- Spec: 완전한 필터 명세 JSON. 같은 spec 을 다른 날짜에 돌리면 다른 snapshot 이 나옴.
- Snapshot: 특정 날짜에 spec 적용한 결과. 불변. 이걸 다른 실험이 참조.
experiments/ 안은 “universe 의 어느 차원을 튜닝한 실험”:
001-cash-efficiency— cash/mcap 임계값 튜닝002-dual-ath— ATH drawdown 임계값003-price-filter-sweep— p3 vs p5 vs p7 vs none004-mcap-sweep— min mcap 임계값005-phase-requirement— phase2 vs phase1+ 포함
결과는 ‘V3 에 price filter 추가하기로’ 같은 spec 변경으로 결실.
Dogfood 흐름
- 새 실험 계획 → Thread README 의 Next 섹션에 항목 추가
- 실험 폴더 생성 (
NNN-slug/) - Universe snapshot 결정. 필요하면
scripts/snapshot_universe.py로 새로 생성 - TEMPLATE 복사해서 README 초안
- 실행 → config.json, metrics.json, charts/
- README 완성 → lint 통과
- Thread README 업데이트 (Experiments 매트릭스 추가, Open Questions 정리)
- 중요 결정이면 decisions.md 에 항목
Open Questions 관리
- Thread README 에 현재 미해결 질문 리스트
- 답 찾으면 closing note 로 옮기거나 결정에 기록
- 6개월 이상 방치되는 질문은 분기별 roadmap 리뷰 때 kill or bump