| name | ackman-quant |
| description | Analyzes a specific US or Korean stock (by ticker or company name) through Bill Ackman's investment persona using this repo's local Ackman Quant Engine (01.Trading Strategy/Awesome claude quant scripts/Ackman/quant_engine) โ a Python pipeline that pulls TOSS/DART/Yahoo Finance/news data, computes a Quality/Valuation/Catalyst/Risk score (0-100), and generates Ackman-style commentary via DeepSeek. Use this whenever the user asks to analyze, evaluate, or score a stock "like Bill Ackman", "์ ํฌ๋จผ ์คํ์ผ๋ก", "์ ํฌ๋จผ ๊ด์ ์์", "๋น ์ ํฌ๋จผ์ฒ๋ผ", or asks for a "ํํธ ๋ถ์"/quant score/์ ํ๊ฐ ๋ถ์ of a specific ticker or company name โ even if they don't say "Ackman" by name but are clearly asking this repo's quant engine to evaluate a stock. Don't use this for generic investment advice, unrelated backtests, or requests about other strategies in this repo. |
Ackman Quant Engine โ ์ข
๋ชฉ ๋ถ์ ์คํฌ
์ด ์คํฌ์ ์ด ์ ์ฅ์์ ์ด๋ฏธ ๊ตฌ์ถ๋ ๋ก์ปฌ ํํธ ์์ง(01.Trading Strategy/Awesome claude quant scripts/Ackman/quant_engine)์
ํธ์ถํด, ์ฌ์ฉ์๊ฐ ์ง๋ชฉํ ์ข
๋ชฉ ํ๋๋ฅผ ๋น ์ ํฌ๋จผ ํ๋ฅด์๋๋ก ๋ถ์ํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ฑํ
์ ์์ฝํด ๋ณด์ฌ์ค๋ค.
์๋ก์ด ๋ถ์ ๋ก์ง์ ๋ง๋ค์ง ์๋๋ค โ ์ด๋ฏธ ๊ฒ์ฆ๋ main.py CLI์ engine/ticker_resolver.py๋ฅผ ๊ทธ๋๋ก ์ฌ์ฌ์ฉํ๋ค.
์ฌ์ ์กฐ๊ฑด (์ธ์
๋น ํ ๋ฒ๋ง ํ์ธ)
<repo>/01.Trading Strategy/Awesome claude quant scripts/Ackman/quant_engine/.venv๊ฐ ์๋์ง ํ์ธํ๋ค.
์์ผ๋ฉด ๋จผ์ ๊ทธ ๋๋ ํฐ๋ฆฌ์ README.md 1์ ๋๋ก python3 -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt๋ฅผ ์คํํด ์ค๋นํ๋ค (์ผํ์ฑ ์ค์ , ์ฌ์ฉ์์๊ฒ ์๋ฆฌ๊ณ ์งํ).
.env๋ ์ด๋ฏธ ์ด ํ๊ฒฝ์ TOSS/DART/DeepSeek/MySQL ํค๊ฐ ์ค์ ๋์ด ์๋ค๊ณ ๊ฐ์ ํ๋ค. ๋ง์ฝ ์คํ ๊ฒฐ๊ณผ์
DEEPSEEK_API_KEY ๋ฏธ์ค์ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋ณด์ด๋ฉด, ์ ์ฑ ์ฝ๋ฉํธ ๋์ ์ ๋ ์ ์๋ง ๋์จ ๊ฒ์ด๋ ์ฌ์ฉ์์๊ฒ
python scripts/setup_credentials.py ๋๋ ๋์๋ณด๋(python dashboard/app.py)๋ก ํค๋ฅผ ๋ฃ์ด์ผ ํ๋ค๊ณ ์๋ดํ๋ค.
์คํ ์์
1. ๋ฌด์์ ๋ถ์ํ ์ง ํ์
์ฌ์ฉ์์ ์์ฒญ์์ ํฐ์ปค(MSFT, 005930) ๋๋ ์ข
๋ชฉ๋ช
(์๋ฌธ/ํ๊ธ, ์: Microsoft, ์ผ์ฑ์ ์)์ ๋ฝ์๋ธ๋ค.
์ด๋ฏธ ์์ฒญ ์์ฒด์ ์ ํํ 6์๋ฆฌ ๊ตญ๋ด ์ฝ๋๋ ๋ช
ํํ ํฐ์ปค๊ฐ ์์ผ๋ฉด 2๋จ๊ณ๋ฅผ ๊ฑด๋๋ฐ๊ณ ๋ฐ๋ก 3๋จ๊ณ๋ก ๊ฐ๋ ๋๋ค.
2. ํฐ์ปค/์ข
๋ชฉ๋ช
์ ์ค์ ํฐ์ปค๋ก ํด์
๋ฒ๋ค๋ ๋ฆฌ์กธ๋ฒ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๋ค (ํ๋ก์ ํธ ๋ฃจํธ ๊ฒฝ๋ก์ ๊ฒ์์ด๋ฅผ ์ธ์๋ก ์ ๋ฌ):
cd "<repo>/01.Trading Strategy/Awesome claude quant scripts/Ackman/quant_engine"
source .venv/bin/activate
python "<์ด ์คํฌ ๋๋ ํฐ๋ฆฌ>/scripts/resolve_ticker.py" "$(pwd)" "<๊ฒ์์ด>"
[{"ticker": "MSFT", "name": "Microsoft Corporation", "market": "US"}, ...] ํํ์ JSON์ ์ถ๋ ฅํ๋ค.
(๊ตญ๋ด ์ข
๋ชฉ๋ช
์ DART ์์ฅ์ฌ ๋ชฉ๋ก์์, ๊ทธ ์ธ๋ Yahoo Finance ๊ฒ์ API์์ ํ๋ณด๋ฅผ ์ฐพ๋๋ค.)
- ํ๋ณด 0๊ฐ: DART/Yahoo ๊ฒ์์ ํ๊ธ๋ก ๋ ํด์ธ ๊ธฐ์
์ด๋ฆ(์: "ํ
์ฌ๋ผ", "์๋น๋์", "์ํ๋ฒณ")์
์ดํดํ์ง ๋ชปํด ์์ฃผ ๋น ๊ฒฐ๊ณผ๋ฅผ ์ค๋ค. ๋ฐ๋ก ํฌ๊ธฐํ์ง ๋ง๊ณ , ์ ์๋ ค์ง ํ์ฌ๋ผ๋ฉด ๋ค ์ง์์ผ๋ก ์ค์ ํฐ์ปค๋ฅผ
๋จผ์ ์ถ์ธกํด๋ณธ ๋ค(์: ํ
์ฌ๋ผโTSLA, ์๋น๋์โNVDA, ์ํ๋ฒณ/๊ตฌ๊ธโGOOGL) ๊ทธ ํฐ์ปค๋ก ๋ค์
resolve_ticker.py๋ฅผ ๋๋ ค ํ์ธํ๊ฑฐ๋, ํ์ ์ด ์์ผ๋ฉด ๋ฐ๋ก 3๋จ๊ณ๋ก ์งํํด๋ ๋๋ค. ์ ๋ง ๋ชจ๋ฅด๋
ํ์ฌ๋ฉด ๊ทธ๋ ์ฌ์ฉ์์๊ฒ ์ ํํ ํฐ์ปค๋ฅผ ๋ฌผ์ด๋ณธ๋ค.
- ํ๋ณด 1๊ฐ: ๋ฐ๋ก 3๋จ๊ณ๋ก ์งํ. ์ฌ์ฉ์์๊ฒ ๋ค์ ํ์ธ๋ฐ์ ํ์ ์์.
- ํ๋ณด ์ฌ๋ฌ ๊ฐ: ํฐ์ปค/์ข
๋ชฉ๋ช
/์์ฅ์ ๋ชฉ๋ก์ผ๋ก ๋ณด์ฌ์ฃผ๊ณ , ์ด๋ค ์ข
๋ชฉ์ธ์ง ์ฌ์ฉ์์๊ฒ ํ์ธ๋ฐ์ ๋ค ์งํ.
(๊ฒ์์ด๊ฐ ํ๋ณด ์ค ํ๋์ ์ ํํ ์ผ์นํ๋ฉด โ ์: ๊ฒ์์ด๊ฐ ์ ํํ
MSFT โ ๊ทธ ํ๋ณด๋ฅผ ๋ฐ๋ก ๊ณจ๋ผ๋ ๋๋ค.)
3. ๋ถ์ ์คํ
๊ฐ์ ๋๋ ํฐ๋ฆฌ์์, ์ ์ฅ์์ ๊ธฐ์กด CLI๋ฅผ ๊ทธ๋๋ก ํธ์ถํ๋ค โ ์ ํ์ดํ๋ผ์ธ์ ์ง์ง ์๋๋ค:
python main.py --tickers <ํด์๋ ํฐ์ปค>
ํด๋น ์ข
๋ชฉ์ด ์ ํฌ๋จผ์ ์ค์ ๋น๋์นญ ๋ฒ ํ
/ํน์์ํฉ ์ฌ๋ก(FNMA, FMCC ๋ฑ ์ ๋ถ๋ณดํธ๊ด๋ฆฌยท๊ท์ ์ด๋งค๊ฐ ํต์ฌ์ธ
์ผ์ด์ค)์ด๊ฑฐ๋ ์ฌ์ฉ์๊ฐ ๊ทธ๋ฐ ๋งฅ๋ฝ์ผ๋ก ์ค๋ช
ํ๋ค๋ฉด --special <ํฐ์ปค>๋ฅผ ์ถ๊ฐํ๋ค โ Valuation ๋จ๊ณ์
FCF Yield/ํ ์ธ์จ ๊ธฐ์ค์ด ์ฐ๋์ฃผ ํธ๋ ๋์ ํน์์ํฉ ํธ๋(๊ตญ์ฑ ๋๋น 2๋ฐฐ, ๋ ๊ด๋ํ ํ ์ธ ๊ธฐ์ค)์ผ๋ก
๋ฐ๋๋ค. ์์ธํ ๋ฐฐ๊ฒฝ์ ../Ackman undervalued quant prompt.md์ 1.2์ ์ฐธ๊ณ .
์ด ํธ์ถ์ .env์ ์ค์ ๋ ์ค์ TOSS/DART/DeepSeek ํค๋ฅผ ์ฌ์ฉํ๊ณ , MySQL์ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ฉฐ,
result/์ ๋ฆฌํฌํธ ํ์ผ๋ ๋จ๊ธด๋ค โ ๋ค๋ฅธ ์คํ(๋์๋ณด๋, ๋ฐ๋ณต CLI ์คํ)๊ณผ ๋์ผํ ๋ฐฉ์์ด๋ผ ๊ธฐ๋ก์ด ์์ฌ๋ ๋ฌธ์ ์๋ค.
MySQL์ด ์ ๋ ์์ผ๋ฉด [db] MySQL ์ฐ๊ฒฐ ์คํจ โ DB ์ ์ฅ ์์ด ๊ณ์ ์งํํฉ๋๋ค ๊ฒฝ๊ณ ๋ง ์ฐํ๊ณ ๊ณ์
์งํ๋๋ค โ ์ด๊ฑด ์คํจ๊ฐ ์๋๋ผ ์ ์์ ์ธ ํด๋ฐฑ์ด๋ ์ฌ์ฉ์์๊ฒ ์๋ฌ์ฒ๋ผ ๋ณด๊ณ ํ์ง ์๋๋ค.
4. ๊ฒฐ๊ณผ๋ฅผ ์ฑํ
์ ์ ๋ฆฌํด์ ๋ณด์ฌ์ฃผ๊ธฐ
ํฐ๋ฏธ๋ ์๋ณธ ์ถ๋ ฅ์ ๊ทธ๋๋ก ๋ถ์ฌ๋ฃ์ง ๋ง๊ณ , ๋ค์์ ๋ฝ์ ์์ฐ์ค๋ฝ๊ฒ ์์ฝํ๋ค (ํ๊ตญ์ด๋ก):
- ์ข
ํฉ ์ ์(X/100)์ ๋ฑ๊ธ(Strong Buy / Buy / Watch / Pass)
- Quality / Valuation / Catalyst / Risk ๋ค ํญ๋ชฉ ์ ์์ ํต์ฌ ๊ทผ๊ฑฐ 1~2๊ฐ์ฉ
- ํฌ์ง์
๋น์ค ์ ์ (Pass ๋ฑ๊ธ์ด๋ฉด "ํฌ์ง์
์์"์ผ๋ก ๋จ๋ ๊ฒ ์ ์ โ 60์ ๋ฏธ๋ง์ ํญ์ 0%)
- ์ ํฌ๋จผ ํ๋ฅด์๋ ์ฝ๋ฉํธ(LLM ์์ฑ ๋
ผํ) ์ ๋ฌธ ๋๋ ํต์ฌ ์์ง
์์๋ ์
- TOSS Open API๋ ์์ง ์ฌ์ ์ ์ฒญ ๋จ๊ณ๋ผ, ์ค์ ํค๊ฐ ์์ด๋ ๊ฐ๊ฒฉ/๊ธฐ์ ์ ์งํ(52์ฃผ ๊ณ ์ , RSI, ์ด๋ํ๊ท )๊ฐ
๊ฒฐ์ ๋ก ์ MOCK ๋ฐ์ดํฐ์ผ ์ ์๋ค. ์ฌ์ฉ์๊ฐ ์ด ์ซ์๋ก ์ค์ ํฌ์ ํ๋จ์ ํ๋ ค๋ ๋์๊ฐ ๋ณด์ด๋ฉด ์ด ์ ์ ์ง์ด์ค๋ค.
- ๊ตญ๋ด ์ข
๋ชฉ์ 6์๋ฆฌ ์ซ์ ์ฝ๋(์:
005930), ๊ทธ ์ธ๋ ์ ๋ถ ๋ฏธ๊ตญ/ํด์ธ ํฐ์ปค๋ก ์ฒ๋ฆฌ๋๋ค.
- ์ด ์คํฌ์ ํ์ดํ๋ผ์ธ์ ์๋ก ๋ง๋ค์ง ์๊ณ
main.py/engine/ticker_resolver.py๋ฅผ ๊ทธ๋๋ก ๋ถ๋ฅธ๋ค โ
๋ ํ์ผ์ ๋์์ด ๋ฐ๋๋ฉด ์ด ์คํฌ์ ์๋ด๋ ๊ฐ์ด ์๋ด์ผ ํ๋ค. ํท๊ฐ๋ฆฌ๋ฉด quant_engine์ README.md ํ์ธ.