CUSIP별 두 개의 13F 공시 비교하기 (그리고 AI의 '버크셔가 무엇을 샀나?' 답변 확인하기)
요약
본 글은 AI 비서에게 '펀드의 포트폴리오 변경 내역'을 질의하는 방법을 다루며, 특히 Form 13F-HR 공시를 활용합니다. Equibles 서비스와 Python 스크립트를 이용해 SEC EDGAR에 올라온 두 시점의 공시를 CUSIP별로 비교하고, AI가 제공하는 답변의 정확성을 검증하는 과정을 설명합니다.
핵심 포인트
- AI 비서에게 펀드 포트폴리오 변경을 질문할 때 Form 13F-HR 활용
- Equibles 서비스와 MCP를 통해 SEC EDGAR 데이터를 쉽게 접근 가능
- Python 스크립트를 이용해 CUSIP별로 두 공시의 보유 수량 비교 가능
- AI가 제공하는 답변은 함정이 있을 수 있으므로 직접 검증 필요
AI 비서에게 자주 던지는 질문 중 하나는 "이 펀드는 지난 분기에 무엇을 샀나요?"이며, 그 답은 Form 13F-HR에서 나옵니다. 저는 MCP 서버를 가진 Equibles이라는 서비스를 구축했는데, 이 포스트에서는 해당 서비스가 제공한 2026년 6월 30일자로 마감된 Berkshire Hathaway의 변경 사항을 짧은 Python 스크립트를 이용해 SEC EDGAR에 올라온 공시와 비교하고, 순진한 확인(또는 순진한 답변)을 틀리게 만드는 함정들을 나열합니다.
1. MCP를 통해 질문하기
서버 주소는 https://mcp.equibles.com/mcp입니다. ChatGPT나 Claude에 커넥터로 추가하거나, Claude Code에서는 다음 하나의 명령어로 할 수 있습니다:
claude mcp add --transport http equibles https://mcp.equibles.com/mcp
로그인은 OAuth 방식이며, 무료 등급은 하루 100회 요청을 허용합니다. 다른 클라이언트를 위한 설정은 MCP 문서를 참고하세요.
"Berkshire Hathaway가 최신 13F에서 무엇을 변경했는지?"와 같은 질문 뒤에 숨겨진 도구는 GetInstitutionQuarterlyActivity입니다. 저는 이 도구를 Berkshire의 SEC CIK인 1067983로 직접 호출했습니다. 그 결과, 2026년 6월 30일 보고서와 2026년 3월 31일 보고서를 비교하여 다음과 같은 변경 사항을 반환했습니다:
| Bucket | Ticker | Prior shares | New shares |
|---|---|---|---|
| Initiated | DHI | 0 | 3,564 |
| ... | |||
| Fifteen changes. 이제 확인 차례입니다. |
2. EDGAR에서 두 개의 공시 찾기
모든 제출자의 이력은 https://data.sec.gov/submissions/CIK0001067983.json에 있습니다. 제가 필요한 두 개의 13F-HR 공시는 다음과 같습니다:
- 2026년 3월 31일 마감 분기: 접근 번호(accession)
0001193125-26-226661, 2026년 5월 15일에 제출됨 (인덱스) - 2026년 6월 30일 마감 분기: 접근 번호(accession)
0001193125-26-352200, 2026년 8월 14일에 제출됨 (인덱스)
각 공시 폴더는 primary_doc.xml 커버 페이지와 행당 하나의 <infoTable> 요소가 포함된 정보 테이블 XML을 가지고 있습니다.
3. CUSIP별로 비교하기
아래 스크립트는 표준 라이브러리만을 사용합니다. 각 공시 폴더에서 정보 테이블을 찾아 CUSIP별로 주식을 합산하고, 보유 수량이 변경된 모든 포지션을 출력합니다.
"""Diff two 13F-HR filings by CUSIP, straight from SEC EDGAR."""
import json
import sys
...
사용자 에이전트(User-Agent)에 본인의 이름과 이메일을 넣은 후, 해당 스크립트를 CIK와 두 개의 액세션 번호로 실행하세요:
python3 diff_13f.py 1067983 0001193125-26-226661 0001193125-26-352200
제가 2026년 10월 8일에 실행한 결과:
rows: 90 -> 89, positions: 29 -> 29
CUT ALLY FINL INC 02005N100 29,000,000 -> 27,000,000
ADD ALPHABET INC 02079K305 54,249,798 -> 78,791,167
...
모든 15가지 변경 사항은 D.R. Horton 포지션과 두 개의 Alphabet 클래스를 포함하여 MCP 테이블의 주식 수와 정확히 일치합니다.
4. 스크립트가 처리하는 다섯 가지 함정 (답변도 그래야 합니다)
하나의 포지션은 여러 행입니다. 6월 공시는 89개의 행을 가지고 있지만, 고유한 CUSIP는 29개에 불과합니다. 버크셔(Berkshire)는 보고 관리자 목록 조합에 따라 하나의 포지션을 여러 행에 걸쳐 분할하며, 29개 포지션 중 19개가 한 개 이상의 행에 걸쳐 있습니다. 은행 오브 아메리카(Bank of America)만 해도 8개를 차지합니다. 분기별로 단일 행을 비교하면 실제로 발생하지 않은 거래를 보고하게 됩니다. 반드시 CUSIP별로 합산해야 합니다.
발행사 이름이 아닌 CUSIP으로 키를 지정하세요. 발행사 이름은 공시 제출자가 입력하는 자유 텍스트이며, 시간이 지나면서 변합니다. 3월 공시에서는 은행이 BANK AMERICA CORP이고 보험사가 CHUBB LTD SWITZ인 반면, 6월 공시에서는 각각 BANK OF AMER CORP와 CHUBB LIMITED입니다. 이름으로 키를 지정하는 비교는 버크셔가 은행 오브 아메리카 주식 전부를 매도하고
가치 변화는 거래를 의미하지 않습니다. 각 행은 보고된 달러 가치를 담고 있습니다. Berkshire의 Bank of America 주식 보유량은 30,230,150주 감소했지만, 가격 상승으로 인해 보고 가치는 $25.04 billion에서 $27.54 billion으로 증가했습니다. New York Times는 반대였습니다. 주식 수는 553,465주 증가했으나, 가치는 $169.5 million 감소했습니다. 펀드가 무엇을 했는지 질문할 때는 주식 수 변화로 순위를 매겨야 합니다.
주식 등급(Share classes)은 별도의 항목입니다. Alphabet Class A (02079K305)와 Class C (02079K107)는 서로 다른 CUSIP을 가지고 있습니다. Berkshire는 두 클래스 모두에 주식을 추가했기 때문에, "Berkshire가 Alphabet 주식 24.5 million주를 추가했다"고만 언급하면 절반의 매수 내역이 누락됩니다.
헤드라인보다 크기를 먼저 제시해야 합니다. "Berkshire가 D.R. Horton에서 포지션을 개설했다"는 문구는 정확하지만 거의 의미가 없습니다. 총 보고액 $299.25 billion 중 약 0.0002%에 해당하는, 보고 가치 $580,504를 가진 3,564주라는 크기를 제시하는 것이 좋습니다.
이 모든 것에 적용되는 하나의 시점 주의사항이 있습니다. 13F는 분기 마지막 날의 보유 현황을 보여주며 최대 45일 후에 제출될 수 있으므로, 이 신고서는 오늘 날짜가 아닌 2026년 6월 30일의 데이터를 설명합니다. 또한 이는 13(f) 증권에 대한 장기 포지션만을 다룹니다. 옵션은 putCall 필드가 있는 행으로 나타나며, 스크립트는 이를 건너뜁니다 (6월 신고서에는 해당 내용이 없습니다).
5. 일상적인 프로세스로 만드세요
어시스턴트가 13F 관련 질문에 답변할 때는 보고 날짜(report date)와 접근 번호(accession number)를 요청하고, 답이 중요한 경우 항상 다음과 같은 확인 절차를 실행하세요. Equibles 측에서는 도구 참조가 holdings docs에 있으며, 동일한 데이터는 예약된 작업용으로 REST API를 통해 이용할 수 있고, Berkshire의 신고서는 institution page에서 찾아볼 수 있습니다.
공시 사항: 저는 Equibles를 구축했습니다. 이 게시물은 위에 언급된 EDGAR 공시 자료를 기반으로 작업한 AI 에이전트에 의해 작성되었으며; 모든 수치는 2026년 10월 8일에 해당 자료에서 재도출되었고, 스크립트 출력은 실제 실행 결과입니다. 여기에 포함된 내용은 투자 조언이 아닙니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기