키움증권으로 해외주식 자동매매가 되나 — REST API 지원 범위 확인법
OpenAPI+(OCX)나 해외파생용 OpenAPI-W가 아닙니다. 세 제품을 구분하는 것이 이 문제의 절반입니다.
"키움 계좌를 쓰는데, 미국주식도 봇으로 돌릴 수 있나요?" — 제작 문의에서 꾸준히 나오는 질문입니다. 검색해 보면 "키움은 국내주식만 된다"는 오래된 글과 "미국주식 실시간 시세를 준다"는 최신 안내가 뒤섞여 나와서, 어느 쪽이 맞는지 판단이 안 서는 상태로 문의가 옵니다.
혼란의 원인은 단순합니다. 키움에는 이름이 비슷한 API가 세 개 있고, 각각 다루는 자산이 다릅니다. 이 글은 그 셋을 먼저 갈라놓고, 공식 가이드 기준으로 미국주식에 무엇이 있고 국내주식에만 무엇이 있는지를 대조한 뒤, 스펙이 바뀌어도 스스로 확인할 수 있는 절차를 남깁니다.
이 글의 순서
- 이름이 비슷한 세 가지를 먼저 가른다
- 미국주식에 있는 것 / 국내주식에만 있는 것
- 미국 외 시장은? — "없다"가 아니라 "확인해야 한다"
- 환전 — 해외주식 봇의 진짜 관문
- 스펙이 바뀌어도 스스로 확인하는 4단계
- 키움으로 부족하면 — KIS 해외주식과의 차이
- 제작 전 체크리스트 7개
1. 이름이 비슷한 세 가지를 먼저 가른다
검색 결과가 엇갈리는 가장 큰 이유입니다. 아래 셋은 서로 다른 제품이고, "키움 API"라는 한 단어로 뭉뚱그리면 대화가 성립하지 않습니다.
| 구분 | 형태 | 주로 다루는 것 |
|---|---|---|
| 키움 REST API | HTTP 기반. OS·언어·비트 수 무관 | 공식 가이드 카테고리에 국내주식 + 미국주식 |
| OpenAPI+ (레거시) | OCX 모듈. 윈도우 + 32비트 파이썬에 묶임 | 국내주식 중심의 전통적 자동매매 |
| OpenAPI-W | 해외파생 전용 별도 모듈(개발가이드도 별도 배포) | 해외선물·옵션 — 해외"주식"이 아님 |
특히 세 번째가 함정입니다. "키움 해외 OpenAPI"를 검색하면 OpenAPI-W 문서가 걸리는데, 이건 해외파생상품용이라 미국주식 매매와는 무관합니다. 반대로 "키움 OpenAPI는 국내만 된다"는 글은 대부분 레거시 OpenAPI+ 기준으로 쓰인 것입니다. REST API와 OpenAPI+가 어떻게 다른지는 → 키움 REST API 자동매매 완전 가이드 — OpenAPI+ 탈출·토큰·TR limit·WebSocket에 정리돼 있습니다.
⚠️ 제작 의뢰 전에 못 박아야 할 한 줄: "키움으로 해주세요"가 아니라 "키움 REST API로, 미국주식 주문까지"라고 써야 합니다. 이 한 줄이 없으면 32비트 OpenAPI+ 기준으로 견적이 나오고, 나중에 미국주식을 붙이는 순간 사실상 재제작이 됩니다. 사양을 어디까지 적어야 하는지는 → 자동매매 프로그램 명세서 작성 완전 가이드.
2. 미국주식에 있는 것 / 국내주식에만 있는 것
키움 REST API 공식 가이드의 API 목록 화면은 국내주식과 미국주식을 나란히 놓고 카테고리를 보여줍니다. 아래는 2026-07-30 기준으로 확인한 대조표입니다.
| 카테고리 | 국내주식 | 미국주식 |
|---|---|---|
| 주문 | O | O |
| 계좌 | O | O |
| 차트 | O | O |
| 시세 · 실시간시세 | O | O |
| 조건검색 | O | O |
| 종목정보 · 순위정보 · 업종 · 관심종목 | O | O |
| 환전 | — | O |
| 투자정보 | — | O |
| 공매도 · 신용주문 · 대차거래 | O | — |
| 테마 · ELW · ETF | O | — |
여기서 읽어야 할 것은 "미국주식이 국내주식의 축소판이 아니다"라는 점입니다. 자동매매에 실제로 필요한 주문·시세·실시간시세·조건검색은 양쪽에 다 있고, 오히려 환전처럼 국내에는 없는 항목이 미국주식 쪽에만 붙어 있습니다. 반대로 공매도·신용주문·ELW처럼 국내 시장 특유의 기능은 미국주식 쪽에 없습니다.
3. 미국 외 시장은? — "없다"가 아니라 "확인해야 한다"
공식 가이드의 카테고리 구분은 국내주식 / 미국주식입니다. 일본·중국·홍콩 등이 별도 카테고리로 나타나지는 않습니다. 다만 여기서 "그 시장은 절대 안 된다"고 단정하는 것은 위험합니다. 카테고리 화면에 없다는 것과 명세서에 없다는 것은 다른 이야기이고, 증권사 API 지원 범위는 분기 단위로도 바뀝니다.
실무에서 안전한 결론은 이렇습니다.
- 미국주식(나스닥·뉴욕·아멕스)만 필요하다 → 키움 REST API로 설계 가능
- 일본·홍콩·중국 등이 필요하다 → 키움 카테고리에 안 보이므로 공식 명세서·고객센터 확인이 선행돼야 하고, 확인 전에는 제작 착수 금지
- 해외선물·옵션이 필요하다 → REST가 아니라
OpenAPI-W트랙. 해외선물 자동매매의 시장 규격은 → 해외선물 자동매매 가이드 참고
💡 왜 이렇게 조심하나: 증권사 API는 예고 없이 항목이 늘거나 정책이 바뀝니다. 키움만 해도 OCX 기반 OpenAPI+에서 REST로 무게중심이 옮겨오면서, 몇 년 전 글의 결론이 지금은 틀린 경우가 많습니다. 이 글의 표도 2026-07-30 기준이므로, 실제 제작 직전에는 반드시 공식 문서를 다시 여세요.
4. 환전 — 해외주식 봇의 진짜 관문
국내주식 봇을 만들어 본 사람이 미국주식으로 넘어올 때 가장 많이 놓치는 지점입니다. 국내주식은 원화로 사면 끝이지만, 미국주식은 매수 전에 달러가 있어야 하느냐가 먼저 결정돼야 합니다.
| 운영 방식 | 봇이 해야 할 일 | 주의점 |
|---|---|---|
| 사전 환전 후 달러로 매수 | 잔고 조회 → 부족하면 환전 호출 → 매수 | 환전 처리 시점과 매수 타이밍이 어긋날 수 있음 |
| 원화로 바로 매수(통합증거금류) | 환전 단계 없이 주문 | 계좌·상품별 적용 조건이 다름 — 공식 안내 확인 필수 |
키움 REST API의 미국주식 카테고리에 환전이 독립 항목으로 존재한다는 것은, 봇이 환전까지 자동화할 여지가 있다는 뜻입니다. 다만 어떤 방식으로 운영할지는 계좌 설정과 증권사 정책에 달려 있으므로, 코드를 짜기 전에 정해야 합니다. 시차·서머타임·결제일까지 포함한 해외주식 시장 규격 전반은 → 미국주식 자동매매, 국내주식과 뭐가 다를까에서 따로 다뤘습니다.
5. 스펙이 바뀌어도 스스로 확인하는 4단계
이 글의 표는 언젠가 낡습니다. 그래서 확인하는 방법을 남겨둡니다. 비개발자도 15분이면 됩니다.
- 공식 포털의 API 가이드 화면을 연다 — 왼쪽 트리에 국내주식 / 미국주식이 나뉘어 있는지, 미국주식 아래 주문 항목이 있는지 확인. 여기에 "주문"이 없으면 조회만 되는 것이라 자동매매가 성립하지 않습니다.
- API 명세서를 내려받는다 — 포털은 명세서를 엑셀·PDF·JSON으로 제공합니다. 엑셀을 열어 시장 구분 열로 필터를 걸면, 어느 기능이 어느 시장에 있는지 한 번에 보입니다.
- 필요한 기능의
api-id가 실재하는지 확인한다 — 키움 REST는 같은 엔드포인트라도 헤더의api-id(TR)에 따라 다른 거래가 실행되는 구조입니다. 예를 들어 국내주식 주문은/api/dostk/ordr엔드포인트에api-id: kt10000을 실어 보냅니다. 미국주식 쪽 경로와api-id는 반드시 명세서에서 확인하세요(추정 금지). - 모의투자 지원 여부를 본다 — 실계좌로만 되는 기능이면 검증 비용이 달라집니다. 실거래 전 검증 절차는 → 실전 투입 전 3단계 검증.
# 키움 REST 호출의 뼈대 — 기능은 헤더의 api-id로 갈린다
import requests
BASE = "https://api.kiwoom.com" # 공식 문서에서 최신 도메인 확인
headers = {
"Content-Type": "application/json;charset=UTF-8",
"authorization": f"Bearer {access_token}",
"api-id": "kt10000", # 국내주식 주문 예시
"cont-yn": "N", # 연속조회 여부
"next-key": "", # 연속조회 키
}
res = requests.post(f"{BASE}/api/dostk/ordr", headers=headers, json=body)
# ⚠️ 미국주식용 경로와 api-id는 공식 명세서에서 확인할 것.
# "국내가 dostk니까 해외는 ostk겠지" 식의 추정은 그대로 장애가 된다.
호출을 붙인 다음에는 호출 제한이 기다립니다. 키움 REST는 TR(api-id) 단위로 제한이 걸리고, 미국 장시간 동안 실시간 시세를 받으면서 주문까지 내려면 설계가 필요합니다 → 내 봇이 '너무 빨리' 주문하면 생기는 일 — API 호출 제한 설계.
6. 키움으로 부족하면 — KIS 해외주식과의 차이
미국 외 시장까지 필요하다면 한국투자증권(KIS) 쪽을 함께 보게 됩니다. 실무에서 갈리는 지점만 짚으면 이렇습니다.
| 키움 REST API | KIS (한국투자증권) | |
|---|---|---|
| 해외주식 범위 | 공식 카테고리 기준 미국주식 | 거래소 코드로 지정 — NAS·NYS·AMS·HKS·TSE 등 |
| 사전 절차 | REST API 이용 신청 및 앱키 발급 | 앱키 발급 + 홈페이지에서 해외주식 API 사용 동의 별도(누락 시 권한 오류) |
| 기능 구분 방식 | 헤더 api-id | 헤더 tr_id (실전/모의가 다름) |
| 자주 막히는 곳 | 제품(REST/OpenAPI+/OpenAPI-W) 혼동 | 해외 API 미동의, 거래소 코드 오타, 해외 시장가 주문 제약 |
KIS 쪽에서 실제로 자주 튀어나오는 오류와 해결은 → KIS API 에러코드 11가지에 코드와 함께 정리돼 있고, 두 증권사를 정면으로 비교한 글은 → 키움 OpenAPI vs KIS API — 어느 것을 선택할까입니다. 국내 4개사를 한 표로 보시려면 → 키움·KIS·LS·대신 자동매매 API 비교.
7. 제작 전 체크리스트 7개
✅ 해외주식 봇을 맡기거나 만들기 전에
- 제품을 명시했는가 — REST API인가 OpenAPI+인가 OpenAPI-W인가
- 필요한 시장이 미국만인가, 그 외도 있는가
- 필요한 기능(주문·실시간시세·조건검색)이 그 시장 카테고리에 실재하는가
- 환전을 봇이 하는가, 사람이 미리 해두는가
- 미국 장시간(한국 기준 야간) 무인 운영 환경이 준비돼 있는가
- TR 단위 호출 제한을 계산해 봤는가
- 지원 범위를 공식 문서·고객센터로 재확인했는가
같은 "키움 해외주식"이라도 어느 제품·어느 시장·환전 방식에 따라 가능 여부와 제작 범위가 완전히 달라집니다. 원하시는 조건을 말씀해 주시면 되는 것과 안 되는 것을 먼저 갈라 드립니다.
이 부분만 대신 만들어 드립니다 — 무료 상담 →자주 묻는 질문
Q. 키움증권 API로 해외주식 자동매매가 되나요?
키움 REST API 공식 가이드 카테고리에 미국주식이 있고 그 아래 주문·시세·실시간시세·조건검색·환전 등이 포함됩니다(2026-07-30 확인). 미국 외 시장은 카테고리에 나타나지 않으므로 공식 명세서·고객센터 확인이 필요합니다.
Q. OpenAPI+와 REST API 중 해외주식은 어느 쪽인가요?
REST API 쪽입니다. OpenAPI+는 OCX·32비트 윈도우에 묶인 레거시이고, 해외파생은 OpenAPI-W라는 또 다른 모듈입니다.
Q. 환전은 봇이 할 수 있나요?
미국주식 카테고리에 환전 항목이 별도로 있습니다. 다만 사전 환전 방식으로 갈지 원화 매수 방식으로 갈지는 계좌 설정·증권사 정책에 따라 달라지므로 먼저 정하고 시작해야 합니다.
Q. 키움과 KIS 중 해외주식은 어디가 유리한가요?
미국주식만이면 키움 REST로 충분히 구성되고, 미국 외 시장까지 필요하면 KIS의 거래소 코드 커버리지를 함께 검토하는 편이 안전합니다. KIS는 해외주식 API 사용 동의를 별도로 해야 합니다.
마무리
"키움으로 해외주식이 되나"의 정확한 답은 "REST API로 미국주식은 된다, 그 밖은 확인이 먼저다"입니다. 그리고 이 판단에서 가장 중요한 습관은 결론을 외우는 게 아니라 공식 카테고리와 명세서를 직접 열어보는 것입니다. 증권사 API는 계속 바뀌고, 낡은 결론이 그대로 재제작 비용이 됩니다.
미국주식 봇은 한국 시간으로 밤에 혼자 돌아야 한다는 점에서 국내주식 봇과 운영 난이도가 다릅니다. 환전·시차·무인 운영까지 포함해 통째로 맡기고 싶으시면, 알고랩이 요건 확인부터 함께 정리해 드립니다.
키움 미국주식 자동매매 맞춤 제작
지원 범위 확인, 환전 처리, 미국 장시간 무인 운영, 호출 제한 설계까지 — 알고랩이 통합 패키지로 제작합니다.
24시간 빠른 답변 가능합니다.