입력 항목: App Key,Secret Key,종목코드,주문수량,주문단가
· 본 예시 코드는 사용자 개발 환경에 따라 모듈 설치 및 코드 수정이 필요할 수 있으며,
당사가 코드 실행 및 실행 결과를 보장하지 않습니다.
· 개발 환경에서 코드 실행 및 변수값 입력 시 즉시 서버에 주문이 전송되므로
코드 실행 시 유의하여 주시기 바랍니다.
import requests
import json
# 접근토큰 발급
def fn_au10001(data):
# 1. 요청할 API URL
host = 'https://api.kiwoom.com' # 실전투자
endpoint = '/oauth2/token'
url = host + endpoint
# 2. header 데이터
headers = {
'Content-Type': 'application/json;charset=UTF-8', # 컨텐츠타입
}
# 3. http POST 요청
response = requests.post(url, headers=headers, json=data)
token = response.json().get('token')
return token
# 주식 매수주문
def fn_kt10000(token, data, cont_yn='N', next_key=''):
# 1. 요청할 API URL
host = 'https://api.kiwoom.com' # 실전투자
endpoint = '/api/dostk/ordr'
url = host + endpoint
# 2. header 데이터
headers = {
'Content-Type': 'application/json;charset=UTF-8', # 컨텐츠타입
'authorization': f'Bearer {token}', # 접근토큰
'cont-yn': cont_yn, # 연속조회여부
'next-key': next_key, # 연속조회키
'api-id': 'kt10000', # TR명
}
# 3. http POST 요청
response = requests.post(url, headers=headers, json=data)
# 4. 응답 상태 코드와 데이터 출력
print(json.dumps(response.json(), indent=4, ensure_ascii=False)) # JSON 응답을 파싱하여 출력
# 실행 구간
if __name__ == '__main__':
# 1. 사용자 입력
appkey = input("APPKEY를 입력하세요: ").strip()
secretkey = input("SECRETKEY를 입력하세요: ").strip()
stk_cd = input("종목코드 (예: 005930): ").strip()
ord_qty = input("주문수량 (예: 1): ").strip()
ord_uv = input("주문단가 (지정가주문): ").strip()
# 2. 토큰 발급 요청
token_params = {
'grant_type': 'client_credentials',
'appkey': appkey,
'secretkey': secretkey,
}
MY_ACCESS_TOKEN = fn_au10001(data=token_params)
# 3. 주문 요청 파라미터
order_params = {
'dmst_stex_tp': 'SOR', # 거래소 구분
'stk_cd': stk_cd,
'ord_qty': ord_qty,
'ord_uv': ord_uv,
'trde_tp': '0', # 0: 보통(지정가) 주문
'cond_uv': '',
}
# 4. 주식 주문 실행
fn_kt10000(token=MY_ACCESS_TOKEN, data=order_params)
* 홈페이지 신청 경로 안내 (모바일에서는 신청 불가)
. 홈페이지 > 트레이딩 채널 > 키움 REST API
. 홈페이지 > 고객서비스 > 다운로드 > Open API > 키움 REST API
신규 오픈 기념 REST API 거래 이벤트
기간:11.10(월) ~ 12.30(화)
대상
키움 계좌로 REST API 거래 고객
거래대상
국내주식(코스피,코스닥,ETF,ETN)
* 코넥스, ELW, 금현물 및 일부 ETF/ETN 제외
(제외 대상 ETF/ETN은 하단 유의사항 참조)
- 매주 월~금까지 체결한 거래 금액이 전일 기준으로 보여져요.
(금주 전체 체결 거래금액은 차주 월요일에 확인 가능)
- 이벤트 신청일부터 체결된 금액 기준이에요.(계좌 합산)
EVENT 1.
REST API로 1원 이상 거래하면,
추첨을 통해 스타벅스 기프티콘 지급!
[이벤트 1. 당첨자 발표 일정]
이벤트 종료일 이후 2주일 이내 당첨자 발표 예정
(경품은 당첨자 발표 후 26년 1월말 이내 발송)
모바일 기프티콘은 이벤트 참여 시 기재한 휴대폰 번호로 발송 예정
(착신 정지, 스팸처리 등으로 인한 재 발송, 교환 기간 연장 등 불가)
EVENT 2.
REST API 주간 거래 금액에 따라,
현금리워드 추첨 혜택을 드려요!
매주 월~금 REST API 주간 거래금액에 따라
거래금액 구간별 현금리워드 추첨 진행
(단, 마지막 주는 12.22~12.30 거래금액으로 산정)
매주 월~금 REST API 주간 거래금액에 따라
거래금액 구간별 현금리워드 추첨 진행
(단, 마지막 주는 12.22~12.30 거래금액으로 산정)
당사 사정에 따라 조기 종료될 수 있습니다. (단, 기 달성 고객 제외)
거래금액 상위 구간 순으로 추첨 진행 및 경품 간 중복 당첨 불가합니다.
(‘이벤트 2’ 1회 이상 당첨 고객은 ‘이벤트 1’ 추첨 대상에서 제외)
동일인 최대 1천만원 이상 당첨 불가하며, 당첨 금액 1천만원 달성 시,
차주부터 추첨 대상 제외
5만원 초과 경품 지급에 따른 제세공과금 22%는 고객 부담입니다.
[이벤트 2. 당첨자 발표 일정]
1차 발표 : 25년 12월 둘째 주 중 발표 예정
(11.10~12.05 거래분에 대한 추첨 결과 발표)
2차 발표 : 26년 1월 둘째 주 중 발표 예정
(12.08~12.30 거래분에 대한 추첨 결과 발표)
현금 지급은 당첨자 발표일 이후 2주일 이내에 고객님의 당사 보유한
입금 가능한 위탁 계좌로 지급됩니다. (폐쇄 계좌 지급 불가)
REST API, 이런 분들께 추천해요!
* 나만의 조건부 자동 매매를 구현하고 싶은 분!
* 주기적인 리밸런싱 전략을 자동화하고 싶은 분!
* 여러 계좌/종목을 동시에 관리/모니터링하고 싶은 분!
키움 REST API
STEP1. 개발 환경 구축하기
VSCode, Anaconda 등 원하는 코드 편집 프로그램을
설치하여 개발 환경을 준비해주세요.
* 실시간 시세 조회 등을 위해서는 VSCode 사용 권장
STEP2. API 사용 신청하기
REST API를 사용하기 위해서는 키움 REST API 홈페이지에서
API 사용 신청 후 IP 등록, 계좌 App Key, Secret Key
발급이 필요해요.
STEP3. 접근 토큰 발급 받고, 매수 주문 전송 하기
아래 코드를 개발환경에서 실행 후 아래 변수를 직접 입력하여,
SOR 매수 주문을 전송할 수 있어요.
입력 항목: App Key,Secret Key,종목코드,주문수량,주문단가
· 본 예시 코드는 사용자 개발 환경에 따라 모듈 설치 및 코드 수정이 필요할 수 있으며,
당사가 코드 실행 및 실행 결과를 보장하지 않습니다.
· 개발 환경에서 코드 실행 및 변수값 입력 시 즉시 서버에 주문이 전송되므로 코드 실행 시
유의하여 주시기 바랍니다.
이벤트참여안내
본 이벤트는 ‘이벤트 신청하기’를 통하여 개인(신용)정보 선택 동의서에 따라 선택 / 서비스 안내 등에 동의하신 고객에 한하여 참여 됩니다. (이벤트 신청 필수)
본 이벤트는 임직원 및 법인고객은 제외됩니다.
REST API 거래를 위해서는, 키움 API사용 신청이 필요합니다.
이벤트 1,2의 거래 대상 상품은 국내주식(코스피, 코스닥, ETF/ETN)을 대상으로 하며, 코넥스,ELW, 금현물 및 일부 ETF / ETN은 대상 상품에서 제외됩니다.
*ETF / ETN 대상 제외 종목(12개 종목)
KODEX CD금리액티브(합성)(459580), TIGER CD1년금리액티브(합성)(475630),
RISE 단기통안채(196230), TIGER CD금리투자KIS(합성)(357870), TIGER CD금리플러스액티브(합성)(499660), SOL 초단기채권액티브(469830), KODEX CD1년금리플러스액티브(합성)(481050), RISE 머니마켓액티브(455890), 1Q 단기
금융채액티브(463290), PLUS 머니마켓액티브(477050), RISE 머니마켓액티브
(455890), KODEX KOFR금리액티브(합성)(423160)
이벤트 1은 키움증권 REST API를 통해 국내주식을 1원 이상 거래한 고객에게 스타벅스 아메리카노 기프티콘을 1,000명 추첨 지급합니다.
이벤트 1의 경품(모바일 기프티콘)은 당첨자 발표일 이후 2주일 이내에 발송할 예정이며, 경품 발송을 위하여 개인정보(휴대폰번호)가 이벤트 상품발송 대행업체에게 제공 및 목적 달성 후 폐기됩니다.
이벤트 1의 모바일 기프티콘의 경우 이벤트 참여 시 기재한 휴대전화번호로 발송될 예정이며, 모바일 기프티콘의 교환 기간 연장 또는 다른 번호로 재발송은 불가합니다.
고객 휴대폰의 착신정지 또는 문자스팸처리 등으로인한 미수신이 발생한 경우 재발송이 불가하오니 유의하시길 바랍니다.
이벤트 2는 거래금액 상위 구간 순으로 추첨 진행 및 경품 간 중복 당첨 불가합니다.
동일인 지급 한도는 최대 1천만원이며, 당첨 금액 1천만원 달성 시 차주부터 추첨 대상 제외됩니다. (‘이벤트 2’ 1회 이상 당첨 고객은 ‘이벤트 1’ 추첨 대상에서 제외)
이벤트 2의 경품(현금 리워드)은 1차, 2차 당첨자 발표일 이후 2주일 이내에 고객님의
당사 보유한 입금 가능한 일반 위탁 계좌로 지급될 에정이며, 중개형 ISA, 연금저축, 캐치전용계좌, 키워드림론 계좌 등은 지급 불가합니다.
(현금 지급 전 계좌 폐쇄 시 지급 불가)
5만원 초과 경품 지급에 따른 제세공과금 22%는 고객 부담입니다.
원활한 경품 지급 및 금융사기 예방을 위하여 고객정보는 반드시 최신 정보로 관리하시기 바랍니다.
본 이벤트는 금융당국의 지도 및 당사 사정에 따라 변경되거나 중단될 수 있습니다.
(단, 기 조건 충족 고객 제외)
허수성거래, 가정통정성 거래 등 불공정거래(공정거래질서 저해행위 포함)로 판단되는 경우 당첨 자격이 박탈됩니다.
당사에서 기타소득 신고 납부 후에는 당사의 귀책사유가 아닌 경우 정정 및 취소가 불가합니다.
본 이벤트와 관련한 문의사항은 키움금융센터(T.1544-9000), 나이트데스크(T.1544-8400), 영업부에서 안내 받으실 수 있습니다.
거래유의사항
본 이벤트는 단순 서비스 안내이며, 투자권유 및 추천이 아닙니다.
투자자는 금융투자상품<주식,집합투자증권, ETN>에 대하여 키움증권으로부터 충분한
설명을 받을 권리가 있으며, 투자전 상품설명서 등을 반드시 읽어보시기 바랍니다.
이 금융상품<주식, 집합투자증권, ETN>은 예금자보호법에 따라 보호되지 않습니다.
금융투자상품<주식, 집합투자증권, ETN>은 <자산가격 변동>, <신용등급 하락>, <괴리율> 등에 따라 투자원금의 손실(0~100%)이 발생할 수 있으며, 그 손실은 투자자에게 귀속됩니다.
국내주식 거래 시 수수료는 0.015%(KRX), 0.0145%(NXT)이며, 기타 자세한 사항은 홈페이지 등을 참고하시기 바랍니다. NXT(넥스트레이드)는 자본시장법상 다자간매매체결회사로 대체거래소(ATS: Alternative Trading System)입니다.
ETN은 발행사의 신용위험(부도 또는 파산 등)에 따른 원금손실이 발생할 수 있습니다. (투자적격등급은 AAA/AA·A·BBB 각 +, 0, - 순으로 구분)
레버리지 상품은 투자원금 손실이 크게 발생할 수 있으며, 레버리지 펀드(2배, 인버스, 인버스 2배 등)의 기간 수익률은 추종하는 기초자산(지수)의 일간 수익률과 차이가 발생할 수 있습니다.
집합투자증권은 증권거래비용, 기타비용이 추가로 발생할 수 있습니다.
ETF 거래수수료가 별도로 발생할 수 있습니다.
키움증권 준법감시인 심사필 제25-02454호 (25.11.06~25.12.30)