국내주식, 키움

조건검색식과 네이버 뉴스 필터 자동매매

키움 HTS에서 직접 만든 조건검색식을 그대로 쓰되, 그중 뉴스가 뜬 종목에만 들어가고 싶다는 요청이었습니다. 키움 OpenAPI+와 네이버 뉴스 API를 엮어서 만들었습니다. 조건검색 결과를 사람이 다 들여다보지 않아도 뉴스 확인까지 프로그램이 합니다.

플랫폼
키움 OpenAPI+
네이버 뉴스 API
특징
백테스팅 3년
파라미터 그리드 최적화
유형
국내주식 현물
제작 기간
약 2주
조건검색 자동매매 프로그램 화면. 조건식 편입 종목 8개, 매수 대기 표에 네이버 뉴스 매칭 제목과 경과 시간, 판정, 보유 포지션, 체결 내역, 조건 편입부터 뉴스 확인과 매수까지의 로그
같은 계열의 납품 프로그램(키움 조건검색 멀티슬롯)에 이 사례의 뉴스 필터 열을 얹어 재구성한 화면입니다. 조건 편입, 네이버 뉴스 확인, 매수 순서가 로그에 남습니다 (종목과 기사는 예시)

01배경과 고객 요구사항

고객은 키움 HTS에서 자기 조건검색식을 만들어 매일 종목을 추리고 있었습니다. 그런데 조건에 걸리는 종목이 너무 많아 하나하나 볼 수가 없었습니다. 게다가 그중에서도 뉴스가 뜬 종목에만 들어가고 싶어 하셨는데, 종목마다 뉴스를 찾아보는 것은 손으로는 무리였습니다.

요청을 정리하면 이렇습니다. 키움에서 만든 조건검색식은 그대로 쓴다. 결과가 많아도 프로그램이 걸러 낸다. 최근 뉴스가 있는 종목만 골라서, 지켜보지 않아도 매수와 청산까지 한다.

그래서 조건검색 결과를 좁히는 필터와 뉴스 확인 자동화에 작업의 대부분을 썼습니다. 걸러 낸 종목은 정해 둔 익절, 손절 규칙대로만 매매해서 그때그때의 판단이 끼어들지 않게 했습니다.

02구현 방식

조건검색 결과를 두 번 걸러서 좁힙니다.

필터 흐름. 조건검색식 API 결과에서 시총 상위 100 1차 필터, 네이버 뉴스 최근 1시간 교차 2차 필터를 거쳐 매수, 우측에 익절과 손절 그리드 최적화 히트맵
조건검색 결과를 시총과 뉴스로 두 번 좁혀 매수합니다. 익절과 손절 값은 그리드 최적화로 정했습니다
슬롯 설정. 분할매도, 손절 −5%, 익절 +7%, 시가총액 하한, 미체결 대기 시간
청산 규칙 설정. 익절, 손절 %와 시총 하한이 입력값입니다

익절과 손절 값은 감으로 정하지 않았습니다. 3년치 과거 데이터로 그리드 서치(격자 탐색)를 돌렸습니다. 익절 +5~10%, 손절 -3~7% 범위를 잘게 나눠 모든 조합을 백테스트한 다음, 한 지점만 유난히 좋게 나오는 값은 피하고 주변 값까지 고르게 괜찮은 구간에서 골랐습니다.

조건검색 API가 종목을 넘기면 시가총액 순위부터 봅니다. 통과한 종목만 네이버 뉴스 API로 조회해 최근 1시간 기사가 있는지 확인하고, 둘 다 통과한 종목만 매수 대기열로 보냅니다. 15:20이 되면 보유 종목을 전부 청산하므로 다음 날로 넘어가는 종목이 없습니다.

03해결한 기술 난제

두 API의 호출 한도

조건검색식은 실시간으로 호출되고, 통과한 종목마다 뉴스 API를 또 불러야 합니다. 두 API 모두 호출 한도가 있어서, 종목이 몰리는 순간에 그대로 보내면 늦어지거나 차단됩니다. 그래서 호출을 대기열에 넣어 속도를 조절하고 결과를 잠깐 저장해 두는 방식으로 한도 안에서 걸러지게 했습니다.

04주요 기능

05제작 과정 (약 2주)

06납품 결과물

07기술 스택

키움 OpenAPI+ 키움 조건검색 API 네이버 뉴스 API Python 백테스트, 그리드 최적화 Telegram Bot API

08관련 사례

※ 본 사례는 과거 고객 요구사항을 익명 처리하여 재구성한 것이며, 수익률과 수익금은 공개하지 않습니다. 알고랩은 매매 자동화 프로그램 제작 서비스이며, 종목 추천, 투자 자문, 수익 보장 서비스가 아닙니다. 과거 백테스트 결과가 미래 실거래 수익을 보장하지 않습니다. 주식 투자는 원금 손실 위험이 있습니다.

쓰고 계신 조건검색식이 있으시면

그 조건식에 무엇을 더 걸러 내고 싶은지 알려 주세요.
아직 조건식이 없어도 상담은 가능합니다.

무료 상담 시작하기 고객 후기 보기
← 제작 사례 전체 보기