KIS Code Assistant MCP로 투자 전략 구현 : 볼린저 밴드 + RSI

이정진·2025년 9월 30일

KIS MCP

목록 보기
2/3
post-thumbnail

기술적 분석에서 자주 활용되는 전략은 크게 추세 추종형 지표와 변동성 기반 지표로 나눌 수 있습니다. 각 지표는 서로 다른 원리로 시장을 해석하기 때문에, 단일 지표에만 의존하기보다는 성격이 다른 지표를 조합하는 것이 더 입체적인 분석을 가능하게 합니다. 특히 두 지표가 동시에 같은 방향의 신호를 보낼 때는 매매 판단의 신뢰도가 높아집니다.

이번 글에서는 변동성을 측정하는 볼린저 밴드를 주축으로, 모멘텀 지표인 RSI를 보조 필터로 결합하여 자동매매 전략을 구현하는 과정을 KIS Code Assistant MCP를 통해 소개하겠습니다.


자연어로 자동매매 투자 시스템 구축: 볼린저 밴드 +RSI

John Bollinger가 개발한 볼린저 밴드 전략은 1980년대부터 현재까지 널리 사용되는 검증된 방법론입니다.
기본 원칙은 단순합니다. “하단 밴드에 닿으면 매수, 상단 밴드에 닿으면 매도” — 이는 가격이 평균으로 회귀하려는 통계적 특성을 활용한 전략입니다.

다만, 강한 추세장에서는 가격이 밴드에 계속 붙어 움직이는 ‘밴드 워킹(Band Walking)’ 현상이 나타나 잘못된 매매 신호가 연속적으로 발생할 수 있습니다.
이때 RSI가 30 이하일 때만 진입하는 모멘텀 필터를 추가하면, 변동성과 모멘텀 신호가 동시에 일치하는 구간에서만 거래가 이루어져 전략의 신뢰도를 높일 수 있습니다. 필수적인 요소는 아니지만, 보다 안정적인 운용을 원한다면 충분히 고려할 만한 개선 방법입니다.

이제 커서(Cursor) 환경에 연동한 KIS Code Assistant MCP를 활용해 이 전략을 자동매매 시스템으로 구현하는 과정을 소개하겠습니다.


KIS Code Assistant MCP 연동

  1. Cursor에서 자동매매 시스템 파일을 저장하기 위한 폴더를 오픈합니다

  2. KIS Code Assistant MCP 연결을 확인합니다.

    MCP 연결 설정 가이드 : https://github.com/koreainvestment/open-trading-api/blob/main/MCP/MCP AI 도구 연결 방법.md

  3. 프롬프트를 단계적으로 작성해 코드를 구현합니다.

    프롬프트를 더 상세하게 전달하기 위해 프롬프트 도우미가 KIS Code Assistant MCP에 함께 설치됩니다. kis_detailed_code, kis_easy_code 두가지 버전이 준비되어 있습니다.

    • 사용법 : 대화창에 “ / “ 입력 후 노출되는 메뉴에서 한국투자 코딩도우미 2개중 선택 → 커맨드 팔레트(상단 입력창)에 프롬프트를 입력하세요.

프롬프트 작성 가이드

  1. 단계적으로 접근하세요

    한 번에 모든 것을 요청하면 중요한 세부사항이 누락될 수 있으므로 처음부터 완성된 시스템을 요구하기보다는 단계별로 구축을 요청하세요

    1단계: 기본 프레임워크 (API 연결, 클래스 구조)

    2단계: 지표 계산 엔진 (볼린저 밴드, RSI)

    3단계: 신호 생성 로직 (복합 조건)

    4단계: 리스크 관리 (포지션 사이징, 손절/익절)

    5단계: 백테스팅 및 최적화

    중요: 각 단계가 정상 작동하는지 확인한 후 다음 단계로 진행하세요.

  2. 구체적인 표현을 사용하세요

    두 지표의 조합이므로 각각의 파라미터를 명확히 정의하세요

    구체적으로 명시해야 할 요소들

    • 볼린저 밴드: 기간(20), 표준편차 배수(2)
    • RSI: 기간(14), 과매수/과매도 기준(70/30)
    • 진입 조건: AND 조건인지 OR 조건인지
    • 청산 조건: 반대 신호, 고정 기간, 수익률 기준
  3. 적정 수준의 복잡도로 요청하세요

    한 번의 요청에서는 3-5개 정도의 핵심 조건으로 제한하는 것이 적절합니다. 너무 많은 조건을 동시에 요구하면 복잡성이 기하급수적으로 증가하여 오류 발생 가능성이 높아집니다

    • 매수: 하단 밴드 이탈 AND RSI < 30
    • 매도: 상단 밴드 이탈 AND RSI > 70
    • 추가 필터: 거래량, 시가총액 등

    과도한 요청 예시

    • 볼린저 밴드 + RSI + MACD + 스토캐스틱 + 거래량 + 뉴스 분석 + 외인 수급 (한 번에 7개 조건)

    💡 팁: 기본 전략을 먼저 구현한 후, 추가 조건은 별도 프롬프트로 요청하세요.

프롬프트 예제 기반 개발 과정 소개

시작 프롬프트

볼린저 밴드와 RSI를 활용한 자동매매 프로그램을 만들고 싶어.
먼저 기본 틀부터 만들어줘.
KIS API 연결, 설정 파일, 기본 클래스 구조를 포함해서.

기본 구조 구축을 먼저 요청합니다. 자연어로 요청하기 위해 kis_ease_code를 사용합니다. kis_ease_code는 KIS Code Assistant MCP에게 Open api를 효과적으로 검색/활용하도록 안내하는 개발 가이드 역할로 첫 프롬프트에 사용을 권장합니다.

대화창에 슬래시(/)를 입력하면 리스트가 노출되고 선택하면 커맨트 팔레트가 활성화됩니다.

작성해놓은 프롬프트를 복사하고 엔터를 입력하면 대화창에 추가됩니다. 이제 send 버튼을 클릭하세요.

Cursor는 해야할 일을 목록화하고, Code Assistant MCP를 통해 필요한 Open api를 자동으로 검색하고 분석해 투자자가 요청한 내용에 맞는 코드를 작성합니다.

작업을 끝낸 후 한국투자증권 Open api와 파일 설명 및 기능 정의, 실행 방법 등을 자세히 안내합니다.

테스트를 요청하면 구동 후 오류코드를 확인해, 빠르게 디버깅을 진행합니다.

테스트 결과를 정리해 주는 것뿐만 아니라, 다음 단계 안내를 통해 시스템에 대한 아이디어도 제공합니다. 예제는 기존 계획대로 프롬프트를 요청해 시스템을 개선해 보겠습니다.

단계별로 프롬프트를 요청하여, 시스템을 고도화합니다.

2단계 프롬프트

볼린저 밴드와 RSI를 계산하는 함수를 추가해줘.
볼린저 밴드: 20일 이동평균, 표준편차 2배
RSI: 14일 기준
일봉 데이터를 받아서 계산하는 방식으로 구현해줘.

3단계 프롬프트

매매 신호를 생성하는 로직을 추가해줘.
매수 조건: 종가가 하단 밴드 아래 AND RSI 30 미만
매도 조건: 종가가 상단 밴드 위 AND RSI 70 초과

4단계 프롬프트

실제 매수/매도 주문을 실행하는 기능을 추가해줘.
시장가 주문으로 구현하고,
모의투자로 테스트할 수 있게 설정해줘.
포지션 크기는 계좌 잔액의 10%로 제한해줘.

5단계 프롬프트

과거 데이터로 전략을 검증하는 백테스팅 기능을 만들어줘.
최근 1년 데이터로 테스트하고
총수익률, 승률, MDD를 계산해줘.
결과를 간단한 표로 보여줘.

시스템 구축

개발이 완료되었습니다. 터미널 환경에서 확인해보겠습니다.

(예시 화면을 위해 종목 검색 및 전략 세부 설정을 수정하고 모의투자로 진행하였습니다.)

시스템 구축 시 기억하면 좋은 핵심 포인트

⚙️ 환경 설정

  • 모의투자 vs 실전투자: 처음에는 반드시 모의투자로 시작
  • API 키 관리: kis_devlp.yaml 파일 별도 경로 관리
  • 안전성 유지: kis_auth.py 파일 구조 수정 예외 처리
  • 계좌번호: 8자리 종합계좌번호 확인

🛡️ 오류 처리

  • 상세한 로깅 시스템: 호출과 오류를 기록하여 문제 발생 시점 추적
  • 단계별 오류 메시지: 일반적인 "오류 발생" 대신 구체적인 원인 정보 제공
  • 자동 복구 메커니즘: 일시적 오류는 자동 재시도, 심각한 오류는 안전 정지
  • 오류 분류 체계: API 제한, 네트워크, 인증, 데이터 등 오류를 구분

📈 점진적 기능 확장

  • 1차: 기본 볼린저 밴드 전략 (하단 터치 매수, 상단 터치 매도)
  • 2차: RSI 필터 추가 (밴드 신호 + RSI 30/70 동시 충족)
  • 3차: 밴드폭 활용 (스퀴즈 후 확장 시 진입 강화)
  • 4차: 멀티 타임프레임 (일봉 신호 + 60분봉 확인)

마무리하며

볼린저 밴드와 RSI의 조합은 마치 체온계와 혈압계처럼, 시장을 서로 다른 관점으로 진단할 수 있게 해줍니다. 변동성과 모멘텀을 함께 확인하여 각 지표의 장점을 활용하면서 단점을 보완하는 것이 복합 전략의 가치입니다.

KIS Code Assistant MCP를 통해 이런 복합 전략도 자연어로 쉽게 구현할 수 있었습니다. 이제 여러분도 자신만의 지표 조합을 찾아 시스템화 해보세요.

실전 운용 전 반드시 기억하세요:

🔸 충분한 백테스팅: 과거 데이터로 전략의 유효성을 꼭 검증하세요

🔸 리스크 관리: 손절매와 포지션 사이징 규칙을 명확히 설정하세요

🔸 시장 상황 고려: 횡보장, 상승장, 하락장에서의 다양한 상황에서 전략의 효과를 분석하세요

🔸 소액부터 시작: 실제 자금은 투자 전략의 충분한 검증 후 단계적으로 투입하세요

🔸 면책 조항: 본 예제는 참고용으로 제공되는 것이며, 이를 활용해 발생하는 모든 투자 결과 및 손실에 대해서는 작성자가 어떠한 책임도 지지 않습니다. 최종적인 투자 판단과 책임은 전적으로 개인에게 있습니다.

profile
라이브데이터 Developer

0개의 댓글