728x90
반응형

2. 해외선물 120

(키움증권 해외선물 자동매매 파이썬) 20. 오버나잇(overnight) 피하는 방법 (매매 종료시간 설정)

목 차 1. 들어가며 2. 사전설명 1) 청산후 대기(time.sleep)하는 방법 2) 청산후 시스템 종료(shutdown)하는 방법 3. 전체코드 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 "진입후 매매시간 및 청산후 대기시간" 설정에 대해 알아보았다. 개인의 투자성향에 따라 달리 설정하거나, 아예 미설정할 수 있는 내용이다. 사용자가 잘 판단하여 본인의 프로그램에 적용하자. 필자의 경우도 "진입후 매매시간"을 1시간 설정을 바꿀 의향이 있다. 1시간은 너무 길어서 "시장의 변동성"에 유연하게 대응하지 못할 것 같기 때문이다. 매매시간을 수정할지는 차차 고민해볼 문제이다. 이번 글에서는 매매정지를 위해 자동매매 시스템을 멈추는 방법을 알아보자. 필자의 경우 오버나잇(overnight)을 ..

(키움증권 해외선물 자동매매 파이썬) 19. 매매시간 및 대기시간 설정

목 차 1. 들어가며 2. 사전설명 1) 진입후 매매시간 설정 필요성 2) 청산후 대기시간 설정 필요성 3. 코드설명 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 진입/청산 시도횟수를 구하는 방법을 알아보았다. 개인의 취향이겠지만, 자동매매 과정에서 파이참(pycharm) 화면에 아무것도 출력되지 않는다면, 매매가 제대로 이루어지고 있는지 고민이 많을 것이다. 자동매매 시스템에 익숙해질 때까지는 화면에 시도횟수를 출력하는 것도 좋아보인다. 이번 글에서는 시간을 설정/제한하는 방법을 알아보자. 2. 사전설명 1) 진입후 매매시간 설정 필요성 long이든 short이든 진입을 해서 수익/손실로 설정한 값에 도달하면 청산을 하는 경우로 설정한다. 그런데, 진입 후 횡보장일 때 어떻게 할 것인가? 대..

(키움증권 해외선물 자동매매 파이썬) 18. 진입/청산 시도횟수 체크하기

목 차 1. 들어가며 2. 사전설명 3. 코드설명 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 시간대별 다른 코드 적용을 위한 "시간 구분"에 대해 알아보았다. 현재시간을 구하고, while을 이용하여 일정시간 반복 및 if, elif, else를 통해 시간구분을 할 수 있을 것이다. 이번 글에서는 진입/청산 시도횟수 체크하기에 대해 알아볼 것이다. 진입/청산 시도횟수 체크하는 것이 필요한 이유는 무엇일까? 자동매매 시스템을 구축하였다고는 해도, 제대로 돌아가는건지 의문이 들 때가 많다. 파이썬이라는 낯선 언어, 키움증권API를 통해 키움서버에 접속하여 데이터를 요청하고 받아오는 행위가 제대로 이루어지고 있는지 확인하고 싶을 때가 많다. 이러한 이유로 "진입/청산 시도횟수" 체크 및 출력을 통..

(키움증권 해외선물 자동매매 파이썬) 17. 시간별 다른 코드 적용하기

목 차 1. 들어가며 2. 사전설명 1) 현재시간 출력 2) 일정시간 코드 실행 3) 시간 구분하는 방법 3. 코드설명 1) 현재시간 출력하기 2) 시간 구분하기 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 "현재시간" 출력하는 방법을 알아보았다. 파이썬의 datetime 라이브러리를 활용하였고, 생각보다 코드가 간단하다는 것을 느꼈다. 이번 글에서는 시간별 다른 코드 적용하는 방법을 알아볼 것이다. 제목이 부담스러울 정도로 거창하긴 한데, "시간대별 다른 코드 적용"하는 코드도 간단하니, 부담없이 알아보도록 하자. 2. 사전설명 시간별로 다른 코드(알고리즘)을 적용하기 위해 우리가 알아야 할 3가지는 첫번째 현재시간 출력이며, 두번째는 일정시간마다 코드 실행, 마지막으로 "다른 시간"을 구분..

(키움증권 해외선물 자동매매 파이썬) 16. 현재시간 출력하기

목 차 1. 들어가며 2. 사전설명 3. 코드설명 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 해외선물 거래를 위해 필요한 보조지표를 얻는 방법을 알아보았다. 보조지표는 어디까지나 매매를 위한 보조수단일뿐 지나치게 맹신하지 않아야 한다. 이유는? 시장은 항상 변하기 때문이다. 이번 글에서는 해외선물 자동매매를 위해 필요한 "시간 관리"에 대해 알아볼 것이다. 시간 관리가 필요한 이유는 무엇일까? 서머타임(3월중순 ~ 11월초) 기준으로 아침7시~익일 6시까지 23시간 시장이 열려있다. 이 중 거래량이 폭발적으로 증가하는 미국장이 개장하는 22:30~05:00까지의 알고리즘과 05:00~22:30분까지의 적용할 알고리즘이 동일할 수는 없을 것이다. 왜냐하면, 거래량과 선물가격의 변화량에서 압도적..

(키움증권 해외선물 자동매매 파이썬) 15. 보조지표 구하기 (볼린저밴드, MACD, 스토캐스틱)

목 차 1. 들어가며 2. 코드설명 1) 볼린저밴드 2) MACD 3) 스토캐스틱 3. 전체코드 4. 마치며 1. 들어가며 지난 글에서는 RSI 지표의 코드 작성에 대해 알아보았다. 필자는 개인적으로 rsi 보조지표를 선호하는 편이다. 그래서 구체적으로 작성했던 것 같다. 이번 글에서는 예전에 설명했던 보조지표들에 대해 간략히 설명할 예정이다. 코드의 상세한 설명은 링크를 걸어둔다. 사실, 보조지표의 설명을 다시 해야하나... 상당히 고민했다. 지난 글의 rsi처럼 새로운 내용이 추가되는 게 아닌데, 중복된 설명은 글을 쓰는 필자도 그렇고, 글을 읽는 사용자도 집중력이 떨어질 수 밖에 없을 것 같다. 그래서, 중복된 내용은 링크를 걸고, 보조지표를 실시하는 "코드"를 공유(4. 전체코드)하는 차원에서 이..

(키움증권 해외선물 자동매매 파이썬) 14. rsi 구하기

목 차 1. 들어가며 2. 사전설명 1) 영웅문G에서 1분봉의 RSI 확인하는 방법 2) RSI 기본설정은 14일(분) 3. 코드 설명 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 SendOrder 함수를 통해 주문하는 방법을 알아보았다. opw30011(주문가능수량) 조회 후 SendOrder 함수를 사용하면 진입/청산을 할 수 있을 것이다. 이번 글에서는 1분봉 종가 데이터를 활용하여 RSI 구하는 방법에 대해 알아보자. 지금은 기존 코드에 추가로 데이터를 작성하고 있다. 이번에도 기존코드에 RSI를 추가하여 작성할 것이다. RSI의 개념 및 구하는 방법은 아래 링크를 참고하면 된다. 기존에 설명하였으므로, 간략히 설명한다. ※ 해외선물 1분봉의 데이터에서 RSI를 구하는 방법은 이미 설명..

(키움증권 해외선물 자동매매 파이썬) 13. 주문하기(SendOrder)

목 차 1. 들어가며 2. 사전설명 1) 데이터 요청 방법 2) 주문정보를 입력하기 위해 필요한 정보 3) 주문넣는 코드 3. 코드 설명 4. 전체 코드 5. 마치며 1. 들어가며지난 글에서는 opw30011(주문가능수량 조회)을 통해 사용자가 주문할 수 있는 수량을 받아오는 방법을 알아보았다. 주문가능수량을 조회하는 이유는? long이든 short이든 해외선물에 진입(주문)하기 위해서이다. 이번 글에서는 SendOrder 함수를 통해 long/short 주문하는 방법을 알아볼 것이다. 아래의 내용은 과거에 작성한 글이며 참고하자. (기존 코드에 추가하여 작성한다) ※ 주문하는 글은 국내주식/해외선물에서 이미 설명하였다. ㅇ 국내주식 주문하기 : https://springcoming.tistory.com..

(키움증권 해외선물 자동매매 파이썬) 12. 주문가능수량 조회 (opw30011)

목 차 1. 들어가며 2. 사전설명 1) 주문가능수량 조회의 필요성 2) 청산가능수량 조회의 필요성 3) WKOA Studio에서 TR 확인하기 3. 코드 설명 4. 전체코드 5. 마치며 1. 들어가며 지난 글에서는 "Tr 목록" 중 하나인 opw30009(예수금 및 증거금 현황조회)을 통해 해외선물 매매시 필요한 "주문가능금액" 조회 방법을 알아보았다. 나중에 설명하겠지만, "주문가능금액 조회"로 진입을 할지, 청산을 할지 여부에 대한 코드가 각각 다르게 적용되니, 천천히 이해하면서 숙지하도록 하자. 이번 글에서는 "Tr 목록" 설명의 마지막인 opw30011(주문가능수량 조회)에 대해 알아보고자 한다. 영웅문G의 "화면번호 4520"에서 "신청" 버튼을 누르면 주문가능수량이 조회된다. ※ opw300..

(키움증권 해외선물 OpenAPI-W) 스토캐스틱(Stochastic) 값 구하기 (4) 스토캐스틱 오실레이터(Stochastic Oscilla

목 차 1. 들어가며 2. 사전설명 1) 산출식 ① 오실레이터 패스트 %D 구하기 ② 오실레이터 슬로우 %D 구하기 2) 오실레이터 계산하기(엑셀) ① fast %k(12분) 구하기 ② fast %d(26분) ③ slow %k(26분) 3. 코드 설명 4. 전체코드 1) Stochastic Oscillator 관련 코드 2) Stochastic 전체코드 5. 마치며 1. 들어가며지난 글에서는 스토캐스틱 Slow %F, %D에 대해 알아보았다. Fast %F, %D를 구할 때 어떻게 결과값을 얻을지 고민을 해봐서인지, Slow %F, %D 값은 수월하게 그 값을 구할 수 있었다. 키움측 자체 Slow %F를 구하는게 약간 힘들었지만, 그래도 Fast 값 얻을 때의 막막함은 없었다. 이번 글에서는 스토캐스틱..

728x90
반응형