게만아 멀티브로커 구조
국내 증권사 Open API 비교와 멀티브로커 자동매매
현재 게만아 자동매매 생태계는 한국투자·LS·키움·토스·KB·NH·메리츠·DB증권을 다룹니다. 하지만 이 페이지의 핵심은 ‘8개’라는 숫자가 아닙니다. 같은 전략 로직을 증권사마다 다시 만들지 않고, 공통 인터페이스를 통해 여러 증권사·시장·계좌로 옮기기 쉽게 만든 구조가 더 중요한 차별점입니다.
전략은 그대로, Broker · Market · 계좌만 선택
쉽게 말해 전략 파일은 최대한 그대로 두고, 증권사와 연결하는 부분만 바꾸는 구조입니다. 공통 인터페이스로 작성된 게만아 주식 봇에서는 아래와 같이 사용할 증권사, 시장, 계좌 모드를 정하고 그에 맞는 모듈을 동적으로 불러옵니다.
Broker = "KIS" # KIS / DBI / LS / KIW / TOSS / KB / NH / MR
Market = "KR" # KR / US
accountMode = "REAL" # REAL / REAL2 / VIRTUAL 등
Common = importlib.import_module(f"{Broker}_Common")
Helper = importlib.import_module(f"{Broker}_API_Helper_{Market}")
Common.SetChangeMode(accountMode)
전략 본문은 이후 Helper.GetBalance(), Helper.GetMyStockList(), Helper.GetCurrentPrice(), Helper.MakeBuyMarketOrder() 같은 공통 호출 형식을 사용합니다. 증권사별 인증 방식·응답 필드·주문 API 차이는 Common/Helper 모듈이 최대한 흡수하고, 전략은 자산 선택·비중·리밸런싱 같은 투자 규칙에 집중합니다.
세 가지 축을 따로 바꿀 수 있습니다
| 설정 | 역할 | 예시 |
|---|---|---|
| Broker | 사용할 증권사 공통모듈 선택 | KIS, LS, KIW, TOSS, KB, NH, MR, DBI |
| Market | 국내주식·미국주식 Helper 선택 | KR / US |
| accountMode | 설정파일에 정의한 실전·추가계좌·모의계좌 선택 | REAL / REAL2 / VIRTUAL 등 |
따라서 같은 전략을 국내·미국 시장이나 여러 계좌에서 운용할 때 코드 전체를 복제해 다시 만드는 부담을 줄일 수 있습니다. 단, 각 증권사의 실제 지원 시장·모의투자·주문 유형·계좌 종류는 서로 다르므로 지원 범위 확인은 필요합니다.
토스·키움·한국투자증권 한눈에 비교
게만아 무료 Starter 이용자 분석에서 상위 3개로 나타난 토스증권·키움증권·한국투자증권의 핵심 차이를 모았습니다. 아래 내용은 게만아가 공통모듈을 직접 구현·운용하며 확인한 것이고, 항목별 시점은 증권사별 상세 가이드의 “근거와 확인 시점”에 적었습니다.
| 항목 | 토스증권 | 키움증권 | 한국투자증권 |
|---|---|---|---|
| 발급·신청 | PC 웹 Open API 메뉴 → Open API Key 설정 | 키움 REST API 사이트 [API 사용신청] | KIS Developers에서 앱키·시크릿 발급(모의계좌는 별도) |
| 허용 IP 등록 | 필수 · 키 발급 시 등록, 실행 환경 IP로 맞춤 | 필수 · PC와 서버 IP 등록 | 등록 없이 사용 |
| 지원 시장(공통모듈) | 국내·미국주식 | 국내·미국주식(초기 구현 때는 국내만) | 국내·미국주식, 연금계좌 |
| 계좌 지정 | 통합 계좌 1개, 계좌 목록 조회로 자동 설정 | 설정 파일 계좌별 앱키(REAL·REAL2…) | 계좌번호 + 상품코드 2자리(일반 01, 연금 22 등) |
| 모의투자 | 공통모듈은 실계좌(REAL) 기준 | 모의 도메인 제공(VIRTUAL) | 모의계좌 키 별도 발급 |
| 토큰 처리 | 공통모듈이 토큰 파일로 관리 | 공통모듈이 자동 발급·저장 | 강의는 저장+스케줄러, 패키지 78번은 통일된 설정 |
| 게만아 연결 | Broker="TOSS" · 패키지 88번 | Broker="KIW" · 패키지 77번 | Broker="KIS" · 패키지 78번 |
게만아 구현 경험에서 본 특징
- 국내·미국주식을 통합 계좌 하나로 단순하게 시작하고 싶다면 토스증권이 간단합니다. 다만 공통모듈은 실계좌 기준이라 작은 금액으로 검증하세요.
- 고정 IP 서버가 있고 모의투자로 먼저 검증하고 싶다면 키움증권을 고를 수 있습니다. IP 등록과 모의 도메인이 분명합니다.
- 연금계좌·다계좌·가장 많은 전략 기본값이 필요하다면 한국투자증권에서 시작하는 경우가 많습니다. 게만아 주식 봇 대부분이 한국투자증권 기준을 기본값으로 작성돼 있습니다.
사양과 정책은 바뀔 수 있으므로 키 발급 전에 각 증권사의 공식 문서를 확인하세요. 무료 Starter에서 증권사를 하나 골라 전체 흐름을 먼저 체험할 수 있습니다.
LS·DB·KB·NH·메리츠증권 한눈에 비교
위 3곳 외의 증권사도 같은 기준으로 정리했습니다. 증권사별 상세 가이드로 들어가면 신청 순서, 설정 파일 예시, 주의할 점을 볼 수 있습니다. 항목별 시점은 상세 가이드의 “근거와 확인 시점”에 적었습니다.
| 항목 | LS증권 | DB증권 | KB증권 | NH투자증권 | 메리츠증권 |
|---|---|---|---|---|---|
| 발급·신청 | LS증권 투혼 앱에서 “API” 검색 → xingAPI·OPEN API·해외주식 API 신청 | DB증권 Open API 공식 이용절차 | KB증권 앱(KB M-able)에서 “API” 검색 → [Open API 신청하기] | Namuh PLUG에서 API 키 신청 | 개발자 포털 또는 메리츠 SMART 앱에서 신청 |
| 허용 IP 등록 | 등록 없이 사용 | 등록 없이 사용 | 등록 없이 사용 | 등록 없이 사용 | 등록 없이 사용 |
| 지원 시장(공통모듈) | 국내·미국주식 | 국내·미국주식 | 일반 계좌 국내·미국주식(ISA·연금은 게시 시점에 예정) | 국내·미국 Helper(일반 계좌 중심) | 국내·미국주식 |
| 계좌 지정 | 설정 파일 계좌별 앱키(REAL·REAL2…) | 설정 파일(yaml)로 계좌 전환 | 설정 파일 계좌별 앱키(REAL·REAL2…) | 키 1개 + 계좌번호 11자리 | 설정 파일 계좌별 앱키(REAL·REAL2…) |
| 모의투자 | VIRTUAL 항목은 있으나 게만아는 실계좌로 검증 | 게만아 포스팅에 별도 설명 없음 | 게만아 포스팅에 별도 설명 없음 | 모의 URL 제공(게만아는 실계좌 최소 수량으로 검증) | 없음(앱키가 곧 실계좌) |
| 꼭 알아둘 점 | 미국주식은 API 발급 전에 해외주식 거래신청·실시간 시세신청 | 미국 종목코드 표기가 다름(BRK/B ↔ BRK.B) · 슈퍼 이동평균 V2에 포함 | 게시 시점에는 일반 계좌 중심 | API 키가 1개뿐이라 다계좌도 같은 키 | REST 베타 서비스 |
IP 등록이 필요한 곳은 토스증권과 키움증권입니다. 계좌 종류·지원 상품·정책은 바뀔 수 있으니 실제 신청 전에 각 증권사의 최신 공식 안내를 확인하세요.
현재 다루는 증권사 Open API
| 증권사 | 공식 개발 환경에서 확인되는 핵심 | 게만아 코드 연결 |
|---|---|---|
| 한국투자증권 | REST, 국내·해외주식 등, 공식 Python 자료 | Broker="KIS" · 패키지 78번 |
| LS증권 | OAuth, REST, 국내·해외주식/파생 카테고리 | Broker="LS" · 패키지 76번 |
| 키움증권 | REST, OAuth, 국내·미국주식 | Broker="KIW" · 패키지 77번 |
| 토스증권 | OAuth 2.0, REST, 국내·미국주식 | Broker="TOSS" · 패키지 88번 |
| KB증권 | Token 기반 인증, 시세·계좌·잔고·주문 | Broker="KB" · 패키지 95번 |
| NH투자증권 | REST 기반 Open API와 개발지원 환경 | Broker="NH" · 패키지 96번 |
| 메리츠증권 | REST(베타), OAuth 토큰 인증, 국내·미국주식, 모의투자 없음 · 상세 가이드 | Broker="MR" · 패키지 103번 |
| DB증권 | OAuth, 국내·해외주식 등 | Broker="DBI" · 슈퍼 이동평균 전략에 포함 |
증권사 이름을 누르면 해당 증권사 공통모듈을 설명한 게만아 블로그 포스팅으로 이동합니다.
통합 패키지의 DB증권 지원 범위
한국투자·LS·키움·토스·KB·NH·메리츠는 패키지 공통모듈 형태로 제공되고, DB증권 지원 코드는 슈퍼 이동평균 자산배분 V2 전략 구성 안에 포함됩니다. 현재 신규 통합 패키지에는 슈퍼 이동평균 V2가 함께 포함되므로 신규 구매자는 DB 지원 코드도 함께 이용할 수 있습니다. 다만 DB 코드는 다른 7개 증권사와 동일한 별도 범용 공통모듈 묶음이라는 의미는 아닙니다.
왜 이 구조가 유용한가?
- 증권사 변경 비용 감소: 전략 규칙은 유지하고 API 레이어만 교체하기 쉽습니다.
- 계좌 분산: 같은 전략을 여러 계좌로 나눠 운용할 때 설정을 분리하기 쉽습니다.
- 국내·미국주식 확장: 지원되는 공통모듈에서는 Market 선택으로 KR/US Helper 구조를 재사용할 수 있습니다.
- 새 증권사 추가: 지원사가 9개, 10개로 늘어나더라도 전략 파일 전체보다 공통모듈 확장에 집중할 수 있습니다.
- AI 활용: 이미 통일된 함수 규격이 있으므로 새 증권사나 새 기능을 AI와 함께 추가할 때 기준점이 명확합니다.
비교할 때 실제로 봐야 하는 것
- 내 계좌·상품 지원: 국내주식, 미국주식, 연금 등 필요한 영역이 실제로 가능한지.
- 인증과 토큰: App Key/Secret, OAuth, 토큰 유효기간과 재발급 정책.
- 호출 제한과 오류 신호: 초당/분당 호출량이 전략 주기에 맞는지, 한도 초과·토큰 만료를 어떤 상태코드·응답 코드로 알려주는지.
- 전략에 필요한 기능: 잔고·보유종목·현재가·주문 등 실제 필요한 API가 있는지.
- 모의투자와 주문유형: 실계좌 전 검증 환경과 시장가·지정가·정정취소 등 필요한 주문을 지원하는지.
- 공식 샘플·문서: 최신 문서와 개발지원 자료가 충분한지.
게만아 공통모듈은 ‘증권사 API 전체를 복제한 SDK’가 아닙니다
증권사 Open API에는 매우 많은 기능이 존재하지만, 자동매매 시스템이 그 모든 기능을 필요로 하는 것은 아닙니다. 게만아 공통모듈은 통합 패키지와 그 안에 포함된 슈퍼 이동평균 V2에서 실제로 사용하는 인증·계좌·시세·주문 등의 핵심 기능을 중심으로 구현합니다. Starter는 그중에서도 입문에 필요한 기능만 공개한 Lite 버전입니다.
따라서 정식 콘텐츠를 운용하기 위해 사용자가 증권사 공식 문서를 보고 API를 새로 구현해야 하는 것은 아닙니다. 개인적으로 기존 코드에 없는 새로운 기능을 추가하고 싶을 때만 공식 API를 기준으로 확장하면 됩니다.
중요: ‘쉽게 전환’은 공통화된 범위 안에서의 이야기입니다
증권사마다 지원 상품, 시장 코드, 모의투자, 주문유형, 호출 제한이 다릅니다. 따라서 Broker 값 하나만 바꾸면 세상의 모든 API 기능이 완전히 동일하게 동작한다는 의미는 아닙니다. 게만아 코드가 사용하는 공통 기능을 중심으로 차이를 흡수한 구조라고 이해하면 정확합니다.
실전에서는 API가 불안정할 때의 대응도 중요합니다
올바른 요청에도 증권사 API가 오류나 무응답을 줄 수 있습니다. 이때 대기 후 다시 시도하는 처리가 없으면 자동매매 로직이 중간에 끊깁니다. 증권사마다 다른 응답 코드는 게만아 공통모듈이 공통 기준으로 추상화해 모든 증권사에서 같은 방식으로 처리합니다.
직접 멀티 증권사 구조를 경험해보고 싶다면
무료 Starter에서는 현재 지원 중인 증권사 가운데 한 곳을 선택해 국내주식 Lite 구조로 계좌 조회와 리밸런싱·주문 흐름을 확인할 수 있습니다.
무료 Starter 보기문서 업데이트: 2026-10-16