facts
API 키 발급 과정 없이 URL 호출만으로 KOSPI와 KOSDAQ 1,463종목의 데이터를 가져올 수 있는 `aikstockdata` 서비스가 공개됐다. 제공 데이터는 전 영업일(T+1) 확정 종가, DART 공시, 분기 실적을 포함하며, 모든 데이터는 JSON 형식으로 서빙된다. 사용자는 별도의 가입이나 인증 없이 `https://aikstockdata.com/data/public/` 경로를 통해 시장 요약, 종목별 상세 정보, 250거래일 시계열 데이터를 호출할 수 있다.
LLM(대규모 언어 모델)과의 연결을 위해 MCP(Model Context Protocol, AI 모델이 외부 데이터 도구에 접근하기 위한 표준 프로토콜) 서버를 지원한다. 공식 MCP Registry에 `com.aikstockdata/mcp`로 등록되어 있으며, Claude나 ChatGPT의 커넥터 설정에 `https://mcp.aikstockdata.com/mcp` 주소를 등록하면 AI가 직접 주식 데이터를 조회해 응답하는 구조다. 대량 데이터 활용을 위해 Hugging Face(`aikstockdata/korea-equity-daily`)와 Kaggle에도 스냅샷 데이터셋이 공개되어 있다.
how-it-works
데이터 파이프라인은 매 거래일 18:10에 작동하여 수집된 데이터를 정적 JSON 파일로 미리 생성(Bake)하는 방식을 취한다. 서버는 생성된 정적 파일을 서빙만 하므로 API 키를 통한 인증 과정이 생략된다. 인프라 스택은 수집·검증용 파이썬 파이프라인과 서빙을 위한 Cloudflare Workers로 구성되어 무상태(Stateless)로 운영된다.
데이터 신뢰성을 위해 세 가지 검증 게이트를 적용했다. 첫째, 원천 데이터의 결측치를 0이 아닌 `null`로 정규화해 미제공 데이터와 수치 0을 구분한다. 둘째, '영업이익 > 매출'과 같은 회계 항등식 오류나 '시총 = 종가 × 주식수' 대조를 통해 파싱 오류를 검출하며, 통과하지 못할 경우 해당 날짜의 발행을 중단한다. 셋째, `index.json` 파일에 `delayed_after`와 `stale_after` 절대 날짜를 명시해 소비자가 데이터의 신선도를 직접 판정할 수 있게 했다.
공시 이후 주가 영향 분석에서는 중앙값(Median)과 95% 신뢰구간을 활용한 통계 방식을 사용했다. 표본 20건 미만인 유형은 수치를 제외했으며, 동일 회사가 같은 날 낸 여러 공시는 고유 경로 1건으로 처리해 중복 계상을 방지했다. 분석 결과, 잠정 실적(별도) 공시 +1거래일 후 시장 대비 -1.35%(n=99), 자사주 신탁계약 체결 +1거래일 후 +3.14%(n=24), 배당 결정 +5거래일 후 +2.28%(n=41)의 중앙값 변동이 관찰됐다. 특히 DART API가 제공하지 않는 공시 접수 시각을 별도로 수집해, 장 마감 후 접수된 공시가 당일 종가에 영향을 주지 않았음을 식별하고 분석 대상에서 분리했다.
implementation-impact
개발자는 파이썬의 `requests` 라이브러리를 통해 간단히 데이터를 호출할 수 있다.
import requests
d = requests.get("https://aikstockdata.com/data/public/s/005930.json").json()
print(d["name_ko"], d["quote"]["close"])AI 도구를 활용한 구현 시에는 LLM이 50~150KB 이상의 응답을 절단하는 특성을 고려해야 한다. 이를 위해 `aikstockdata`는 큰 파일마다 소형판을 별도로 제공하며, `index.json`의 `fetch_guide` 필드를 통해 AI가 적절한 크기의 파일을 선택하도록 안내한다.
실시간 트레이딩 시스템 구축보다는 AI 기반의 기업 분석, 공시 영향 평가, 프로그램 기반의 퀀트 분석 도구의 입력 데이터로 활용하는 것이 적합하다. 특히 API 키 관리 비용 없이 즉시 LLM에 한국 주식 컨텍스트를 주입해야 하는 환경에서 유효한 선택지가 된다.




