국내 주식 자동매매 API 비교 — 키움 · 한투 · LS · 대신, 4대 증권사 어떤 걸 골라야 할까
국내에서 자동매매를 시작할 때 처음 부딪히는 질문이 "어느 증권사 API를 써야 할까?" 입니다. 각 증권사의 API는 단순한 인터페이스 차이가 아니라 운영 OS, Python 비트, 지원 자산, 실시간 시세 한도, 동시 실행 가능 여부까지 모두 다릅니다. 잘못 고르면 코드의 80% 이상을 다시 써야 하는 일이 흔합니다.
이 글은 알고랩이 3년간 359건+ 자동매매를 제작하며 4대 증권사 API를 모두 운영해본 입장에서 정리한 비교 가이드입니다. 핵심 차이를 한눈에 본 다음, 시나리오별로 어떤 걸 골라야 하는지 결정 트리로 정리했습니다.
한 줄 요약 — 시나리오별 추천
- 대중적이고 자료 많은 길: 키움 OpenAPI+
- 해외주식 자동매매: 한국투자 KIS API
- 실시간 뉴스 + 옵션: LS증권 OpenAPI
- 야간선물 자동매매: 대신증권 CybosPlus (사실상 유일)
- Mac · Linux 환경: 한투 KIS 또는 LS 신 OpenAPI
핵심 차이 — 한눈에
| 항목 | 키움 (구/신) | 한국투자 KIS | LS증권 (구/신) | 대신 CybosPlus |
|---|---|---|---|---|
| API 방식 | 구: OCX 신: REST + WS |
REST + WS | 구: COM 신: REST + WS |
COM |
| 운영체제 | 구: Win 전용 신: 크로스 |
크로스플랫폼 | 구: Win 전용 신: 크로스 |
Windows 전용 |
| Python | 구: 32bit 신: 64bit |
64bit | 구: 32bit 신: 64bit |
32bit 필수 |
| HTS 상시 실행 | 구: 로그인 후 OK 신: 불필요 |
불필요 | 구: OK / 신: 불필요 | 필수 |
| 인증 | 구: 영웅문 자동로그인 신: OAuth 2.0 |
OAuth 2.0 | 구: ID + 공인인증 신: OAuth 2.0 |
HTS 로그인 |
| 해외주식 | X | O (5개국) | X | O (제한적) |
| 야간선물 | X | X | X | O (독보적) |
| 실시간 시세 한도 | 구: 화면당 100종목 신: WS 세션 |
WS 세션 20개 | 구: 화면별 / 신: 세션 | 관심종목 단위 |
| 1계정 동시 실행 | 구: 1개 신: 다중 (지정단말기 내) |
다중 | 구: 1개 / 신: 다중 | 1개 |
| 자료 · 커뮤니티 | ★★★★★ | ★★★ | ★★ | ★★ |
이제 4개 증권사를 하나씩 깊게 봅니다. 각 증권사의 강점·약점·누가 써야 하는지가 의사결정의 핵심입니다.
1. 키움증권 — 구 OpenAPI+ · 신 REST OpenAPI 두 갈래
키움증권 OpenAPI
National Standard · Two APIs Coexist · OCX → REST 전환 중
국내 자동매매의 사실상 표준. 영웅문 OpenAPI+가 10년 이상 자리 잡으면서 한국어 블로그·강의·GitHub 코드가 압도적으로 많습니다. 최근에는 LS·한투처럼 신 REST 기반 OpenAPI를 별도 출시해 OCX 한계를 해소하는 흐름이 진행 중입니다. 신규 프로젝트는 신 REST를 권장하지만, 조건검색식·실시간 등록 등 일부 기능은 여전히 구 OCX가 더 풍부합니다.
- 한국어 자료·예제 가장 풍부 (검색 → 답 찾기 쉬움)
- 구 OCX는 영웅문 자동 로그인 → 인증 부담 적음
- 조건검색식을 API로 호출 가능 (HTS와 동일 조건 공유)
- 신 REST는 64bit + 크로스플랫폼 + 다중 실행 지원
- 국내 자동매매 의뢰의 60%+ 가 키움 — 알고랩 사례 다수
- 구 OCX: Windows + Python 32bit 강제 / 동시성 함정 (TR busy 등)
- 신 REST: 지정단말기 등록 필수 — 토큰 발급은 사전 등록한 PC에서만
- 신 REST: 일부 순위·랭킹 TR은 WebSocket push 미지원 (REST 폴링)
- 신 REST: HTTP 200 응답 +
return_code != 0비즈니스 오류 패턴 (4xx 아님) - 해외주식 미지원 (구·신 모두)
구 OCX vs 신 REST — 어떤 걸 써야 하나
| 항목 | 구 OpenAPI+ (OCX) | 신 REST OpenAPI |
|---|---|---|
| Python bit | 32bit 필수 | 64bit |
| OS | Windows 전용 | 크로스플랫폼 |
| 설치 | 영웅문 OpenAPI+ + KOAStarter | pip install requests websockets |
| 인증 | ID/PW + 공인인증서 | AppKey + SecretKey (OAuth) |
| 실시간 | OnReceiveRealData + SetRealReg | WebSocket JSON push |
| 주문 | SendOrder (9-arg list 형식) | REST POST |
| 동시 실행 | 1계정 1프로그램 | 지정단말기 범위 내 다중 |
| 조건검색식 | O (강점) | 제한적 |
| 권장 신규 프로젝트 | 조건검색식 의존 시 | 대부분의 경우 |
구 OCX의 함정 4가지는 키움 OpenAPI+ 자동매매 — 직접 만들기 vs 외주에서 코드와 함께 다뤘습니다. 국내주식 + Windows PC + 키움 HTS 사용자에게는 여전히 첫 선택지이고, Mac/Linux/다중 봇 운영이 필요하면 신 REST를 검토하시면 됩니다.
2. 한국투자증권 KIS API
한국투자증권 KIS Developers
Cross-Platform · REST · Overseas Markets
2022년 이후 본격 보급된 차세대 API. 표준 HTTP REST 기반이라 OS·언어·비트 무관하고, 미국·일본·중국 등 해외주식 자동매매가 가능한 거의 유일한 국내 증권사 API입니다. OAuth 2.0, 모의투자 환경, 표준 문서까지 개발자 친화도가 높습니다.
- 크로스플랫폼 (Windows / Mac / Linux 64bit)
- 해외주식 5개국 자동매매 (미국 · 일본 · 홍콩 · 중국 · 베트남) — 국내 증권사 중 가장 광범위
- OAuth 토큰 기반 → 한 계정으로 봇 여러 개 동시 운영 가능
- 모의투자 환경이 실전과 동일 구조 (검증 용이)
- SDK 불필요, 순수 HTTP 클라이언트로 충분
- 해외주식 시장가 주문 불가 (지정가만)
- 해외주식 Rate Limit 초당 1회 (국내 1/20)
- 해외주식 거래소 코드 분리 (NASD/NYSE/AMEX) — 종목별 동적 해결 필수
- 한국어 자료 키움보다 적음 (영문 문서는 깔끔)
KIS API의 해외주식 함정과 실전 패턴은 KIS API 미국 프리마켓 자동 손절 사례 와 키움 vs KIS API 비교 글을 참고하세요. Mac 사용자, 해외주식 의뢰, 다중 봇 운영 의뢰는 거의 KIS로 갑니다.
3. LS증권 OpenAPI — 구 xingAPI · 신 OpenAPI 두 갈래
LS증권 (구 이베스트투자증권)
Two APIs Coexist · News · Options Strength
LS증권은 구 xingAPI(COM) 와 신 OpenAPI(REST + WebSocket) 두 가지 API를 동시 운영합니다. 신규 프로젝트는 신 OpenAPI를 권장하지만, 구 xingAPI 만의 강점(특정 TR · DevCenter 자료)이 있어 케이스에 따라 선택이 갈립니다.
- 실시간 뉴스 API — 종목별 뉴스 스트림 (국내 증권사 중 강력)
- 호가 10단계 풀 + 체결 강도 + 시장 지표 풍부
- KOSPI200 옵션·주식옵션 등 옵션 거래 강점
- 신 OpenAPI는 Windows 외 OS에서 동작
- 구 xingAPI: Windows 32bit + DevCenter + .res 파일 관리 필요
- 한국어 자료 키움 대비 적음
- 구·신 API가 별개 서비스 — 마이그레이션 시 코드 거의 새로 짜야 함
- 해외주식 미지원
구 xingAPI vs 신 OpenAPI — 어떤 걸 써야 하나
| 항목 | 구 xingAPI (COM) | 신 OpenAPI (REST+WS) |
|---|---|---|
| Python bit | 32bit 필수 | 64bit |
| OS | Windows 전용 | 크로스플랫폼 |
| 설치 | xingAPI + DevCenter | pip install requests websockets |
| 인증 | ID/PW + 공인인증서 | AppKey + AppSecret (OAuth) |
| 실시간 | XAReal COM 이벤트 | WebSocket JSON 메시지 |
| 뉴스 API | O (강점) | O |
| 권장 신규 프로젝트 | X (레거시) | O |
LS증권의 실시간 뉴스 활용 사례는 LS증권 신 OpenAPI 실시간 뉴스 텔레그램 봇 글에서 확인할 수 있습니다. 뉴스 키워드 기반 자동매매, 옵션 자동매매가 강점입니다.
4. 대신증권 CybosPlus
대신증권 CybosPlus (Creon)
Night Futures Specialist · COM · HTS Required
대신증권 CybosPlus의 압도적 강점은 야간선물·야간옵션 (KST 23:00 ~ 익일 05:00) 자동매매를 지원한다는 점입니다. 국내 증권사 중 사실상 유일하게 야간 시간외 파생을 코드로 자동화할 수 있습니다. 반면 Cybos Plus HTS를 백그라운드에서 상시 실행해야 하는 운영 부담이 있습니다.
- 야간선물·야간옵션 지원 — 국내 증권사 중 독보적
- 해외주식 주문 가능 (미국·중국·일본·홍콩 — KIS보다 제한적이지만 옵션은 됨)
- 실시간 시세 등록이 관심종목 단위로 비교적 자유
- CpSysDib · CpTrade 등 모듈 분리가 깔끔
- Cybos Plus HTS 상시 실행 필수 — 종료 시 API 끊김 (PC 부하 ↑)
- Python 32bit 강제 (키움과 동일)
- Creon Plus 별도 계약 필요 (대신증권 지점 문의)
- 분봉 과거 데이터 연속 조회 시 딜레이 강제
- 야간선물 TR 코드는 정규장과 다름 — 분기 처리 필수
대신은 야간선물 트레이더에게는 사실상 유일한 선택지입니다. 정규장 자동매매라면 키움이나 KIS가 대중적이지만, 야간 시간외 파생이 전략의 핵심이면 대신을 검토해야 합니다.
의사결정 트리 — 시나리오별 추천
같이 쓰는 케이스 — 두 증권사 병행 운영
알고랩 의뢰 중에는 의외로 두 증권사를 같이 쓰는 조합이 많습니다. 이유는 각 증권사의 강점이 명확히 다르기 때문입니다.
| 조합 | 역할 분담 | 왜 |
|---|---|---|
| 키움 + KIS | 국내주식 / 미국주식 | 키움 미지원 해외주식을 KIS로 보완. 가장 흔한 조합 |
| 키움 + 대신 | 정규장 / 야간선물 | 주간은 키움, 새벽은 대신. 24시간 풀 커버리지 |
| LS + KIS | 국내 옵션·뉴스 / 해외주식 | 옵션·뉴스 강점 살리면서 해외 종목까지 |
| 키움 + LS | 주식 자동매매 / 옵션·뉴스 보조 | 키움 자료·커뮤니티 + LS 옵션·뉴스 결합 |
PC 한 대에서 두 봇을 같이 돌리는 것도 가능합니다. 키움/대신 32bit Python 환경과 KIS/LS신 64bit Python 환경을 가상환경으로 분리하면 충돌하지 않습니다.
project/
├── kiwoom_bot/ # 32bit venv (국내주식)
├── kis_bot/ # 64bit venv (미국주식)
├── daishin_bot/ # 32bit venv (야간선물)
├── ls_bot/ # 64bit venv (옵션·뉴스)
└── shared/
├── notifier.py # 텔레그램 공통
├── logger.py # 로그 통합
└── strategy_lib.py # 공통 전략 모듈
플랫폼별 치명적 제약 — 시작 전 반드시 알아야 할 것
키움 구 OpenAPI+ (OCX)
- Python 3.10 또는 3.11 32bit (3.12부터 32bit 공식 배포 없음 → 3.11 권장)
- 모든 TR 호출은
_tr_busy플래그로 직렬화 (입력 슬롯 공유 함정) SendOrder는 9-arg list 형식 + 호가구분 상수화
키움 신 REST OpenAPI
- 지정단말기 등록 필수 — 토큰 발급은 사전 등록한 PC에서만 허용
- 비즈니스 오류는 HTTP 4xx가 아닌 HTTP 200 +
return_code != 0패턴 (LS·한투와 다름) - 토큰 만료 응답이
expires_dt(KST 시각 문자열) — LS의expires_in(초)과 형식 다름 - 일부 순위·랭킹 TR은 WebSocket push 미지원 → REST 폴링 필요
한국투자 KIS
- 해외주식 시장가 불가 → 트리거가/주문가 분리 패턴 사용
- 해외주식 잔고는 NASD/NYSE/AMEX 3거래소 순회 + 종목→거래소 캐시
- 토큰 24시간 만료 → 자동 갱신 스케줄러 필수
LS증권
- 구 xingAPI는 신규 프로젝트에서 비추천 — 신 OpenAPI 사용
- 구 xingAPI는 .res 파일 관리·DevCenter 의존 → 유지보수 부담
- 신 OpenAPI WebSocket:
tr_type명확히 구분 (1=계좌등록, 3=실시간등록 등)
대신 CybosPlus
- Cybos Plus HTS 종료 시 API 즉시 끊김 → 실행 감지 + 자동 재시작 패턴 필수
- 야간선물 TR 코드는 정규장과 별개 (
opt50*계열) → 시간대별 분기 - 분봉 연속 조회는 1초 이상 딜레이 (rate limit)
그 외 증권사 — 자동매매 채택률 낮은 이유
국내에는 자동매매 가능한 증권사가 위 4개 외에도 있습니다. 신한투자증권, NH투자증권, 미래에셋, 삼성증권, KB증권 등이 각자 Trading API를 제공합니다. 그러나 알고랩 의뢰의 95% 이상이 위 4개에 집중되는 이유:
- API 문서 · 한국어 커뮤니티 빈약 → 디버깅 시 자료 검색 어려움
- 실시간 시세·뉴스 채널이 위 4개 대비 약함
- 모의투자 환경 미흡 → 검증 단계가 어려움
- 일부는 별도 영업 승인이 필요 (개인 개발자에게 진입장벽)
특정 증권사 계좌만 사용 가능한 환경이라면 해당 증권사 API로 가야 하지만, 자유롭게 선택 가능하다면 위 4개 중 시나리오에 맞는 걸 고르는 게 시간·안정성 모두 유리합니다.
비용 — 4개 모두 무료 (조건부)
4개 증권사 API 모두 API 사용료 자체는 무료입니다. 다만 각자 조건이 있습니다.
| 증권사 | API 비용 | 조건 |
|---|---|---|
| 키움 | 무료 | 키움 계좌 + 거래 활성도 (조건 변동 가능, 공식 안내 확인) |
| 한투 KIS | 무료 | KIS Developers 가입. 모의투자 무료. 실거래 시 매매수수료만 |
| LS증권 | 무료 | LS증권 계좌 + AppKey 발급 |
| 대신 CybosPlus | 무료 (API) | Creon Plus 별도 계약 (지점 문의) |
자동매매 시스템의 진짜 비용은 API 사용료가 아니라 개발 시간 + 운영 안정화 비용입니다. 함정에 부딪혀가며 디버깅하는 시간이 가장 큰 비중을 차지합니다.
알고랩의 선택 기준 — 의뢰받을 때
알고랩이 신규 의뢰를 받으면 다음 순서로 플랫폼을 결정합니다.
- 거래 대상 자산 — 야간선물이면 대신, 해외주식이면 KIS, 옵션이면 LS/대신
- 의뢰인의 기존 환경 — 이미 키움 HTS 쓰면 키움 우선 (학습·운영 부담 ↓)
- 의뢰인의 OS — Mac이면 KIS 또는 LS 신 OpenAPI
- 전략의 복잡도 — 다중 봇 / 다계정이면 KIS·LS 신 OpenAPI
- 추가 데이터 채널 필요성 — 뉴스 기반이면 LS, 조건검색식이면 키움
- 운영 인프라 — VPS 운영 원하면 REST 기반 (KIS · LS 신)
이 트리가 거의 모든 의뢰 케이스를 커버합니다. 예외는 의뢰인이 특정 증권사에 강한 선호가 있을 때 정도입니다.
마무리 — 한 줄 정리 다시
| 상황 | 추천 증권사 |
|---|---|
| 자료·커뮤니티 풍부 + 국내주식 위주 | 키움 구 OpenAPI+ |
| 키움 조건검색식 의존 전략 | 키움 구 OpenAPI+ |
| 해외주식 자동매매 (미국·일본·중국·베트남) | 한투 KIS API |
| 실시간 뉴스 기반 + 옵션 자동매매 | LS 신 OpenAPI |
| 야간선물 / 야간옵션 자동매매 | 대신 CybosPlus |
| macOS · Linux 개발 환경 | 한투 KIS · LS 신 · 키움 신 REST |
| 한 계정 다중 봇 운영 | 한투 KIS · LS 신 · 키움 신 REST |
| 국내 + 해외 모두 필요 | 키움 + KIS 병행 |
| 주간 + 야간선물 풀 커버리지 | 키움 + 대신 병행 |
플랫폼 선택은 자동매매 프로젝트의 가장 비싼 의사결정입니다. 잘못 골라서 중간에 갈아타면 코드 80% 이상 다시 써야 하는 경우가 많습니다. 시작 전에 위 시나리오를 한 번 짚어보시길 권합니다.
참고: 알고랩은 키움 · 한국투자 · LS · 대신 4개 증권사 모두 운영 검증된 표준 코드베이스를 보유하고 있어, 어느 쪽이든 동일한 안정성과 짧은 일정으로 제작 가능합니다. 두 증권사를 병행하는 케이스도 자주 다루므로, 의뢰 시 사용 환경만 알려주시면 최적 조합을 제안드립니다.