이 스킬
Damodaran 계정 출처 감사
Damodaran식 재무 정규화에 쓰인 매출, EBIT, 세금, CFO, capex, 감가상각, 현금, 부채, 자본, 운전자본 계정의 L1 출처를 감사하는 절차. 트리거 — '계정 trace', '출처 감사', 'valuation account provenance'.
이어 가기
절차
실행 순서
- 1
핵심 계정마다 `usable`, `fallbackAccepted`, `missing` 중 하나를 표시한다.
- 2
5개 고정 타깃에서 execution과 evidence가 통과해야 한다.
예시
이런 질문이 들어오면 이 skill 을 쓴다
- 삼성전자 valuation 계정 출처 감사
- AAPL FCFF 계정 trace
- DCF 전에 missing account 확인
출력
기대 결과
- valuation input? ?? ?? trace
- ?? ?? ?? ??? fallback reason
- ?? ?? ?? ??? ???
공개 호출 방식
import dartlab
import importlib.resources as resources
import json
import polars as pl
from dartlab.synth.damodaranL15 import buildDamodaranMemo
target = "005930"
c = dartlab.Company(target)
market = getattr(c, "market", "US" if not target.isdigit() else "KR")
currency = getattr(c, "currency", "USD" if market == "US" else "KRW")
company_name = getattr(c, "corpName", getattr(c, "companyName", target))
def _safeShow(topic):
try:
table = c.show(topic, freq="Y")
except TypeError:
table = c.show(topic)
except Exception:
return pl.DataFrame()
return table if isinstance(table, pl.DataFrame) else pl.DataFrame()
country_defaults = json.loads(
resources.files("dartlab.reference.data").joinpath("damodaranDefaults.json").read_text(encoding="utf-8")
)
industry_defaults = json.loads(
resources.files("dartlab.reference.data").joinpath("damodaranIndustryDefaults.json").read_text(encoding="utf-8")
)
statements = {topic: _safeShow(topic) for topic in ("IS", "BS", "CF")}
memo = buildDamodaranMemo(
target=target,
market=market,
currency=currency,
companyName=company_name,
statements=statements,
countryDefaults=country_defaults,
industryDefaults=industry_defaults,
marketData={},
)
emit_result(
table=memo["tables"]["accountTraceAudit"],
values=memo["headline"],
date=memo.get("asOf"),
units=memo["units"],
sources=memo["sources"],
) 호출 동작
1. 결론 도출
valuation에 투입된 핵심 계정이 어떤 snakeId에서 왔는지 최신 연도 기준으로 표준화해 보여준다. 누락 계정은 DCF 계산 전에 gap으로 남긴다.
2. 핵심 근거 수집
Company.show("IS"|"BS"|"CF", freq="Y")로 들어온 표의 계정 매칭 결과를 사용한다. 매출, EBIT, 세금, CFO, capex, 감가상각, 현금, 부채, 자본, 운전자본을 최소 감시 계정으로 둔다.
3. 메커니즘 분석
Damodaran식 valuation은 회계 계정 선택이 가정의 출발점이다. 같은 FCFF라도 capex, depreciation, working capital 출처가 다르면 value driver 해석이 달라진다.
4. 반례·한계
부채 line이 없을 때는 실제 무차입과 계정 누락을 분리해야 한다. 현재 스킬은 line 부재를 fallbackAccepted로 낮추고, 원문 주석 기반 debt spread 판단은 후속 스킬로 남긴다.
5. 후속 모니터링
trace 결손 계정은 normalizedFinancials, reinvestmentRoc, fcffDcf의 confidence를 낮춘다.
대표 반환 형태
accountTraceAudit : list[dict] — year, account, traceKey, status, source를 담는다.
연계 절차
- recipes.fundamental.valuation.damodaran.normalizedFinancials - 계정 사용 결과.
- recipes.fundamental.valuation.damodaran.reinvestmentRoc - capex/working capital trace 검증.
- recipes.fundamental.valuation.damodaran.fcffDcf - trace 결손 시 DCF confidence 하향.
기본 검증
- 핵심 계정마다
usable,fallbackAccepted,missing중 하나를 표시한다. - 5개 고정 타깃에서 execution과 evidence가 통과해야 한다.
런타임
실행 환경별 호환성
| 환경 | 상태 | 비고 / 제한 |
|---|---|---|
| Local Python | supported | — |
| Server | supported | — |
| MCP | unknown | — |
| Web AI | unknown | — |
| Pyodide | limited | — |
실패 회피
흔한 실패 · 절대 금지
- capex 부호를 확인하지 않고 FCFF에 반영
- depreciation 결손을 정상 현금흐름으로 오판
- debt line이 없는데 부채 없음과 계정 누락을 구분하지 않음
- trace가 없는 핵심 계정을 0으로 채우지 않는다.
- DART/EDGAR 계정명 차이를 사업 변화로 해석하지 않는다.
- L2 엔진 호출 금지.