Skip to content

RememberIOm/ETF_Rebalancer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

18 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“ˆ ETF Rebalancer (ETF ๋ฆฌ๋ฐธ๋Ÿฐ์‹ฑ ๊ณ„์‚ฐ๊ธฐ)

์ ๋ฆฝ์‹ ํˆฌ์ž์ž๋ฅผ ์œ„ํ•œ ๊ฐœ์ธํ™”๋œ ETF/์ฃผ์‹/์ฝ”์ธ ํฌํŠธํด๋ฆฌ์˜ค ๋ฆฌ๋ฐธ๋Ÿฐ์‹ฑ ๊ณ„์‚ฐ๊ธฐ์ž…๋‹ˆ๋‹ค. ๋งค์›” ํˆฌ์žํ•  ์˜ˆ์‚ฐ๊ณผ ํ˜„์žฌ ๋ณด์œ  ์ข…๋ชฉยท๋ชฉํ‘œ ๋น„์œจ์„ ์ž…๋ ฅํ•˜๋ฉด ์–ด๋–ค ์ข…๋ชฉ์„ ์–ผ๋งˆ๋‚˜ ๋งค์ˆ˜ํ•ด์•ผ ํ•˜๋Š”์ง€ ์ž๋™์œผ๋กœ ๊ณ„์‚ฐํ•ด ์ค๋‹ˆ๋‹ค.

์ง€์› ์‹œ์žฅ: ํ•œ๊ตญ ETF/์ฃผ์‹ (Naver Finance) ยท ๋ฏธ๊ตญ ์ฃผ์‹/ETF (Yahoo Finance) ยท ์•”ํ˜ธํ™”ํ (Upbit)

Python FastAPI Fly.io


โœจ ํ•ต์‹ฌ ๊ธฐ๋Šฅ (Features)

  • ๐ŸŒ ๋‹ค์ค‘ ์‹œ์žฅ ์ง€์›

    • KR (ํ•œ๊ตญ): Naver Finance, 6์ž๋ฆฌ ์˜์ˆซ์ž ํ‹ฐ์ปค (์˜ˆ: 069500)
    • US (๋ฏธ๊ตญ): Yahoo Finance, 1~10์ž ํ‹ฐ์ปค (์˜ˆ: AAPL, ES=F, GC=F)
    • CRYPTO (์ฝ”์ธ): Upbit KRW ๋งˆ์ผ“, 2~10์ž ๋Œ€๋ฌธ์ž ํ‹ฐ์ปค (์˜ˆ: BTC, ETH)
    • ํ‹ฐ์ปค ์ž…๋ ฅ ์‹œ ํ˜„์žฌ๊ฐ€ ์ž๋™ ์กฐํšŒ (debounce 600ms)
    • US ์ž์‚ฐ์€ Yahoo Finance ์‹ค์‹œ๊ฐ„ ํ™˜์œจ(USDโ†’KRW)๋กœ ์ž๋™ ํ™˜์‚ฐ, 10๋ถ„ ์บ์‹œ
    • US ํ‹ฐ์ปค์˜ Yahoo Finance ๊ณผ๊ฑฐ ์ข…๊ฐ€๋ฅผ ์กฐํšŒํ•ด ๋™์  ๋ชฉํ‘œ๋น„์ค‘ ๊ณ„์‚ฐ์— ํ™œ์šฉ
  • ๐Ÿงญ ๋™์  ๋ชฉํ‘œ๋น„์ค‘ ํŒจ๋„

    • VT ๊ฐ™์€ Yahoo Finance ์ง€์› ํ‹ฐ์ปค์˜ ๊ณผ๊ฑฐ ๊ฐ€๊ฒฉ์œผ๋กœ ์œ„ํ—˜์ž์‚ฐ/ํ˜„๊ธˆ์„ฑ ์ž์‚ฐ์˜ ์ด๋ก ์  ๋ฐฐ๋ถ„ ์ฐธ๊ณ ๊ฐ’์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
    • ์ง€์› ๋ฐฉ์‹: ๋ณ€๋™์„ฑ ๋ชฉํ‘œํ™”, ํ‰๊ท -๋ถ„์‚ฐยท๋จธํŠผ, VaRยทES ์œ„ํ—˜์˜ˆ์‚ฐ, CPPIยท์†์‹คํ•œ๋„.
    • ETF ํ–‰๋ณ„ ์ž์‚ฐ ์œ ํ˜•(VT, S&P500, Nasdaq100, KOSPI200, KRX300, ํ˜„๊ธˆ์„ฑ ์ž์‚ฐ, ๊ธฐํƒ€)๊ณผ ํ•˜์œ„๋น„์ค‘์„ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๊ณ„์‚ฐ๊ฐ’์€ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋กœ๋งŒ ํ‘œ์‹œ๋˜๋ฉฐ, ์‚ฌ์šฉ์ž๊ฐ€ ๋ชฉํ‘œ ๋น„์œจ์— ์ ์šฉ์„ ๋ˆ„๋ฅด๊ธฐ ์ „์—๋Š” ๊ธฐ์กด ๋ชฉํ‘œ ๋น„์œจ์„ ๋ฎ์–ด์“ฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ๐Ÿ”€ ์ˆ˜๋Ÿ‰ยท๊ธˆ์•ก ๊ธฐ์ค€ ๋งค์ˆ˜ ์„ ํƒ

    • ์ž์‚ฐ๋ณ„๋กœ ์ˆ˜๋Ÿ‰ ๊ธฐ์ค€(์ฃผ) ๋˜๋Š” ๊ธˆ์•ก ๊ธฐ์ค€(์›) ๋งค์ˆ˜ ๋ฐฉ์‹์„ ํ† ๊ธ€๋กœ ์„ ํƒ ๊ฐ€๋Šฅ
    • ์ˆ˜๋Ÿ‰ ๊ธฐ์ค€: ์ •์ˆ˜ ์ฃผ ๋‹จ์œ„๋กœ ๊ณ„์‚ฐ (ํ•œ๊ตญ ETF ๊ธฐ๋ณธ๊ฐ’)
    • ๊ธˆ์•ก ๊ธฐ์ค€: ์†Œ์ˆ˜์  ์ˆ˜๋Ÿ‰ ๊ณ„์‚ฐ โ€” ์ฝ”์ธยท์†Œ์ˆ˜์  ์ฃผ์‹์— ์ ํ•ฉ (CRYPTO ๊ธฐ๋ณธ๊ฐ’)
  • ๐Ÿ”’ 100% ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ์—ฐ์‚ฐ (Privacy-First)

    • ๋ชจ๋“  ๊ณ„์‚ฐ๊ณผ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ๊ฐ€ ๋ธŒ๋ผ์šฐ์ € ๋‚ด๋ถ€์—์„œ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.
    • ์„œ๋ฒ„๋Š” ์™ธ๋ถ€ ๊ธˆ์œต API์˜ CORS ํ”„๋ก์‹œ ์—ญํ• ๋งŒ ๋‹ด๋‹นํ•˜๋ฉฐ, ์ž์‚ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
    • ๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์ ‘์†ํ•ด๋„ ์™„์ „ํžˆ ๋…๋ฆฝ์ ์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ’พ JSON ๋ฐ์ดํ„ฐ Import / Export (v3)

    • ํฌํŠธํด๋ฆฌ์˜ค ์ƒํƒœ(์‹œ์žฅยทํ†ตํ™”ยท๋งค์ˆ˜๋ฐฉ์‹ยท๋ณด์œ ๋Ÿ‰ ๋“ฑ)๋ฅผ .json ํŒŒ์ผ๋กœ ์ €์žฅํ•˜๊ณ  ์–ธ์ œ๋“  ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๋™์  ๋ชฉํ‘œ๋น„์ค‘ ์„ค์ •, ์ž์‚ฐ ์œ ํ˜•, ํ•˜์œ„๋น„์ค‘์„ ํ•จ๊ป˜ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
    • v1/v2 ํ˜•์‹ ์ž๋™ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ง€์›.
  • ๐ŸŽฏ ์Šค๋งˆํŠธ ๋ฆฌ๋ฐธ๋Ÿฐ์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜

    • ๋ชฉํ‘œ ์ด ์ž์‚ฐ(ํ˜„์žฌ ์ž์‚ฐ + ์ด๋ฒˆ ๋‹ฌ ์˜ˆ์‚ฐ)์„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ ์ข…๋ชฉ์˜ ๋ชฉํ‘œ ๊ธˆ์•ก์„ ์‚ฐ์ถœํ•ฉ๋‹ˆ๋‹ค.
    • ์˜ˆ์‚ฐ ์ดˆ๊ณผ ์‹œ ๋น„๋ก€ ์ถ•์†Œ ๋กœ์ง์ด ์ž๋™์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
    • ์ตœ์ข… ๋น„์œจ์€ ๋‚จ์€ ์˜ˆ์‚ฐ์„ ํ˜„๊ธˆ์œผ๋กœ ํฌํ•จํ•œ ์ด์ž์‚ฐ ๊ธฐ์ค€์œผ๋กœ ํ‘œ์‹œํ•ด ๋ชฉํ‘œ ๋น„์œจ๊ณผ ์ง์ ‘ ๋น„๊ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • 0% ๋ชฉํ‘œ ๋น„์œจ ์ง€์›: ๋” ์ด์ƒ ์ถ”๊ฐ€ ๋งค์ˆ˜ํ•˜์ง€ ์•Š๊ณ  ๋ณด์œ ๋งŒ ์œ ์ง€ํ•  ์ข…๋ชฉ๋„ ํฌํŠธํด๋ฆฌ์˜ค์— ๋‚จ๊ฒจ๋‘˜ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๐Ÿ“Š ์‹œ๊ฐํ™” ๋ฐ ์ง๊ด€์ ์ธ UI/UX

    • ๋งค์ˆ˜ ์ „/ํ›„์˜ ๋น„์œจ์„ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋ฐ” ์ฐจํŠธ ์ œ๊ณต
    • ๋ชจ๋ฐ”์ผ ๊ธฐ๊ธฐ์—์„œ๋„ ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ๋ฐ˜์‘ํ˜•(Responsive) ์›น ๋””์ž์ธ (Light Theme)

๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ (Tech Stack)

Frontend

  • HTML5 / CSS3 (CSS Variables, Flex/Grid ๊ธฐ๋ฐ˜ ๋ฐ˜์‘ํ˜• ๋ ˆ์ด์•„์›ƒ)
  • Vanilla JavaScript (ES2022+) (ํ”„๋ ˆ์ž„์›Œํฌ ์—†์ด ๊ฐ€๋ณ๊ณ  ๋น ๋ฅธ ๋™์ž‘)
  • Node.js ๋‚ด์žฅ test runner (๋ฆฌ๋ฐธ๋Ÿฐ์‹ฑ/๋™์  ๋ชฉํ‘œ๋น„์ค‘ ์ˆœ์ˆ˜ ํ•จ์ˆ˜ ํ…Œ์ŠคํŠธ)

Backend & Deployment

  • Python 3.13 / FastAPI / Jinja2 (์ •์  ํŒŒ์ผ ๋ฐ CORS ํ”„๋ก์‹œ)
  • httpx (๋น„๋™๊ธฐ HTTP ํด๋ผ์ด์–ธํŠธ)
  • uv (ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ ๋ฐ ๊ฐ€์ƒํ™˜๊ฒฝ)
  • ruff (Lint & Format) / pyright (ํƒ€์ž… ์ฒดํฌ)
  • Docker (๋ฉ€ํ‹ฐ ์Šคํ…Œ์ด์ง€ ์ปจํ…Œ์ด๋„ˆ)
  • Fly.io (ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ, Auto-stop/start ์ ์šฉ์œผ๋กœ ๋ฆฌ์†Œ์Šค ์ตœ์ ํ™”)

๐Ÿš€ ๋กœ์ปฌ ์‹คํ–‰ ๋ฐฉ๋ฒ• (Local Setup)

Docker๋กœ ์‹คํ–‰ (๊ถŒ์žฅ)

# ์ €์žฅ์†Œ ํด๋ก 
git clone <repository-url>
cd ETF_Rebalancer

# ๊ฐœ๋ฐœ ์„œ๋ฒ„ ์‹œ์ž‘ (hot-reload)
make dev

๋ธŒ๋ผ์šฐ์ €์—์„œ http://localhost:8080์œผ๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐํƒ€ make ๋ช…๋ น:

make test   # Python API ํ…Œ์ŠคํŠธ + JavaScript ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ…Œ์ŠคํŠธ ์‹คํ–‰
make lint   # ruff check + pyright + app.js ๊ตฌ๋ฌธ ๊ฒ€์‚ฌ
make build  # Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ
make clean  # ์ปจํ…Œ์ด๋„ˆ/์ด๋ฏธ์ง€ ์ •๋ฆฌ

uv๋กœ ์ง์ ‘ ์‹คํ–‰ (์ฐธ๊ณ ์šฉ)

๊ณต์‹ ๊ฐœ๋ฐœยท๊ฒ€์ฆ ๊ฒฝ๋กœ๋Š” Docker ๊ธฐ๋ฐ˜ make ๋ช…๋ น์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ๋ฐฉ์‹์€ ๋น ๋ฅธ ๋กœ์ปฌ ํ™•์ธ์šฉ์ด๋ฉฐ, PR/๋ฐฐํฌ ์ „์—๋Š” ๋ฐ˜๋“œ์‹œ make test์™€ make lint๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

git clone <repository-url>
cd ETF_Rebalancer

# ์˜์กด์„ฑ ์„ค์น˜ (uv๊ฐ€ Python 3.13 + ๊ฐ€์ƒํ™˜๊ฒฝ์„ ์ž๋™ ์ƒ์„ฑ)
uv sync

# FastAPI ์„œ๋ฒ„ ์‹คํ–‰
uv run uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

๋ธŒ๋ผ์šฐ์ €์—์„œ http://localhost:8000์œผ๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿณ Docker๋กœ ์‹คํ–‰ํ•˜๊ธฐ

# ์ด๋ฏธ์ง€ ๋นŒ๋“œ
docker build -t etf-rebalancer .

# ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ (ํฌํŠธ 8080 ๋งคํ•‘)
docker run -p 8080:8080 etf-rebalancer

โ˜๏ธ ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ (Fly.io)

์ด ํ”„๋กœ์ ํŠธ๋Š” Fly.io ๋ฐฐํฌ์— ์ตœ์ ํ™”๋œ fly.toml์„ ํฌํ•จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. (๋„์ฟ„ nrt ๋ฆฌ์ „ ๊ธฐ์ค€)

fly auth login
fly deploy

๐Ÿ“ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ (Project Structure)

ETF_Rebalancer/
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ main.py              # FastAPI ์•ฑ
โ”‚   โ”‚                        #   GET /api/price/{ticker}?market=KR|US|CRYPTO
โ”‚   โ”‚                        #   GET /api/history/{ticker}?market=US&range=1y&interval=1d
โ”‚   โ”‚                        #   GET /api/rate/USDKRW
โ”‚   โ”œโ”€โ”€ static/
โ”‚   โ”‚   โ”œโ”€โ”€ app.js           # ๋ฆฌ๋ฐธ๋Ÿฐ์‹ฑ ๊ณ„์‚ฐ + UI ๋กœ์ง (์ „๋ถ€ ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ)
โ”‚   โ”‚   โ””โ”€โ”€ style.css        # UI ์Šคํƒ€์ผ๋ง (Light Theme)
โ”‚   โ””โ”€โ”€ templates/
โ”‚       โ””โ”€โ”€ index.html       # SPA ์ง„์ž…์ 
โ”œโ”€โ”€ tests/
โ”‚   โ”œโ”€โ”€ test_main.py         # pytest API ํ…Œ์ŠคํŠธ
โ”‚   โ””โ”€โ”€ js/                  # Node.js ๊ธฐ๋ฐ˜ ํ”„๋ก ํŠธ์—”๋“œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ…Œ์ŠคํŠธ
โ”œโ”€โ”€ .github/
โ”‚   โ””โ”€โ”€ workflows/
โ”‚       โ””โ”€โ”€ fly-deploy.yml   # GitHub Actions CI/CD
โ”œโ”€โ”€ Dockerfile               # ๋ฉ€ํ‹ฐ ์Šคํ…Œ์ด์ง€ ๋นŒ๋“œ (production, dev)
โ”œโ”€โ”€ docker-compose.yml       # ๊ฐœ๋ฐœ/ํ…Œ์ŠคํŠธ ์ปจํ…Œ์ด๋„ˆ ์„ค์ •
โ”œโ”€โ”€ Makefile                 # ๊ฐœ๋ฐœ ์ž‘์—… ๋‹จ์ถ• ๋ช…๋ น
โ”œโ”€โ”€ fly.toml                 # Fly.io ๋ฐฐํฌ ์„ค์ • ํŒŒ์ผ
โ”œโ”€โ”€ pyproject.toml           # ํ”„๋กœ์ ํŠธ ์„ค์ • ๋ฐ ์˜์กด์„ฑ
โ””โ”€โ”€ uv.lock                  # ์˜์กด์„ฑ ์ž ๊ธˆ ํŒŒ์ผ

๐Ÿ’ก ์‚ฌ์šฉ ๊ฐ€์ด๋“œ

  1. ์˜ˆ์‚ฐ ์„ค์ •: ํ™”๋ฉด ์ƒ๋‹จ์— ์ด๋ฒˆ ๋‹ฌ ํˆฌ์ž ์˜ˆ์‚ฐ(โ‚ฉ)์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  2. ํฌํŠธํด๋ฆฌ์˜ค ๊ตฌ์„ฑ:
    • [ETF ์ถ”๊ฐ€] ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์ข…๋ชฉ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
    • ์‹œ์žฅ ์„ ํƒ โ†’ ์ข…๋ชฉ์ฝ”๋“œ ์ž…๋ ฅ ์‹œ ํ˜„์žฌ๊ฐ€ ์ž๋™ ์กฐํšŒ
    • ์ข…๋ชฉ๋ช…, ๋ณด์œ  ์ˆ˜๋Ÿ‰, ๋ชฉํ‘œ ๋น„์œจ(%) ์ž…๋ ฅ (ํ•ฉ๊ณ„ 100%)
    • ๋ณด์œ  ์ˆ˜๋Ÿ‰ ์˜ค๋ฅธ์ชฝ์˜ ์ฃผ/์› ๋ฒ„ํŠผ์œผ๋กœ ๋งค์ˆ˜ ๋ฐฉ์‹ ์ „ํ™˜:
      • ์ฃผ โ€” ์ˆ˜๋Ÿ‰ ๊ธฐ์ค€ (์ •์ˆ˜ ์ฃผ ๋‹จ์œ„, ํ•œ๊ตญ ETF ๊ธฐ๋ณธ)
      • ์› โ€” ๊ธˆ์•ก ๊ธฐ์ค€ (์†Œ์ˆ˜์  ์ˆ˜๋Ÿ‰, ์ฝ”์ธยท์†Œ์ˆ˜์  ์ฃผ์‹ ๊ธฐ๋ณธ)
  3. ๋™์  ๋ชฉํ‘œ๋น„์ค‘ ํ™•์ธ(์„ ํƒ): [๋™์  ๋ชฉํ‘œ๋น„์ค‘] ํŒจ๋„์—์„œ ๊ณ„์‚ฐ ๋ฐฉ์‹์„ ์„ ํƒํ•˜๊ณ , ETF ์œ ํ˜•๋ณ„ ๋ชฉํ‘œ๋น„์ค‘ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  4. ๋ชฉํ‘œ ๋น„์œจ ์ ์šฉ(์„ ํƒ): ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๊ฐ’์ด ์ ์ ˆํ•  ๋•Œ๋งŒ [๋ชฉํ‘œ ๋น„์œจ์— ์ ์šฉ]์„ ๋ˆŒ๋Ÿฌ ETF ๋ชฉ๋ก์˜ ๋ชฉํ‘œ ๋น„์œจ ์ž…๋ ฅ๊ฐ’์— ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
  5. ๊ณ„์‚ฐํ•˜๊ธฐ: [๋ฆฌ๋ฐธ๋Ÿฐ์‹ฑ ๊ณ„์‚ฐํ•˜๊ธฐ] ๋ฒ„ํŠผ(๋˜๋Š” Enter)์„ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.
  6. ๊ฒฐ๊ณผ ํ™•์ธ: ํ‘œ์™€ ์ฐจํŠธ์—์„œ ๋งค์ˆ˜ ์ˆ˜๋Ÿ‰ยท๊ธˆ์•ก ๋ฐ ๋‚จ์€ ์˜ˆ์‚ฐ์„ ํ˜„๊ธˆ์œผ๋กœ ํฌํ•จํ•œ ์ตœ์ข… ๋น„์œจ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  7. ์ €์žฅ: [๋‚ด๋ณด๋‚ด๊ธฐ]๋กœ ํ˜„์žฌ ์ƒํƒœ๋ฅผ .json์œผ๋กœ ์ €์žฅํ•˜๊ณ , ๋‹ค์Œ ๋‹ฌ์— [๋ถˆ๋Ÿฌ์˜ค๊ธฐ]๋กœ ์ด์–ด์„œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

โš ๏ธ ๋ฉด์ฑ… ์กฐํ•ญ (Disclaimer)

๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ณ„์‚ฐ ๊ฒฐ๊ณผ์™€ ๋™์  ๋ชฉํ‘œ๋น„์ค‘์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฐ์ดํ„ฐ์™€ ๊ณผ๊ฑฐ ๊ฐ€๊ฒฉ์„ ๋ฐ”ํƒ•์œผ๋กœ ํ•œ ์ˆ˜ํ•™์  ์‚ฐ์ถœ ๊ฒฐ๊ณผ์ผ ๋ฟ์ด๋ฉฐ, ํˆฌ์ž ๊ถŒ์œ ๋‚˜ ์žฌ๋ฌด์  ์กฐ์–ธ์„ ๋ชฉ์ ์œผ๋กœ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ณผ๊ฑฐ ๋ณ€๋™์„ฑ, VaR, ES, CPPI ์ž…๋ ฅ๊ฐ’์€ ๋ฏธ๋ž˜ ์ˆ˜์ต์ด๋‚˜ ์†์‹ค์„ ๋ณด์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ๋งค๋งค ์‹œ์—๋Š” ์‹œ์žฅ ์ƒํ™ฉ, ํ˜ธ๊ฐ€ ๋‹จ์œ„, ์ˆ˜์ˆ˜๋ฃŒ, ์„ธ๊ธˆ, ํ™˜์œจ, ๊ฐœ์ธ์˜ ์žฌ๋ฌด ์ƒํ™ฉ ๋“ฑ์— ์˜ํ•ด ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋ฐ˜๋“œ์‹œ ํˆฌ์ž ํŒ๋‹จ์˜ ์ฐธ๊ณ ์šฉ์œผ๋กœ๋งŒ ์‚ฌ์šฉํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors