AUTO TRADE/[키움증권] Kiwoom Open API

opt10001 : 주식기본정보요청

반응형

 

opt10001 함수 정보

발생 이벤트 OnReceiveTrData
입력값 종목코드
반환값 종목코드, 종목명, 결산월, 액면가, 자본금, 상장주식, 신용비율, 연중최고, 연중최저, 시가총액, 시가총액비중, 외인소진율, 대용가, PER, EPS, ROE, PBR, EV, BPS, 매출액, 영업이익, 당기순이익, 250최고, 250최저, 시가, 고가, 저가, 상한가, 하한가, 기준가, 예상체결가, 예상체결수량, 250최고가일, 250최고가대비율, 250최저가일, 250최저가대비율, 현재가, 대비기호, 전일대비, 등락율, 거래량, 거래대비, 액면가단위, 유통주식, 유통비율

 


1. 데이터 요청을 위한 rq_opt10001 함수 제작

## 기본 형태
def rq_opt10001(self)
	self._setinputvalue("종목코드", '005930')                  ## 입력값 입력
	self._commrqdata("rq_opt10001", "opt10001", 0, "0101")    ## opt10001을 trcode로 전달
    
## 종목 코드를 전달해서 사용하고 싶다면
def rq_opt10001(self, code):
	self._setinputvalue("종목코드", code)
	self._commrqdata("rq_opt10001", "opt10001", 0, "0101")

※ 주의 : _commrqdata()의 맨 첫 인자로 전달되는 "rq_opt10001"은 굳이 똑같이 작성할 필요가 없습니다. 왜냐하면 아래의 OnReceiveTrData 함수 내에서 rqname == ""를 통해 식별하기 위한 임의의 코드이므로 아무렇게나 설정해도 됩니다. 다만 다르게 설정하셨다면, 아래의 def OnReceiveTrData, if rqname == "" 부분도 동일하게 변경해주셔야 됩니다.

 

2. OnReceiveTrData 내에서 trcode를 매개로 처리

## OnReceiveTrData 이벤트 발생 시 실행되는 함수
## self.kiwoom.OnReceiveTrData.connect(self.OnReceiveTrData)
def OnReceiveTrData(self, scrno, rqname, trcode, recordname, prenext):

	if rqname == "rq_opt10001":
		self._opt10001(trcode, recordname)

 

3. 데이터 수신을 위한 _opt10001 함수 제작

## 뒤의 "item_name"에는 앞서 정리한 반환값을 입력 ex) "종목코드"
## 앞의 item_name에는 반환값에 알맞은 변수이름 입력 ex) item_code

def _opt10001(self, trcode, recordname):
	item_name = self._getcommdata(trcode, recordname, 0, "item_name")
	
	## 예시
	volume = self._getcommdata(trcdoe, recordname, 0, "거래량") 
	vix = self._getcommdata(trcode, recordname, 0, "등락율")

 

 


728x90
반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.