국고채 현물 · 종목 단위 곡선 잔차 · 2012 ~ 2026 · 사전등록 3가설 Holm

커널 곡선으로 고른 싼 국고 종목은 이웃 대비 되돌아오는가

국고채 전 종목 민평에 날마다 커널 리지 할인곡선을 맞추고, 곡선보다 평소보다 크게 싸진 종목을 사고 잔존이 가까운 이웃을 파는 DV01 중립 교체가 왕복 비용 1bp 뒤에도 남는지 확인 구간 2022 ~ 2026년 거래 752건으로 검정했다. 넬슨 시겔, 오토인코더, 이웃 선형 보간 곡선과도 같은 규칙으로 견줬다.

폐기 · H780 ~ H782 미지지 비용 전 +0.24bp, 비용 1bp 뒤 −0.76bp 신호 편차 중앙값 0.35bp

세 줄 요약

  1. 커널 리지 곡선 잔차로 고른 싼 종목 대 이웃 교체는 확인 구간 752건에서 비용 전 +0.24bp 로 무작위 종목(+0.02bp)보다 분명히 컸지만, 비용 1bp 를 빼면 −0.76bp 이고 한쪽 p 는 1.000 이다.
  2. 원인은 신호 크기다. 커널 곡선이 종목을 너무 잘 맞춰 신호 순간 편차의 중앙값이 0.35bp 이고, 편차의 절반도 돌아오지 않는다. 덜 맞는 곡선(넬슨 시겔, 오토인코더)일수록 신호와 손익이 컸다.
  3. 편차 3bp 이상만 고르면 확인 구간 비용 뒤 +0.3 ~ +0.4bp 가 남지만 유의하지 않고 결과를 본 뒤의 탐색이다. 장내 체결 검증은 표본이 0건이었다. 판정은 폐기.

가설과 결론

가설
국고채 전 종목의 민평 수익률에 커널 리지 할인곡선을 날마다 맞추면, 곡선보다 평소보다 크게 싸진 종목(잔차 z 가 2 이상)은 며칠 안에 곡선 쪽으로 돌아온다. 그래서 그 종목을 사고 잔존이 가까운 이웃 종목을 DV01 중립으로 파는 교체(z 가 0.5 아래로 오면 청산, 최대 20영업일)는 쌍 왕복 비용 1bp 를 내고도 이익이 남는다(H780). 커널 잔차는 넬슨 시겔 잔차보다 더 잘 되돌아오고(H781), 장내 체결 수익률로 다시 재도 손익 부호가 같다(H782).
결론
세 가설 모두 지지되지 않았다. 신호는 무작위보다 확실히 되돌아오지만 크기가 거래당 0.24bp 로 비용 1bp 의 4분의 1 이다. 커널 곡선은 넬슨 시겔보다 되돌림 비율도 낮았고, 장내 체결로 잴 수 있는 거래는 없었다. 판정은 폐기다.

이 실험의 출발점은 두 갈래다. 하나는 할인함수를 매끄러움 벌점이 있는 함수 공간에서 고르는 커널 리지 곡선 추정법이다. 이 방법은 넬슨 시겔처럼 모양을 미리 정하지 않으면서도 종목 가격을 잘 맞춰, 미국 국채에서 기존 곡선보다 가격 오차가 작다고 알려져 있다. 다른 하나는 과거 곡면의 반복 무늬를 기억해 빈 칸을 복원하는 디노이징 오토인코더다. 두 방법 모두 «공정한 곡선» 을 더 잘 만든다는 주장이므로, 그 곡선에서 벗어난 종목은 잘못 매겨진 종목이고 되돌아올 것이라는 것이 이 실험의 가설이다.

한국 국고채 현물은 선물과 달리 최소 호가 단위 문제가 덜하고, 같은 만기 구간에 경과물이 여럿 있어 종목 사이 상대가치를 노리기 좋다. 같은 구간의 이웃을 DV01 중립으로 맞춰 팔면 금리 방향 위험이 거의 지워지고, 남는 손익은 두 종목 수익률 차이의 변화와 캐리 차이뿐이다. 그래서 질문은 «곡선 잔차가 이웃 대비 수익률 차이를 예측하는가» 로 좁혀진다.

결과는 분명했다. 확인 구간 2022-01 ~ 2026-10 에 규칙이 낸 거래 752건(연 156건)의 거래당 손익은 비용 전 +0.24bp 이고, 같은 날 같은 보유로 무작위 종목을 고른 귀무 1,000회의 평균 +0.02bp(90% 범위 −0.10 ~ +0.14bp)보다 위에 있다. 그러나 쌍 왕복 비용 1bp 를 빼면 −0.76bp 이고, 월 블록 부트스트랩 90% 구간 −0.95 ~ −0.57bp 가 통째로 0 아래다. 발견 구간 2012 ~ 2021 도 비용 뒤 −0.85bp 로 같은 모양이고, 격자 36칸 어디에서도 비용 전 손익이 1bp 에 닿지 않았다.

왜 그런가에 대한 답도 이 실험 안에서 나왔다. 곡선이 종목을 잘 맞출수록 신호가 작아지고 손익도 작아진다. 커널 곡선의 잔차 RMSE 는 1.0bp 로 넷 중 가장 작고, z 가 2 를 넘은 순간의 편차도 중앙값 0.35bp 에 그친다. 편차 크기별로 묶어 보면 어느 곡선이든 편차의 20 ~ 40% 정도가 20영업일 안에 돌아오므로, 비용 1bp 를 넘으려면 편차가 3bp 안팎은 되어야 한다. 커널 곡선은 그런 편차를 거의 만들지 않는다.

용어와 기호

민평
민간 채권평가사 세 곳이 매일 장 마감 뒤 내는 종목별 평가 수익률의 평균. 소수 셋째 자리(0.1bp)까지 나온다. 이 실험의 신호와 손익은 모두 민평으로 잰다
지표물
만기 구간마다 가장 최근에 발행되어 거래가 몰리는 종목. 지표지정일부터 지표해제일 전날까지를 지표물 기간으로 본다
경과물
지표물이 아닌 나머지 종목. 이 실험의 거래는 경과물끼리만 한다
잔존 T
그날부터 만기까지 남은 기간(년, 365.25일)
DV01
수익률이 1bp 오를 때 채권 가치가 줄어드는 금액. 수정 듀레이션 × 가격 × 0.0001
DV01 중립 교체
싼 종목을 사고 이웃을 팔되, 매도 액면을 매수 다리 DV01 ÷ 매도 다리 DV01 배로 맞춰 금리가 평행 이동해도 손익이 거의 0 이 되게 한 쌍
할인함수 g(x)
x 년 뒤 1원의 오늘 가치. g(0) = 1. 곡선 추정은 곧 g 를 고르는 일이다
KR
커널 리지 할인곡선. g = 1 + h 로 두고 h 의 굽음에 벌점을 주며 종목 가격 오차를 최소로 한다(§모델)
NS
넬슨 시겔(스벤손 형태) 수익률 곡선. 단말이 매일 맞춘 모수를 그대로 쓴다
AE
디노이징 오토인코더. 수익률 곡선 17점을 3개 숫자로 줄였다가 되살리는 신경망
LIN
이웃 선형 보간. 잔존이 바로 짧은 종목과 바로 긴 종목의 민평을 잇는 직선. 가장 단순한 기준선
잔차 e
e = (종목 민평 − 곡선이 그 종목에 매긴 수익률) × 100, 단위 bp. 양수면 곡선보다 수익률이 높으니 싸다
평균60
그 종목 잔차의 직전 60영업일 평균. 오늘 값은 넣지 않는다
편차 d
d = e − 평균60(bp). 평소 자리에서 오늘 얼마나 벗어났나
z
z = d ÷ (직전 60영업일 잔차의 표준편차). 60일 중 40일 이상 값이 있을 때만 계산한다
λ, α, δ
커널 리지의 벌점 세기, 만기 가중 지수, 기울기와 곡률 벌점의 비율. 이 실험은 α = 0.05, δ = 0, λ = 10−3.5
bp 손익
매수 다리 DV01 1 당 손익을 수익률 bp 로 환산한 값. 쌍 왕복 비용 1bp 는 이 단위에서 1 을 빼는 것이다
되돌림 비율
z 가 처음 2 를 넘은 날의 편차 d 가 10영업일 뒤 절반 이하(|d| 기준)로 줄어든 사건의 비율
월 블록 부트스트랩
거래를 진입 달로 묶고, 달을 복원 추출해 평균을 다시 계산하는 일을 10,000번 해 평균의 분포를 얻는 검정. 같은 달 거래끼리의 상관을 보존한다
Holm
가설 여럿의 p 값을 작은 순서로 (가설 수 − 순위 + 1)배 해 보정하는 다중검정 방법

자료

데이터셋

모든 가격 자료는 인포맥스 단말의 국고채 종목 일괄 패널에서 왔다. 고정금리 국고채 이표채만 쓰고 물가연동채, 원금이자 분리채는 뺐다. 발행정보 표가 2015년 3월 이후 만기 종목만 담고 있어 쓸 수 있는 종목은 156개이고, 그래서 2012 ~ 2014년에는 만기가 가까운 종목이 빠져 하루 종목 수가 16 ~ 32개로 적다. 2022년 이후에는 하루 59 ~ 74개가 있다. 넬슨 시겔 곡선은 단말이 날마다 국고채로 맞춘 스벤손 모수 여섯 개를 그대로 읽었다. 이 피팅 표는 2026-08-13 에 끝나서, 그 뒤 날짜는 넬슨 시겔 비교에서만 빠진다. 캐리 계산의 조달 금리는 CD 91일 수익률이고 2026-09-14 이후는 마지막 값을 이어 썼다.

표 1. 쓴 자료(정본 런 20261107T194218_main 이 읽은 범위)
자료기간크기쓰임
국고채 종목별 민평(평가사 3사 평균)2010-01 ~ 2026-11-054,157일, 156종목, 잔차 행 188,587곡선 적합, 신호, 손익
장내 종가, 장내 거래량같은 기간종목일의 18.9%H782 체결 기준 손익
장외 거래량, 상장잔액같은 기간같은 격자유동성 거르기, 발행과 재개방일
국채 발행정보2015-03 이후 만기156종목쿠폰, 발행일, 만기일
지표물 지정과 해제 일정2001 ~ 2026-06지정 223, 해제 215지표물 제외
넬슨 시겔(스벤손) 일별 모수, 국고채2010-01 ~ 2026-08-134,106일기준선 곡선
CD 91일2010-01 ~ 2026-09-14일별캐리의 조달 금리

점검과 시각 정렬

결과 지표를 보기 전에 자료를 점검했다. 종목일 중복은 0건이고, 민평이 전날과 똑같은 종목일은 4.0% 다. 달력 공백은 명절의 11일이 가장 길었다. 장내 종가는 종목일의 18.9% 에만 있고 하루 평균 6 ~ 13종목으로, 거래가 지표물에 몰린다. 장내 종가와 민평의 차이는 중앙값 +0.1bp, 10 ~ 90% 범위가 −1.1 ~ +1.5bp 였다. 이 숫자는 이미 이 실험이 상대하는 신호의 크기가 호가 차이 안쪽일 수 있음을 귀띔한다.

민평은 장 마감 뒤 저녁에 나오는 평가값이다. 그래서 날 t 의 민평으로 곡선을 맞추고 신호를 만든 다음, 진입은 다음 영업일 t+1 의 민평으로 한다. 청산도 z 가 0.5 아래로 내려온 날의 다음 영업일 민평으로 한다. z 의 평균과 표준편차는 오늘을 뺀 직전 60일로만 계산해서 그날 쓸 수 있는 정보만 쓴다. 상장잔액이 늘어난 날(발행과 재개방 입찰)은 월간 발행 계획으로 미리 알 수 있으므로 그 앞뒤 5영업일을 빼는 데 썼다. 외부로 반출한 자료는 없다.

방법

매매 규칙

날마다 네 곡선을 맞추고 종목별 잔차 e 를 얻는다. 커널 리지가 확증 모델이고 나머지 셋은 비교다. 거래 유니버스는 잔존 1년 이상, 그날 지표물이 아님, 발행과 재개방 앞뒤 5영업일이 아님, 직전 20영업일 장외 거래량 합이 0 보다 큼의 네 조건을 모두 만족하는 종목이다. 이 조건은 매수 다리와 매도 다리에 똑같이 적용한다.

날 t 에 z 가 2 이상인 종목 i 가 있으면 그 종목을 산다. 이웃 j 는 거래 유니버스 안에서 |z| 가 1 보다 작고, 잔존 차이가 max(1년, 종목 i 잔존의 25%) 이내인 종목 가운데 잔존이 가장 가까운 것이다. 조건을 만족하는 이웃이 없으면 거래하지 않는다. 같은 종목에 이미 열린 거래가 있으면 새로 들어가지 않는다. 진입은 t+1 민평, 청산은 z 가 0.5 이하로 내려온 첫날의 다음 영업일 민평이고, 그런 날이 없으면 진입 뒤 20영업일째 민평이다.

손익은 두 부분이다. 가격 항은 −[(매수 종목 수익률 변화) − (이웃 수익률 변화)] × 100 이고, 캐리 항은 [(yi − r) ÷ MDi − (yj − r) ÷ MDj] × 보유 일수 ÷ 365 × 100 이다. 여기서 y 는 진입일 민평, r 은 CD 91일, MD 는 수정 듀레이션이다. 둘을 더한 것이 비용 전 손익이고, 판정 비용은 쌍 왕복 1bp 다. 0.5bp 와 2bp 도 함께 보고한다. 현물 쌍이라 선물의 틱 비용 대신 수익률 bp 비용을 쓴다는 점은 사전등록 때 정했다.

검정과 판정

표본은 신호 날짜로 나눈다. 발견 구간은 2012-01 ~ 2021-12 로 강건성 격자와 최선 설정 고르기만 하고, 확인 구간 2022-01 ~ 2026-10 으로 판정한다. 청산이 마지막 자료일 2026-11-05 를 넘는 거래는 뺀다. 2024년 이후 신호만 따로 본 결과와, 충격 구간 13개(예를 들어 2020-02-24, 2022-02-24, 2024-08-05 등에서 시작하는 10영업일)와 겹친 거래를 뺀 결과도 낸다.

H780 은 확인 구간 거래당 비용 1bp 뒤 평균이 0 보다 큰지를 월 블록 부트스트랩 10,000회의 중심화 한쪽 p 로 묻는다. H781 은 되돌림 비율 차이(KR − NS)를 같은 달 블록 부트스트랩으로, H782 는 두 다리 모두 진입일과 청산일에 장내 종가가 있는 거래의 비용 전 손익을 묻는다. 세 p 를 Holm 으로 묶고 문턱은 0.05 다. 채택은 H780 과 H782 가 모두 통과하고 연 거래가 24건 이상일 때, 보류는 H780 만 통과할 때, 폐기는 H780 이 실패할 때다. 탐색으로는 곡선 넷의 비교, 무작위 종목 귀무 1,000회, 격자 36칸과 그 선택 절차를 z 를 무작위로 원형 이동한 귀무에서 다시 돌린 100회, 비용, 지연, 비싼 쪽, 잔존 구간 민감도를 미리 적어 두었다.

모델

커널 리지 할인곡선

할인함수를 g(x) = 1 + h(x), h(0) = 0 으로 두고, Σi ωi(Pi − Σk CFik g(tik))² + λ ∫ h''(x)² eαx dx 를 최소로 하는 h 를 고른다. P 는 민평에서 국고채 관행(반년 이표, 첫 기간 일할 단리 할인)으로 계산한 dirty price, CF 와 t 는 남은 현금흐름과 그 시점이다. 가중치 ω = 1/(MD·P)² 는 가격 오차를 수익률 오차로 맞춘다. 원 논문은 같은 벌점의 해를 재생 커널의 닫힌 꼴로 쓰지만, 이 실험은 논문 원문을 받지 못해 h 를 0 ~ 51년 월 간격 613점 격자에 두고 같은 벌점을 2차 차분으로 근사해 선형 방정식으로 풀었다. 격자가 촘촘하면 같은 곡선이 나온다.

λ 는 2012 ~ 2016년 무작위 120일에서 한 종목을 빼고 맞춘 곡선이 그 종목을 얼마나 맞추는지(수익률 RMSE)로 골랐다. 처음 사전등록한 격자 10−2 ~ 103 에서는 끝점이 가장 좋아서, 손익을 보기 전에 격자를 10−5 까지 넓히는 수정을 따로 커밋했다. 최소는 안쪽 λ = 10−3.5 에서 2.07bp 였다(그림 2 왼쪽). 이 값으로 2010 ~ 2026년 4,157일을 모두 맞췄고 잔존 1년 이상 종목의 잔차 RMSE 는 1.0bp 였다.

벌점 세기별 한 종목 빼기 오차와 곡선별 연도 적합 오차
그림 2. 왼쪽: 벌점 λ 를 바꿀 때 한 종목 빼기 수익률 RMSE. 동그라미가 고른 값이고 점선은 처음 격자의 끝점이다. 오른쪽: 연도별 잔차 RMSE(잔존 1년 이상). 커널 곡선이 해마다 가장 작고 오토인코더가 가장 크다.

디노이징 오토인코더

그날 종목 민평을 잔존 격자 17점(1 ~ 30년)에 선형 보간하고 그날 평균을 뺀 벡터를 넣는다. 구조는 17 → 8 → 3 → 8 → 17 의 완전연결이고 활성함수는 tanh 다. 학습할 때는 입력의 30% 를 무작위로 0 으로 가리고 원래 벡터를 맞추게 해서, 몇 점이 비어도 곡선 모양을 되살리도록 한다. 해마다 그 전 해 말까지의 날만으로 다시 학습했다(2012년 모델은 501일, 2026년 모델은 3,955일). 복원한 17점에 평균을 더하고 PCHIP 으로 종목 잔존에 보간해 모형 수익률을 얻는다. 30년을 넘는 종목은 30년 값을 쓴다.

학습된 2026년 오토인코더의 연결 가중치와 복원 예시
그림 7. 학습된 2026년 오토인코더. 왼쪽은 층 사이 연결(선 굵기는 가중치 절댓값, 빨강 양수, 파랑 음수), 가운데는 첫 층 가중치, 오른쪽은 2026-06-17 의 입력과 복원이다. 저장된 복원값을 모델로 다시 계산해 최대 차이 0 을 확인한 뒤 그렸다. 3개 병목으로는 짧은 구간의 굽음을 다 담지 못해 잔차가 크다.

넬슨 시겔과 이웃 선형

넬슨 시겔은 수준, 기울기, 굽음 두 개의 여섯 모수 곡선이라 종목 하나하나의 들쭉날쭉함은 따라가지 못한다. 그 대신 잔차가 크고 오래 간다. 이웃 선형은 곡선이라기보다 «양옆 종목 대비 얼마나 튀었나» 를 재는 버터플라이에 가깝다. 그림 1 은 2025-06-17 하루의 73종목과 세 곡선, 그리고 같은 날의 잔차를 보여 준다. 커널 곡선은 종목을 거의 다 지나가고, 넬슨 시겔은 ±5bp 안팎으로 벗어나며, 오토인코더는 30년을 넘는 구간을 평평하게 두어 장기물에서 −10 ~ −20bp 의 큰 잔차를 낸다.

2025년 6월 17일 국고채 민평과 세 곡선 및 종목별 잔차
그림 1. 왼쪽: 2025-06-17 고정금리 국고채 73종목의 민평(검은 점)과 세 곡선이 각 종목에 매긴 수익률. 오른쪽: 같은 날 종목별 잔차. 커널 곡선의 잔차는 거의 ±1bp 안에 있다.

결과

확증 결과

표 2 가 사전등록한 세 가설의 결과다. H780 의 확인 구간 거래는 752건으로 58개월에 걸쳐 있고 연 156건이라 빈도 문턱(연 24건)은 넉넉히 넘는다. 거래당 비용 전 손익은 +0.24bp 이고 거의 전부가 가격 항(+0.24)이며 캐리 항은 0.00 이다. 같은 구간 이웃끼리라 캐리 차이가 작기 때문이다. 비용 1bp 를 빼면 −0.76bp, 이긴 거래는 23% 다. 월 블록 부트스트랩 90% 구간은 −0.95 ~ −0.57bp 이고 한쪽 p 는 1.000 이다. 손익분기 비용은 쌍 왕복 0.24bp 로, 현물 호가 폭보다 훨씬 작다.

표 2. 확증 가설 세 개(확인 구간 신호 2022-01 ~ 2026-10, 정본 런 metrics.json 의 confirm)
가설표본값90% 구간한쪽 pHolm
H780 커널 규칙 비용 1bp 뒤752건, 58개월−0.76bp(비용 전 +0.24)[−0.95, −0.57]1.0001.00
H781 되돌림 비율 KR − NS1,118 / 1,441 사건29.5% − 36.2% = −6.7%p[−11.0, −2.5]0.9951.00
H782 장내 체결 기준0건잴 수 없음1.00

H781 은 예측과 반대 부호다. z 가 처음 2 를 넘은 사건에서 10영업일 뒤 편차가 절반 이하로 줄어든 비율이 커널 곡선은 29.5%, 넬슨 시겔은 36.2% 였다. 커널 곡선의 사건은 편차 중앙값이 0.44bp 로 작아서, 민평이 0.1bp 단위로 매겨지는 것을 감안하면 절반 되돌림이 0.2bp 움직임이다. 그만큼 작은 편차는 잡음과 다르지 않게 머물거나 커진다. H782 는 지표물과 재개방 앞뒤를 뺀 경과물에 장내 체결이 거의 없어서, 두 다리 모두 진입일과 청산일에 장내 종가가 있는 거래가 0건이었다. 사전등록대로 실패로 셌다. 세 가설 모두 Holm 보정 뒤 1.00 이므로 판정은 폐기다.

표 3. 커널 규칙의 기간, 비용, 실행 민감도(정본 런 metrics.json 의 models.kr 과 robust)
갈래건수비용 전비용 0.5bp 뒤비용 1bp 뒤비용 2bp 뒤
확인 2022 ~ 2026(확증)752+0.24−0.26−0.76−1.76
발견 2012 ~ 2021896+0.15−0.35−0.85−1.85
2024 ~ 신호434+0.12−0.38−0.88−1.88
충격 구간 겹친 125건 제외627+0.28−0.22−0.72−1.72
진입 하루 더 늦춤(t+2)748+0.24−0.26−0.76−1.76
비싼 쪽 매도(z ≤ −2)737+0.29−0.21−0.71−1.71
잔존 1 ~ 5년만294+0.61+0.11−0.39−1.39
잔존 5 ~ 12년만189+0.05−0.45−0.95−1.95
잔존 12년 이상만269−0.02−0.52−1.02−2.02

표 3 은 이 결론이 기간, 비용, 실행 시점에 거의 흔들리지 않음을 보여 준다. 진입을 하루 더 늦춰도 비용 전 +0.24bp 그대로라 신호가 하루 사이에 사라지는 종류가 아니다. 지정가로 호가 안쪽에서 체결해 비용을 0.5bp 로 줄인다고 해도 −0.26bp 이고, 잔존 1 ~ 5년 종목만 골라도 0.5bp 비용에서야 +0.11bp 다. 쌍 손익의 가격 항과 보유 기간 전 종목 평균 수익률 변화의 상관은 0.07 이라 금리 방향은 손익을 설명하지 않는다. DV01 중립이 제대로 작동한다는 뜻이다.

곡선 비교와 귀무

같은 규칙을 네 곡선에 똑같이 적용하면 순서가 뚜렷하다(그림 3 왼쪽, 표 4). 확인 구간 비용 전 손익은 오토인코더 +0.94bp, 넬슨 시겔 +0.68bp, 커널 +0.24bp, 이웃 선형 +0.01bp 다. 비용 1bp 뒤에는 넷 다 음이고 가장 나은 오토인코더도 −0.06bp(p 0.60)다. 이 순서는 곡선의 적합 오차 순서와 거꾸로다. 오토인코더 잔차 RMSE 는 6.2bp, 넬슨 시겔 2.2bp, 이웃 선형 1.9bp, 커널 1.0bp 다. 공정 가치를 더 잘 맞추는 곡선이 상대가치 신호로는 더 나빴다.

곡선별 비용 전후 손익과 무작위 종목 귀무 분포
그림 3. 왼쪽: 확인 구간 z ≥ 2 규칙의 거래당 손익. 연한 막대는 비용 전, 진한 막대와 오차 막대는 비용 1bp 뒤와 월 블록 부트스트랩 90% 구간. 오른쪽: 같은 날 무작위 종목을 골라 같은 이웃과 같은 보유로 거래한 귀무 1,000회의 비용 전 평균 분포와 커널 규칙의 실제 값(빨간 선), 비용 1bp(점선).

그림 3 오른쪽은 이 결과가 «신호가 없다» 는 뜻이 아님을 보여 준다. 커널 규칙의 거래 날짜와 보유 길이를 그대로 두고 매수 종목만 그날 거래 유니버스에서 무작위로 바꾼 귀무 1,000회의 비용 전 평균은 +0.02bp, 90% 범위는 −0.10 ~ +0.14bp 다. 실제 값 +0.24bp 는 1,000회 모두보다 크다. 즉 잔차 z 는 이웃 대비 수익률 차이를 분명히 예측한다. 다만 그 크기가 비용 1bp 의 오른쪽 끝에 한참 못 미친다.

표 4. 곡선별 같은 규칙의 결과(확인 구간, z ≥ 2, 청산 0.5, 최대 20일). 잔차 RMSE 와 편차 중앙값은 전 기간
곡선잔차 RMSE신호 편차 중앙값건수비용 전비용 1bp 뒤한쪽 p
KR(확증)1.0bp0.35bp752+0.24−0.761.000
NS2.2bp1.37bp803+0.68−0.321.000
AE6.2bp2.25bp671+0.94−0.060.60
LIN1.9bp0.54bp760+0.01−0.991.000
무작위 종목 1,000회+0.02 [−0.10, +0.14]−0.98

신호 크기가 손익을 정한다

그림 4 는 거래를 신호 순간의 편차 d 크기로 묶어 비용 전 손익을 그린 것이다. 곡선이 무엇이든 점들이 대체로 «편차의 35%» 점선 근처에 모인다. 넬슨 시겔을 예로 들면 편차 0.5 ~ 1bp 구간(평균 0.78bp)에서 +0.16bp, 1 ~ 2bp 에서 +0.55bp, 2 ~ 3bp 에서 +0.79bp, 3 ~ 5bp(평균 3.6bp)에서 +1.43bp, 5bp 이상(평균 6.6bp)에서 +2.29bp 다. 되돌아오는 몫은 편차의 20 ~ 40% 이고, 비용 1bp 를 넘으려면 편차가 대략 3bp 는 되어야 한다는 계산이 나온다.

신호 순간 편차 크기 구간별 비용 전 손익
그림 4. 전 기간 거래를 신호 순간 편차 d 의 구간(0.5, 1, 2, 3, 5bp 경계)으로 묶은 비용 전 거래당 손익. 숫자는 구간의 건수(15건 이상만 표시). 회색 점선은 편차의 35% 가 돌아온다고 볼 때의 선, 검은 점선은 비용 1bp.

커널 곡선은 이 그림의 왼쪽 아래 구석에만 산다. 전 기간 커널 거래 1,676건 가운데 1,484건(89%)이 편차 1bp 미만이었고, 3bp 를 넘은 것은 4건뿐이다. z 는 «그 종목의 평소 흔들림에 비해 크다» 는 뜻이지 «비용에 비해 크다» 는 뜻이 아니다. 커널 잔차는 평소 흔들림 자체가 0.1 ~ 0.3bp 라서 z 가 2 를 넘는 일은 잦아도 그 편차가 돈이 되지 않는다. 그림 8 은 그 극단적인 예다. 직전 60일 표준편차가 아주 작던 20년물이 하루에 잔차 0.1bp 에서 1.9bp 로 뛰어 z 가 36.8 이 되었지만, 이것은 되돌아올 이탈이 아니라 자리 이동이었고 20영업일 뒤 손익은 −0.28bp 였다.

확인 구간에서 z 가 가장 컸던 커널 신호 하나의 잔차 경로
그림 8. 확인 구간 커널 거래 중 z 가 가장 컸던 신호(2024-08 말, 잔존 20.3년 종목) 앞뒤의 매수 종목과 이웃의 커널 잔차. 잔차가 한 번에 뛴 뒤 그 자리에 머물렀다.

격자와 선택 편향

진입 문턱 z {1.5, 2, 2.5, 3}, 청산 문턱 {0, 0.5, 1}, 최대 보유 {10, 20, 40}영업일의 36칸을 모두 돌렸다. 그림 5 는 청산 0.5 의 열두 칸이다. 확인 구간 비용 전 손익은 36칸 전부가 +0.07 ~ +0.57bp 사이이고 비용 1bp 를 넘는 칸은 없다. 보유를 늘리고 문턱을 2.5 로 올리면 조금 커지지만 그래도 비용 뒤 −0.46bp 다. 발견 구간에서 비용 뒤 평균이 가장 컸던 설정(z 1.5, 청산 0, 40일)을 확인 구간에 적용하면 비용 전 +0.38, 비용 뒤 −0.62bp 다.

진입 문턱과 최대 보유 격자의 발견 구간과 확인 구간 손익 열지도
그림 5. 청산 z 0.5 에서 진입 문턱(세로)과 최대 보유(가로)별 비용 전 거래당 손익. 괄호는 비용 1bp 뒤. 왼쪽 발견 2012 ~ 2021, 오른쪽 확인 2022 ~ 2026. 모든 칸이 비용 뒤 음이다.

설정을 고르는 절차 자체가 만드는 착시를 재려고, 종목마다 z 시계열을 무작위로 원형 이동해 잔차와 미래 수익률의 연결을 끊은 다음 같은 36칸 고르기를 100번 다시 했다. 그 귀무에서 고른 설정의 확인 구간 비용 뒤 평균은 −0.98bp(95% 분위 −0.85bp)였고, 실제 값 −0.62bp 는 100번 모두보다 높다. 선택 편향이 이 신호를 만든 것은 아니다. 신호는 진짜이고 작을 뿐이다.

살릴 만한 변형

진단을 따라 «편차가 비용보다 클 때만» 들어가는 변형을 결과를 본 뒤 탐색으로 돌렸다(그림 6 왼쪽). z ≥ 2 에 편차 d ≥ 3bp 를 더하면 넬슨 시겔은 확인 구간 229건 비용 뒤 +0.33bp(p 0.15), 오토인코더는 399건 +0.42bp(p 0.12)가 된다. 넬슨 시겔은 발견 구간에서도 78건 +1.23bp(p 0.000)였지만 연 8건 꼴이라 빈도가 모자랐다. 커널 곡선은 d ≥ 2bp 에서 확인 43건 +1.06bp(p 0.11)지만 발견 구간에는 17건뿐이다. 벌점을 키운 커널(λ = 10−2, 잔차 RMSE 1.5bp)에 d ≥ 2bp 를 더하면 확인 137건 +0.49bp(p 0.13)다. 어느 것도 확인 구간에서 0.05 를 넘지 못했다.

크기 문턱 변형의 비용 뒤 손익과 연도별 비용 전 손익
그림 6. 왼쪽: z ≥ 2 에 편차 문턱 d 를 더한 변형(탐색)의 확인 구간 비용 1bp 뒤 거래당 손익과 건수. 오른쪽: 신호 연도별 비용 전 거래당 손익. 커널과 넬슨 시겔의 기본 규칙(실선)과 넬슨 시겔 d ≥ 3bp 변형(점선 사각형), 검은 점선은 비용 1bp.

그림 6 오른쪽을 보면 기본 규칙은 해마다 비용 1bp 선 아래에 머문다. 커널 규칙은 2012 ~ 2026년 15개 해 중 가장 좋은 2022년도 +0.59bp 다. 넬슨 시겔 d ≥ 3bp 변형은 대부분의 해에 1bp 선 위에 있으나, 거래 311건 가운데 136건(44%)이 2020 ~ 2022년에 몰려 있고 2024년에는 +0.20bp 로 내려앉았다. 2020 ~ 2022년을 빼면 비용 뒤 +0.37bp 다. 크기 문턱 변형에서 남는 몫도 잔존 1 ~ 5년(비용 전 +1.92bp, 207건)에 쏠려 있다. 이 갈래는 다음 실험의 사전등록 후보로 남긴다.

H782 를 잴 수 없었으므로, 평활의 착시인지를 다른 길로 한 번 더 봤다(탐색). 신호일에 매수 종목의 장외 거래량이 있었는지로 신호를 둘로 나눈다. 평가사가 체결 없이 종목 차이를 천천히 고르게 펴는 것만이 되돌림의 원천이라면 거래가 없던 신호에서만 손익이 나와야 한다. 결과는 반대였다. 확인 구간 커널 기본 규칙은 거래가 있던 587건이 비용 전 +0.26bp(p 0.017), 거래가 없던 165건이 +0.19bp 였고, 넬슨 시겔 편차 3bp 변형도 거래가 있던 195건 +1.35bp, 없던 34건 +1.21bp 였다. 다만 이것은 거래량이 있었다는 사실일 뿐 그 체결 가격으로 잰 손익이 아니고, 오토인코더는 거래가 없던 신호 쪽이 더 컸다(+1.15 대 +0.88bp). 착시 가설을 지우지는 못하고 약하게 할 뿐이다.

해석

커널 리지 곡선은 가격 오차를 줄이는 데 매우 좋다. 그런데 그 좋음이 곧 상대가치 신호기로서의 약점이다. 곡선이 유연해서 종목마다의 들쭉날쭉함을 거의 다 흡수하고, 남는 잔차는 평가사의 0.1bp 반올림과 같은 크기의 흔들림이다. 그 흔들림도 무작위보다는 확실히 되돌아오지만, 되돌아오는 몫이 편차의 20 ~ 40% 라서 거래당 0.2 ~ 0.3bp 를 넘지 못한다.

반대로 넬슨 시겔이나 3개 병목의 오토인코더처럼 거친 곡선은 종목의 이탈을 흡수하지 못하고 그대로 잔차로 남긴다. 그래서 신호가 크고 손익도 크다. 결국 이 실험이 보여 준 것은 «어느 곡선이 더 공정한가» 가 아니라 «편차가 비용의 몇 배인가» 가 교체의 손익을 정한다는 것이다. 편차가 3bp 를 넘는 드문 경우에는 어떤 곡선으로도 그 종목을 잡을 수 있고, 그때 남는 비용 뒤 +0.3 ~ +0.4bp 는 아직 유의하지 않다.

장내 체결로 이 되돌림을 확인하지 못한 것도 중요한 사실이다. 경과물의 장내 거래가 거의 없으니 민평의 되돌림이 실제 거래 가격에서도 일어나는지, 아니면 평가사가 종목 사이 차이를 천천히 고르게 펴는 방식의 산물인지 이 자료로는 가를 수 없다. 이 문제는 장외 체결 원장으로 다리를 다시 재는 다음 실험의 몫이다.

한계

이 결론이 뒤집히거나 과장되었을 수 있는 이유를 적는다.

곡선 근사. 커널 곡선은 논문의 닫힌 꼴 커널이 아니라 같은 벌점을 월 간격 격자에서 푼 근사다. 벌점은 곡률(δ = 0)과 α = 0.05 하나만 썼고 기울기 벌점을 섞은 변형은 보지 않았다. λ 는 손익을 보기 전에 격자를 한 번 넓혀서 다시 골랐다. 더 큰 λ 두 개는 탐색에서 봤고 결론은 같았다.

민평 기준 손익. 손익은 모두 평가사 민평으로 쟀다. 민평은 0.1bp 단위로 매겨지는 평활값이라 실제로 체결 가능한 가격과 다르고, 이 실험의 신호 크기(0.2 ~ 0.4bp)는 그 반올림 단위의 몇 배에 불과하다. 장내 체결 기준 재측정(H782)은 표본이 0건이라 하지 못했다. 장외 거래가 있던 신호에서도 손익이 비슷했지만 체결 가격으로 잰 것은 아니다. 그러므로 탐색에서 남은 +0.3 ~ +0.4bp 도 평가 방식의 산물일 수 있다.

비용 가정. 쌍 왕복 1bp 는 가정이다. 실제 호가 폭은 종목마다 0.5 ~ 2bp 이고 오래된 장기물과 30년 이상 종목은 더 넓다. 대차 수수료, 결제 지연, 매도 다리의 조달 차이는 넣지 않았다. 비용이 더 크면 결론은 더 나빠지고, 0.5bp 로 줄여도 확증 규칙은 음이다.

표본과 정의. 발행정보가 2015년 3월 이후 만기 종목만 담아 2012 ~ 2014년은 짧은 종목이 비었고 곡선의 짧은 끝이 약하다. H781 의 되돌림 사건은 z 가 2 를 처음 넘은 날로 읽었다. 오토인코더는 여러 해에서 반복 상한 400회에 걸려 덜 학습되었고 30년 넘는 구간을 평평하게 두어 장기물 잔차가 컸다. 오토인코더의 비교 결과는 이 설정에 묶인다.

결과를 본 뒤 고른 것. 크기 문턱, 매끄러운 커널, 잔존 구간 결과는 모두 확증 결과를 본 뒤 고른 탐색이다. 이 변형들에는 선택 편향 귀무를 따로 돌리지 않았으니 p 0.1 안팎의 값을 그대로 믿으면 안 된다.

다음에 해 볼 것

첫째, 크기 문턱을 사전등록한 판이다. 넬슨 시겔 또는 오토인코더 잔차에서 z ≥ 2 이면서 편차 3bp 이상, 잔존 1 ~ 5년 종목만 이웃과 DV01 중립으로 교체한다. 2012 ~ 2019 를 발견, 2020 ~ 2022 를 제외, 2023 ~ 2026 을 확인으로 나눠 비용 1bp 뒤 0 초과를 묻고, 연 40건 이상이 나오는지를 관문으로 둔다. 둘째, 장외 체결 기록으로 경과물 다리를 다시 재서 민평 평활의 착시인지 가른다. 두 번째가 통과하기 전에는 첫 번째도 보류를 넘기 어렵다.

산출물

  • 사전등록protocol.md (원문과 λ 격자 수정 절)
  • 분석과 판정analysis.md
  • 정본 런results/20261107T194218_main/ (metrics.json, trades_kr.csv 외 곡선별 거래, grid.csv, yearly.csv, halflife.csv, null_selection.csv, null_random.csv)
  • 탐색 런results/20261107T194642_detail/ (detail.json, devbins.csv, sizefilter.csv, smooth.csv)
  • 탐색 런 2results/20261107T200532_detail2/ (otc_split.csv, 장외 거래 유무로 나눈 손익)
  • 코드code/load.py, code/curves.py, code/s1.py, code/s_detail.py, code/s_detail2.py, code/render_figures.py

재현 순서는 이렇다. 먼저 uv run python experiments/0234_ktb_cash_kernel_curve_switch/code/curves.py 로 네 곡선과 잔차를 만든다(약 3분, λ 고르기를 다시 하려면 --lam-only). 그다음 code/s1.py 가 확증 검정과 격자, 귀무를 돌려 정본 런을 만들고(약 1분), code/s_detail.py 와 code/s_detail2.py 가 탐색 진단을 만든다. 그림은 code/render_figures.py 가 두 런과 잔차에서 다시 그린다. 난수 seed 는 234 다.

Appendix

A. 데이터셋 실물

단말 패널의 원래 모양은 날짜, 표준코드, 민평 세 칸의 긴 표다. 아래는 2025년 파일의 첫 세 줄이다.

일자,종목코드,민평
2025-01-02 00:00:00,KR10350172C8,2.793
2025-01-02 00:00:00,KR1035017S39,2.674
2025-01-02 00:00:00,KR103501G562,2.755

곡선 적합 뒤의 잔차 표는 날짜와 종목마다 한 줄이다. 아래는 2025-06-17 의 여섯 종목이다(전체 73종목 중 발췌). y 는 민평(%), ttm 은 잔존(년), md 는 수정 듀레이션, y_kr 등은 곡선이 매긴 수익률(%), e_kr 등은 잔차(bp)다.

표 5. 잔차 표 발췌(2025-06-17)
종목yttmmdy_kry_nsy_aee_kre_nse_aee_lin
KR103501GD652.2860.980.962.29062.32592.2697−0.46−3.99+1.63−0.70
KR103501GF302.4311.731.672.43292.39712.3820−0.19+3.39+4.90−0.50
KR103502G8672.5152.982.852.49052.52192.4720+2.45−0.69+4.30+7.50
KR103502GC652.7886.986.202.79612.79812.7850−0.81−1.01+0.30−1.55
KR103504GC972.82117.2313.162.82512.84062.8673−0.41−1.96−4.63+0.16
KR103502GE302.74328.7318.992.74442.73732.8457−0.14+0.57−10.27+0.20

B. 모델 입출력 실물

규칙의 입력은 신호일의 z(매수 종목과 이웃), 두 종목의 잔존, 진입일과 청산일의 민평과 수정 듀레이션, CD 91일이다. 출력은 거래 한 줄이다. 아래는 정본 런 거래표에서 2025년 첫 거래를 포함한 세 줄을 그대로 옮긴 것이다(px 는 가격 항, carry 는 캐리 항, gross 는 비용 전, 모두 bp). 손익이 0.1bp 의 배수로 나오는 것은 민평이 0.1bp 단위이기 때문이다.

표 6. 커널 규칙 거래표 발췌(trades_kr.csv)
신호진입청산보유매수이웃잔존 i잔존 jz iz jpxcarrygross
2025-01-022025-01-032025-02-0620KR103503GB99KR103502GA9116.6915.693.98−0.39−0.8+0.005−0.80
2025-01-072025-01-082025-02-1120KR103502GB33KR103502GA3426.1725.172.040.05−3.6+0.009−3.59
2025-01-102025-01-132025-01-3110KR103501GDC8KR103502G6C41.911.912.32−0.02−0.5−0.055−0.56

첫 줄을 풀면 이렇다. 2025-01-02 저녁 2041년 9월 만기 20년물(쿠폰 1.875%)의 커널 잔차가 직전 60일 평소보다 3.98 표준편차 싸졌고, 잔존이 1년 짧은 2040년 9월 만기 종목(쿠폰 1.5%)은 평소 자리(z −0.39)에 있었다. 다음 영업일 민평으로 앞 종목을 사고 뒤 종목을 DV01 만큼 팔았다. z 가 20영업일 동안 0.5 아래로 돌아오지 않아 2025-02-06 에 청산했고, 그동안 매수 종목이 이웃보다 0.8bp 더 싸져 비용 전 −0.80bp 였다. 오토인코더 모델의 입력과 출력 실물은 그림 7 오른쪽(2026-06-17 의 17점 입력과 복원)에 있다.

C. 실험 설정

표 7. 설정 값(protocol.md 와 코드 상수)
항목값
커널 격자0 ~ 51년, 월 간격 613점, h(0) = 0
커널 벌점α = 0.05, δ = 0, λ = 10−3.5(LOO RMSE 2.07bp), 가중 ω = 1/(MD·P)²
λ 후보10−5 ~ 103, 0.5 간격(처음 사전등록은 10−2 ~ 103)
적합 유니버스민평 있음, 잔존 0.5년 이상, 지표물 포함
오토인코더17 → 8 → 3 → 8 → 17, tanh, 입력 30% 가림, 학습 사본 5배, Adam 학습률 0.001, 최대 400회, 조기 종료(검증 10%, 20회), 해마다 재학습, seed 234
z직전 60영업일(최소 40일) 평균과 표준편차, 오늘 제외
진입과 청산z ≥ 2 매수, 이웃 |z| < 1 이고 잔존 차이 ≤ max(1년, 25%), 진입 t+1, 청산 z ≤ 0.5 다음 날 또는 20영업일
거래 유니버스잔존 1년 이상, 지표물 아님, 상장잔액 증가일 ±5영업일 아님, 직전 20일 장외 거래 있음
비용쌍 왕복 1bp(판정), 0.5bp 와 2bp(보고)
분할발견 2012-01 ~ 2021-12, 확인 2022-01 ~ 2026-10, 별도 2024 ~
검정진입 달 블록 부트스트랩 10,000회 중심화 한쪽 p, Holm 3개, 문턱 0.05
귀무무작위 종목 1,000회, z 원형 이동 선택 절차 100회
격자z {1.5, 2, 2.5, 3} × 청산 {0, 0.5, 1} × 보유 {10, 20, 40}