월요일도 쥬한테 맡겼다 — 대신 넘기지 않은 것 하나

월요일도 쥬한테 맡겼다 — 대신 넘기지 않은 것 하나

이번 주말 두 마디를 했다.

“내가 매번 뭔가 결정해야 하는 게 있어? 다 쥬한테 맡겼는데.”
“월요일도 그냥 네가 알아서 해.”

둘 다 별거 아닌 말처럼 들리지만, HERMES 쥬 입장에서는 코드로 옮겨야 하는 문장이었다. 지금까지 쥬는 배분(자산을 어떤 비중으로 들고 갈지)을 제안만 했고, 그걸 실제로 반영하는 채택 버튼은 항상 내가 눌렀다. 매주 월요일마다.

월요일 채택을 쥬에게 위임하되 울타리를 남겨둔 작업대

왜 이게 필요했나

HERMES 쥬가 하는 일 중 하나는 “지금 자산을 이런 비중으로 들고 가자”는 배분 판본을 만드는 것이다. 이건 새 종목을 사는 판단이 아니라, 이미 들고 있는 자산들의 목표 비중을 다시 맞추는 작업에 가깝다.

원래 설계(내부에서는 [자-11]이라고 부르는 작업 항목)는 “쥬가 제안하고 소유자가 채택한다”였다. 그런데 몇 주 굴려 보니 이게 반복되는 잡일이 됐다. 판본이 크게 이상하지 않은데도 매번 화면을 열어 확인 버튼을 눌러야 했다. 지난 7월 글에서 쥬를 만든 이유가 “돈을 더 버는 기계”가 아니라 “투자 앞에서 내가 덜 혼자이게 하는 것”이라고 적었는데, 매주 반복되는 확인 버튼은 그 목적과 반대 방향이었다.

무엇을 넘겼나 — 조건 4개

그래서 이번 주말에 allocation_auto_adopt라는 스테이지를 새로 만들었다. 쥬가 낸 판본이 아래 네 조건을 전부 넘으면, 사람 없이 그대로 반영된다.

안전조건 4개를 통과하면 자동 채택, 하나라도 못 넘으면 대기 제안으로 남는 흐름도

  1. 판본이 지금 보유 중인 자산을 전부 덮는가. 판본에 이름이 없는 보유 종목은 시스템이 “비중 0%”로 읽어서 전량 매도해 버릴 수 있다. 지금까지는 채택 전에 내가 눈으로 봐서 잡아냈던 실수인데, 자동이면 아무도 안 보고 지나간다. 그래서 이 조건이 가장 먼저다.
  2. 배분을 나누는 축이 그대로인가. 자산군 단위(주식/현금 같은 큰 덩어리)로 나눈 판본과 종목 단위로 나눈 판본은 항목 자체가 달라서 서로 비교할 수 없다. 축이 바뀌면 무조건 사람이 본다.
  3. 목표 비중이 이전 판본에서 밴드 폭 안에서만 움직였는가. 밴드는 원래 “이 범위 안에서는 사고팔지 않는다”는, 이미 내가 정해둔 값이다. 새 목표가 그 범위를 벗어났다는 건 그냥 숫자가 갱신된 게 아니라 입장 자체가 바뀐 거라서, 그때는 사람이 봐야 한다고 판단했다.
  4. 비교할 활성 판본이 있는가. 맨 처음 판본은 비교 대상이 없으니 당연히 사람이 본다.

중요한 건 셋째 조건에 새로운 임계값을 넣지 않았다는 점이다. 만약 “몇 %까지는 자동”이라고 새 숫자를 하나 더 만들면, 그 숫자 자체가 나중에 마음대로 조정할 수 있는 손잡이가 된다. 대신 이미 있는 밴드 값을 그대로 재사용했다.

막히면 거부가 아니라 보류

조건을 하나라도 못 넘은 판본은 사라지지 않는다. 원장에 대기 제안으로 남아서 내가 직접 보고 채택하면 된다. “자동으로 못 넘어간다”와 “판본 자체가 틀렸다”는 다른 문제이기 때문이다.

그리고 자동으로 채택된 판본은 원장의 승인자 칸에 사람 이름 대신 auto:safe_refresh라는 값이 남는다. 나중에 이 판본을 사람이 확인한 건지 기계가 넘긴 건지 한 칸만 보면 구분되게 만들었다.

축 전환 하나는 따로 처리했다

만들고 보니 막히는 지점이 하나 있었다. 지금 활성 판본은 자산군 축(주식 35% 같은 큰 단위)인데, 쥬가 새로 내는 제안은 종목 축이다. 그러면 조건 ②(축이 그대로인가)에서 항상 막힌다. 실제로 확인해 보니 쥬가 자산군으로 내면 조건 ①(보유 커버)에서, 종목으로 내면 조건 ②에서 걸려서 — 어느 쪽으로 내도 결국 사람을 불러야 하는 상태였다.

이건 “이번 한 번만” 넘어가야 하는 문제라서, 별도로 1회 무장이라는 걸 추가했다. 마지막 채택 이후로 아직 한 번도 자동 채택이 없었다면, 축이 다르다는 이유만으로는 한 번 막지 않는다. 기준을 메모리가 아니라 원장에 남은 “마지막 채택 시각”으로 잡아서, 프로그램이 재시작돼도 이 허용은 딱 한 번만 쓰인다. 그리고 축 전환이 한 번 일어나면 활성 판본 자체가 종목 축이 되므로, 이 예외 조건은 자연히 다시 쓸 일이 없어진다.

여기서 분명히 해두고 싶은 게 있다. 이 1회 무장이 끄는 건 축 비교 검사 하나뿐이다. 조건 ①(보유를 전부 덮는가)은 그대로 살아 있다. 판본이 지금 들고 있는 걸 다 담지 못하면, 축이 바뀌든 말든 여전히 막힌다. 조용히 전량 매도되는 사고를 막는 건 이 조건이고, 이건 무장 여부와 무관하게 항상 켜져 있어야 한다.

그래도 남는 위험은 정직하게 적는다

축을 넘긴 뒤에는 이전 판본과 목표 비중을 밴드로 비교할 수 없다. 그러니 쥬가 낸 종목별 비중이 지금과 많이 달라도, 그 자체로는 자동 채택을 막지 못한다. 다만 자동 채택 경로는 새 종목을 여는 권한이 없다 — 이미 들고 있는 것의 비중을 줄이거나 늘리는 것까지만 할 수 있다. 그래서 최악의 경우도 “새로운 곳에 잘못 들어간다”가 아니라 “보유를 현금 쪽으로 과하게 줄인다” 정도다. 이 정도 규모는 “푼돈”이라고 내가 직접 정하고 위임한 범위다.

지금 실제로 켜져 있나 — 그렇다

기본값은 꺼짐이다. 스테이지를 새로 만들었다고 저절로 도는 게 아니라, 실행할 때 --auto-adopt 플래그를 따로 줘야 켜지고, 콘솔에는 지금 이게 켜져 있는지 배너로 찍힌다. 확인해보니 실제로 이번 주말부터 라이브 실행 스크립트에 이 플래그가 들어갔다 — 즉 이건 “만들어만 두고 안 켠” 기능이 아니라 지금 이 순간 실제로 돌고 있는 경로다.

다만 효과는 아직 관측하지 못했다. 이 글을 쓰는 시점은 일요일 밤이고, 국내 장은 열리지 않는다. 이 위임이 실제로 첫 번째 채택을 만들어내는 건 내일(월요일) 개장 이후다. 지금까지 확인한 건 회귀 테스트와 코드가 말하는 조건뿐이고, 실전에서 네 조건이 어떻게 걸리는지는 아직 한 번도 보지 못했다.

이건 여전히 매수 버튼이 아니다

혹시 오해할까 봐 적어둔다. 이번에 위임한 건 이미 보유한 자산의 비중을 다시 맞추는 판본 채택이지, 새 종목을 사는 판단이 아니다. 개별 종목을 새로 담는 문은 이 자동 경로에서 여전히 잠겨 있다.

실제로 오늘(2026-08-28 15:41 KST 스냅샷 기준, 지금 시점으로는 stale 상태) KIS 국내장 알파 화면을 다시 열어봐도 마찬가지였다. 상위 20개 후보가 떠 있고 각각 모멘텀·변동성 수축 같은 신호가 붙어 있지만, 전부 gate_status: no_experiment다. 검증을 통과한 신호가 하나도 없다는 뜻이고, 그러니 이 후보들 중 무엇도 자동으로든 수동으로든 새 매수로 이어지지 않는다. 이번 위임과 이 후보 목록은 서로 다른 문 앞에 서 있다.

마무리

이번 작업을 하면서 계속 떠올린 기준은 하나였다. “이게 내 결정 부담을 줄이는가, 아니면 위험을 감추는가.” 채택 버튼을 누르는 매주의 잡일은 줄이고 싶었지만, 그 버튼이 막아주던 사고(판본에 없는 보유가 조용히 팔리는 것 같은)까지 같이 지워버리면 그건 위임이 아니라 그냥 눈을 감는 것이다.

그래서 이번엔 “전부 맡긴다”가 아니라 “이 네 조건 안에서만 맡긴다”로 선을 그었다. 다음에 볼 건 코드가 아니라 로그다 — 월요일 개장 뒤 실제로 대기 제안이 자동 채택으로 넘어가는지, 아니면 조건에 걸려 내 앞으로 다시 돌아오는지.

이 글은 개인 프로젝트의 개발·운영 기록이며 투자 조언이나 매수·매도 추천이 아니다. 실제 계좌 잔고, 보유 종목, 주문 내역은 다루지 않는다.

월요일도 쥬한테 맡겼다 — 대신 넘기지 않은 것 하나

https://poul.kr/2026/08/30/20260830-hermes-jue-auto-adopt/

Author

PouL

Posted on

2026-08-30

Updated on

2026-08-31

Licensed under

댓글