오늘은 주식 과거 시세 조회하는 방법에 대하여 정리합니다. 과거 시세 데이터는 분 정보와 일 정보를 조회할 수 있습니다.

 

분 정보는 T8412를 이용하면 됩니다.

T8412조회를 위하여 chart_min() 함수를 만들었습니다. 입력변수는 아래와 같습니다.

 

# code : 조회할 code

# min_type : 주기구분 : 0:30초 1: 1분 2: 2분 ..... n: n분

# sdate : 시작 date

# edate : 끝 date

# qrycnt : 조회할 최대 수(500 정도면 하루치 분 정도 조회 가능)

def chart_min(code, min_type, qrycnt, sdate, edate, cts_date='', cts_time=' ') :

 

------------------------------

 

일 정보는 T8413을 이용하면 됩니다.

T8412조회를 위하여 chart_min() 함수를 만들었습니다. 입력변수는 아래와 같습니다.

 

# gubun : 주기구분(2:일 3:주 4:월)

# sdate : 시작 date

# edate : 끝 date

# qrycnt : 조회일자

def chart_day(code, gubun, qrycnt, sdate, edate, cts_date='') :

 

--------------------

 

이 함수를 이용하여 특정 종목들에 대하여 원하는 일자의 분, 일 시세 정보를 download할 수 있는 함수는 다음과 같습니다.

 

def download_min_data(codes, min_type, from_date, to_date) :

def download_chart_day(codes, dt, days) :

 

 

분 시세 조회 함수 사용법은 아래와 같습니다.

 

codes = ['069500', '114800']  # 복수 코드 입력 가능

from_date = 20200701 # 시작 일자 yyyymmdd

to_date = 20200708 # 끝 일자 yymmdd

# 종류 : 0:30초 1: 1분 2: 2분 ..... n: n분

min_num = 1 # 1분 데이터

download_min_data(codes, min_num, from_date, to_date)

 

 

일 시세 조회 함수 사용법은 아래와 같습니다.

 

codes = ['069500', '114800']  # 복수 코드 입력 가능

to_date = 20200707 # 다운받을 최종일자 (숫자 8자리)

num_days = 1 # 최종일 이전 며칠 , (당일만 원하는 경우에는 1, 7/7일 이전 10일치가 필요하면 10)

download_day_data(codes, to_date, num_days)

 

 

조회결과는 같은 폴더에 아래 형식으로 저장이 됩니다.

-- 분 데이터 --

069500_20200707_min_bong.txt

069500_20200707_min_bong.csv 

 

-- 분 데이터 --

069500_20200707_day_bong.txt

069500_20200707_day_bong.csv 

 

 

GUI로 원하는 code와 일자를 입력한 후 버튼을 누르면 간단하겠지만, 현재는 code와 일자는 소스에서 수정하는 방식입니다.

 

8412, 8413 버튼을 누르면 아래 함수가 호출됩니다.

 

8412 -> def Min_Chart_8412(self) :

8413 -> Day_Chart_8413(self):

 

이 함수에 원하는 코드와 일자를 입력하시면 됩니다.

 

만약 전 종목에 대하여 일/분 시세 데이터를 받고 싶으면 종목 코드를 다운 받은 후 for loop을 돌리시면 됩니다.

 

전체 소스는 아래 github에 있습니다.

 

 

https://github.com/multizone-quant/xing-api/blob/master/xing_sample.py

 

 

반응형

설정

트랙백

댓글

xing api의 장점 중의 하나가 Q 검색을 api로 할 수 있다는 점입니다. Q 검색으로 추출되는 종목은 매수 관점에서 지켜볼 필요가 있죠.

 

이번 글에서는 Q 검색리스트를 구한 후 해당 검색 조건에 맞는 종목을 검색하는 과정을 설명합니다.

 

 

우선 Q 검색 리스트를 얻는 TR은 T1826입니다.

아래 화면은 Q 검색 리스트를 받아온 상태입니다.

 

q검색리스트를 받아오는 함수는 get_q_query_list() 입니다. 입력으로는 아래 세 값 중의 하나를 정하면 됩니다.

  

def get_q_query_list(gubun) :  # gubun : 구분 (0(전체), 1(코스피), 2(코스닥))

 

검색 결과는 지원하는 Q 검색 번호의 리스트를 돌려줍니다.

특별한 사항이 없기 때문에 코드에 대한 자세한 설명은 생략합니다.

 

-------------

검색 조건 중 왼쪽에 있는 번호를 이용하여 각 검색 조건에 해당하는 종목을 받아올 수 있는 TR은 T1825입니다.

함수명은 get_q_query()입니다. 입력으로 들어가는 q_code는 T1826에서 받은 검색번호입니다. 구분은 get_q_query_list()와 같은 값을 사용합니다.

 

def get_q_query(q_code, gubun='0') :  # q_code : 검색 코드, gubun : 구분 (0(전체), 1(코스피), 2(코스닥))

 

샘플 프로그램에서는 모든 조건에 대하여 검색한 결과를 최대 12개까지 보여줍니다.

 

아래 화면은 Q 검색을 한 결과입니다.

 

타 증권사에 없는 xing만의 좋은 기능이니 적극 활용하시기 바랍니다.

 

source 코드는 아래 github에서 다운받으세요.

 

https://github.com/multizone-quant/xing-api

반응형

설정

트랙백

댓글