1. 개요
바이브 코딩으로 만든 주가 수집 및 신고가 발굴 프로그램을 만드는 과정을 소개할게요.
일단 pykrx, plotly 등의 패키지가 필요합니다. 없다면 pip install pykrx, plotly 등으로 설치하셔야 합니다.
그럼 바로 프롬프트를 공개할게요.

2. 프롬프트
1. 프로그램 개요
한국 주식시장(KOSPI, KOSDAQ)의 종목들을 실시간으로 분석하고 차트로 시각화하는 웹 애플리케이션을 만들어줘.
사용자가 종목을 검색하면 캔들차트와 거래량을 보여주고, 52주 신고가를 달성한 종목들을 자동으로 찾아주는 기능도 넣어줘.
모든 데이터는 pykrx 라이브러리를 통해 가져와줘.
2. 기능
메인 기능
- 종목 차트 조회: 종목 코드나 이름을 입력하면 캔들스틱 차트를 그려줘. 이동평균선(5일, 20일, 60일)도 함께 표시해줘
- 신고가 종목 찾기: 오늘 52주 최고가를 경신한 모든 종목을 자동으로 찾아서 테이블로 보여줘
- 실시간 진행상황 표시: 신고가 검색할 때 몇 개 종목을 분석했는지 프로그레스바로 보여줘
세부 기능
- 날짜 범위 설정해서 원하는 기간의 데이터만 볼 수 있게 해줘
- 종목명 일부만 입력해도 자동으로 찾아주는 검색 기능 넣어줘
- 차트 아래에 거래량 막대그래프도 함께 표시해줘 (상승일은 빨간색, 하락일은 파란색)
- 현재가, 전일대비, 등락률, 거래량, 시가, 고가, 저가 정보를 별도 패널에 표시해줘
- 신고가 종목은 등락률 높은 순으로 정렬해서 상위 50개만 보여줘
3. 디자인/스타일
레이아웃
- 왼쪽 사이드바(300px 고정)에 모든 컨트롤 넣어줘
- 메인 영역은 탭으로 구분해줘 (차트 분석 탭, 신고가 종목 탭)
- 다크 테마로 만들어줘 (배경, 패널, 버튼)
스타일링
- 구글 폰트 ‘Jua’ 써서 한글을 예쁘게 표시해줘
- 상승은 빨간색, 하락은 파란색으로 표시해줘
- 모든 요소에 부드러운 트랜지션 효과 넣어줘 (0.3초)
- 버튼에 호버 효과랑 클릭 효과 넣어줘
- 프로그레스바는 그라데이션으로 예쁘게 만들어줘
차트 디자인
- Plotly 다크 테마 사용해줘
- 캔들차트는 2단 구조로 (위: 가격차트 70%, 아래: 거래량 30%)
- 이동평균선은 각각 다른 색으로 (MA5: 주황, MA20: 초록, MA60: 보라)
- 배경색은 다크 테마에 맞춰서 설정해줘
4. 기술
백엔드 구조
- Flask 웹 프레임워크 사용해줘
- pykrx로 한국 주식 데이터 가져와줘
- pandas로 데이터 처리하고 이동평균 계산해줘
- plotly로 인터랙티브 차트 생성해줘
- ThreadPoolExecutor로 멀티스레딩 처리해줘 (신고가 검색 속도 향상)
- 전역 변수와 threading.Lock으로 진행상황 안전하게 관리해줘
프론트엔드 구조
- 순수 JavaScript로 구현해줘 (jQuery 같은 라이브러리 쓰지 말고)
- Plotly.js CDN으로 차트 렌더링해줘
- fetch API로 서버와 비동기 통신해줘
- setInterval로 0.5초마다 진행상황 업데이트해줘
API 엔드포인트
/: 메인 페이지 렌더링/get_chart: POST로 차트 데이터 요청/find_new_highs: POST로 신고가 종목 검색/get_progress: GET으로 진행상황 조회
5. 추가 조건
성능 최적화
- 신고가 검색할 때 10개 워커로 병렬 처리해줘
- 진행상황은 0.5초마다 업데이트하되, 마지막 10개 종목만 표시해줘
- 데이터 없는 종목은 건너뛰고 에러 처리 잘 해줘
사용자 경험
- 종목 못 찾으면 친절한 에러 메시지 보여줘
- 로딩 중일 때는 “준비중…” 같은 안내 문구 표시해줘
- 신고가 검색 완료되면 자동으로 해당 탭으로 전환해줘
- 날짜는 기본값으로 오늘부터 1년 전까지 설정해줘
코드 구조
- 모든 HTML, CSS, JavaScript를 하나의 템플릿 문자열에 넣어줘
- 인라인 스타일 대신
<style>태그 안에 CSS 정리해줘 - 함수명은 직관적으로 (loadChart, findNewHighs, switchTab 등)
- 디버그 모드로 실행하되 리로더는 끄고 5000번 포트 사용해줘
데이터 포맷
- 금액은 천 단위 콤마 찍어서 보여줘 (toLocaleString() 사용)
- 퍼센트는 소수점 둘째자리까지 표시해줘
- 날짜는 YYYY-MM-DD 형식으로 처리해줘
- 빈 데이터나 에러는 try-except로 안전하게 처리해줘
3. 프로그램(소스코드)
나머지 응용은 숙제로 남겨드릴게요.