변동성 장에서 쥬가 본 KIS 국내장: HERMES 구현 현황과 후보 20개
요즘 HERMES 쥬를 보면 종목을 고르는 기능보다, 왜 그 종목을 보고 있는지와 왜 아직 멈춰 있는지를 남기는 기능이 더 빠르게 자라고 있다.
이번에는 현재 구현 상황을 먼저 정리하고, 2026년 8월 27일 KIS 국내장 알파 화면에 실제로 들어온 후보 20개를 다시 읽어 보려고 한다. “어떤 종목이 오를까?”를 맞히는 글이 아니라, 쥬가 어떤 자료를 보고 후보를 올렸으며 그 후보가 어떤 문턱 앞에 서 있는지 적는 개발·관찰 기록이다.
기준 시각은 2026-08-27 15:36 KST다. 당시 KIS 원본 상태는 ok였지만, 글을 쓰는 밤에는 최신성 플래그가 stale로 바뀌어 있다. 그러므로 아래 숫자는 현재 실시간 호가가 아니라 그날 장 마감 뒤 저장된 스냅샷으로 읽어야 한다.

지금 HERMES 쥬는 어디까지 왔나
HERMES v3는 한국 주식, 미국 주식, 바이낸스 현물·선물을 한 덩어리로 다루지 않는다. 거래 시간과 통화, 데이터 특성이 다르기 때문에 시장별로 분석 평면을 나누고, 그 위에서 후보를 만들고 판단을 연결한다.
현재 구조를 쉬운 말로 풀면 다음과 같다.
- 프로그램이 가격·거래량·변동성·기술 지표를 같은 규칙으로 넓게 계산한다. 국내장에서는 리서치와 가치·수급 자료도 별도 층으로 읽는다.
- 계산 결과는 일회성 화면이 아니라 스캔 원장에 저장된다. 후보와 신호, 레짐, 당시 설정 지문을 나중에 다시 볼 수 있는 형태로 남긴다.
- 쥬는 전 종목을 매번 대화형 모델에게 던져 추천받지 않는다. 먼저 결정론적인 로컬 알파 엔진이 후보를 줄이고, 쥬의 언어 모델 판단은 그 결과를 읽고 보류·검토하는 쪽에 배치돼 있다.
HERMES.app은 Command, Blocks, Alpha, Assets, Review, Edge, Cost 화면을 통해 프로세스와 후보, 원장, 비용을 나눠 보여 준다. 지금은 매수 버튼보다 상태를 확인하고 멈출 수 있는 관제 화면에 가깝다.- 최근에는 배분 제안이 실패했을 때도 콜 원장에 남기고, 승인 화면의 실패 콜·슬리브 결함·스탑 귀속·리밸런싱 점화를 다루는 작업이 들어갔다. 마지막으로 쥬가 낸 배분 문장이 실제 시스템이 집행할 수 있는 범위를 넘지 않도록 제약도 추가했다.
KIS 주문 경로 자체를 연결하는 작업과 모의 운전은 별도로 진행되고 있다. 하지만 알파 화면의 후보가 곧 주문이라는 뜻은 아니다. enter에는 실험 결과와 게이트 증거가 필요하고, 이번 후보 20개는 모두 no_experiment였다. 즉 관찰할 이유는 있지만, 아직 검증된 전략이라고 부를 근거가 없는 상태다.
8월 27일 국내장 분위기
이번 스냅샷에서 쥬가 붙인 시장 상태는 volatile, 즉 변동성이 큰 국면이었다. 이 상태가 70일째 이어지고 있었다.
| 항목 | 스냅샷 값 | 쉽게 읽으면 |
|---|---|---|
| 시장 상태 | volatile |
전체 시장을 편하게 추세장으로 보기 어려운 구간 |
| Breadth | 38.2% | 분석 대상 3,986개 안에서 시장의 폭이 넓게 좋아진 모습은 아니었다 |
| 지수 프록시 | 069500 |
쥬가 국내장 흐름을 비교할 때 사용한 기준 코드 |
| 기준값 | 107,710 | 스냅샷 시점의 지수 프록시 값 |
| 빠른 EMA / 느린 EMA | 106,295 / 110,077 | 단기 기준선 위지만 장기 기준선 아래인 혼합된 모습 |
| 실현 변동성 지표 | 98.15 | 엔진이 계산한 변동성 자체가 높은 편 |
| 변동성 백분위 | 93.3 | 비교 구간 안에서도 높은 변동성 쪽에 가까움 |
여기서 재미있는 점은 시장 전체는 거친데, 후보 20개 중 14개에는 volatility_contraction이 붙었다는 것이다. 모순처럼 보이지만 기준이 다르다. 시장 레짐은 국내장 전체의 흔들림을 보고, 변동성 수축은 각 종목의 짧은 흔들림이 그 종목의 긴 기간보다 줄었는지를 본다. 전체 바다는 거칠어도, 그 안에서 잠깐 잔잔해진 배가 있을 수 있다는 뜻이다.
다만 “잔잔해졌으니 곧 오른다”는 해석은 금물이다. 변동성 수축은 방향이 없다. 방향은 종가와 EMA50 같은 별도 조건이 보태고, 그 조건이 틀리면 수축 뒤에 아래쪽으로 확장될 수도 있다.
쥬의 점수는 어떤 숫자인가
현재 기본 점수는 국내장 안에서 종목들을 서로 비교하는 백분위 조합이다.
1 | 종합 점수 = 20일 모멘텀 백분위 x 0.40 |
| 항목 | 비중 | 의미 |
|---|---|---|
| 20일 모멘텀 | 40% | 최근 20세션 흐름이 비교 대상 중 얼마나 강했는가 |
| 거래대금 | 30% | 거래가 얼마나 붙었는가 |
| 낮은 변동성 | 15% | 크게 출렁인 종목보다 상대적으로 덜 흔들린 쪽에 주는 점수 |
| 낮은 RSI | 15% | 너무 과열된 종목만으로 점수가 치우치지 않게 하는 완충 |
p96이라고 쓰인 것은 비교 대상 안에서 상위 약 4%라는 뜻이지, 수익률 96%라는 뜻이 아니다. 종합점수 77점도 미래 수익률 77%나 승률 77%가 아니다. 같은 날 같은 국내장 안에서 어떤 후보를 먼저 들여다볼지 정하는 관찰용 숫자다.
또 하나 주의할 점이 있다. API가 반환한 20개는 종합점수 하나만 내림차순으로 줄 세운 표가 아니라, 후보·티어·신호를 합친 패널이다. 그래서 engine rank에 빈 번호가 있고, 점수가 순서대로 완벽하게 내려가지 않는다. 아래 표의 순서는 이 스냅샷이 반환한 순서를 유지했다.
신호 이름을 사람 말로 바꾸면
이번 20개에 실제로 붙은 신호는 일곱 종류였다.
| 시스템 신호 | 사람 말로 바꾸면 |
|---|---|
momentum_rank |
최근 20일 모멘텀이 상위권이고 거래대금도 최소 기준을 넘은 후보 |
volatility_contraction |
10일 변동성이 60일 변동성의 70% 이하로 줄어든 후보. 방향 자체는 말해 주지 않는다. |
kr_sector_rotation_momentum |
최근 돈이 배분되는 상위 5분위 업종에 속한 후보. 개별 종목보다 업종 전체의 움직임을 본다. |
kr_sector_flow_concentration |
외국인·기관 수급이 일부 업종에 몰린 국면에서 그 업종 안에서도 흐름이 강한 후보 |
kr_value_flow_accumulation |
양의 PER, PBR 1 이하, 최근 3세션 외국인·기관 순매수가 모두 양수인 후보 |
kr_dividend_value |
PBR 1 이하이면서 현금배당이 있고, 배당이 이익으로 감당 가능한지 보는 후보 |
mean_reversion_band |
RSI와 20일 가격 범위가 한쪽 끝으로 쏠려 평균으로 돌아갈 가능성을 관찰하는 후보 |
이번 패널에서 가장 많은 것은 변동성 수축 14개, 모멘텀 12개였다. 업종 순환은 8개, 업종 자금 집중은 7개, 배당 가치 4개, 가치·수급 축적 3개, 평균 회귀 2개였다. 반대로 리서치 목표가 변화나 trend_pullback은 이 20개에는 붙지 않았다.
실제 KIS 국내장 후보 20개
아래 점수는 저장된 원래 값을 소수 첫째 자리로 반올림했다. engine rank는 API 원장 순위이고, gate는 이 후보가 실험·자본 투입 문턱을 통과했는지를 나타낸다. 이번 20개는 전부 no_experiment다.
| 종목 | 코드 | engine rank | 점수 | 티어 | 켜진 관찰 신호 | 저장된 근거 |
|---|---|---|---|---|---|---|
| 빛과전자 | 069540 |
1 | 77.9 | T2 | 모멘텀·변동성 수축·업종 순환 | 20일 모멘텀 p96, 거래대금 p97. 지지선 위 2.2%. |
| 이름 매핑 없음 | 0148J0 |
2 | 77.7 | T1 | 변동성 수축 | 종목명 매핑이 없어 코드로만 기록. 자동 근거 문장 없음. |
| 티엑스알로보틱스 | 484810 |
3 | 76.9 | T2 | 변동성 수축·업종 순환 | 지지선 위 0.3%. |
| 원익홀딩스 | 030530 |
5 | 76.1 | T2 | 모멘텀·변동성 수축·업종 자금 집중 | 자동 근거 문장 없음. |
| 에이프로젠 | 007460 |
6 | 75.6 | T1 | 기록 신호 없음 | 자동 근거 문장 없음. |
| 지엔씨에너지 | 119850 |
7 | 75.3 | T2 | 모멘텀·변동성 수축·업종 순환·업종 자금 집중 | 20일 모멘텀 p98, 거래대금 p94. |
| HL만도 | 204320 |
8 | 77.1 | T1 | 변동성 수축·가치·수급·배분 집중 | 자동 근거 문장 없음. |
| TIGER화장품 | 228790 |
9 | 75.2 | T1 | 평균 회귀·모멘텀 | 모멘텀 p91, 거래대금 p97. 모멘텀 p91, 변동성 p39. |
| 에브리봇 | 270660 |
12 | 76.9 | T1 | 모멘텀·변동성 수축·업종 순환 | 자동 근거 문장 없음. |
| SG | 255220 |
13 | 74.6 | T1 | 변동성 수축·업종 순환 | 지지선 위 1.1%. |
| HLB | 028300 |
14 | 74.1 | T1 | 변동성 수축 | 자동 근거 문장 없음. |
| 우리기술 | 032820 |
15 | 74.1 | T2 | 모멘텀·변동성 수축·업종 순환·업종 자금 집중 | 모멘텀 p94, 거래대금 p97. 지지선 위 2.3%. |
| 오이솔루션 | 138080 |
16 | 76.4 | T2 | 모멘텀·변동성 수축·업종 순환 | 모멘텀 p96, 거래대금 p90. |
| 코오롱티슈진 | 950160 |
18 | 73.9 | T2 | 모멘텀 | 모멘텀 p91, 거래대금 p96. |
| 희림 | 037440 |
19 | 73.8 | T1 | 변동성 수축·배당 가치 | 자동 근거 문장 없음. |
| 알지노믹스 | 476830 |
20 | 73.8 | T2 | 모멘텀 | 모멘텀 p92, 거래대금 p91. |
| 풍산 | 103140 |
21 | 76.0 | T2 | 모멘텀·가치·수급·배당 가치 | 모멘텀 p95, 거래대금 p94. |
| 대주전자재료 | 078600 |
23 | 73.6 | T1 | 모멘텀·변동성 수축·업종 순환·업종 자금 집중 | 모멘텀 p90, 거래대금 p91. |
| GS | 078930 |
24 | 73.6 | T1 | 평균 회귀·모멘텀·가치·수급·배당 가치·업종 자금 집중 | 모멘텀 p96, 거래대금 p98. 52주 최고가 대비 -1.5%. |
| LG씨엔에스 | 064400 |
25 | 75.9 | T1 | 변동성 수축·업종 자금 집중 | 지지선 위 0.6%. |
종목별로 보면 어떤 그림인가
빛과전자는 이번 패널의 첫 번째 카드다. 모멘텀 p96과 거래대금 p97이 함께 잡혀 있고, 변동성 수축과 업종 순환까지 겹쳤다. 쥬가 이 후보를 보는 이유는 “최근 흐름과 거래가 동시에 강한데, 가격은 지지선에서 2.2% 위에 있다”는 조합이다. 그러나 no_experiment이므로 이 조합이 실제 성과로 이어진다는 검증은 아직 없다.
0148J0은 이름 매핑이 비어 있다는 점 자체가 관찰 포인트다. 점수와 변동성 수축은 원장에 있지만, 사람이 읽을 종목명이 없다. 이런 데이터 품질 빈칸을 감춘 채 이름을 추정하는 것보다 코드만 보여 주는 쪽이 낫다. 분석 시스템에서 “모름”을 “아마 이 종목”으로 바꾸지 않는 것도 안전장치다.
티엑스알로보틱스와 에브리봇, SG, 오이솔루션은 업종 순환과 변동성 수축의 조합으로 눈에 들어왔다. 이 그룹은 개별 종목의 숫자만 보는 후보라기보다, 특정 업종의 흐름 안에서 상대적으로 조용한 종목을 다시 들여다보는 카드다. 업종이 계속 돈을 받는다는 전제가 깨지면 종목 신호도 같이 약해질 수 있다.
원익홀딩스, 지엔씨에너지, 우리기술, 대주전자재료, LG씨엔에스는 업종 자금 집중 신호가 붙었다. 이는 “이 종목이 혼자 강하다”보다 “외국인·기관의 공개 수급이 몇 개 업종에 몰린 날, 그 안에서 어떤 종목이 보이는가”에 가깝다. 다만 업종 수급 합계는 대형주 영향을 크게 받을 수 있고, 업종 분류가 바뀌면 과거와 오늘의 비교도 달라질 수 있다.
HL만도와 풍산, GS는 가치·배당 계열 신호가 섞인 사례다. 여기서 kr_value_flow_accumulation은 PBR과 PER, 최근 3세션 수급을 함께 보고, kr_dividend_value는 수급이 아니라 배당과 이익 커버를 본다. 이름이 비슷해도 주장하는 시간이 다르다. 하나는 최근 수요의 축적이고, 다른 하나는 장부가 할인과 주주환원의 느린 재평가다.
TIGER화장품과 GS에는 평균 회귀 관찰도 붙었다. 이것은 “추세가 계속 간다”는 모멘텀과 “너무 한쪽으로 쏠렸으니 평균으로 돌아올 수 있다”는 가설이 동시에 화면에 있다는 뜻이다. 두 신호가 같이 뜬다고 결론이 더 강해지는 것은 아니다. 서로 다른 가설이 같은 종목을 보고 있다는 사실을 쥬가 판단 단계에서 따로 읽어야 한다.
에이프로젠처럼 기록 신호가 비어 있거나, 여러 종목처럼 자동 근거 문장이 없는 경우도 있다. 이것은 종목이 아무 이유 없이 올라왔다는 의미가 아니라, 현재 저장 원장이 최종 점수와 신호 목록, 발동한 템플릿 문장까지만 남기고 모든 점수 항목의 기여도를 보관하지 않기 때문이다. 저장되지 않은 숫자를 현재 코드로 다시 계산해 옛 점수의 정확한 이유처럼 말하지 않는 것이 맞다.
이 표에서 읽으면 안 되는 것
이 20개를 보고 다음과 같은 결론을 내리면 안 된다.
- 점수가 77점이니 77% 오를 것이다.
- T1이 T2보다 더 안전하거나, 티어가 확신도 등급이다.
- 신호가 네 개 붙었으니 한 개 붙은 종목보다 수익 가능성이 네 배다.
volatility_contraction이 있으니 곧 위로 터질 것이다.no_experiment인 후보도 쥬가 곧 주문할 것이다.
현재 표에서 확인되는 것은 “그 시각에 쥬의 사전등록 조건 중 무엇이 관찰됐나”까지다. 과거 워크포워드 검증, 거래 비용과 슬리피지, 체결 가능성, 데이터 결측, 뉴스와 공시 같은 요소는 별도 문턱이다. 그래서 높은 점수와 자본 투입 사이에 experiment_run과 게이트 증거를 둔다.
이번 기록의 결론
8월 27일 국내장 스냅샷은 시장 전체로는 변동성이 높은데, 후보 내부에서는 변동성 수축과 업종 순환이 겹쳐 보이는 날이었다. 쥬는 이런 날을 “시장이 안정됐다”고 단순화하지 않고, 전체 레짐과 개별 후보의 모양을 서로 다른 층에서 기록한다.
HERMES 쥬의 최근 구현도 같은 방향이다. 후보를 만드는 엔진은 더 넓고 빨라졌지만, 판단과 배분 제안은 오히려 제약이 많아지고 있다. 실패한 콜도 원장에 남기고, 실행할 수 없는 배분 문장은 거절하고, 스탑과 리밸런싱의 귀속을 분리해 보는 식이다.
나는 쥬를 시장을 대신 맞히는 기계로 만들고 싶은 것이 아니다. 주식과 코인을 볼 때 내가 받는 스트레스를 줄이려면, “왜 보고 있는지”뿐 아니라 “무엇이 아직 비어 있는지”도 같이 보여야 한다. 이번 후보 20개는 그 빈칸까지 포함한 관찰 일지다.
이 글은 개인 프로젝트의 개발·관찰 기록이며 투자 조언이나 매수·매도 추천이 아니다.
변동성 장에서 쥬가 본 KIS 국내장: HERMES 구현 현황과 후보 20개
https://poul.kr/2026/08/27/20260827-hermes-jue-kis-market-analysis/



