본문으로 이동
DLDevelopment Lab책을 읽고, 직접 만드는 실험실
자료실

9장 · 저자 검증 기록

빈 폴더에서 시작해 9장 요청문만으로 시장 화면과 종목 화면, 최근 1년 차트까지 도달 프로젝트 전체 Test 23개 통과(이 장에서 새로 생긴 것 23개) · 금융위원회 실제 응답 확인 최종 확인 2026-08-30

실제로 만들어봤습니다

책에 인쇄된 요청문만으로 금융위원회 공식 주식 데이터를 사용하는 새 프로젝트를 시작해, 시장 화면과 종목 화면, 최근 1년 차트까지 만들 수 있는지 확인했습니다.

  • 요청문은 책 9장에 나오는 문장을 글자까지 그대로 썼습니다.
  • 9장은 새 프로젝트를 시작하는 장이므로 빈 폴더에서 시작했습니다.
  • 책에 없는 추가 지시를 보태지 않았습니다.

9장의 완료 기준은 일곱 가지입니다. 전부 통과했습니다.

확인 항목결과
1시장 화면에서 기준일과 코스피·코스닥 현황, 상승률 상위와 하락률 상위를 본다통과
2등락률 순위나 검색으로 종목 화면에 들어가 현재가와 기준가 대비 등락을 본다통과
3종목의 최근 1년 흐름을 시가·고가·저가·종가와 거래량으로 본다통과
4모든 숫자에 기준일이 붙어 있다통과
5등락률 순위를 어떤 조건으로 뽑았는지 화면에 적혀 있다통과
61년치 거래일이 없는 종목은 실제 구간이 며칠인지 알려준다통과
7인증키가 브라우저로 전달되지 않는다통과

완성된 결과를 공개합니다

무엇어디
9장을 끝낸 프로젝트chapters/ch09/source/ai-stock-briefing/
9장 요청문chapters/ch09/prompts.md
실제로 만들어진 시장 현황artifacts/market-overview.json
날짜별로 조회한 제공 여부artifacts/trading-date-probe.txt
브라우저로 인증키가 나가지 않는 것을 확인한 기록artifacts/browser-bundle-check.txt
Test 실행 결과artifacts/test-run.txt

장별 Source를 빈 폴더에 단독으로 놓고 준비와 Test 실행, 빌드까지 확인했습니다.

자동 검사도 해봤습니다

개수
9장 Source에서 돌린 검사 전체23개
이 장에서 새로 생긴 검사23개

9장은 새 프로젝트를 시작하는 장이므로 두 숫자가 같습니다. 돌린 검사 코드는 9장 Source 안에 있습니다.

파일무엇을 확인하는가검사
tests/e2e/market-flow.spec.ts시장 화면에 기준일·출처·순위 조건이 표시되는 것, 등락률 순위의 종목을 눌러 상세와 차트를 거쳐 다시 시장 화면으로 돌아오는 것, 검색 결과가 하나일 때와 여러 개일 때 화면이 다르게 이어지는 것, 없는 종목을 검색하면 다시 시도할 방법을 알려주는 것5개
tests/stock-lookup.test.ts실제 KRX상장종목정보로 종목명을 검색하는 것, 종목코드로 현재가·시가·고가·저가·거래량을 가져오는 것, 최근 1년 일별 시세를 날짜 순서대로 가져오는 것, 이력이 짧은 종목은 1년치를 채우지 않는 것6개
tests/latest-trading-date.test.ts며칠 연속 0건이어도 데이터가 있는 날짜까지 거슬러 올라가는 것, 월과 연도를 넘어가는 날짜 계산5개
tests/market-data.test.ts실제 금융위원회 응답으로 지수와 종목 시세의 기준일이 오는 것, 등락률 순위의 조건과 대상 종목 수가 계산되는 것, 순위에 오른 종목이 모두 보통주이고 거래대금 10억원 이상인 것4개
tests/server-only-key.test.ts빌드된 브라우저용 파일에 인증키의 값도 이름도 들어가지 않는 것, 서버 전용 모듈에 가드가 있는 것3개

검사는 공식 문서만 보고 끝내지 않고 실제 금융위원회 응답까지 확인합니다. 그래서 응답 형식이나 제공 시점이 바뀌면 검사에서 드러납니다.

저자는 검사와 별도로 직접 확인했습니다.

무엇을 확인했나결과
조회 시점(2026-08-30)에 제공된 가장 최근 거래일2026-08-27, 전체 2,875종목
그날의 코스피·코스닥코스피 6,912.37(+104.16, +1.53%), 코스닥 837.65(+10.78, +1.30%)
등락률 순위의 집계 대상2,875종목 중 740종목 (KOSPI·KOSDAQ 보통주, 거래 있음, 거래대금 10억원 이상)
최근 10일을 하루씩 조회토·일요일은 0건, 조회일과 그 전날도 아직 0건
KRX상장종목정보로 검색상장 종목 2,760종목에서 종목명과 종목코드로 조회
브라우저가 받아가는 파일 16개(합계 751,661바이트)에서 인증키 이름과 값 찾기0건

값은 artifacts/에 있습니다. 시세는 거래일마다 새로 제공되므로 실행하는 날에 따라 기준일과 종목, 숫자가 달라집니다.

공식 자료와 비교했습니다

화면의 모든 숫자는 금융위원회가 공공데이터포털에 공개한 자료에서 그대로 가져온 값입니다.

금융위원회_주식시세정보 https://www.data.go.kr/data/15094808/openapi.do

금융위원회_지수시세정보 https://www.data.go.kr/data/15094807/openapi.do

금융위원회_KRX상장종목정보 https://www.data.go.kr/data/15094775/openapi.do

세 API는 활용신청을 각각 하지만 같은 인증키 하나를 함께 사용합니다.

등락과 등락률은 전일 종가가 아니라 기준가와 비교한 값입니다. 이 자료가 대비와 등락률을 기준가 기준으로 제공하기 때문이며, 화면에도 기준가와 비교한 값이라고 밝혀두었습니다. 기준가는 대개 전일 종가와 같지만 권리락이나 액면분할, 신규 상장 첫날에는 다릅니다.

직접 확인해볼 수 있습니다

만들어보실 때는 책의 9장을 그대로 따라 하시면 됩니다. 요청문은 chapters/ch09/prompts.md에 책에 나오는 순서대로 있습니다.

9장 Source를 받아 자기 인증키를 넣으면 같은 검사를 그대로 돌려볼 수 있습니다.

이 폴더는 책 9장을 끝낸 상태의 프로젝트야.
내 인증키를 넣을 자리를 알려주고 Test를 전부 실행해서 결과를 보여줘.

인증키가 브라우저로 나가지 않는 것도 직접 확인할 수 있습니다.

이 프로젝트를 빌드한 뒤 브라우저가 받아가는 파일에
인증키의 이름이나 값이 들어 있는지 찾아줘.
실제 인증키 값은 출력하지 마.

오늘 날짜로 조회하면 왜 0건인지도 직접 볼 수 있습니다.

최근 10일을 하루씩 조회해서 날짜별로 몇 건이 오는지 보여줘.
인증키 값은 출력하지 마.

이런 한계가 있습니다

  • 실시간 시세가 아닙니다. 하루의 거래가 끝나고 정리된 뒤에 제공되므로, 화면의 숫자는 가장 최근에 제공된 거래일의 값입니다. 그래서 모든 숫자에 기준일을 함께 표시합니다.
  • 지수와 종목 시세의 기준일이 다를 수 있습니다. 이때 하나로 합치지 않고 두 날짜를 각각 보여줍니다.
  • 등락률 순위의 조건은 이 화면을 위해 정한 기준입니다. 거래대금 10억원 같은 값이 모든 주식 서비스에 통하는 정답은 아니며, 투자 판단 기준도 아닙니다.
  • 최근 상장 종목은 1년치 흐름이 없습니다. 이때 1년인 것처럼 보여주지 않고 실제 구간을 알려줍니다.
  • 투자 추천이나 목표주가, 주가 예측은 제공하지 않습니다. 가진 데이터로 말할 수 없는 것은 만들지 않았습니다.
  • 실행하는 날에 따라 결과가 달라집니다. 기준일과 등락률 순위에 오르는 종목이 매일 바뀝니다.
Development Lab아이디어를 AI와 함께 나만의 결과물로 만듭니다.

책에서 배운 개발 원칙을 AI와 직접 만들며 확인하는 실험실입니다. 아이디어를 서비스로, 서비스를 나만의 결과물로. AI와 함께 만들고, 직접 확인하며, 내 손으로 완성합니다.

자료실튜터 안내업데이트
SAStudy AI LabILInvestment LabDLDevelopment Lab

© 2026 Study AI Lab. All rights reserved.