본문 바로가기
Programming/Trading

[시스템 트레이딩] 종목 코드 얻기

by NAMP 2017. 2. 25.

[시스템 트레이딩] 종목 코드 얻기

사이보스플러스를 이용합니다. 기본 프로그램들을 모두 설치한 후에 CpUtil.CpCodeMgr를 이용하여 종목 코드들을 얻을 수 있습니다.

야후 파이넨스를 사용하려다가 안되서, 사이보스를 활용하였습니다.

아래 코드는 윈도우에서만 실행이 가능합니다.

결과 파일은 ..\\data\\kospi.csv 로 저장됩니다.

결과 파일의 내용은 아래와 같습니다.

A001525,동양우 A023350,한국종합기술 A018670,SK가스 ...

전체 코드

import win32com.client import re class StockCodes: def savecodes(self): instCpCodeMgr = win32com.client.Dispatch("CpUtil.CpCodeMgr") codeList = instCpCodeMgr.GetStockListByMarket(1) kospi = {} for code in codeList: name = instCpCodeMgr.CodeToName(code) kospi[code] = name f = open('..\\data\\kospi.csv', 'w') for key, value in kospi.items(): if self.is_unable_read_code(key, value) == True: continue f.write("%s,%s\n" % (key, value)) f.close() def is_unable_read_code(self, code, name): pattern = r'^KOSPI|KODEX|SMART|ARIRANG|KBSTAR|TIGER|KINDEX|KOSEF|대신B\d{3}' if re.match(pattern, name): return True if re.match(r'\d+호$', name): return True if re.match(r'^Q', code): return True return None if __name__ == "__main__": stockcode = StockCodes() stockcode.savecodes()


댓글