1. 들어가며
지난 글에서는 SendOrder 함수를 이용하여 매수/매도 주문을 설명하였다.
키움증권 OpenAPI에서 매수/매도/매수취소/매도취소는
SendOrder 함수로 모두 해결이 된다.
이번 글에서는 지난 글에서 설명하지 못했던
미체결 매도주문에 대해 취소하는 방법에 대해 알아보겠다.
2. 사전준비
- KOA StudioSA에 대한 내용은 아래 링크한 곳을 참고하면 되겠다
- 이미 매수한 주식에 대한 장 시간이 짧은 관계로 매도주문은 직접 입력하였다.
https://springcoming.tistory.com/31?category=1048804
(주식 자동 매매) 키움증권 OpenAPI - SendOrder함수를 이용하여 매수/매도하기
1. 들어가며 이번 시간에는 키움증권 OpenAPI를 활용하여, 주식의 매수/매도하는 방법을 알아보고자 한다. "매수는 기술이지만, 매도는 예술이다" 라는 주식 명언이 있듯이 주식 자동매매로 수익을
springcoming.tistory.com
3. SendOrder 함수 설명
키움 OpenAPI 개발가이드에서 확인하였듯이
SendOrder 함수는 9개의 변수를 받고 있다.
- rqname : 문자형이며, 사용자 구분명이다. (사용자가 임의로 정해도 됨)
- screenno : 문자형이며, 화면번호 (사용자가 임의로 정해도 됨)
- accno : 문자형이며, 계좌번호 (모의계좌 10자리 입력)
- ordertype: 인수형이며, 주문유형에 해당 (1매수, 2매도, 3매수취소, 4매도취소 등)
- scode : 문자형이며, 종목코드
- qty : 인수형이며, 주문수량
- price : 인수형이며, 주문단가
- hogagb : 문자형이며, 거래구분 (00 지정가, 03 시장가)
- orgorderno: 문자형이며, 원주문 번호
→ 매수취소/매도취소를 하려면 위의 3가지 중
3가지만 제대로 입력하면 된다.
* 3가지 : ordertype(주문유형), scode(종목코드), orgorderno(원주문 번호)
4. 코드 설명
앞에서 이야기하였지만, 매수/매도/매수취소/매도취소는별도 함수 실행되는 것이 아니라, SendOrder 함수 1개의4번째 변수인 ordertype(주문유형)에 따라, 달라진다.<그림2> 27줄에서 별도 함수 제작은, 용이한 설명을 위해 만든 것입니다)
17줄~18줄 : 모의계좌 번호 10자리를 입력한다.
(전역변수 선언 사유 : 36줄에서 활용하기 위함)
27줄~30줄 : SendOrder 함수는 매수/매도 구분은 없다.
여기서는 SendOrder_sell 함수를 임의로 만들어서
매도취소하는 내용을 설명하고자 한다.
36줄 : 입력한 9개 변수를 27줄의 함수에 넣어서, 취소하라는 명령어이다.
① 실시간계좌관리의 "미체결" 탭에
삼성전자 2주 매도(주문번호 112773)이 접수되어 있다.
② 주문체결내역에도, 미체결 내역이 접수(주문완료)되어 있다.
* 원주문번호 : 112773
③ 매도주문 취소에 따라, 삼성전자 2주 매도 주문(원주문번호 112773)이 취소되었다.
※ 로그인 함수 관련하여서는 설명 생략한다.
참고 : https://springcoming.tistory.com/17?category=1048804
(주식 자동 매매) 키움증권 OpenAPI 로그인
1. 들어가며 키움증권에서 제공하는 OpenAPI를 통해 키움서버에 접근하기 위해서는, 파이썬을 통해 OpenAPI에 접속하여 로그인할 수 있어야 한다. 당초 로그인 후 예수금 받기까지 진행하려고 했으
springcoming.tistory.com
5. 마치며
이번 시간에는 매도주문의 취소에 대해 알아보았다.
2~3시간은 막혀서, 이렇게 저렇게 계속 바꾸어 본거 같다.
9개 변수를 어떤 방법으로 넣어야 되는지 잘 몰라서,
상당한 시간을 소모한 느낌이 들었다.
변수를 잘 설정하고, 실시간 계좌관리(화면번호 0341)에서
원주문이 사라졌을 때, 정말 기분이 좋았다.
다행히 장 거래시간에 취소되어서 다행이다.
2~3시간 시행착오를 겪은 부분이 있다.
위에서도 이야기했지만,
SendOrder 함수의 9개 변수를 어떻게 넣어야 하는지,
그 테스트 결과는 다음 글에서 설명하겠다.
'1. 국내주식 > 1-2. 키움 OpenAPI (사용)' 카테고리의 다른 글
(주식 자동 매매) 키움증권 OpenAPI - 미체결 주문내역 가져와서 주문취소하기 (2) (opt10075 + SendOrder) (0) | 2022.10.10 |
---|---|
(주식 자동 매매) 키움증권 OpenAPI - 미체결 주문내역 가져오기 (1) (opt10075) (0) | 2022.10.09 |
(주식 자동 매매) 키움증권 OpenAPI - 미체결 주문을 SendOrder 함수로 취소하기 (3) 주문번호와 원주문번호 구분 필요 (0) | 2022.10.08 |
(주식 자동 매매) 키움증권 OpenAPI - 미체결 주문을 SendOrder 함수로 취소하기 (2) 취소주문 테스트 (5) | 2022.10.07 |
(주식 자동 매매) 키움증권 OpenAPI - 1분봉 데이터 실시간 받기(opt10080) (2) | 2022.10.05 |
(주식 자동 매매) 키움증권 OpenAPI - SendOrder함수를 이용하여 매수/매도하기 (0) | 2022.10.01 |
(주식 자동 매매) 키움증권 OpenAPI 매수한 4종목의 매수가격, 매수량 받아오기(opt10085) (0) | 2022.09.28 |
(주식 자동 매매) 키움증권 OpenAPI 종목의 현재가를 전역변수에 담기(opt10001) (0) | 2022.09.27 |