Home
국내 + 해외 주식¶
잔고 조회, 시세, 호가, 매수/매도, 차트, 거래내역 — 국내(KRX)와 해외(NYSE/NASDAQ/AMEX) 모두 지원
CLI 도구¶
pydbsec price 005930 — 코드 없이 터미널에서 바로 주가 조회, 잔고 확인, 주문 실행
MCP Server¶
npx pydbsec-mcp — Claude Desktop, Cursor 등 AI 도구에서 "삼성전자 현재가 알려줘" 한마디로 조회
WebSocket 실시간¶
체결가, 호가 실시간 스트리밍 — async for tick in ws 패턴으로 간편하게
Rate Limiting¶
API 초당 요청 제한 자동 준수 — 실수로 IP 차단당하는 걸 방지
Type-Safe¶
Pydantic v2 모델 + mypy strict 통과 — IDE 자동완성, 타입 안전성 보장
Before & After¶
기존에 DB증권 API를 Python으로 쓰려면:
# 30줄 넘는 코드...
token_resp = httpx.post("https://openapi.dbsec.co.kr:8443/oauth2/token",
headers={"Content-Type": "application/x-www-form-urlencoded"},
data={"grant_type": "client_credentials", "appkey": "...", "appsecretkey": "...", "scope": "oob"})
access_token = token_resp.json()["access_token"]
price_resp = httpx.post("https://openapi.dbsec.co.kr:8443/api/v1/quote/kr-stock/inquiry/price",
headers={"Content-Type": "application/json", "Authorization": f"Bearer {access_token}"},
json={"In": {"InputCondMrktDivCode": "UJ", "InputIscd1": "005930"}})
print(price_resp.json()["Out"]["Prpr"]) # 필드명이 뭐였더라?
pydbsec을 쓰면:
from pydbsec import PyDBSec
client = PyDBSec(app_key="...", app_secret="...")
print(client.domestic.price("005930").current_price) # 끝