def test2(request): app = QApplication(sys.argv) kiwoom = Kiwoom() # Kiwoom 인스턴스 생성 kiwoom.commConnect() # API 접속 feeder = DataFeeder(kiwoom) code = "005930" # 삼성전자 # TR요청(request)에 필요한 parameter는 KOAStudio를 참고하시길 바랍니다. # OPT10004: 주식호가요청 params = {"종목코드": code} data = feeder.request(trCode="OPT10004", **params) return JsonResponse(data)
def testSendOrderSuccess(self): app = QApplication(sys.argv) # API 로그인 kiwoom = Kiwoom.instance() kiwoom.commConnect() feeder = DataFeeder(kiwoom) executor = Executor(kiwoom) accNo = feeder.accNo code = "005930" orderSpecDict = executor.createOrderSpec( rqName="test", scrNo="0000", accNo=accNo, orderType=1, # 신규매수 code=code, qty=1, price=0, hogaType="03", originOrderNo="", ) for _ in range(2): orderResponse = executor.sendOrder(**orderSpecDict)
def __init__(self): super().__init__() self.setWindowTitle("PyStock") self.setGeometry(300, 300, 300, 150) a = Kiwoom.instance() dataFeeder = DataFeeder(a) a.commConnect() a.getConditionLoad()
def test(request): app = QApplication(sys.argv) kiwoom = Kiwoom() # Kiwoom 인스턴스 생성 kiwoom.commConnect() # API 접속 feeder = DataFeeder(kiwoom) code = "005930" # 삼성전자 # TR요청(request)에 필요한 parameter는 KOAStudio를 참고하시길 바랍니다. # OPT10004: 주식호가요청 params = {"종목코드": code} data = feeder.request(trCode="OPT10004", **params) """ # OPT10059: 종목별투자자기관별요청 params = { "일자": "202003013", "종목코드": code, "금액수량구분": "1", # 1:금액, 2:수량 "매매구분": "0", # 0:순매수, 1:매수, 2:매도 "단위구분": "1", # 1:단주, 1000:천주 } data = feeder.request(trCode='OPT10059', **params) # OPTKWFID: 관심종목정보요청 # ※ 예외적으로 requestOPTKWIFID 메서드를 호출 params = { "arrCode": "005930;023590", # 종목코드를 ;로 구분 "next": 0, # 0 연속조회여부 (0: x) "codeCount": 2, # 종목코드 갯수 } data = feeder.request(**params) """ print("데이터 ::: " + str(data)) return render(request, 'test2.html', {'data': data})
def main(): app = QApplication(sys.argv) kiwoom = Kiwoom.instance() kiwoom.commConnect() feeder = DataFeeder(kiwoom) executer = Executor(kiwoom) tr_watcher = TrWatcher(kiwoom, feeder) order_watcher = OrderWatcher(kiwoom, executer) loop = asyncio.get_event_loop() coroutineList = [ tr_watcher.run(main_func_name="request"), order_watcher.run(main_func_name="sendOrder"), ] loop.run_until_complete(asyncio.gather(*coroutineList))
# "arrCode": "005930;023590", # 종목코드를 ;로 구분 # "next": 0, # 0 연속조회여부 (0: x) # "codeCount": 2, # 종목코드 갯수 # } # data = feeder.request(**params) # print(data) import sys from PyQt5.QtWidgets import QApplication from kiwoom_api.api import Kiwoom, DataFeeder, Executor import time if __name__ == "__main__": app = QApplication(sys.argv) kiwoom = Kiwoom() # Kiwoom 인스턴스 생성 kiwoom.commConnect() # API 접속 feeder = DataFeeder(kiwoom) executor = Executor(kiwoom) print('feeder.accNo : ', feeder.accNo) print('kiwoom.accNo : ', kiwoom.accNo) # print('feeder.getAccountDict() : ', feeder.getAccountDict("6101405841")); # print('kiwoom.getChejanData() : ', kiwoom.getChejanData()); # accNo = '8151674211' #dohwan accNo = '8152212611' #juyoung code = "005930" # 삼성전자 # code = "036630" # 세종텔레콤