진양곤이 11개 회사를 잇는 순간 — vault 2단계, 인물 노트 5만 장
DART 임원현황 10만 행을 받아 이름+출생년월로 사람을 식별했다. 이름 다섯 개 중 하나는 두 사람 이상이었다. 45,185명이 노드가 됐고, 회사 노트의 내부자 표가 링크로 바뀌었다.
1단계에서 남긴 질문은 하나였다. 동명이인을 어떻게 가를 것인가. 답은 DART가 주는 출생년월이었고, 오늘 그걸로 인물 노트 5만 장을 만들었다.
수집: 임원현황 3개년
사업보고서의 임원 현황(exctvSttus)을 2023~2025년, 3,990개사에 대해 받았다. 11,967번 호출, 2시간. 104,082행, 3,055개사. 오류 0. 미등기임원까지 들어 있다(삼성전자는 등기임원 9명만 주는 예외가 있다).
이름 다섯 개 중 하나는 두 사람이다
받고 나서 세어 봤다.
| 고유 인물 (이름+출생년월) | 45,185 |
| 이름은 같은데 사람이 다른 경우 | 이름 29,801개 중 6,681개 (22%) |
| 같은 회사 안에 동명이인 | 369쌍 |
| 2개사 이상 재직 | 3,752명 |
이름만으로 합쳤으면 22%가 틀렸다. 회사별로 나눴으면 3,752명의 겸직 링크를 잃었다. 출생년월 하나가 둘 다 해결한다.
진양곤 1966-01은 HLB 11개사에 있다. 내부자 공시로 셌을 때는 9개였다. HLB글로벌·HLB제약·HLB생명과학·HLB테라퓨틱스·HLB바이오스텝… 사내이사와 회장 자리가 한 노드에서 뻗어 나간다. 이게 지도의 첫 허브다.
규칙은 셋
- 강한 노드 — 이름+출생년월.
people/진양곤_1966-01.md - 약한 노드 — 출생년월이 없는 보고자(임원이 아닌 대주주, 오너 가족). 회사 안에 가둔다.
people/홍길동@005930.md. 회사를 넘어 자동으로 합치지 않는다 - 같은 회사에 동명이인이 둘이면 직위로 가른다. 안 갈리면 약한 노드로 두고 검토 목록에 적는다. 129건이 남았다
내부자 공시 13,607쌍(이름·회사) 중 62%가 강한 노드에 붙었다. 등기임원은 92%, 비등기임원은 54%였다 — 상무보처럼 임원현황에 안 올라오는 직급이 있고, 이직도 있다. 임원이 아닌 주요주주는 8%. 나머지는 전부 약한 노드가 됐다. 잘못 합친 게 없다는 뜻이다.
데이터가 가르쳐 준 함정 다섯
- 이름에 각주가 붙어 온다.
이용진\n(주1). 지워야이용진과 만난다 - 라틴 이름은 대소문자가 뒤섞인다.
PaceyDavidCharles와PACEYDAVIDCHARLES. 윈도우 파일시스템은 둘을 같은 파일로 보므로 키를 소문자로 통일했다 - 한글로 적힌 외국인 임원(다니엘아라우조)은 다섯 글자라 기관처럼 보인다. 공시에 "비등기임원"으로 적혀 있으면 모양과 무관하게 사람이다
ACSDOBFARS.P.A는 회사다. 라틴 문자열에 점이나&가 있으면 기관- 출생년월 오타(1796년, 1881년)가 89행. 강한 키를 주지 않는다
결과
| 강한 노드 | 45,185 |
| 약한 노드 | 5,969 |
| 기관 | 1,978 |
| 생성 시간 | 40초 |
| 재실행 | unchanged 53,132 |
회사 노트의 내부자 표에서 보고자 이름이 링크로 바뀌었고, ## 관계에 임원현황 인물이 직위와 함께, 5% 보유 기관이 링크로 들어갔다. 엑스게이트 노트를 열면 이상우(1972-07)와 이상욱(1972-06)이 따로 보이고, 이상욱을 누르면 이화전기공업 CFO 이력이 같이 나온다.
다음은 3단계, 인덱스 DB다. 그 전에 하나를 먼저 한다 — Threads에서 돌아다니는 "기관 3일 연속 순매수" 주장을 검증 엔진에 넣어 보는 것.