티스토리 뷰
<한국투자증권의 OpenAPI를 활용한 주식 자동 주문 프로그램 만들기>
* '주식 일별 주문 체결 조회' 기능을 이용한 거래 데이터 가져오기
[Source Code]
def InquiryDailyItems(self, paramIn): # 주식 일별 주문 체결 조회
# paramIn = {'StartDate', 'EndDate'}
startDate = paramIn.get('StartDate')
if not startDate:
sDate11 = bTime.CalDateTime({'Day': -50})
startDate = bTime.GetDateString(sDate11)
endDate = paramIn.get('EndDate')
if not endDate:
endDate = bTime.GetDateString()
url1 = "/uapi/domestic-stock/v1/trading/inquire-daily-ccld"
acceccURL = self.URL0 + url1
header1 = {
'content-type': "application/json; chartset=UTF-8",
'authorization': f"Bearer {self.AccessToken}",
#'authorization': self.AccessToken,
'appkey': self.AppKey,
'appsecret': self.AppSecret,
'tr_id': "TTTC8001R", ## TTTC8001R(주식 일별 주문 체결 조회)
'tr_cont': None,
'custtype': "P",
'mac_address': None,
'hashkey': None
}
param1 = {
'CANO': self.AccountNo, # Account No.(8 digits)
'ACNT_PRDT_CD': cConstants.KIS_ACCOUNTSUB, # Account No. (2 digits)
'INQR_STRT_DT': startDate, # 조회시작일자(8, YYYYMMDD)
'INQR_END_DT': endDate, # 조회 종료 일자(8, YYYYMMDD)
'SLL_BUY_DVSN_CD': "00", # 00(전체), 01(매도), 02(매수)
'INQR_DVSN': "00", # OO(역순), 01(정순)
'PDNO': "", # Item Code(6 digits), None(전체)
'CCLD_DVSN': "00", # 00(전체), 01(체결), 02(미체결)
'ORD_GNO_BRNO': "", # 영업점 코드
'ODNO': "", # 주문번호
'INQR_DVSN_3': "00", # 00(전체), 01(현금), 02(융자), 03(대출), 04(대주)
'INQR_DVSN_1': None,
'CTX_AREA_FK100': None,
'CTX_AREA_NK100': None
}
#-res1 = requests.post(acceccURL, data=json.dumps(param1), headers=header1)
res1 = requests.get(acceccURL, data=param1, headers=header1)
#print(res1.text)
try:
inquiryResults = json.loads(res1.text)
except:
print("[?? in ] InquiryDailyItems()", )
return;
success2 = inquiryResults.get('rt_cd') # if "0": SUCCESS
if success2!="0":
print("Inquiry FAILED")
return;
responseCode2 = inquiryResults.get('msg_cd')
message2 = inquiryResults.get('msg1')
output21 = inquiryResults.get('output1')
outputs1 = json.loads(output21)
# ord_dt(주문일자), ord_gno_brno(주문채번번호), odno(주문번호), ord_dvsn_name(주문구분명), sll_buy_dvsn_cd(매도매수구분코드), sll_buy_dvsn_cd_name(매도매수구분코드명)
# pdno(상품번호), prdt_name(상품명), ord_qty(주문수량), ord_unpr(주문단가), ord_tmd(주문시각), tot_ccld_qty(총체결수량), avg_prvs(평균가)
# cncl_yn(취소여부), tot_ccld_amt(총체결금액), loan_dt(대출일자), ord_dvsn_cd(주문구분코드), cncl_cfrm_qty(취소확인수량), rmn_qty(잔여수량)
# rjct_qty(거부수량), ccld_cndt_name(체결조건명), infm_tmd(통보시각), ctac_tlno(연락전화번호), prdt_type_cd(상품유형코드), excg_dvsn_cd(거래소구분코드)
output22 = inquiryResults.get('output2')
outputs2 = json.loads(output22)
# tot_ord_qty(총주문수량), tot_ccld_qty(총체결수량), pchs_avg_pric(매입평균금액), tot_ccld_amt(총체결금액), prsm_tlex_smtl(추정제비용합계)
return inquiryResults
반응형
'SWDesk' 카테고리의 다른 글
[Python] 주식 자동 주문 : 기간별 시세 조회하기 (0) | 2023.05.26 |
---|---|
[Python] 주식 자동 주문 : 계좌 잔고 조회 (1) | 2023.05.19 |
[Python] 주식 자동 주문 : 해쉬(hash) 만들기 (0) | 2023.05.05 |
[Python] 파워포인트의 슬라이드 노트 내용을 자막파일로 변환 (0) | 2023.03.31 |
[Python] How to Treat Click Process in Selenium (0) | 2023.03.09 |
반응형
250x250
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Hurdles
- 둎
- image
- Innovations&Hurdles
- BSC
- Video
- 빌리언트
- 허들
- badp
- arduino
- Innovations
- Innovation&Hurdles
- DYOV
- 전압전류모니터링
- 티스토리챌린지
- 치매방지
- 오블완
- 절연형
- 혁신
- 아두이노
- 혁신과허들
- 배프
- Decorator
- 전압
- 심심풀이
- 치매
- 심심풀이치매방지기
- 전류
- bilient
- ServantClock
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함