'주식 자동매매 강의/중급반(시황 및 차트 구현)' 카테고리의 글 목록 (2 Page)
본문 바로가기

반응형

주식 자동매매 강의/중급반(시황 및 차트 구현)

ts4 [키움 조건검색식 주식자동매매(17)] 실시간 분할 매수하기 저번 강의에서 실시간으로 등록된 종목을 매수하는 법을 알아보았습니다. 이번 강의에서는 실시간 분할 매수를 할 것인데 이미 분할 매수에 대한 강의가 다 되어 있으니 개념 위주로 간단히 설명드리겠습니다. 1. 실시간 분할 매수하기 : 이전 강의 개념 위주 복습 이전 강의에서 분할 매수하기 위한 중요한 부분은 딱 3가지입니다. GUI를 보면서 잠깐 설명드리겠습니다. (1)의 매수 가격은 이미 정해 두었죠. 이 부분은 자동매매가 시작 된 다음부터는 불변입니다. (2) 매수가격 % 정하기 이전 강의에도 말씀드렸지만 매수 가격 정하는 것 이 매우 중요합니다. 우리는 프로그램이 가동되었을 때 등록 종목의 매수 시작가를 알 고 있기 때문에 현재가가 매수시작가 대비 얼마나 높은지 또는 낮은지 알 수 있습니다. 따라서, .. 더보기
ts4 [키움 조건검색식 주식자동매매(16)] 실시간 매수 주문하기(중복매수 방지, 매수조건 확인) 조건 검색식 종목도 가져왔고 실시간 등록도 하였습니다. 이제 실시간 현재가가 원하는 조건이 되었을 때 매수하는 알고리즘을 작성해 보겠습니다. 관련 코드는 기초반 강의와 95% 동일하니 참고하시기 바랍니다. 실시간 매수 주문하기 오늘은 매수 주문을 위한 코드만 살펴보도록 하겠습니다. (1) 장 중 멈춤을 확인하는 stop_mesu가 0이고(1이면 장 중 매수가 멈추게 됩니다) 오늘 매수할 종목의 코드를 모아놓은 code_list에 현재 실시간으로 넘어오는 sCode가 존재해야 매수가 시작됩니다. 만약 code_list에 sCode가 없는 경우 매수되지 않습니다. 예를 들어 계좌평가 잔고내역에 있는 종목들은 매도만 관리하므로 code_list에 없기 때문에 중복 매수되지 않습니다. (2) 매매 가격 파악하기.. 더보기
ts4 [키움 조건검색식 주식자동매매(15)] 장 실시간 상태 및 등록 종목 현재가, 거래량 등 데이터 받기 이전 강의에서는 조건 검색식 종목을 검색하고 실시간 등록하는 것까지 해보았습니다. 오늘은 관련된 실시간 데이터인 장 상태 및 등록 종목 현재가, 거래량 등을 받아서 저장해 보겠습니다. 1. 장 실시간 상태 확인 데이터 받기 이전 강의에서 아래 그림과 같이 실시간 데이터는 realdata_slot에 받는다고 코딩하였습니다. 이때 장 실시간 상태 확인 데이터는 아래와 같이 확인 합니다 (1) 우선 장운 영구분데이터를 REALTYPE에서 가져와 fid에 저장합니다(REALTYPE 스크립트는 기초반에 있습니다). 그리고 GetCommRealDta를 이용해 장운영구분 데이터를 키움 서버로부터 수신합니다. (2) 수신된 데이터가 0이면 장 시작 전(9시 이전), 3이면 장 시작(오전 9시~오후 3시 20분), 2면.. 더보기
ts4 [키움 조건검색식 주식자동매매(14)] 2분마다 검색된 종목 실시간 등록 및 장 중 매수 멈춤/재시작 명령 금일 강의는 매우 중요한 부분입니다. 조건 검색식으로 탐지된 종목을 실시간 등록하고 장 중 멈춤 또는 재시작 명령을 수행합니다. 그리고 우리가 분할 매수/매도한 가격도 동시에 저장해야 합니다. 1. 주기적으로 특정 행위를 하는 함수 만들기 이전 강의에서 주기적으로 조건검색식 종목을 가져오는 코딩을 했었죠? 이번에는 그 코딩을 약간 응용해서 종목 확인 및 시간 확인을 해보겠습니다. - 이전 강의와 동일하게 printhellowWorld() 함수를 호출합니다. 아래는 printhellowWorld() 함수 구조입니다. (1) 우선 오늘의 시간을 알기위해 strftime함수를 사용하여 시/분/초 정보를 new_time으로 저장합니다. (2) 그리고 new_time에서 넘어온 데이터 중 알파벳을 제거하고 dat.. 더보기
ts4 [키움 조건검색식 주식자동매매(14)] 중복 매수 방지 및 매매를 위한 기본 세팅 이전 강의에서는 실시간 자동매매를 위한 기본 GUI 생성 및 스레드 생성을 하였으며, 이번 강의에서는 중복 매수 방지 및 매매를 위한 스레드 기본 세팅해보겠습니다. 중복 매수 방지 및 매매를 위한 스레드 기본 세팅 이전 강의에서 세팅한 self.k = Kiwoom() 다음으로, 4가지의 세팅을 실시합니다. (1) 우선 Main_Script와 싱글턴에 저장된 계봐번호 self.k.acc_number에서 Thread53에서 효율적으로 사용할 수 있도록 self.account_num으로 인스턴스화 합니다. 계좌번호는 다양한 주문을 넣을 때 사용됩니다. (2) 기초반에서 강의 하였지만, 실시간 주문을 넣을 때는 반드시 FID 번호가 필요하며, self.realType에 인스턴스화 합니다. (3) 종목검색식에서 .. 더보기
ts4 [키움 조건검색식 주식자동매매(13)] 장 시작 시간 설정 및 자동매매 Thread(스레드) 구성하기 아래 그림에서 12강까지 파란색 부분을 완료하였습니다. 이번 강의부터는 실시간 자동매매를 위한 빨간색 부분을 코딩할 것이며, 자동매매 시작 스레드와 장 중 멈춤/장 재시작 부분의 기초를 다지도록 하겠습니다. 1. 장 중 멈춤/장 재시작 설정 투자를 하다보면 특정 시간대에는 멈추고 또는 재시작을 할 경우가 있습니다. 많이들 알려져 있지만 단타의 경우 오전 9시부터 오전 10시 오후 2시 30분부터 오후 3시 10분까지 해야 된다고 합니다. 그때 거래량이 가장 활발하기 때문입니다. 이렇게 전략적 구동을 위해서 시간에 관련된 함수가 반드시 필요합니다. 개인적으로 이 부분 값을 불러오고 실시간 매매에 적용한다고 고생 좀 하였습니다. 왜 그런지는 차차 말씀드리겠습니다. (1) GUI 구성 : Time Edit를 .. 더보기
ts4 [키움 조건검색식 주식자동매매(12)] 매수/매도 파라미터 DB화 하기 이번이 아마 3~4번째 매수/매도 파라미터 DB화 하기 강의일 것입니다. 기초반에서 아주 상세히 다뤘으니 중급반인만큼 개념만 다루도록 하겠습니다. 1. DB화 개념 아래 그림을 보시면 빨간색안에 다양한 값들이 있습니다. 저 값을 저번 강의에서 초기화하였죠. 하지만 매번 저 값을 수정할 수 없으니 한번 수정한 값을 저장 후 DB 로드하시면 투자 시 조금 더 편하게 매매를 하실 수 있습니다. 또한 원치 않는 값은 삭제하셔야겠죠. 그럼 코딩을 시작하겠습니다. 2. DB 저장하기 아래 그림을 보시면 Kiwoom_meme.py 부 메인스크립트에 DB 저장의 objectName인 Save_Stock이 클릭되었을 때 Save_selected_code가 실행되게 합니다. Save_selected_code함수는 아래와 .. 더보기
ts4 [키움 조건검색식 주식자동매매(11)] 매매(매수/매도) GUI Double Spinn Box DB 초기화 작업 이전 강의에서는 매매를 위한 GUI를 만들었습니다. 이번 강의에서는 매매를 위한 GUI값을 초기화하는 방법을 말씀드리겠습니다. 이전에도 강의했지만... 리마인드 하시는 마음으로 읽어 주십시오. 1. 종목 당 매수금액 초기화 종목 당 매수 금액을 표현하는 price_mesu를 초기화하겠습니다. 코딩은 아래와 같습니다. - Kiwoom_meme.py 스크립트에서 작업을 실시합니다. - price_mesu GUI에 setvalue 함수를 사용하여 1000000원을 입력합니다. 즉 초기 값은 1000000원입니다. - 그리고 setAlignment 함수를 사용하여 상/중/하 중 중앙에 정렬 후 다시 우측 정렬합니다. - 그리고 secDecimals(0)을 입력하여 소수점을 제거합니다. - 결과는 아래와 같습니다.. 더보기

반응형

.link_tit