자동매매 시스템, 시장 레짐을 읽는 구조로 업그레이드하다
요약
2026년 5월 11일, 자동매매 시스템을 고정 조건 기반 매매 구조에서 KOSPI 시장 레짐을 판단하고 장세에 따라 매수 기준을 조정하는 구조로 전환했다.
오전 실거래 로그에서 KOSPI가 강하게 오르는 날에도 매수 신호가 0건인 문제가 다시 확인됐다. 원인은 동일했다. MA20 이격 상한이 5%로 고정되어 있어 급등장에서 강하게 오른 종목이 모두 이격 조건에 걸려 탈락하는 구조였다.
이번 업그레이드는 그 문제를 해결하기 위한 전략 엔진의 구조적 전환이다.
문제의 배경
자동매매 프로그램은 MA20 이격 5% 이내 종목만 매수 후보로 허용하고 있었다.
이 기준은 과매수 구간 진입을 막기 위한 장치다. 그런데 KOSPI 자체가 강하게 오르는 날에는 상황이 달라진다.
강한 장에서는 강한 종목일수록 MA20 대비 이격이 크게 벌어진다. 즉 고정 5% 필터는 장세가 강해질수록 주도주를 차단하는 역할을 하게 된다.
DRY RUN 로그를 보면 이 패턴이 반복되고 있었다.
- KOSPI 급등일에도 MA20 이격 초과로 탈락하는 종목 다수
- 탈락 이유가 “추격매수 위험”이 아니라 “시장 자체가 강해서”인 경우
고정 기준이 잘못 작동하는 상황을 발견했다는 뜻이다.
레짐 감지 시스템 추가
이번 업그레이드의 핵심은 KOSPI 5일 수익률 기반 레짐 감지 시스템 추가다.
KOSPI 최근 5일 수익률을 계산해 장세를 세 가지로 분류한다.
| 레짐 | 기준 | MA20 이격 허용 상한 |
|---|---|---|
| BULL | KOSPI 5일 수익률 +2% 이상 | 8% |
| NEUTRAL | -1% ~ +2% | 5% |
| BEAR | -1% 미만 | 3% |
BULL 장세에서는 MA20 이격 허용 기준을 5%에서 8%로 완화한다. BEAR 장세에서는 3%로 더 조인다. 시장이 강할 때 조건을 완화하되 추격매수 상한은 유지하는 구조다.
11:00 BULL 전용 매수 사이클 추가
기존 매수 스캔은 10:00 / 13:00 / 14:00 세 번이었다.
이번에 11:00 BULL 전용 매수 사이클을 추가했다. BULL 장세로 판단된 날에만 작동하며, 오전 장세를 확인한 뒤 추가 진입 기회를 포착하기 위한 목적이다.
NEUTRAL 또는 BEAR 장세에서는 이 사이클이 작동하지 않는다.
유니버스 확대와 눌림목 필터
종목 유니버스를 20종목에서 40종목으로 확대했다.
유니버스 확대는 리스크 확대가 아니다. 후보군을 넓히는 것이다. 보유 종목 수(최대 4종목)와 일일 매수 한도는 유지된다.
눌림목 필터도 추가했다. 최근 5일 중 1일 이상 하락 후 현재 반등 중인 종목을 눌림목 패턴으로 판별하는 조건이다.
단, 처음에는 MA20 이격 조건과 OR 구조로 적용한다. 둘 중 하나를 만족하면 매수 후보로 인정한다. 눌림목 조건만 단독으로 적용하면 신호가 너무 좁아질 수 있기 때문이다.
RSI 기준 조정
RSI 상한을 65에서 70으로 완화했다.
단, RSI 75 이상인 종목의 추격매수 차단은 유지한다. BULL 장세에서 유망 종목의 RSI가 다소 높더라도 70 이내라면 허용하되, 75를 넘어서면 열기를 이미 충분히 반영했다고 판단해 차단한다.
분할익절 구조 도입
이번 업그레이드에서 분할익절 구조를 새로 도입했다.
+6% 도달 시 보유 수량의 50%를 자동 익절한다. 잔여 50%는 트레일링 스탑을 통해 계속 추세를 따라간다.
이 구조의 의미는 두 가지다.
- 수익의 절반을 먼저 확정해 손익비를 개선한다.
- 강한 종목의 추세가 계속되면 나머지 절반이 추가 수익을 낸다.
이전 구조는 전량 트레일링이었다. 강한 추세에서 수익이 커지는 장점이 있지만, 시장이 빠르게 반전될 때 수익이 증발할 위험이 있었다.
트레일링 스탑 구간별 완화
트레일링 기준도 구간별로 조정했다.
| 구간 | 고점 대비 하락 허용 |
|---|---|
| +4~8% | -2.5% |
| +8~15% | -2.0% |
| +15% 이상 | -1.5% |
수익이 클수록 트레일링을 더 타이트하게 관리한다. 큰 수익을 지키기 위한 구조다.
일일 매수 한도 및 매도 구조
일일 매수 한도를 2건에서 3건으로 조정했다. 유니버스가 2배로 늘어나고 레짐 기반 기회가 확대된 만큼, 하루 최대 3건까지 허용한다.
사이클당 1건, 당일 중복 매수 금지, 섹터 중복 제한은 유지한다.
매도 사이클에서는 두 가지를 추가했다.
- 체결가 기반 pnl 보정: 실제 체결가와 현재가 기준 pnl을 모두 추적해 수익 계산의 정확도를 높인다.
- 동시 매도 통합 알림: 여러 종목이 같은 사이클에서 매도될 경우 텔레그램 알림을 하나로 통합해 노이즈를 줄인다.
이번 업그레이드의 의미
오늘의 업그레이드는 자동매매 프로그램의 전환점이다.
이전 구조는 종목 조건이 중심이었다. 시장이 어떤 상황이든 동일한 기준으로 종목을 평가했다.
이번 구조는 다르다. 먼저 시장 레짐을 판단하고, 그 레짐에 맞게 매수 허용 범위를 조정한 뒤, 그 조건 안에서 종목을 평가한다.
시장 흐름을 먼저 읽고, 그 안에서 종목을 보는 구조다.
자동매매 프로그램이 단순히 가격 조건만 보는 구조에서 벗어나, 시장 상황에 따라 조건의 의미 자체를 바꾸는 구조로 진화했다.
다음 검증 과제
1~2주간 실전 로그를 수집해 다음 항목을 검증한다.
- 레짐별 매수 빈도: BULL 장세에서 실제로 매수가 더 많이 발생하는가
- 눌림목 진입 성과: 눌림목 조건 진입과 MA20 이격 조건 진입의 손익비 차이
- 분할익절 효과: 전량 트레일링 대비 분할익절의 최종 수익 비교
- 손익비 개선 여부: 이번 구조 변경이 전체 손익비를 개선하는가
관련 Insight: 급등장에서 자동매매가 놓치는 것은 종목이 아니라 시장 맥락이다
※ 본 콘텐츠는 개인의 실험 기록이며 투자 권유가 아닙니다.
투자의 판단과 책임은 본인에게 있습니다.