HTS 알림은 너무 단순하고, 매번 차트만 들여다보기엔 시간이 부족하셨나요? 저도 같은 고민 끝에 직접 stock_monitor 시스템을 만들어 돌리고 있는데, 한 번 세팅하니 “장 보는 시간"이 하루 30분 이상 줄었습니다. 이 글에서 알 수 있는 것: ✅ stock_monitor 시스템이 정확히 무엇이고 왜 직접 만들어야 하는지 ✅ 4가지 핵심 구성요소와 데이터·알림 흐름 ✅ 데이터 소스(yfinance / 증권사 API)와 알림 채널(Slack·Telegram)의 선택 기준 ✅ 안정적으로 24시간 운영하는 실전 팁과 최신 LLM 결합 트렌드
stock_monitor 시스템이란 무엇인가
stock_monitor 시스템은 “내가 정한 조건이 충족되면 자동으로 알려주는 개인용 주식 감시 봇"입니다. 증권사 HTS의 단순 가격 알림을 넘어, 본인만의 매매 로직을 코드로 표현할 수 있다는 점이 핵심이죠.
쉽게 말해 다음 4가지를 자동으로 수행하는 백그라운드 프로그램입니다.
- 관심 종목의 가격·거래량·지표를 주기적으로 수집
- 미리 정의한 조건식(예: RSI < 30, 5% 급락 등) 충족 여부 판단
- 조건 만족 시 Slack·Telegram 등으로 즉시 푸시 알림
- 모든 판단 근거를 로그로 남겨 사후 검증 가능 기존 HTS 알림은 “목표가 도달” 같은 단일 트리거밖에 못 거는 반면, 직접 만든 시스템은 “이격도 + 거래량 급증 + 외국인 순매수 + 시간대"처럼 다중 조건을 AND/OR로 자유롭게 조합할 수 있어요. 이게 바로 시중 자몽그램류 서비스 대신 자체 구축이 늘어나는 이유입니다.
💡 핵심: stock_monitor는 “내 조건식을 24시간 대신 지켜봐 주는 개인 비서 봇"입니다.
왜 직접 만들어야 할까 — HTS 알림의 한계
HTS·MTS의 기본 알림이 충분하지 않은 이유는 명확합니다. “표현력이 너무 단순하고, 분석이 빠져 있기 때문"입니다.
실제 사용자들이 가장 많이 답답해하는 부분은 이렇습니다.
- 조건식이 한정적 — “현재가 ≥ N원” 정도가 끝
- 알림이 와도 왜 움직였는지 맥락이 없음 (뉴스·공시 미연동)
- 종목당 1~2개 알림 제한, 여러 전략 동시 운영 불가
- 알림이 누락되거나 중복 발송되어도 검증할 로그가 없음
- 같은 알림이 반복되어 결국 알림 무감각 상태로 빠짐 반면 직접 만든 stock_monitor는 이 모든 한계를 코드로 해결합니다. 저는 처음 한 달간 HTS 알림과 자체 봇을 병행해봤는데, 거짓 신호(False Positive)가 체감상 크게 줄어드는 효과를 봤어요. 조건식에 “거래량 평균 대비 2배 이상"을 끼워 넣었더니 단순 출렁임은 자동으로 걸러진 덕분입니다.
💡 핵심: HTS 알림은 트리거 1개, 자체 시스템은 트리거 N개 + 근거 로깅까지 가능합니다.
핵심 구성요소 4분할 구조
대부분의 stock_monitor 시스템은 다음 4개 모듈로 깔끔하게 나뉩니다. 이 구조만 이해해도 어떤 오픈소스 프로젝트든 빠르게 파악할 수 있어요.
| 모듈 | 역할 | 대표 도구 |
|---|---|---|
| 데이터 수집기 | 가격·거래량·지표 폴링 | yfinance, 키움/한투 API |
| 조건 판단기 | 임계치·지표 계산 | pandas, TA-Lib |
| 알림 전송기 | 메시지 발송 | Slack/Telegram Bot API |
| 운영 스케줄러 | 주기 실행·재시작 | cron, APScheduler |
| 각 모듈은 단일 책임 원칙을 지키도록 분리해야 유지보수가 쉽습니다. 예를 들어 데이터 소스를 yfinance에서 증권사 API로 바꿔도 수집기 모듈만 교체하면 됩니다. | ||
| 추가로 신뢰성을 위해 꼭 넣어야 할 두 가지가 있습니다. |
- 중복 발송 방지(idempotency key) — 같은 조건이 반복 충족돼도 1회만 알림
- 헬스체크 — 매일 정해진 시각에 “봇 정상 동작 중” 메시지 발송
💡 핵심: 수집 → 판단 → 알림 → 스케줄, 4단 분리가 안정 운영의 기본입니다.
데이터 소스와 알림 채널 선택 가이드
어떤 데이터를 어디서 받아 어디로 보낼지에 따라 시스템 난이도와 비용이 크게 달라집니다. 처음 만든다면 “무료 + 폴링 + Telegram” 조합이 가장 부담 없습니다.
데이터 소스 비교:
- yfinance — 무료, 글로벌·국내 모두 지원, 단 15분 안팎 지연이 있을 수 있음
- pykrx — 무료, 한국 시장 특화, 일봉 위주
- 키움/한투 OpenAPI — 실시간 호가·체결, 단 사전 신청·환경 세팅 필요
- WebSocket 스트리밍 — 초당 수신 가능, 대신 재연결·오류처리 코드 필수 알림 채널 비교:
- Telegram — 봇 생성 절차가 가장 간단, 국내외 사용자 가장 많음
- Slack — 워크스페이스 단위 관리·스레드 정리 깔끔
- Discord — 차트 이미지 첨부 자유로움
- 이메일/SMS — 즉시성 떨어져 비추천
💡 핵심: 입문은 yfinance + Telegram, 실전 매매는 증권사 API + Slack 조합이 무난합니다.
안정 운영과 최신 트렌드 — LLM·이벤트 트리거
운영을 시작하면 “어디에 띄울 것인가"도 큰 고민입니다. 보통 다음 세 가지 중에서 고릅니다.
- 로컬 PC + cron — 무료지만 PC 꺼지면 멈춤
- AWS EC2 / Render 무료 등급 — 24시간 운영, 월 무료~수 달러 수준
- 라즈베리파이 — 전기료만 부담, 자가 통제권 최강 2025~2026년 들어 가장 두드러진 변화는 LLM 결합입니다. 단순 “삼성전자 -3% 하락” 알림에서 끝나는 게 아니라, ChatGPT/Claude API로 그 시점의 뉴스·공시를 요약해 한 줄 코멘트로 함께 보내는 흐름이 표준이 됐어요. 추가로 트렌드 키워드 정리:
- 이벤트 기반 트리거 — DART 공시·실적 발표·기관 매매 동향
- 다중 지표 조합 — RSI + MACD + 거래량 → 거짓 신호 감소
- 재현성 강화 — 모든 알림에 판단 근거 JSON 첨부
- 보안 강화 — API 키는
.env분리, 자동매매 시 2단계 확인
💡 핵심: 가격 알림만으로는 식상한 시대, “왜 움직였는지"까지 곁들여야 진짜 도움이 됩니다.
마무리하며
stock_monitor 시스템은 “내 투자 원칙을 코드로 박제해 24시간 대신 지켜보게 하는 도구"입니다. 처음엔 가격 알림 하나로 시작해도, 점차 지표·공시·LLM 요약까지 확장하면 개인 퀀트 플랫폼으로 진화시킬 수 있어요.
오늘 정리한 4단 구조(수집·판단·알림·스케줄)와 데이터/채널 선택 기준만 기억해도 첫 버전은 충분히 만들 수 있습니다. 이번 주말, yfinance + Telegram 봇 조합으로 가장 단순한 버전부터 띄워보세요. 매일 아침 9시 헬스체크 메시지가 도착하는 순간, 투자 관점이 한 단계 달라지는 걸 느끼실 겁니다.
출처
https://tgparkk.github.io/stock/2025/03/08/auto-stock-1-init.html https://blog.quantylab.com/systrading.html https://i-whale.com/entry/주식-목표-주가-알림-프로그램-코드-무료-공유 https://medium.com/@wutainfofu/building-a-real-time-equity-price-alert-system-with-python-a-practical-guide-for-quantitative-c464515b0a7e https://deepcharts.substack.com/p/get-real-time-stock-drop-alerts-with https://wikidocs.net/91963
이미지 출처: tgparkk.github.io, blog.quantylab.com, i-whale.com, medium.com, deepcharts.substack.com, wikidocs.net