문서 편집

목차

팡규의 자동 매매 프로그램

메뉴얼을 작성하기 위해 생성된 문서 입니다.

팡규님의 블로그 메뉴얼을 기초로 작성 되었습니다.

보다 자세한 정보는 팡규님의 블로그를 방문 하시어 확인 하시기 바랍니다.

블로그 커뮤니티 유튜브

팡규님 블로그 문서를 발췌 함에 있어, 업데이트 순서, 문서의 나열, 문서 편집 시점 등의 오류 등이 포함 될 수 있습니다.

프로그램의 업데이트 또는 추가 삭제되는 부분 등을 누구나 수정할 수 있도록 하기 위해 작성된 문서 입니다.

사용중 도움이 될만 한 팁 등을 해당 위치에 넣어 주면 보시는 분에게 도움이 됩니다.

작은 관심과 수고가 보는 분들에게 많은 도움이 됩니다.

자동 매매 프로그램은

아래는 팡규님의 블로그에서 발췌 및 수정 되었습니다.

블로그 : http://autostock.tistory.com 커뮤니티 : http://www.muryostock.com 유투브 : https://youtu.be/Qr5bRGN1kkg

1. 퐝규의 자동매매 프로그램의 시작

2016년 3월부터 재테크를 하기 위하여 차근차근 진행하여 왔던 시스템 매매 프로그램을 드디어 공개하게 되었다. 주식을 처음 접하는 시기에 막상 시작은 하였지만 매매 타이밍을 놓치기 일수였고 무엇보다 회사 업무시간에 핸드폰을 만지작 거리니 너무 신경이 쓰였다. 그렇게 시간이 흐르고 금전적인 손실과 귀차니즘이 최고조에 올랐을 떄 '프로그램이 자동으로 사고 팔고 하면 신경을 안써도 되지 않을까?' 하는 생각이 들어 자동매매 프로그램에 첫발을 내딛게 되었다.

2. 금전적인 부담이 없는 무료 프로그램

프로그램을 처음에 준비하면서 8개월 정도는 자금을 약 2000만원 정도 투자 하여 월 회비가 있는 유료 프로그램을 이용 하였다.

이용 초기에는 수익도 생기도 금방 부자 되겠다 싶을 정도로 좋았다. 그렇지만 월 회비를 지불 할때마다 원금이 되고 이후에는 손실이 되고 의미가 없었다. 즉, 돈을 번다라는 느낌이 없었다. 그리고 프로그램에서 매수하여 묶여 있는 종목이 늘어가면서 돈이 유동성이 없어지고 '교착상태'가 되었다. 즉, 돈이 묶인다 라고 해야 하지요. 이 후 7종목에 2000만원 가까이 분산되어 프로그램은 몇 달동안 그냥 켜고 끄고 하는 상태가 된다. 그렇게 답답하게 진행되다가 겨우겨우 원금에 가까워져 수동 매매하고 빠져 나왔다. 이렇게 수익이 없는 상태 인데도 월 회비가 지불 된다면 부담이 많이 되겠지요. 이러한 경험 때문에 무료로 배포를 하게 되었다.

3. 커스터 마이징

저는 주식을 잘 알지는 못함. 단지, 주식을 자동으로 사고팔수 있도록 프로그램만 만들었을 뿐임. 즉, 프로그램 상에 제공되는 전략들도 제가 주식을 하면서 "아, 이런게 있었으면 좋겠다." 라고 판단해서 기능을 넣은것 뿐임. 제가 만든 전략은 그저 손실을 최소화 하고 수익도 적당히 벌어보려고 만든 것 임.(아직 수익도 없다.)

이용 하시는 분들과의 활발한 커뮤니케이션을 통하여 프로그램으로 돈을 벌 수 있는 최고의 전략을 가능하다면 넣어드리고 싶다.

단, 제가 프로그램 전문이 아니라 그 전략을 프로그램으로 표현하지 못할 수도 있다는 점 양해 부탁 줌.

4. 완전자동매매

퐝규의 키움자동매매 프로그램은 기본 설정 값만 입력하고 조건식만 등록하면 모든 거래는 자동으로 사고팔게 된다.

- 특정조건 검색시 매수

- 특정조건 검색시 매도

- 분할매수, 매도

- 기간별 수익율 가변

- 추격매수

- 자동 재실행(통신두절, 지정시간)

- 거래종목갯수(최대 100개)

- 거래종목금액 지정(최대,최소)

- 종목당 최대 매수금액 지정

- 자동 로그인

프로그램 설치

프로그램 설치 전 작업

팡규님 블로그에서 발췌 및 수정 되었습니다.

'퐝규의 자동매매 프로그램'을 사용하기에 앞서 먼저 진행이 필요한 작업이 있습니다. 바로 키움증권의 Open API+ 입니다.

자동매매 프로그램이 키움증권에 연결하여 필요한 전략을 수행할 수 있도록 해주는 프로그램 입니다.

키움 Open API+ 설치 안내 : https://www2.kiwoom.com/nkw.templateFrameSet.do?m=m1408000000

STEP 1. Open API+ 사용신청

키움 Open API+를 사용하기 위해서 사용 등록 신청을 먼저 합니다.

300

300

STEP 2. Open API+ 모듈 다운로드 및 설치

사용 신청 후 키움 Open API+ 모듈을 다운로드 하여 설치합니다.

400

STEP 3. 닷넷 프레임 워크 4.5버전 설치

프로그램을 구동하기 위한 닷넷 프레임 워크 4.5 버전 을 다운로드 하여 설치합니다.

닷넷 프레임 워크 4.5 다운로드 링크 https://www.microsoft.com/ko-kr/download/details.aspx?id=30653

설치하지 않고 프로그램을 실행하시면 무반응이거나 오류가 발생될 수 있으니 설치하고 실행해 주시기 바랍니다.

STEP 4. Office 드라이버 설치

프로그램 실행전 Office 드라이버도 같이 설치해 주시면 됩니다.

Microsoft Access Database Engine 2010 재배포 가능 패키지 https://www.microsoft.com/ko-KR/download/details.aspx?id=13255

혹시나 안되시면 아래 2007 오피스 드라이버를 설치하신후 시도해 보세요!!

2007 Office system 드라이버: 데이터 연결 구성 요소 https://download.cnet.com/2007-Office-System-Driver-Data-Connectivity-Components/3001-10254_4-75452798.html

설치하지 않고 프로그램을 실행하시면 무반응이거나 오류가 발생될 수 있으니 설치하고 실행해 주시기 바랍니다.

STEP 5. 모의환경 테스트

이제 자동매매 프로그램을 다운받아 설치하고 실행 할 준비가 되었습니다. 단, 사용자의 컴퓨터 환경에 따라 프로그램에 오류가 발생할 수 있으므로 실계좌 적용 전 모의투자 계좌를 생성하여 충분한 테스트를 권고 드립니다.

다운로드 및 설치

아래는 팡규님의 블로그에서 발췌 및 수정 되었습니다.

블로그 : http://autostock.tistory.com

퐝규의 키움자동매매 프로그램은 개인적인 용도로 만들어진 프로그램 입니다.

거창하게 셋업프로그램등은 따로 존재 하지 않습니다. 배포된 프로그램을 다운로드 하고 압축을 풀어 실행만 하면 됩니다.

필수사항으로 키움 Open API+가 먼저 설치되어 있어야 합니다.

1. 프로그램 다운로드

최신버전은 블로그 게시물을 검색해주시기 바랍니다.

버전 2.4.3 - 키움 버전 - 버전 2.4.2와 같으며, 사용기간만 연장 되었음. https://autostock.tistory.com/142?category=718662

버전 2.4.2 - 키움 https://autostock.tistory.com/140?category=718662

초기버전 : http://autostock.tistory.com/14

2. 압축 해제 후 폴더 배치

압축해제를 하면 총 4개의 파일이 존재합니다.

실행시 별다른 에러가 생기지 않도록 최상위 드라이브(C:\나 D:\)에 폴더를 생성하여 4개의 파일을 옮겨 주시면 됩니다.

단, 폴더명은 영문으로 생성해주시기 바랍니다.(한글도 상관은 없지만 프로그램에 오류가 발생할 수 있습니다.)

3. 프로그램 실행

파일의 목록 중 Kiwoom_auto.exe 파일을 실행하시면 자동매매 프로그램이 실행 됩니다.

기존 준비과정에서 문제가 없다면 키움자동매매 프로그램을 실행하시는 분들은 아래와 같은 화면이 나오게 됩니다.

이 부분까지 원활하게 진행을 하신분들은 '퐝규의 키움자동매매' 프로그램을 정상적으로 이용하기 위하여 환경설정을 하는 방법에 대해 알아보도록 하겠습니다.

오늘은 퐝규의 키움자동매매 프로그램의 시스템 설정에 대하여 알아 보도록 하겠습니다.

일단 환경설정 부분은 제가 주식을 하면서 사용하는 전략입니다. 이 부분에서 여러분이 생각하시기에 "어? 왜 이런게 없지?" 라고 생각하실 수 있습니다. 예를 들면 청산(손절) 기능이 없습니다. 제가 사용하는 전략은 종목당 최대 매수 금액이 소액으로 다수 보유, 스윙,중,장기보유로 가져가기에 저는 수동매매로 손실 부분에 대해서 청산(손절) 하고 있습니다. 조건검색식으로 청산도 가능합니다. 단지, 제가 그런 전략을 잘 모릅니다. 혹시나 여러분께서 알고 계시는 전략이 있고 제안해주신다면 추가해 보도록 하겠습니다.

시스템 설정 및 로그인

아래는 팡규님의 블로그에서 발췌 및 수정 되었습니다. 블로그 : http://autostock.tistory.com

1. 시스템설정 실행

프로그램을 처음 실행하시면 아래와 같이 로그창에 '계좌번호나 비밀번호를 재확인해주세요!!' 라는 메시지가 표시됩니다. 초기에 계좌번호나 비밀번호, 전략 설정값등이 입력이 되지 않아 나오는 메시지 이며 거래는 진행되지 않습니다.

좌측 상단 메뉴바에 '시스템설정' 이라는 메뉴를 선택하시면 아래 이미지와 같은 설정 화면이 실행이 됩니다.

2. 설정값 입력

프로그램이 정상적으로 운영되는지의 우선적인 확인을 위해 아래 화면처럼 설정값을 입력하여 주시면 됩니다. 개인적인 용도로 사용하던 프로그램으로 입력값의 오류사항등을 확인하지 않으니 주의해서 입력 해주시면 됩니다.

※ 참고로 계좌번호는 끝에 식별코드가 들어가게 되어 있습니다. 총 10자리 이며 기존 계좌번호 뒤에 '11' 또는 '10'을 붙이시면 됩니다.

※ 신규설치나 프로그램 업데이트시에는 모의투자계좌에서 반드시 테스트 하시고 실매매 하시기 바랍니다.

설정값 입력 후 왼쪽 하단의 '설정저장(재시작시 적용됨)' 버튼을 클릭합니다. 이후 프로그램을 종료하여 재실행 합니다.

3. 키움증권 모의투자 계좌 로그인

키움증권 Open API+는 매매프로그램 자체에서 고객의 ID, PASSWORD를 자동으로 입력을 할 수 없습니다. 다른 방안이 있으니 일단 모의투자 접속 부분의 체크박스를 체크하고 ID, PASSWORD를 입력하여 로그인 하시면 다음으로 진행이 됩니다. ※ 100초 이내에 로그인 하셔야 프로그램이 종료되지 않습니다.

이후 메시지 박스가 생성되면서 '조회에 사용한 계좌비밀번호를 입력하십시오' 라는 메시지가 나타나게 됩니다.

위 상태에서 윈도우 우측 시계가 있는 부분의 아이콘에서 화살표와 같은 아이콘을 찾아 마우스 우측 버튼을 클릭하여 '계좌비밀번호 저장'을 선택합니다.

'계좌비밀번호 저장'을 선택하시면 아래 이미지와 같은 화면이 나타나는데 해당계좌 선택 후 '계좌확인 ' 부분에 패스워드를 입력하여 '등록'을 합니다.

'등록'을 하시면 '계좌확인'이라는 글자가 등록으로 바뀌게 되고 이 후 하단에 'AUTO' 체크박스를 선택하고 화면을 닫습니다.

그리고 프로그램을 종료하여 재실행 합니다.

프로그램을 재실행 하면 별도의 로그인 없이 자동으로 계좌에 로그인이 되고 프로그램이 매매 가능한 상태가 됩니다.

이렇게 아래 화면까지 문제없이 진행이 되시면 기본적인 설치는 완료가 되었습니다.

그림

설치 및 실행 과정중 문제점이 있으시면 댓글 남겨 주시면 답변해 드리겠습니다.

다음에는 '팡규의 키움자동매매'프로그램에서 조건 검색식등록하여 사용하는 방법에 대해 살펴보도록 하겠습니다.

감사합니다.

화면 구성 및 설정

1. 화면 구성

프로그램을 실행하면 나오는 화면

상단에 계좌 번호, 프로그램 사용 기한, 컴퓨터의 날짜 및 시간이 표시 됩니다.

키움증권 Open API+에서는 현재날짜 및 시간을 제공하지 않습니다.

팡규의 자동매매 프로그램의 날짜 및 시간을 컴퓨터 로컬 시간에 동기화 되어 있으므로 컴퓨터의 날짜를 인터넷 기간에 동기화 시켜 사용해 주시면 됩니다. 날짜를 다르게 해도 거래는 됩니다.

시스템 설정 메뉴는 일반 조건, 매수 조건, 매도 조건을 설정 할 수 있습니다.

메인 탭은 프로그램을 실행하면 나오는 첫 화면 입니다.

트레일링 스탑 탭은 트레일일 스탑에 대한 설정을 할 수 있습니다.

종목정보 탭은 종목 필터링, 지정가 매수, 매도 등을 설정 할 수 있습니다.

1. 계좌 및 잔고 정보

잔고정보에는 로그인된 계좌의 정보가 다음과 같이 표시가 됩니다.

- 투자원금 : 사용자가 시스템설정에서 입력한 투자원금이 표시 됩니다.

- 예탁자산총액 : 계좌의 추정예탁자산정보가 표시 됩니다.

- 총손익율 : 투자원금과 예탁자산총액을 계산하여 투자금액 대비 현재의 총 손익율이 표시 됩니다.

- 예수금(D2) : 계좌의 D+2추정예수금 정보가 표시 됩니다.

- 잔고매입금액 : 주식을 매입한 총 금액이 표시 됩니다.(약간의 오차가 발생할 수 있습니다.)

- 잔고평가금액 : 주식을 매입한 총 금액 대비 현재 총 평가금액이 표시 됩니다. (약간의 오차가 발생할 수 있습니다.)

- 잔고평가손익 : 주식을 매입한 총 금액 대비 현재 총 평가금액과의 손익이 표시 됩니다.(약간의 오차가 발생할 수 있습니다.)

- 손익율 : 주식을 매입한 총 금액과 현재 총 평가금액을 계산하여 보유종목들의 매입금액 대비 총 손익율이 표시 됩니다.

- 주문가능(증거100%) : 주문이 가능한 금액이 증거금 100% 기준으로 표시 됩니다.

- 실현손익 : 당일 매도/매수로 인하여 발생한 손익금액이 표시 됩니다.

- 매도금액대비 당일실현손익률 :

- 종목당 최대매수 금액 : 시스템설정에서 입력한 값을 기준으로 주문가능금액에 따라 최대매수금액이 조절이 된다고 했었습니다. 주문시 가능한 최대매수금액이 표시되며 가변이 되는 금액도 이부분에서 확인 하실 수 있습니다.

- 계좌보유수량 : ★ / ★ → 현재 보유 종목 / 최대 매수 종목 으로 표시 됩니다.

2. 매수된 종목의 정보

보유 목록의 종목을 더블 클릭하면 메시지 박스가 나타나게 됩니다.

'시장가 매도', '현재가 매도' 가 있으면 사용시 메시지 박스에 표시되는 정보보다 실제 잔고의 정보로 매도를 진행하게 됩니다.

보유 목록의 종목을 우클릭 하면 메시지 박스가 나타나게 됩니다.

'지정가 매수', '지정가 매도'를 설정할 수 있습니다.

3. 매수된 종목 리스트 선택하면 종목에 대한 정보

종목별로 추가 매수 및 매도 금지를 설정 할 수 있음.
팁>> 추가 매수, 매도 금지 활성은 시스템 설정에서 가능

4. 전일 및 금일의 코스피 및 코스닥 지수 정보

5. 공지사항/회원정보/특수기능/특수기능2/후원하기

공지사항

회원정보

특수기능

특수기능2

후원하기

6. 자동매매/자동매매 정지

자동 매매

일반 조건, 매수 조건, 매도 조건, 트레일링 스탑들의 설정을 바탕으로 자동 매매를 시작 합니다.

자동매매 정지

자동 매매를 정지 합니다.

7. 로그 및 매수 매도 정보 표시

팡규의 자동매매 프로그램을 이용하면서 발생하는 동작에 대한 정보가 로그로 표시 됩니다. 하루동안의 거래정보 및 로그인 정보, 프로그램 알림정보등이 LOG파일에 저장이 됩니다.

자동매매 프로그램을 설치하였던 폴더로 가면 'log_file'이라는 폴더가 생성이 되어 있습니다. 선택을 하고 들어가시면 해당 날짜 및 최근시간에 만들어진 LOG파일을 선택하시면 내용을 확인하실 수 있습니다.

8. 시스템설정/이 프로그램은

시스템 설정

이프로그램은...

9. 날짜 및 시간

키움증권 Open API+에서는 현재날짜 및 시간을 제공하지 않습니다. 팡규의 자동매매 프로그램의 날짜 및 시간을 컴퓨터 로컬 시간에 동기화 되어 있으므로 컴퓨터의 날짜를 인터넷 기간에 동기화 시켜 사용해 주시면 됩니다. 날짜를 다르게 해도 거래는 됩니다. 하지만 로그정보도 잘못된 정보로 저장이 되므로 주의하시기 바랍니다.

프로그램 상단에서 확일 할 수 있습니다.

시스템 설정

안녕하세요.

오늘은 퐝규의 키움자동매매 프로그램의 시스템 설정 값에 대하여 알아 보도록 하겠습니다.

(조건 검색식 관련 설정값은 이전에 설명하였기 때문에 제외하였습니다.)

팁>>시스템 설정을 수정 후 설정저장을 눌러 저장한다. 설정저장을 누르지 않으면 적용되지 않음. 

1. 계좌정보 및 투자원금

1-1. 계좌 번호 및 투자 원금

- 계좌번호 : 자동매매 프로그램을 이용하기 위해서는 키움증권에 계좌가 존재하여야 합니다. 키움증권의 계좌번호를 시스템 설정에 기호없이 숫자만 입력해 주시면 됩니다.

- 투자원금 : 자동매매프로그램을 이용하면서 총 투자금액 대비 현재 얼마의 손익이 발생 하였는지를 한눈에 보기위해 입력하는 부분입니다. 기호없이 숫자만 입력해 주시면 됩니다.

실매매 계좌와 모의투자 계좌의 매매수수료가 서로 다릅니다. 초기는 모의투자로 설정되어 있으니 테스트를 충분히 하신 후 실매매 계좌로 사용시 모의투자 체크박스를 OFF하시고 이용하시면 됩니다.

1-2. 설정 저장

일반조건/매수조건/매도 조건의 매매 설정을 하시고, 설정 저장 버튼을 눌러 설정을 저장 후 프로그램을 재시작 합니다.

설정저장 버튼을 누르지 않으면 변경된 내용이 저장되지 않으며, 또한 프로그램에 적용 되지 않습니다.

2. 설정파일 저장

- 시스템 설정-일반조건

- 시스템 설정-매수조건

- 시스템 설정-매도조건

의 설정값을 파일로 저장 합니다.

3. 설정파일 불러오기

- 시스템 설정-일반조건

- 시스템 설정-매수조건

- 시스템 설정-매도조건

의 설정값을 파일로 부터 불러 옵니다.

시스템 설정(일반조건 탭)

1.시스템 운영시간(매수,매도)

프로그램 운영 시간을 설정 합니다.

예시) - 시간의 설정은 오전 9시 ~ 오후 3시 30일 경우

- 뒤에서 부터 두자리씩 잘라 00시/00분/00초 로 구분 됩니다.

- 오전 9시 → 9:00:00 → 90000 , 오후 3시30분 → 15:30:00 →153000

2. 지정시간에 재시작

- 자동매매 프로그램이 가동중에 통신이 두절되면 자동으로 재접속을 시도하게 되어 있습니다.

하지만 이 경우 통신이 두절되지 않으면 재시작 하지 않으며 키움증권에서는 오전시간에 다음과 같은 메시지 박스를 출력 합니다.

즉, 6시 50분 이전부터 지난 정보가 반영이 되지 않았으니 재시작 하라는 얘기인듯 합니다. 이 부분을 해결하기 위한 설정값 입니다.

참고로 프로그램을 다중으로 사용시에도 시간차이를 두어 실행할 수도 있습니다.

- 사용법은 특정한 기호 없이 '시간분초순'으로 입력하시면 됩니다.

예를 들어 '83000'이라고 입력하시면 오전 8시 30분 00초에 재시작 하게 됩니다.

다른 예를 들어 보자면 '85530'를 입력하시면 오전8시55분30초에 재시작을 하게 됩니다.

3. 보유종목수량

자동매매로 거래 하면서 최대보유가능한 종목의 수량을 설정하는 부분 입니다. 총 100종목 까지 가능하며 따로 필터링을 하지 않으니 초과 입력하지 마시길 바랍니다.

종목수가 적을수록 프로그램의 부하가 적으며 최대 300종목 까지 설정하면 그만큼 부하가 커져 프로그램이 느려집니다. .

4. 통신 두절시 재시작

프로그램을 여러개 실행 하실경우 재시작 시간을 다르게 설정하실 수 있습니다.

서로 다르게 시간을 설정하여 여러개의 프로그램이 통신두절이나 지정시간에 동시에 실행되어 버벅거리거나 다운되는 문제를 해결하실 수 있습니다.

5.환경설정 명칭

프로그램의 상단 탭에 표시되는 문구입니다.

환경 설정명을 지정하여 현재 로딩된 설정파일의 명칭을 알 수 있습니다.

단타용, 장기투자용등 명칭으로 구분하여 사용하실 수 있습니다.

6. 재세금율

시스템 설정에서 사용자가 재세금율 및 수수료율 입력 가능하도록 수정하였습니다.

7.전체주문

프로그램의 초기매수, 추가매수, 매도에 대하여 체크시 해당 매매를 금지(실행하지 아니)한다.

프로그램 실행 후 사용하고자 하는 매매방식에 대하여 체크 해제 하여야 자동 매매 가능

8.보유종목수 비율

보유 종목수에 따라 %로 자동으로 분류됩니다.

예를 들어 현재 보유가능종목이 100종목 이라면

- 코스피 100%, 코스닥 100% 로 설정하실 경우

코스피든 코스닥이든 100종목 한도내에서 매매됩니다.

- 코스피 50%, 코스닥 50% 일 경우

코스피, 코스닥 각각 50종목씩 제한됩니다.

- 코스피 50%, 코스닥 100% 인 경우

코스피는 50종목으로 제한, 코스닥은 100종목 까지 가능합니다.

- 코스피 20%, 코스닥 20% 인 경우

코스피는 20종목, 코스닥 20종목 으로 제한됩니다.

참고로 API버전을 항상 최신으로 유지해주셔야 합니다. 최신으로 유지하지 않으면 종목이 추가되도 '코스피', '코스닥' 구분이 안될 수 있기때문에 매수가 안될수 있습니다.

9.프로그램 실행시

- 자동 로그인 : 프로그램 실행시 자동 로그인 되도록 설정 할 수 있습니다.

- 자동매매를 시작 합니다 : 프로그램 실행시 자동 매매가 되도록 설정 할 수 있습니다.

10. 조건식 재실행

신규매수시 사용자가 '장중 재실행'을 선택한 검색식(추가매수,매도 조건에만 해당)에 대해 검색식을 재실행 합니다.

조건식의 장중 재실행 최소 주기는 동일 한 조건식의 마지막 실행 시간으로 부터 60초 입니다.(짧게 하면 실행이 실패됩니다.)

(예시)

A-추가매수와 G-매도 식에 장중 재실행을 체크하였습니다.

테스트 계좌에는 삼성전자를 보유중으로 프로그램 실행후 파미셀을 매수.

테스트 조건식(모의투자는 계좌의 보유종목 선택으로 안되기 때문에 포트폴리오를 관심종목으로 선택)을 작성합니다.

관심종목에 삼성전자만 있는 경우이고 조건식을 작성함.

이렇게 매도식을 작성후 관심종목에 삼성전자만 존재하는 상태에서 프로그램 실행후 조건식이 로드되면 삼성전자에 대해서는 매도조건식이 동작을 합니다.

하지만 이미 조건식이 실행된 상태에서 삼성전자가 아닌 다른 종목을 매수하면 매도 조건식 신규로 매수된 종목에 대해서는 동작하지 않습니다.

이런 경우 프로그램을 재실행 하여서 조건식을 다시 로드하여야 합니다. 이를 편하게 사용할수 있도록 하는 기능이 장중 재실행 입니다.

관심종목에 파미셀을 등록한 후에 HTS에서 수동으로 파미셀을 매수하면 검색식이 재실행되고 매도가 진행됩니다.

(모의투자 이기때문에 관심종목으로 사용하였습니다. 실계좌에서는 보유계좌 선택이 가능합니다. 참고하세요)

09:59:54.249 :: '==================== 시스템이 시작 되었습니다. ===================='

10:14:07.088 :: 005690_파미셀_주문가:시장가_주문수량:1_주문번호:58438_[매수주문]_HTS

10:14:07.691 :: 005690_파미셀_체결가:19550_체결수량:1_[매수체결]_HTS

10:01:35.383 :: 조건식 실시간 조회를 취소를 실행합니다.

10:01:35.412 :: 매도테스트 - 조건식 실시간 조회를 취소 하였습니다.

10:01:36.603 :: 매도테스트 - 조건식 실시간 조회 재실행이 성공 하였습니다.

(실제로 아래 굵은 메시지는 파일을 열 경우에만 보입니다. 일반 프로그램 로그창에서는 보이지 않음. 실패 메시지는 프로그램 창에 표시)

10:17:02.198 :: 005690_파미셀_-0.66%_수량:1_주문가:시장가_[매도] :: 매도테스트 매도 시그널인경우 3%이하 매도()

10:17:02.388 :: 005690_파미셀_주문가:시장가_주문수량:1_주문번호:59617_[매도주문]_HTS

10:17:02.789 :: 005690_파미셀_체결가:19600_체결수량:1_[매도체결]_HTS

11. 조건식 명칭

<조건식 설정에 앞서 알아 두어야 할 것>

팡규님의 블로그에서 발췌…https://autostock.tistory.com/10?category=718663

자동매매 프로그램의 '초기매수조건' 입니다. 프로그램이 주식을 팔아 수익을 내기 이전에 매수가 먼저 진 행이 되어야 합니다.

※ 이 조건식은 검증된 조건식이 아닙니다! 자동매매 프로그램이 원활하게 동작하는지 확인하기 위한 조건식으로서 참고만 하시기 바랍니다.

주의하실 점은 초기 매수시 조건검색식에 노출되는 종목은 최소한으로 하셔야 합니다.

조건 검색식으로 10종목 50종목 80종목이 동시에 검색이 되면 프로그램에서 오류가 발생할 수 있습니다.(참고 - 일단 기준은 100 종목 이하가 되어야 할 듯 랍니다. 너무 많은 종목이 나오면(100종목 이상의) hts에서도 검색이 어쩌고 나오긴 하던데…이부분은 몇 종목이 가능한지 확인 이 필요할 듯 합니다.)

A 조건식 순번

A~J까지 설정할 수 있으며, 일반에서 설정한 조건식이 매수탭, 매도탭의 해당 알파벳 부분에서 서로 연동되어 작동합니다.

B 매매 방식

작성된 조건 검색식을 이용하여 매수, 매도 적용 방식 선택

초기매수 :

조건식을 적용하여 기존 보유 종목에 포함 되지 않는 종목(비보유 종목)에 대하여 매수 주문 합니다.(종목에 대한 최초 매수)

추가매수 :

추가 매수는 프로그램이 초기 매수를 하여 보유하고 있는 종목이 있어야 사용을 할 수 있습니다.

보유 수량과 현재 수익율을 기준으로 매수 수량을 조절 할 수 있습니다.

매도 :

조건식을 적용하여 보유 종목을 매도시 선택

설정에 대한 자세한 부분은 매수조건 탭 설명에서 확인

초기매수(5분할)로 이동 || 추가매수(5분할)로 이동

C 조건 검색식

키움에서 작성된(서버에 저장된) 검색식을 이용하여 종목을 매수, 매도

1. 키움 HTS 에서 조건 검색식 작성 및 저장

2. 키움 조건식 이름과 같은 이름으로 넣어준다.

D 사용(실시간)

체크시 설정한 매수 조건과 조건식등을 적용하여 종목을 매매 한다.

E 자동 매매 적용 시간

조건식별 자동 매매 프로그램에 적용할 시간을 설정한다. (D부분 설정이 체크 되어 있는 경우만 적용된다.)

F 동시호가(장마감)

체크시 동시 호가(장마감) 주문을 합니다.

동시 호가 사용시 일반 주문(보통가, 시장가 주문등….)은 진행되지 않습니다.

동시호가매매(단일가매매)란

① 장시작 전 08:30 ~ 09:00 사이의 주문

② 장마감 전 15:20 ~ 15:30 사이의 주문

③ 시간외단일가매매 (16:00 ~ 18:00)시 주문

④ 급격한 주가변동으로 인해 서킷브레이커, 변동성완화장치(V.I) 등이 발동된 경우

⑤ 단기과열종목, 투자위험종목 등으로 지정된 종목이 단일가매매 조건에 도달한 경우

⑥ 상장폐지 전 정리매매

G 장중 재실행

신규매수시 사용자가 '장중 재실행'을 선택한 검색식(추가매수,매도 조건에만 해당)에 대해 검색식을 재실행 합니다.

조건식의 장중 재실행 최소 주기는 동일 한 조건식의 마지막 실행 시간으로 부터 60초 입니다.(짧게 하면 실행이 실패됩니다.)

12. 텔레그램 연결

- 텔레그램을 연동하여 간단한 프로그램 동작 상태 보고 및 지시 가능

로그만으로는 업데이트 내용을 사용자가 인지하지 못할수 있어 로그인시 업데이트 관련 메시지를 텔레그램으로 송신함.

12-1. 텔레그램 설정

아래는 제가 테스트용으로 만든 봇입니다. 다른분들은 직접 봇을 만들어 Token을 생성해서 사용하셔야 합니다. 봇 만드는 법은 추후 게재하도록 하겠습니다.

1) 프로그램 실행시 동작 상태 보고 메시지 입니다.

로그인 성공, 시스템 동작, 시스템 정지, 프로그램 재실행, 프로그램 종료, 체결정보가 보고됩니다.

2) 프로그램 실행중 사용자 명령 입니다.

/로그

자동 매매 프로그램의 로그 내용을 텔레그램으로 보여 줍니다.

/재실행

자동매매 프로그램이 재실행 됩니다.

/종료

자동매매 프로그램이 종료 됩니다.

/start

자동매매 프로그램이 온라인 상태인지 간단히 접속 여부를 확인할 경우 사용하시면 됩니다.

시스템 설정(매수조건 탭)

시스템 설정(매수조건 탭)

1. 초기매수 방식

일반 설정 탭의 조건식 매수에서 매수 방식이 초기매수인 경우,

기존 보유 종목이 아닌 종목에 대하여 매수 주문 된다.

1-1. 수량으로 매수 : 아래 설정된 수량으로 매수 주문 함.

종목의 1주당 가격(주가)에 상관 없이 설정한 수량으로 매수 주문.(2번 종목당 최대매수금액제한 설정시 주가의 범위를 설정할 수 있다.)

1-2. 금액으로 매수 : 아래 설정된 금액으로 매수 주문 함.

설정된 금액 / 1주당 가격 = 수량 으로 계산하여 매수 주문 함.(계산된 수량이 1 이하일 경우 1주를 매수 주문 함.)

예) 100,000원(설정금액) / 10,000원(1주의 가격) = 10주로 매수 주문

예) 100,000원(설정금액) / 150,000원(1주의 가격) = 0.6666 ⇒ 1주 매수 주문

1-3. 금액 초과 제한 : 체크시 위(1-2)에 설정한 금액을 초과 하여 매수되지 않도록 할 수 있다.

1-4. 매수 주문 종류를 선택 함.

1-4-1. 분할매수(보통가) : 9.번 설정 초기매수(5분할) 의 설정으로 보통가 매수 주문 함.

1-4-2. 분할매수(시장가/보통가) : 9.번 설정 초기매수(5분할) 의 설정으로 시장가와 보통가로 매수 주문 함. (첫번째 매수만 시장가로 매수 하고 나머지는 보통가 매수함.)

[초기분할 매수로 이동] [추가분할 매수로 이동]

- 매수(보통가) : 설정된 수량 또는 금액, 전체를 보통가로 매수 함.

- 매수(시장가) : 설정된 수량 또는 금액, 전체를 시장가로 매수 함.

1-5. 종목 필터링

이베스트 시스템 매매를 하면서 계좌를 3개를 운영했습니다.

초기에 프로그램으로 종목의 구분을 했어야 하는데.. 검색식이 다르더라도 A 프로그램에서 매수한 종목이 B 프로그램에서도 매수되는 경우가 있어 중복으로 매수가 되는 경우가 있었습니다.

키움증권은 다중 프로그램이 어렵지만 '초기매수 필터링' 을 이용하여 본인이 원하는 종목내에서 거래를 하도록 유도할 수 있습니다.

DB데이타에 초기에는 모두 미편입 상태로 되어 있습니다.

참고로 해당 항목에 '편입' 할경우 시스템이 적용되며 '미편입'은 관여하지 않습니다.

종목이 실시간으로 업데이트 되지는 않으므로 추가 및 삭제 또는 수정되는 종목은 따로 우측의 버튼을 이용하여 등록하거나 변경하실 수 있습니다.

2. 매수 종목 취소/최대 금액

- 최소/최대 금액 설정으로 초기 매수시의 매수금액 조절이 가능합니다.

- 이미지와 같이 설정 하시면 종목의 현재가가 1,000 이상/ 40,000원 이하인 종목만 초기매수를 하게 됩니다.

(단, 추가 매수에는 관여하지 않습니다.)

예) 1000원 이상 20,000이하의 종목을 매수.

3. 종목당 최대 매수 금액 제한

3-1. 종목 최대 매수금액 :

최대 매수 금액을 지정하시면 프로그램은 설정하신 최대매수금액 이하 또는 최대매수금액의 90%까지 추가되어 매수될 수 있습니다.

예를 들면, 최대 매수 금액이 1,000,000원 이며 현재 보유종목이 999,000원까지 매수가 되었을 때 추가 매수를 하면서 보유 종목의 매입금액이 최대 매수금액 1,000,000원을 초과하지 않으므로 설정하셨던 분할 매수가 진행이 됩니다.

그래서 최대 매수금액이 약간 초과가 될 수 있습니다.

다른 예로 추가 매수를 진행하면서 보유종목의 매입금액이 1,023,000원이며 추가매수 신호가 나왔을 경우 현재 매입금액이 최대 매수금액 1,000,000을 초과하므로 추가매수는 진행되지 않습니다.

3-2 감액 :

설정하신 종목의 최대매수금액이 1,000,000원이라 하였을 경우 초기매수, 추가매수, 매도를 반복하면서 주문가능금액이 변동이 생기게 됩니다.

얼마정도 거래가 흐르고 주문가능금액이 800,000원이 남아있을때 현재 보유 종목의 매입금액이 900,000원 이고 이 상태에서 추가매수 신호가 나오면 주문금액은 주문가능금액을 초과하게 됩니다.

이런 문제를 해결하기 위한 설정값 입니다.

설정값을 4,000,000원 이라고 입력하였을 경우를 예로 들자면 주문 가능금액이 4,000,000원 이상일 경우 종목의 최대 매수 금액은 설정값이 최대 1,000,000원이며,

주문가능 금액이 3,900,000원으로 되었을 때 1차적으로 종목의 최대 매수 금액은 설정값의 90%로 줄어들며 이후 주문가능금액이 초기 입력값의 80%이하가 되면 종목의 최대 매수 금액은 설정값의 80%로 줄어들게 됩니다.

이런식으로 주문 가능금액이 줄어 들 경우에 가변이 되도록 하는 설정값 입니다.

4. 당일 매수/당일 매수 금액 제한

4-1. 당일 매수 횟수 제한 사용

종목당 당일 매수에 대한 횟수를 제한 합니다.

4-2. 당일 매수 금액 제한 사용

당일의 매수되는 금액을 제한하는 기능입니다.

당일의 매수금액 제한을 30000원 이라 하였을때 상한선을 제한하여 매수되는 기능은 아닙니다. 초기매수 수량이 2000원짜리 20주를 매입한다 하였을때 매수금액이 40000원이 되고 당일의 매수금액이 제한금액 30000원을 초과하므로 더이상 추가매수 하지 않습니다. 추가 매수시 현재 보유금액이 29000원 정도이며 당일의 매수금액이 0원이고 추가매수 조건식이 검출되어 추가로 수량을 매입 한다 했을때 29000원(원금) + 21000원(추가금) 이 합해져 49000원이 된다고 하면 당일의 매수금액이 제한금액 30000원을 초과하여 더이상 추가매수를 진행하지 않습니다.

기존에는 매수시 설정한 금액이 있어도 약간씩 초과하거나 최대 2배의 금액까지 매수가 되는 조건이었습니다.

좀더 타이트 하게 매수를 진행하고자 하시는 분들은 금액 초과 제한기능을 사용하시면 지정한 금액 이상으로 초과되어 매수되지 않습니다.

예를 들어 초기매수 방식을 수량으로 50주를 지정하고 최소/최대 초기매수금액을 최대 40000원까지 지정하였을 경우 2000원 짜리 주식을 매수한다 했을때..

금액초과제한 기능 미사용시 2000*50 = 100000원의 주식을 매입하게 됩니다.

금액초과제한 기능 사용시 2000*50 = 100000은 40000원을 초과하므로 자동으로 수량을 계산하여

2000*20=40000원의 주식을 매입합니다.

금액초과제한 기능은 모두 3가지 이며 가장 금액이 낮은것을 기준으로 진행하게 됩니다.

금액초과 제한 기능을 사용안하시면 업데이트 전과 동일하게 진행 됩니다.

음.. 그런 경우는 없겠지만.. 종목당 최대 매수제한금액은 20000원으로 입력하시고 당일 매수금액 제한을 100000원 했는데.. 20000원 이상을 매수하지 못해요 라고 하시는 분들은 없으시겠죠;; ㅎㅎ

당일 매수된 금액을 표시합니다. 날짜가 바뀌면 초기화 됩니다.

5. 종목별 추가매수 금지사용/동시호가(장마감)사용

5-1. 종목별 추가매수 금지 사용

선택시 종목별로 추가 매수 금지를 사용할 수 있습니다.

5-2. 동시호가(장마감) 사용

- 장마감시 조건식으로 검색된 종목이나 사용자가 설정한 종목에 대해 동시호가(장마감)시 '시장가 매수' 진행

동시호가(장마감)은 초기매수로만 진행.

1) 초기 사용시 시스템 설정 - 매수조건 탭에서 '동시호가(장마감) 사용' 을 체크.

2) 일반조건 - 조건식 명칭 항목에서 '동시호가(장마감)'을 체크하면 해당 조건식에 대해서만 검색된 종목에 한하여 장마감 5분전에 '시장가'로 주문이 들어감.

검색식으로 검색된 경우 종목정보탭에서 '동시호가(장마감)' 항목에 '시장가 매수'로 변경되며 '동시호가(검색식)' 항목에 해당 조건식의 명칭이 기록됨.

단, 이 기능은 프로그램이 실행시에만 기록되며 프로그램 종료후 재실 행시 기록이 삭제되고 다시 검색식에 검출되었을때만 재기록 됨

만일 검색식에 의한 '동시호가(장마감)' 주문이 아닌 사용자가 직접 지정하려면 종목정보-동시호가 탭에서 직접 지정해 주시면 됩니다.

단, 사용자가 지정한 기능은 프로그램 종료 후 재실행 시에도 유지되며 날짜가 변경된 후 실행시 초기화 됩니다.

해당 종목은 장마감 5분전에 일괄적으로 주문이 진행 되며 참고로 장마감 시간은 사용자가 일반조건에서 장마감 시간을 15시30분으로 설정한 경우 15시25분에 주문이 들어가게 됩니다.

6. 초기매수 금지시간

자동 매매 운영 중 임의로 자동 매매를 지정된 시간 만큼 매매(매수/ 매도) 하지 않는 기능 입니다( 프로그램이 종료 되는 것은 아님)

여러가지 매매전략 중 시간을 적용하는 하는 개념으로 이해 하시면 되실 듯 합니다.

7. 추가매수 금지시간

설정된 시간 동안 추가 매수에 대한 매수 주문을 하지 않습니다.

8. 추가매수(조건식)

9. 초기매수(5분할)

초기 매수 방식에서 분할매수(보통가) 또는 분할매수(시장가/보통가)를 선택시 설정 합니다.

- 분할매수(보통가) :

종목당 설정된 금액의 한도 내에서 5분할 매수 주문 할 수 있습니다.

첫번째 ~ 다섯번째 분할 매수를 모두 보통가로 매수 주문 합니다.

- 분할매수(시장가/보통가) :

종목당 설정된 금액의 한도 내에서 5분할 매수 주문 할 수 있습니다.

첫번째 분할 매수는 시장가로 매수 주문 하며, 두번째~다섯번째 분할 매수는 보통가로 매수 주문 합니다.

10. 추가매수(5분할)

시스템-일반탭의 조건식 매수에 추가매수를 설정 하였을 경우 분할 매수 주문 합니다

- 분할매수(보통가) :

종목당 설정된 금액의 한도 내에서 5분할 매수 주문 할 수 있습니다.

첫번째 ~ 다섯번째 분할 매수를 모두 보통가로 매수 주문 합니다.

- 분할매수(시장가/보통가) :

종목당 설정된 금액의 한도 내에서 5분할 매수 주문 할 수 있습니다.

첫번째 분할 매수는 시장가로 매수 주문 하며, 두번째~다섯번째 분할 매수는 보통가로 매수 주문 합니다

(예시)

주문가능 수량을 기준으로 추가매수가 진행됩니다. 최초 주문이 23주일 경우 매수/매도 분할옵션의 사용유무에 따라 주문을 진행합니다.

주문 수량에 대한 비율로 계산했을때 수량이 0이 나온경우 첫번째 분할 매수는 1주씩 매수됩니다.

(매도는 수량 계산이 0인 경우 주문되지 않습니다.)

금액초과제한 옵션을 사용하는 경우

최초 주문 수량을 기준으로 각 분할 옵션에서 주문되는 수량을 제외한 나머지를 기준으로 주문이 진행됩니다. (금액초과제한 옵션에서 사용하는 금액중 최저 금액을 기준으로 수량이 계산됩니다.)

예를 들어 최초주문이 23주 이고 첫번째 분할 주문에서 2주를 주문했다면 다음 두번째 분할 주문에서는 21주를 기준으로 4주를 주문

다음 세번째에서는 17주를 기준으로 5주를 주문

다음 네번재 에서는 12주를 기준으로 4주를 주문

다음 다섯번째 에서는 8주를 기준으로 4주를 주문하게 됩니다.

금액초과제한 옵션을 모두 사용하지 않는 경우

주문 수량에 대한 %를 계산하여 증거금에 따라 주문수량이 제한되며(증거금이 초과하지 않는경우 해당 %수량으로 계산) 각 분할매수 수량이 정해집니다.

주문수량은 증거금을 초과하지 않습니다.

11. 초기매수/추가매수/전량매도 후 재매수/매수추가매수 후 지연 시간등

기존 10초 이상으로만 셋팅하던 부분을 2초 이상으로 변경하였습니다. 단, 너무 짧은 주기의 주문은 오류가 발생할 수 있으니 참고해 주세요.

11-1. 초기매수 주문 유지시간

초기 매수 주문 후 유지 시간을 설정 합니다.

초기 매수 주문 후 매수가 되지 않은 수량은 지정된 시간이 지나면 자동 주문이 취소 됩니다.

11-2. 추가매수 주문 유지시간

추가 매수 주문 후 유지 시간을 설정 합니다.

추가 매수 주문 후 매수가 되지 않은 수량은 지정된 시간이 지나면 자동 주문이 취소 됩니다.

11-3. 전량 매도 후 재매수 지연시간

보유 종목을 전량 매도 후 지정한 시간후 지정한 시간이 지난 후 재매수 주문을 합니다.

11-4. 매수/추가매수 후 재매수 지연시간

초기매수이후 바로 추가매수 조건이 검색되어도 지연시간 만큼 시간이 지난 후 매수를 하게 됩니다.

추가매수이후 바로 추가매수 조건이 검색되어도 지연시간 만큼 시간이 지난 후 매수를 하게 됩니다.

참고로 4분할 매수의 경우…

첫번째로 1분할만 매수가 되고 나머지가 주문취소 되는경우 1분할 매수의 체결 시간을 기준으로 지연시간이 정해집니다.

두번째로 1분할,2분할,3분할만 매수가 되고 나머지가 주문취소 되는 경우 3분할 매수의 체결시간을 기준으로 지연시간이 정해집니다.

(프로그램 재 실행시에는 저장된 체결 시간이 초기화 됩니다.)

12. 초기매수 후 매도 지연

초기 매수 후 매도 지연 시간을 설정합니다.

초기 매수 후 설정된 시간이 경과 한 후 매도 주문이 됩니다.

(예시)

1000초는 16분 40초 이므로 2019년 3월 7일 18시 55분에 매수된 경우 7시 11분 40초 부터 매도 진행(매도 조건이 일치하는 경우)

13. 당일 실현 손익율 연동

투자원금대비 당일의 실현 손익율이 설정값 이상 또는 이하가 되면 초기매수를 금지 합니다.

설정값은 0% 이상 입력할 수 있습니다.

14. 수익율에 따른 추가매수

기존 수익율의 따른 추가매수의 기능에 갭 기능 설정이 가능합니다.

기존에 -2% 이하 추가매수라면 -10% 이든 -50% 이든 추가매수가 진행되었으며 여기에 따로 옵션을 추가하여 사용자가 -5% 이하 추가매수금지 기능을 적용할 경우 -2% ~ -5% 사이에서만 수익율에 따른 추가매수를 진행합니다.

옵션을 기존과 동일하게 사용가능 합니다.

아래는 갭이 -2% ~ -3% 이며 현재 수익율이 -2.12% 이므로 추가매수가 진행되는 예 입니다.

아래는 갭이 -2% ~ -2.12% 이며 현재 수익율이 -2.12% 이므로 이하인 경우 추가매수금지의 조건의 걸리므로 추가매수가 되지 않습니다.

- 수익율에 따른 추가매수에 특정 수익율 이하인 경우 추가매수 금지 기능 추가

15. 지정가 매수

종목정보 탭에서 설정하며 지정가 매수는 설정금액의 ± 0.5% 이내인 경우 매수 주문이 나가며 설정된 지정 수량 만큼 매수가 진행됩니다.

만약 지정 수량을 10주로 하였으나 초기 매수로 주문이 나가고 5주만 체결이 되었다면 체결 후 에도 설정금액의 ± 0.5% 이내인 경우 지정가 추가매수로 전환되어 주문이 나가게 됩니다.

체결된 만큼 설정 수량은 감산되며 0일 경우 주문이 멈추게 됩니다.

지정가 매도는 설정금액 이상일 경우 매도 주문이 나가며 지정 수량 만큼 매도가 진행됩니다. 만약 보유수량이 10주이고 현재가가 설정 금액 이상일 경우 매도 주문이 나가고 체결된 만큼 설정 수량은 감산되며 0일 경우 주문이 멈추게 됩니다.

(보유 종목이 설정 수량보다 작은 경우에도 전량 매도되는 경우 지정 수량은 0으로 초기화 됩니다.

※ 현재 시장가로만 주문됨.

- 지정가 매수/매도시 시장가로 고정되어 있던 부분을 분할매수(보통가), 분할매수(시장가/보통가), 보통가, 시장가로 사용자가 지정할 수 있도록 변경

16. 지수연동

코스피 또는 코스닥 지수와 연동하여 설정한 % 이하로 내려가는 경우 매매를 설정할 수 있습니다.

전일 대비 or 시가대비 는 전일 대비 또는 시가대비를 만족하는 경우에 적용 됩니다.

전일 대비 and 시가대비 는 전일 대비와 시가대비 둘다 만족하는 경우에 적용 됩니다.

시스템 설정(매도조건 탭)

1. 기본 수익률

- 기본 수익율 ★%이상일 경우 매도 :

초기 매수 후 매도하는 기본 수익율 입니다. 다른 설정값에 따라 매도 시기에 차이는 있지만 기본적으로 보유종목이 설정값 이상인 경우 매도를 진행하게 됩니다.

본인의 전략에 따라 기본 수익율-트레일링 스탑 기능을 연동하면 수익을 극대화 할 수 있습니다.

2. 당일매도 제한횟수

보유 종목에 대하여 설정한 횟수 만큼 당일에 대한 매도 주문을 제한 할 수 있습니다.

현재 매도횟수 설정이 3회이며 현재 보유수량이 100주라 가정하겠습니다.

시장가로 100주 매도를 진행합니다. 10주가 매도되고 90주는 취소됩니다. (매도횟수 +1)

다시 시장가로 90주를 매도 합니다. 이후 전량 취소 (매도횟수 유지)

다시 시장가로 90주를 매도 합니다. 20주가 체결되고 70주가 취소됩니다.(매도횟수 +1)

다시 시장가로 70주를 매도합니다. 1주가 체결되고 69주가 취소됩니다.(매도횟수 +1)

이렇게 매도횟수가 총 3회가 되어 당일의 매도가 제한됩니다.

3. 종목별 목표 수익률 설정

선택시 보유 종목에 대하여 종목별로 목표 수익율을 설정하여 매도 주문 할 수 있습니다.

예시)

기본 수익율이 5%설정 되어있을때 개별 종목의 수익율을 사용자가 지정할 경우 동작은 아래와 같습니다.

- 기본 수익율 5%, 사용자 설정 수익율 3%, 현재 수익율 3.5%, 수익율 고가 3.5%, 고가하락매도 0% 미사용일 경우 매도 진행

- 기본 수익율 5%, 사용자 설정 수익율 3%, 현재 수익율 3.5%, 수익율 고가 3.5%, 고가하락매도0% 사용일 경우 매도 미진행

- 기본 수익율 5%, 사용자 설정 수익율 3%, 현재 수익율 3.4%, 수익율 고가 3.5%, 고가하락매도0% 사용일 경우 매도 진행

<아래부터 고가하락매도 기능은 배제>

- 기본 수익율 5%, 사용자 설정 수익율 8%, 현재 수익율 6%일 경우 매도 미진행

- 기본 수익율 5%, 사용자 설정 수익율 8%, 현재 수익율 9%일 경우 매도 진행

분할 매도 설정으로 이동

4. 자동일괄매도(OR조건)

메인에 '특수기능2' 탭 부분도 추가되었습니다.

여기에서 설정값은 프로그램 처음 실행시 시스템 설정에서 셋팅했던 10%,-10%가 로드되며 사용자가 장중 설정 버튼을 이용하여 수치를 변경할수 있습니다.

(단, 재실행 시에는 다시 시스템 설정값으로 원복됩니다.)

이 수익율은 ((잔고평가손익+실현손익)/(잔고매입금액+당일매도금액)) * 100 = 수익율%로 계산이 되고 있습니다.

자동일괄매도가 동작 하면 특수기능탭의 일괄매도가 활성화 됩니다.

다시 매수하시려면 일괄매도 체크박스를 해제 해주셔야 합니다.

재가동이라는 버튼이 있는데 자동일괄매도는 하루에 한번만 동작되도록 하였습니다.(다음날이 되면 초기화 됩니다.)

재가동을 누르게 되면 일괄매도 체크가 해제되고 다시 자동일괄매도를 체크하게 됩니다.

여기에서 주의하실 점이 2%로 자동일괄매도로 마감하였으며 이후 일괄매도를 해제하고 종목을 매수하였는데.. 재가동을 누르게 되면 기존 수치에 의해 다시 일괄매도가 실행되니 조심하셔야 합니다.

2% 로 마감하였고 이후 매도가 없이 매수만 하였다면 수치를 설정값 2%에서 좀더 높여서 입력하셔야 자동으로 일괄매도가 들어가지 않습니다.

5. 기간 매도

기존에 '일' 단위만 가능하던 부분을 회원분의 요청으로 '일','분','초'로 설정 가능하도록 변경하였으며 기간매도 2는 기본수익율 조건에 의해 동작 안하는 부분이 있어 기간매도1과 기능이 비슷하도록 개선.

기존의 기간매도는 초기매수만을 기준으로 하여서 상승장에 추가매수를 한뒤 초기매수 기간제한이 걸려버리면 너무 빨리 매도하는 부분이 있어 추가매수 기준을 추가하였습니다.

단, 주의하실 점은 셋팅을 추가매수 기준으로 하였으나 초기매수 뒤 별다른 추가매수가 없었다면 자동적으로 초기매수일자 기준으로 진행됩니다.

6. 매도 금지시간

설정한 시간 동안 매도 주문을 하지 않습니다.

7. 당일 실현 손익율 연동

당일 실현 손익율이 사용자가 설정한 조건에 해당할 경우 전량 설정한 주문 방식으로 매도 합니다.

8. 고가 하락 매도

기본 수익율 이상 고가에서 하락시 매도 옵션에 사용자가 %를 지정할 수 있습니다.

기본 0%일경우 기본수익율이 5%라 가정할 때 현재수익율이 6%이고 6%이하로 하락시 바로 매도가 진행됩니다.

만약 -0.5%로 지정시 현재 수익율이 6%에서 5.7%가 되면 -0.3% 이므로 매도를 진행하지 않으며 5.5%가 되면 -0.5%이하 이므로 매도가 진행됩니다.

9. 종목별 매도금지 사용

매수된 종목에 대하여 체크시 종목별로 매도 금지를 사용할 수 있다.

편입 : 해당 종목이 자동 매매에서 매도 금지 됩니다. (자동매매에서 예외 처리되어 매도 주문이 나가지 않습니다.

미편입 : 해당 종목이 자동 매매에서 설정값에 따라 매도 주문 처리 됩니다.

10. 지정시간 이후 일괄 매도/지정시간 동안 일시 해제

10.1 지정시간 이후 일괄 매도

지정한 시간 이후 보유 종목 전체를 일괄 설정한 방식으로 매도 주문 처리 합니다.

(일관 매도 주문 처리시 거래 시간, 거래량 등에 따라 일부 또는 전체에 대하여 매도 처리 되지 않는 종목이 있을 수 있습니다.)

10.2 지정 시간 동안 일시 해제

오전에 지정시간 이후 일괄매도로 종목을 정리한후 장마감 정도에 다시 매수할수 있도록(사용자가 손대지 못하는 경우) 일시적으로 해제해주는 기능입니다.

전날 보유하거나 장초반에 산 종목은 9시 1분 이후 일괄매도가 되며,다시 91001초 이후에 초기매수가 진행됩니다.

이후 92001초 까지 초기매수가 진행되다가 이후 다시 일괄매도가 진행됩니다.

11. 지정가 매도

기존 지정가 매도에서는 '이상'의 조건만 존재하였으나 회원분의 요청으로 '이상', '이하'조건으로 설정이 가능하도록 수정(종목당 개별적용) 하였습니다.

대한제당 19500원 이상인 경우 매도로 설정한 경우

현재가가 19500원 이상인 19600원 이므로 지정가 매도가 진행됨.

지정가 매도를 19500원 이하일 경우 매도로 설정하는 경우

현재가가 19500원 이하인 19200원 이므로 지정가 매도가 진행됨.

12. 고가 기준일자/저가 기준일자

- 기존에 고가에만 적용되던 기능을 저가에도 적용

당일기준 : 프로그램 실행시에만 저가가 기록되면 재시작시 초기화됨

연일기준 : 프로그램 종료 후 재실행시에도 기록되어 로드 됨.

13. 트레일링 스탑

[수정사항]
 예시)
 
설정사항 10% 고가 후 보전율 9%에 50% 주문

 10% 고가 후 보전율 8%에 50% 주문

            10% 고가 후 보전율 7%에 100% 주문인 경우

            매도주문 유지시간이 9999초...

            총 100주로 가정...

  고가가 10%이고 현재 보전율이 9%이면 매도 가능수량의 50% 매도 주문후 9999초동안 매도주문 유지..(매도주문:50주, 잔량 50주)

  이후 보전율이 8%가 되면 매도 잔량의 50% 매도 주문 후 9999초동안 매도주문 유지하며 기존 9%일때 나갔던 50%의 주문은 취소(매도주문:25주, 취소주문:50주, 이후잔량 75주)

  이후 보전율이 7%가 되면 매도 잔량의 100% 매도 주문 후 9999초동안 매도주문 유지하며 기존 8%일때 나갔던 50%의 주문은 취소(매도주문:75주, 취소주문:25주, 이후잔량 25주)

  제가 생각해도 트레일링기능은 좀 애매하네요.. 일단 이렇게 수정 했습니다.

- 트레일링 스탑은 기본 수익율을 최소 수익율로 인식합니다.

- 최소수익율에서 +2% 까지는 하락갭을 적용할 수 있습니다.(0~0.9%)

- 입력은 0.0(0%) ~ 1(100%) 로 입력하실 수 있으며 프로그램의 설명에 따라 사용하시면 됩니다.

- 매도시 시장가 매도를 선택하지 않으면 기본 현재가 매도로 진행 됩니다.

(예시)

하락갭을 먼저 설명 드리겠습니다.

기본 수익율을 1.3% 설정한 경우 하락갭의 설정은 0 ~0.9% 사이, 1~1.9% 사이에 설정하실 수 있습니다. 하락갭은 -0.2%라고 가정하겠습니다.

1. 수익율 고가가 0.9% 상승한 후 0.5%로 하락 하였습니다. 이때 하락갭 -0.2%보다 갭이 크지만 트레일링 스탑 설정에서 (수익율고가 0, 보전율 0) 부분의 매도수량이 0%로 되어있기 때문에 매도가 진행되지 않습니다.

2. 수익율 고가가 1.6% 상승한 후 1.4%로 하락 하였습니다. 이때 하락갭 -0.2%보다 갭이 크고 트레일링 스탑 설정에서 (수익율 고가 1, 보전율 1) 부분의 매도 수량이 100%로 되어있기 때문에 매도가 진행 됩니다.

※ 하락갭은 기본수익율 + 2% 이내에서만 적용 됩니다.

3. 수익율 고가가 5% 상승하고 보전율도 5%가 되었습니다. 이때 트레일링 스탑 설정에서 (수익율 고가 5, 보전율 5) 부분의 매도 수량이 10%로 되어있기 때문에 매도가 진행 됩니다. 10% 매도가 진행된 후 보전율이 변경되지 않으면 매도는 진행되지 않습니다.

4. 수익율 고가가 5% 상승한 후 4%로 하락 하였습니다. 이때 트레일링 스탑 설정에서 (수익율 고가 5, 보전율 4) 부분의 매도 수량이 0%로 되어있기 때문에 매도가 진행 되지 않습니다.

5. 수익율 고가가 5% 상승한 후 3%로 하락 하였습니다. 이때 트레일링 스탑 설정에서 (수익율 고가 5, 보전율 3) 부분의 매도 수량이 50%로 되어있기 때문에 50% 매도가 진행된 후 보전율이 변경되지 않으면 매도는 진행되지 않습니다.

6. 수익율 고가가 5% 상승한 후 2%, 1%로 하락 하였습니다. 이때 트레일링 스탑 설정에서 (수익율 고가 5, 보전율 2,1) 부분의 매도 수량이 0%로 되어있기 때문에 매도가 진행 되지 않습니다.

7. 수익율 고가가 5% 상승한 후 0.9%로 하락 하였습니다. 이때 트레일링 스탑 설정에서 (수익율 고가 5, 보전율 0) 부분의 매도 수량이 100%로 되어있기 때문에 100 매도가 진행 됩니다.

14. 매도후 재매도/수동매도 유지시간/매도 주문 유지시간

14.1 매도 후 재매도 지연시간

기존에 매수에만 사용되던 딜레이를 회원분의 요청으로 매도 딜레이도 적용하였습니다.

시스템설정 - 매도조건 탭의 '매도 후 재매도 지연시간' 으로 설정가능하며 기본 0초이며 사용자가 설정한 시간 이후에 연속 매도가 진행됩니다.

단, 시스템 상의 매도만 해당되며 조건식등의 매도등은 해당되지 않음.

주문시간이 아닌 실제 체결시간 기준입니다. 실제 체결된 시간 기준으로 지연됩니다.

0초 인경우 > 매도 시 일부 매도진행 뒤 주문 취소후 바로 재매도 들어감

60초인 경우 > 매도 시 일부 매도 진행 뒤 주문 취소 후 60초 이후 재매도 들어감

14.2 수동매도 주문유지 시간

자동 매매에서 수동 매도를 하거나, HTS 상에서 수동으로 주문을 할경우 수동 매도에 대한 주문 유지시간을 '매도조건' 탭에서 설정이 가능합니다.(단, 프로그램 재시작 시에는 무조건 취소됨)

프로그램 수행중 수동매매 주문을 취소하고 싶은경우 특수기능 탭에서 '수동매매 모두취소' 버튼을 클릭하면 취소됩니다.

14.3 매도주문 유지시간

설정한 값에 의해 자동 매매 주문을 하였을 경우 유지 되는 시간입니다.

매도 주문을 하였을 경우 지정된 시간 내에 처리 되지 않았거나, 일부는 처리되고, 처리되지 않은 주문에 대하여 지정 시간 이후 매도 주문 취소 처리 됩니다.

15. 손절 매도 1

보유 종목을 설정값으로 전량 매도 주문 합니다.

그냥 -%에 의한 손절을 하시려면 매입금액은 0% 이상으로 설정하시면 됩니다.

최대 매입금액(고정값) 대비 매도시

현재까지의 총 매입금액대비로 사용하시려면 최대매입금액(고정값)을 1,000,000원 이라 하고 비율을 30%, 수익율 지정값을 -3%라 하였을때 매입금액이 최대매입금액의 30% 이상이 되고 현재 수익율이 -3% 이하가 되면 전량 시장가로 매도 됩니다.

16. 손절 매도 2/3/4

- 수익율 저가 기능을 활용하는 손절매도 2,3,4,5 기능 추가

- 어쩔수 없이 장기 보유를 하고 계신 분들을 위해 만들어진 기능 입니다.

(예시)

오리온홀딩스의 최저가는 -50%까지 내려갔다가 -2.23% 상승 하였으며 손절매도 3 의 조건을 충족하므로 손절매도 진행

손절매도 4에도 해당이 되나 손절 매도 3의 조건을 먼저 충족하여 수량만큼 매도후 손절매도 4가 진행됨.

이때, 손절매도 3의 상승률은 최저수익율(고정) 기준입니다. -50%에서 20% 상승하여 매도되는 것이 아니라 -40%이하의 조건을 충족하고 -40%에서 20% 상승시 -20%의 조건이 충족되어 매도되는 것입니다.

손절매도 3에서는 총 수량의 30% 이므로 기존매도수량 0주이고 보유수량이 4주의 60% 이므로 2주를 먼저 매도함.

조건에서 매도 수량이 손절매도 3의 매도 수량을 충족하지 않는 경우 재 진행.

이후 손절매도 3이 완료 된 후 손절매도 4가 진행됨. 손절매도 4의 매도 수량은 총 수량의 90% 이므로 매도 후 보유수량 2주 + 기존매도수량 2주 = 총 4주 이며 총 4주의 90%를 매도 하므로 3.6주를 매도해야 하며 3.6주 - 기준매도수량 2주를 뺀 1.6주 반올림 하여 나머지 2주가 매도 진행 됨.

손절매도 2,3,4는 기존의 주문가능 수량이 아닌 총 수량을 기준으로 하며 프로그램이 꺼진상태에서 매도할 경우 수량이 틀려질 수 있습니다.

17. 손절 매도 5

(예시)

이글벳의 최저가는 -48.90%까지 내려갔다가 -28.45% 상승 하였으며 손절매도 5 의 조건을 충족하므로 손절매도 진행

이때, 손절매도 5의 상승률은 최저수익율(변동) 기준입니다. -30%이하 최저 수익율에서 20% 상승하여 매도되는 것입니다. 최저 수익율(변동)이 -48.90% 이며 20%가 상승하며 -28.90% 이상의 조건이 될 경우 매도가 진행됩니다. 이 경우 -28.45%이므로 조건이 만족되어 매도가 나간 경우 입니다.

손절매도 5는 기존의 주문가능 수량이 아닌 총 수량을 기준으로 하며 프로그램이 꺼진상태에서 매도할 경우 수량이 틀려질 수 있습니다.

18. 분할 매도

회원분의 요청으로 분할매도에 특정 수익율 이상/이하에서는 매도가 진행 되지 않도록 기능 추가 하였습니다.

100 ~ -100 으로 설정한 경우 구분없이 분할매도 진행

-5% 이하는 분할매도를 금지 설정시 구분없이 분할매도 되던부분이 -5% 이상만 분할매도가 진행됨.

보유종목중에 0% 이상이 없어 -% 로 테스트 진행하였으며 현재 수익율이 -20% 이상인 경우 분할매도 금지 진행시 -20% 이하의 종목들만 분할매도가 진행됩니다. 사용 설정은 이상/이하 개별로 설정할수 있습니다.

19. 조건식 매도

메인 탭 설정

공지사항

회원정보

특수기능

팁>> 프로그램 수행중 수동매매 주문을 취소하고 싶은경우 특수기능 탭에서 '수동매매 모두취소' 버튼을 클릭하면 취소됩니다.

특수기능2

- 하단 탭 메뉴에 특수기능2(평가손익과 실현손익 연동 수익율) 추가

후원하기

트레일링스탑 탭 설정

종목정보 탭 설정

기본정보 탭

종목 리스트의 기본 정보에 체크시 컬럼 정보를 추가/제거 할 수 있습니다.

종목필터링 탭

내용 추가 필요

종목 필터링 으로 이동

지정가매수/매도 탭

지정가 매수

해당 종목을 설정한 수량과 금액 이상으로 지정가 매수 주문 합니다.

(예시)

대한제당 19500원 이상인 경우 매도로 설정한 경우

현재가가 19500원 이상인 19600원 이므로 지정가 매도가 진행됨.

지정가 매도

해당 종목을 설정한 수량과 금액 이하로 지정가 매수 주문 합니다.

(예시)

지정가 매도를 19500원 이하일 경우 매도로 설정하는 경우

현재가가 19500원 이하인 19200원 이므로 지정가 매도가 진행됨.

동시호가 탭

이 프로그램은...

- 버전 정보

- 사용 가능 기간

- 유의 사항 표시

- 유의 사항에 동의

팁>>프로그램 실행시 아래 로그창 화면에 '유의 사항에 동의 하세요....' 에러시 체크

에러 상황별 조치 방법

팡규님의 시스템 매매 홈페이지에서 발췌된 내용을 정리한 것입니다.

worhT의 형식 이니셜라이저에서 예외 발생으로 실행이 안됩니다

조치내용 : 키움 openAPI 재설치 후 정상화 되었습니다 윈도우즈 업데이트랑 무슨 상관이 있는 것인지는 모르겠습니다.

원문글 : https://www.muryostock.com/bbs/board.php?bo_table=bug&wr_id=861

연결문서

CC Attribution-Noncommercial-Share Alike 4.0 International 별도로 명시하지 않을 경우, 이 페이지의 내용은 다음 라이선스에 따라 사용할 수 있습니다: CC Attribution-Noncommercial-Share Alike 4.0 International
72.1 KB 팡규의_자동_매매.txt · 마지막으로 수정됨 2021/05/19 23:13 저자 172.69.71.67 빛돌이