# ๐Ÿ”ฎ SightRay ๋ฆฌ์Šคํฌ ๊ด€๋ฆฌ ์—”์ง„ โ€“ ์ •์  ๋ชจ๋ธ ๊ธฐ๋ฐ˜ โ†’ ๋™์  ๋ชจ๋ธ ํ™•์žฅ ๊ณ„ํš --- ## โœ… ํ˜„์žฌ ๊ตฌ์กฐ ์š”์•ฝ: ์ •์  ๋ชจ๋ธ ๊ธฐ๋ฐ˜ ๋ฆฌ์Šคํฌ ์—”์ง„ | ๊ตฌ์„ฑ ์š”์†Œ | ๋ฐฉ์‹ | ์„ค๋ช… | |------------|-------|------| | VaR | ํžˆ์Šคํ† ๋ฆฌ์ปฌ ๋ฐฉ์‹ | ์ˆ˜์ต๋ฅ  ์ •๋ ฌ ๊ธฐ๋ฐ˜ ์†์‹ค ํ•œ๊ณ„์น˜ ๊ณ„์‚ฐ | | SVaR | ์ตœ๊ทผ ๊ธ‰๋ฝ ๊ตฌ๊ฐ„ ๊ธฐ๋ฐ˜ VaR | ๋ณด์ˆ˜์  ๋ฆฌ์Šคํฌ ์ถ”์ • | | MCS | ์ •๊ทœ๋ถ„ํฌ ๊ธฐ๋ฐ˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ | ํ™•๋ฅ ์  ๋ฏธ๋ž˜ ์†์‹ค ๋ถ„ํฌ ์˜ˆ์ธก | | ATR | ๊ธฐ์ˆ ์  ์ง€ํ‘œ (๋ณ€๋™์„ฑ) | ํ‰๊ท  ๋ณ€๋™ํญ ๊ธฐ๋ฐ˜ ์œ„ํ—˜๋„ ํ‰๊ฐ€ | | Risk Score | ์—ญ์ˆ˜ + ๊ฐ€์ค‘ ํ‰๊ท  | ์ •๊ทœํ™”๋œ 0~100 ์ ์ˆ˜ ์‚ฐ์ถœ | > โ˜‘๏ธ ์žฅ์ : ๊ตฌํ˜„์ด ์‰ฝ๊ณ  ํ•ด์„ ๊ฐ€๋Šฅ, ๊ทœ์ œ ์นœํ™”์ , MVP์— ์ ํ•ฉ > โš ๏ธ ํ•œ๊ณ„: ์‹œ์žฅ ๋ณ€ํ™”์— ์ ์‘ ๋ถˆ๊ฐ€, ์˜ˆ์™ธ ์ƒํ™ฉ ์˜ˆ์ธก ํ•œ๊ณ„ --- ## ๐Ÿš€ ํ–ฅํ›„ ํ™•์žฅ ๋ชฉํ‘œ: ๋™์  ํ•™์Šต ๊ธฐ๋ฐ˜ ๋ฆฌ์Šคํฌ ์—”์ง„ ### ๐Ÿ”„ ๋ชฉ์  - ๊ณ ์ •๋œ ์ˆ˜์น˜๊ฐ€ ์•„๋‹ˆ๋ผ, **์‹œ์žฅ ํ™˜๊ฒฝ/๋ฐ์ดํ„ฐ ํ๋ฆ„์— ๋”ฐ๋ผ ๋ฆฌ์Šคํฌ ์˜ˆ์ธก์ด ๋ณ€ํ™”ํ•˜๋„๋ก ์„ค๊ณ„** ### ๐Ÿง  ํ•ต์‹ฌ ๋ฐฉํ–ฅ | ๋ชฉํ‘œ ๊ธฐ๋Šฅ | ์„ค๋ช… | |-----------|------| | **๋ฆฌ์Šคํฌ ์˜ˆ์ธก ๋ชจ๋ธ** | ๋ฏธ๋ž˜ ์†์‹ค ํ™•๋ฅ  ์ž์ฒด๋ฅผ ML ๋ชจ๋ธ๋กœ ํ•™์Šต ๋ฐ ์˜ˆ์ธก (Regression) | | **์ƒํ˜ธ์ž‘์šฉ ํ•™์Šต** | ATR, ROI, VaR ๋“ฑ์˜ ๊ด€๊ณ„๋ฅผ ๋ชจ๋ธ์ด ์ž๋™์œผ๋กœ ํŒŒ์•… | | **์‹œ๋‚˜๋ฆฌ์˜ค ๊ธฐ๋ฐ˜ ๊ฐ•ํ™” ํ•™์Šต** | ๋‹ค์–‘ํ•œ ์‹œ์žฅ ์กฐ๊ฑด์—์„œ ์ตœ์ ์˜ ๋ฆฌ์Šคํฌ ๋Œ€์‘ ์ „๋žต ํ•™์Šต | --- ## ๐Ÿงฉ ๊ตฌ์กฐ์  ํ™•์žฅ ๊ณ„ํš ```plaintext risk_manage_engine/ โ”œโ”€โ”€ predictors/ โ† ์ƒˆ๋กœ์šด ํ•˜์œ„ ๋””๋ ‰ํ† ๋ฆฌ โ”‚ โ”œโ”€โ”€ risk_lstm.py # ์‹œ๊ณ„์—ด ๊ธฐ๋ฐ˜ ๋ฆฌ์Šคํฌ ์˜ˆ์ธก ๋ชจ๋ธ โ”‚ โ””โ”€โ”€ risk_xgboost.py # ์ง€๋„ํ•™์Šต ๊ธฐ๋ฐ˜ ์˜ˆ์ธก ๋ชจ๋ธ (ํšŒ๊ท€ or ๋ถ„๋ฅ˜) โ”œโ”€โ”€ risk_dataset_builder.py # CDS + ๋ฆฌ์Šคํฌ ์ง€ํ‘œ โ†’ ํ•™์Šต์šฉ ํ”ผ์ฒ˜ ๊ตฌ์„ฑ โ”œโ”€โ”€ risk_evaluator.py # ์‹ค์ œ ์˜ˆ์ธก vs ๊ณ„์‚ฐ ๋น„๊ต ํ‰๊ฐ€ ``` --- ## ๐Ÿ”ฌ ์‚ฌ์šฉํ•  ๋ชจ๋ธ ํ›„๋ณด | ๋ชจ๋ธ | ๋ชฉ์  | ํŠน์„ฑ | |------|------|------| | LSTM | ์‹œ๊ณ„์—ด ๋ฆฌ์Šคํฌ ์ถ”์ • | ๊ณผ๊ฑฐ ๋ณ€ํ™” ์ถ”์„ธ๋ฅผ ๊ณ ๋ คํ•œ ์˜ˆ์ธก | | XGBoost | ๋ฆฌ์Šคํฌ ์ ์ˆ˜ ํšŒ๊ท€ | ๊ณ ์ • ํ”ผ์ฒ˜ ๊ธฐ๋ฐ˜ ์˜ˆ์ธก, ๋น ๋ฅธ ํ•™์Šต | | Autoencoder | ์ด์ƒ ๊ฐ์ง€ | ๊ฐ‘์ž‘์Šค๋Ÿฌ์šด ์œ„ํ—˜ ์‹ ํ˜ธ ํƒ์ง€ | --- ## ๐Ÿ“Š ์ถœ๋ ฅ ๊ตฌ์กฐ (์˜ˆ์‹œ) | symbol | pred_risk_score | actual_risk_score | diff | alert | |--------|------------------|-------------------|------|--------| | AAPL | 75 | 68 | -7 | โš ๏ธ | | TSLA | 62 | 64 | +2 | | --- ## โœ… ์ ์šฉ ์ˆœ์„œ ์ œ์•ˆ 1. **CDS + ๊ธฐ์กด risk_score โ†’ ํ•™์Šต์šฉ ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑ** (`risk_dataset_builder.py`) 2. **๋‹จ์ผ ๋ชจ๋ธ(XGBoost ๋“ฑ)๋กœ `risk_score` ์˜ˆ์ธก ํšŒ๊ท€ ๋ชจ๋ธ ๊ตฌ์ถ•** 3. **์‹ค์ œ risk_score์™€ ๋น„๊ตํ•˜์—ฌ ์˜ˆ์ธก ์ •ํ™•๋„ ํ‰๊ฐ€** (`risk_evaluator.py`) 4. **LSTM ๊ธฐ๋ฐ˜ ์‹œ๊ณ„์—ด ์˜ˆ์ธก ์ถ”๊ฐ€** 5. **์ „๋žต ์—”์ง„๊ณผ ์—ฐ๊ณ„ํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ๋Œ€์‘ ์ฒด๊ณ„ ๊ตฌ์ถ•** --- ## โœ… ์š”์•ฝ - ํ˜„์žฌ: **์ •์  ๋ชจ๋ธ ๊ธฐ๋ฐ˜**์œผ๋กœ ์•ˆ์ •์„ฑ๊ณผ ํ•ด์„์„ฑ์„ ํ™•๋ณด - ๋ฏธ๋ž˜: **๋™์ ยทํ•™์Šต ๊ธฐ๋ฐ˜**์œผ๋กœ ์˜ˆ์™ธ ์ƒํ™ฉ ์ ์‘์„ฑ๊ณผ ์˜ˆ์ธก ์ •๋ฐ€๋„ ํ™•๋ณด - SightRay๋Š” ์ด ๋‘˜์„ ์œ ๊ธฐ์ ์œผ๋กœ ๊ฒฐํ•ฉํ•˜์—ฌ ์ง„ํ™” ๊ฐ€๋Šฅํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ์Œ > ๐Ÿ“˜ ์ •์  ๋ฆฌ์Šคํฌ ๋ชจ๋ธ์€ ๊ธฐ๋ณธ ํ‰๊ฐ€ ์ˆ˜๋‹จ์œผ๋กœ ์œ ์ง€ํ•˜๋˜, > ์˜ˆ์ธก๋ ฅ ํ–ฅ์ƒ๊ณผ ๊ณ ๋„ํ™”๋ฅผ ์œ„ํ•ด ๋™์  ๋ชจ๋ธ์„ ํ™•์žฅ ์ ์šฉํ•ด ๋‚˜๊ฐˆ ๊ณ„ํš