3년, 10년 국채선물 DV01 중립 페어 · 2012-01 ~ 2026-10 · 특징 152 + 새 46개 · 릿지, LightGBM, 앙상블

3년, 10년 국채선물 커브 예측에 재정거래 유인과 통안채, 바이백, 추경, 한은 매입을 더하면 나아지는가

3년 국채선물을 사고 10년 국채선물을 같은 DV01 만큼 파는 스티프너에 다섯 자료를 더했다. FX 스왑으로 본 외국인 재정거래 유인, 통안채 공급, 기재부 국고채 바이백과 교환, 추경, 한국은행 국고채 단순매입이다. 같은 날과 같은 달의 설명, 특징 하나씩의 예측력, 사건 뒤 움직임, 걷기 전진 AI 의 증분을 결과 전에 고정한 가설로 쟀다. 다섯 자료 모두 귀무를 넘는 설명 증분이나 예측 증분을 주지 못했다.

사전등록 H153~H158 미지지 3,626 거래일 · 시험 2016~2026 순환이동 귀무 릿지 100 · LightGBM 20 · 계열 최대 39 가설 H153~H158

재정거래 유인은 2012년 연평균 1.0% 에서 2026년 0.05% 로 내려왔고, 2026-10-12 3개월 유인은 −0.19% 다. 이 유인의 20세션 변화는 기대대로 다음 20세션 스티프닝과 양의 순위 상관(+0.088)이었지만 귀무 p 0.079 로 경계에 그쳤다. 새 묶음 넷을 더한 같은 날 R² 는 0.306 → 0.309(p 0.31), 걷기 전진 앙상블의 순위 상관은 T5 0.164 → 0.161, T20 0.115 → 0.102 로 오히려 낮아졌다. 추경 발표 뒤 10세션은 기대(스티픈)와 반대로 −1.46bp, 한은 단순매입 전후는 기대(플랫)와 반대로 +0.70bp 였다. 계열을 하나씩 더하면 재정거래 유인만 T20 을 올렸지만(+0.015), 다섯 중 최고를 고른 것까지 값을 매긴 귀무에서 p 0.28 이었다.

가설과 결론

질문
3선, 10선 스티프너에 FX 스왑 재정거래 유인, 통안채 공급, 국고 바이백, 추경, 한은 단순매입을 더하면 (a) 커브 변화를 같은 날과 같은 달에 더 설명하는가, (b) 미리 알려 주는가, (c) 걷기 전진 AI 의 예측이 나아지는가.
가설
새 특징과 표적을 맞대기 전에 계획서를 커밋했다(39623db). H153: 동행 R² 증분이 귀무를 넘는다. H154: 재정거래 유인 20세션 변화 → T20, T5 양의 상관. H155: 통안 2년, 3년 60세션 공급 → T20 음의 상관. H156: 잔존 3년 이하 바이백 60세션 → T20 양의 상관. H157: 추경 발표 뒤 10세션 스티픈, 단순매입 전후 플랫. H158(주): 152 + 46 특징 걷기 전진의 앙상블 순위 상관이 152 특징보다 높고 새 계열 순환이동 귀무(릿지, LightGBM) 모두 p < 0.05.
결론
H153~H158 모두 미지지. H153 p 0.31(일별), 0.29(20세션). H154 p 0.079, 0.081(Holm 0.31), H155 p 0.39, H156 은 부호 반대. H157 추경 [0,+10] −1.46bp(기대 반대), 단순매입 [−2,+5] +0.70bp(기대 반대). H158 앙상블 ΔIC T5 −0.004, T20 −0.013, 릿지 귀무 p 0.19, 0.61. 앞선 152개 특징의 결론은 커브가 대부분 같은 날 함께 오는 요인으로 움직이고 예측 정보는 작다는 것이었다. 이 다섯 자료는 그 결론을 바꾸지 않는다.

용어와 기호

  • 스티프너 1단위3선 매수 + 10선 매도, 다리마다 DV01 1원/bp. 손익(bp) = 3선 가격 변화 × 10⁶ / d₃ − 10선 가격 변화 × 10⁶ / d₁₀. 양수 = 커브가 가팔라졌다(3년 상대 강세)
  • DV01 (d₃, d₁₀)금리 1bp 변화당 계약 가격 변화(원). KRX 결제가격 산식을 내재수익률에서 중앙 차분
  • s · e신호일 s(한국 거래일), 진입 세션 e = s 다음 거래일. 판단은 e 개장 전에 끝난다
  • T1 · T5 · T20e 시가에서 각각 e 종가, s+5 종가, s+20 종가까지의 스티프너 손익
  • 스왑레이트 sr_T원/달러 선물환 포인트(전)/100 ÷ 현물환 × 365 ÷ (선물환 결제일 − 현물 결제일), %. 서울외국환중개 15:30
  • 재정거래 유인원화 금리 − (미 국채 금리 + 스왑레이트). 양수면 달러를 스왑해 원화채를 산 외국인이 미 국채보다 더 번다. arb3m 은 CD91 과 3개월, arb1y 는 통안 1년과 1년
  • 베이시스 basis1yIRS 1년 − (미 국채 1년 + sr1y). 스왑 시장의 원화 금리와 FX 스왑에 내재한 원화 금리의 차
  • 바이백 · 교환기재부 국고채 조기상환(만기 전 매입)과, 오래된 종목을 사고 새 종목을 주는 교환
  • 단순매입한국은행이 국고채를 시장에서 사는 공개시장 조작
  • IC시험 구간 예측(또는 특징)과 실현 손익의 스피어만 순위 상관. ΔIC = 새 특징을 더한 판 − 앞선 152 특징 판
  • 순환이동 귀무시계열을 250세션 이상 통째로 돌려 표적과의 짝을 끊고 같은 계산을 다시 한 분포. 자기상관은 남는다
  • R · L · E릿지, LightGBM, 앙상블(R, L 예측을 각자 학습창 적합값 안 백분위로 바꿔 평균)
  • Shapley R²요인 묶음을 넣는 모든 순서에 대해 그 묶음이 더한 R² 의 평균. 묶음 몫의 합 = 총 R²

자료

새 자료의 원천과 시점. 앞선 152개 특징(커브 상태, 표적 이력, 정책, 해외, 선물/현물 투자자 수급, 입찰 일정, 베이시스, 달력)은 그대로 쓴다.
계열원천기간시점 규칙
FX 재정거래 유인 (22)인포맥스 데이터 API 서울외국환중개 15:30 원/달러 현물, 1M, 3M, 6M, 1Y 스왑포인트, 일별 풀 CD91, 통안 1년, IRS 1년, FRED 미 국채 3개월과 1년2012-01 ~s 15:30 스왑, s 종가 금리, 미국은 e 개장 전 마지막 뉴욕 종가
통안채 공급 (13)통안채 입찰 원장(경쟁입찰, 정례모집, 중도환매 낙찰금액), 통안채 발행정보(만기)2015-04 ~ · 순공급 2018-01 ~입찰 결과는 입찰일 낮에 공표, s 당일까지
국고 바이백·교환 (6)국채 입찰 원장 구분 «조기환매»·«조기환매(교환)», 종목명 만기로 잔존 계산2015-04 ~입찰일 당일까지
추경 (3)기재부 보도자료·언론으로 만든 사건 표 17건: 정부 첫 공식 발표일·정부안 적자국채2013 ~ 2026발표일 장 마감 뒤에 안다
한은 단순매입 (2)언론·한은 공고로 만든 사건 표 16회 + 결과 공고 자체 수집2020-03 ~ 2026-09입찰일 당일까지

정제. 스왑포인트 응답은 날짜마다 결제일이 빈 쌍둥이 행이 와서 버렸고, 호가가 0 인 18일은 결측으로 뒀다. 2020-03-17 3개월 스왑포인트 −9원(스왑레이트 −2.7%)은 실제 달러 조달 경색이라 남겼다. 60세션 합은 원장 시작(2015-01) 뒤 창이 찰 때까지 비우고 2015-04 부터 쓴다. 통안 순공급은 2015 이전 발행분의 만기 물량을 몰라 2018-01 부터다. 사건 표에서 날짜를 확인하지 못한 1행(2021년 6월 하순 단순매입)은 뺐다.

새 특징 46개. 전체 정의는 results/20261014_panel/feature_dict_new.csv.
계열개수예
FX 재정거래 유인22sr3m, sr1y, 기울기, arb3m, arb1y, basis1y 수준, 5/20세션 변화(bp), 250세션 z, 원/달러 5일 변화
MS 통안 공급132·3년 / 91일~1년 총발행 20·60세션 합(조원), 순공급(발행 − 중도환매 − 만기), 중도환매 60세션, 장기 비중, 장기 응찰률과 그 변화
BB 국고 바이백6잔존 3년 이하 바이백 20·60세션 합과 z, 잔존 5년 초과 바이백+교환 20·60세션 합, 교환 60세션
SB 추경3마지막 발표 뒤 세션 수(60 상한), 발표 뒤 20세션 창, 60세션 안 적자국채 증액(조원)
OP 한은 단순매입260세션 매입 합(조원), 입찰 뒤 20세션 창
재정거래 유인 2012~2026
그림 1. FX 스왑으로 본 재정거래 유인(5일 평균). 2012년 1~2% 에서 2017~2020년 0.7~1.0%, 2023~2025년 0.3~0.5% 로 내려왔고 2026년 하반기 3개월 유인은 음수다. 2020-03 의 치솟음은 스왑포인트 급락(달러 조달 경색) 때문이다.
통안채 공급과 국고 바이백
그림 2. 위: 통안 공급 60세션 합. 2년, 3년 발행이 2015년 약 18조에서 2026년 약 10조로 줄었다. 아래: 국고 바이백 60세션 합과 사건일(초록 실선 추경 발표 17건, 빨강 점선 한은 단순매입 16회). 바이백은 해마다 하반기에 몰린다.

방법

H153 동행 증분. 일별 스티프너 종가→종가 손익을 같은 창의 요인에 OLS 로 회귀한다. 앞선 8묶음(레벨, 밤사이 미국, 독일과 일본, 원화와 VIX, 외국인, 증권/은행, 보험/연기금/투신의 선물 커브 수급, 입찰일과 금통위일)에 새 4묶음(3개월, 1년 스왑레이트 당일 변화 / 통안 장기, 단기 발행과 중도환매 당일 물량 / 잔존 3년 이하, 5년 초과 바이백 당일 물량 / 추경 발표, 단순매입 사건일 더미)을 더한다. 증분 R² 의 귀무는 새 열 전체를 함께 순환이동한 1,000회다. 20세션 겹치지 않는 묶음 142개에서도 같은 방식으로 따로 잰다.

H154~H156 특징 하나씩. 시험 구간(2016-01-04~)에서 특징 값(s)과 표적의 스피어만 상관. 귀무는 특징 순위를 250~(n−250) 세션 돌린 2,000회, 기대 방향 한쪽 p. 주 검정 넷은 Holm 으로 묶는다. 나머지 46 특징 × 3 표적(138개)은 귀무 500회로 탐색 표만 낸다.

H157 사건 연구. 추경: 발표일 d 를 포함한 첫 세션 i 에서 종가(d−1)→종가(d+10) 누적. 단순매입: 입찰일 종가(d−3)→종가(d+5) 누적. 귀무는 사건 ±20세션 밖에서 같은 수의 날짜를 무작위로 뽑은 10,000회다.

H158 걷기 전진. 시험 연도 Y(2016~2026)마다 2013-01-02 부터 «표적 창이 Y 전에 끝나는» 행으로 학습하고 Y 년 신호일을 예측한다. 앞선 152 특징 판과 같은 엔진, 연도, 시드, 초매개변수에 새 46 특징만 더했다. 귀무는 새 46열을 함께 [250, n−250] 세션 순환이동한 판으로 걷기 전진 전체를 다시 돌린 분포(릿지 100회, LightGBM 단일 시드 20회)다. 관측값도 단일 시드 판끼리 뺀다.

연 단위 확장창 걷기 전진의 학습과 시험 일수
그림 3. 걷기 전진 분할. 행 하나가 시험 연도 하나다. 짙은 막대가 학습창, 주황 막대가 시험창이며 겹치지 않는다. 숫자는 T1 이 실제로 쓴 일수다.

모델

앞선 152 특징 판과 같은 모델을 그대로 썼다(비교가 목적이라 바꾸지 않았다). 릿지는 «선형으로 충분한가» 의 기준, LightGBM 은 특징 사이 조건 관계, 앙상블 E 는 두 모델의 서로 다른 오차를 섞는다.

모델과 설정
이름계열설정
R릿지 회귀α ∈ {1, 10, 100, 1000, 10000}, 학습창 안 시계열 3겹(뒤 60%를 셋으로) 제곱오차 최소. 학습창 중앙값 채움·표준화·±5 자름
LLightGBM 회귀num_leaves 7, learning_rate 0.02, n_estimators 400, min_data_in_leaf 100, feature_fraction 0.7, bagging 0.7(freq 1), lambda_l2 10, 시드 0~4 평균(탐색 판은 0~1)
E앙상블(주)½·[R 의 학습 적합값 안 백분위 − 0.5] + ½·[L 의 같은 값]

아래 구조도는 T20 의 마지막 폴드(학습 2013~2025, 시험 2026, 특징 198개) 모델이다. 그리기 전에 다시 학습해 커밋된 2026년 예측을 그대로 내는지 확인했다.

릿지 R — T20, 마지막 폴드

릿지 · T20 · 학습 2013~2025 · 시험 2026 입력 데이터 한국 거래일 한 행 = 신호일 s 학습 2013-01~2025 3,172행 표적 창이 2026 전에 끝나는 행만 시험 2026년 166행 특징 198개 (14계열) 앞선 9계열 152개 + 재정거래 유인 22 + 통안 공급 13 · 바이백 6 + 추경 3 · 한은 매입 2 e 개장 전에 알려진 값만 릿지 회귀 (α = 10000, 학습창 안 시계열 3겹 검증으로 고름) 1. 표준화 학습창 중앙값 채움 → 평균·표준편차로 z 화 → ±5 자름 2. 선형 결합 z = b + Σ wᵢ·xᵢ (계수 198개) 3. 링크 z → 예상 bp, 부호가 방향 출력 ŷ = e 시가→s+20 종가 스티프너 손익 예측 (bp) > 0 스티프너, < 0 플래트너 앙상블 E 는 R·L 순위 평균 계수 — 세팅과 학습 결과 피처 198개 표준화된 공간의 계수 — 서로 크기 비교가 된다 0 이 아닌 계수 198개 절편 b = +0.3728 모든 피처가 학습창 평균일 때의 출발점 평균적인 스티프너 변화 |w| 최대 = 0.2043 가장 센 피처: FL_ind_curve20 |w| 중앙값 0.0421 alpha = 10000.0 릿지 벌점 클수록 계수를 더 눌러 붙인다
재현 확인을 거친 마지막 폴드의 실제 단계와 숫자다.
표준화 계수 — 특징 1 표준편차당 bp ← 하락 쪽 상승 쪽 → FL_ind_curve20 +0.2043 선물 수급 GL_slope_gap_d20 -0.1740 해외 CB_frn_long20_z +0.1699 현물 수급 CV_fly31030 -0.1622 커브 상태 BB_exch60 -0.1603 새: 국고 바이백 CV_ss3_d20 -0.1579 커브 상태 TG_mom20 -0.1455 표적 이력 GL_dxy_d20 -0.1383 해외 CB_am_long20_z -0.1372 현물 수급 GL_krus10 +0.1361 해외 CV_fslope -0.1356 커브 상태 PO_since -0.1299 정책 FX_arb1y_z +0.1297 새: 재정거래 유인 FL_frn_lvl20 +0.1250 선물 수급 FL_volratio_z -0.1208 선물 수급 CB_frn_tilt60 +0.1205 현물 수급 표준화된 공간의 계수 상위 16개 · 절편 b = +0.3728 · 전체 198개 중
막대 길이는 학습된 계수다. 색은 특징 계열이다. 계수가 큰 16개만 그렸다.

LightGBM L — T20, 마지막 폴드 (시드 0)

LightGBM · T20 · 학습 2013~2025 · 시험 2026 입력 데이터 한국 거래일 한 행 = 신호일 s 학습 2013-01~2025 3,172행 표적 창이 2026 전에 끝나는 행만 시험 2026년 166행 특징 198개 (14계열) 앞선 9계열 152개 + 재정거래 유인 22 + 통안 공급 13 · 바이백 6 + 추경 3 · 한은 매입 2 e 개장 전에 알려진 값만 그래디언트 부스팅 결정트리 (LightGBM · 회귀) f₁ f₂ f₃ f₄ f₅ ··· f₄₀₀ 위는 이 모델 트리 5그루와 마지막 그루의 실제 위상(점 = 잎) — 실물은 그림 B·C ŷ = f₁(x) + … + f₄₀₀(x) num_leaves 7 · learning_rate 0.02 · min_data_in_leaf 100 · 5시드 평균 중 시드 0 출력 ŷ = e 시가→s+20 종가 스티프너 손익 예측 (bp) > 0 스티프너, < 0 플래트너 앙상블 E 는 R·L 순위 평균 하이퍼파라미터 — 세팅한 상한과 학습이 실제로 닿은 값 n_estimators = 400 이어 붙이는 트리 개수 — 위 f₁ … 가 이만큼 실제 400그루 max_depth = -1 뿌리(깊이 0)에서 잎까지 분기 최대 -1번 — 그림 B·C 의 오른쪽 눈금 실제 깊이 3~6 · 상한에 닿은 트리 0/400 num_leaves = 7 트리 한 그루의 잎(끝 상자) 최대 개수 실제 잎 7~7개 · 상한에 닿은 트리 400/400 min_data_in_leaf = 100 잎 하나에 학습 표본 100개 미만이면 그 분기를 하지 않는다 실제 가장 작은 잎 n=100 feature_fraction = 0.7 트리마다 피처 198개 중 70%만 무작위로 후보에 올린다 → 그림 D 의 피처별 분기 횟수가 고르게 퍼지는 이유 learning_rate = 0.02 트리 하나가 더하는 값 = 적합값 × 0.02 (아래 잎값에 이미 곱해져 있다) 작을수록 트리 한 그루의 발언권이 작다 그루별 잎 수 분포 7 잎 7~7개 · 상한 7
세팅(상한)과 실현값(실제 깊이·잎 수)을 나란히 적었다. 런의 예측은 시드 5개 평균이고 그림은 시드 0이다.
첫 트리 (1번) 깊이 0 · 뿌리 분기 조건 · n 깊이 1 분기 조건 · n 깊이 2 분기 조건 · n 깊이 3 분기 조건 · n 깊이 4 분기 조건 · n 깊이 5 · 잎 분기 없음 max_depth = -1 뿌리→잎 분기 -1번까지 이 트리 실제 깊이 5 예 아니오 예 아니오 예 아니오 예 아니오 예 아니오 예 아니오 FX_arb1y ≤ 1.186 n=2,234 CV_y3 ≤ 116.1 n=2,117 잎값 +0.4319 n=188 CV_fly31030 ≤ 51.7 n=1,929 CB_amp_tilt60 ≤ -0.05534 n=1,808 FX_arb3m_d20 ≤ -1.081 n=468 잎값 +0.3639 n=249 잎값 +0.4489 n=219 FX_basis1y_z ≤ 0.2126 n=1,340 잎값 +0.3226 n=979 잎값 +0.3844 n=361 잎값 +0.2408 n=121 잎값 +0.4847 n=117 잎값 ≥ 0 (예측을 위로) 잎값 < 0 (예측을 아래로) n = 그 노드에 떨어진 학습 표본 수 · 조건(≤)이 참이면 왼쪽 가지 '예', 거짓(>)이면 오른쪽 '아니오'
첫 트리의 실제 분기 조건과 잎값(bp 기여)이다.
마지막 트리 (400번) 깊이 0 · 뿌리 분기 조건 · n 깊이 1 분기 조건 · n 깊이 2 분기 조건 · n 깊이 3 분기 조건 · n 깊이 4 · 잎 분기 없음 max_depth = -1 뿌리→잎 분기 -1번까지 이 트리 실제 깊이 4 예 아니오 예 아니오 예 아니오 예 아니오 예 아니오 예 아니오 FX_sr3m_d20 ≤ -2.678 n=2,240 FX_basis1y_d20 ≤ -7.194 n=1,063 잎값 -0.0343 n=141 GL_slope_gap ≤ -2.6 n=922 잎값 +0.0062 n=625 잎값 -0.0178 n=297 CV_y3 ≤ 127.2 n=1,177 잎값 +0.0333 n=168 BB_front20_z ≤ 0.956 n=1,009 잎값 -0.0064 n=586 GL_us5s30_d20 ≤ -11 n=423 잎값 -0.0169 n=100 잎값 +0.0272 n=323 잎값 ≥ 0 (예측을 위로) 잎값 < 0 (예측을 아래로) n = 그 노드에 떨어진 학습 표본 수 · 조건(≤)이 참이면 왼쪽 가지 '예', 거짓(>)이면 오른쪽 '아니오'
마지막 트리. 학습률 0.02 라 잎값이 첫 트리보다 작다.
깊이 × 특징별 분기 수 — 400그루 전체
분기 위치 \ 피처CV_fly31030TG_mom20MS_btc_longCV_y10_d60CV_slopevol20GL_slope_gap_d20FX_sr_slopePO_sinceFL_pens_curve20TG_mom60CB_ins_tilt60CB_am_tilt20CV_y3CV_curvGL_us5s30SU_tilt20BB_long20GL_acmtp10BB_front60CB_amp_long20_zCV_fslopeGL_kwtp_d20GL_dxy_d20FX_sr3m_zCV_ss3_d20CB_frn_tilt60CB_amp_tilt60CV_y3_zCB_frn_long20_zFX_arb1yFX_arb1y_zBB_front20_zCV_slope_d20GL_krus10CV_y3_d60FL_frn_lvl20MS_net_long60PO_base_d250CA_dteMS_red60CV_slope_zTG_vol20FL_ind_curve20CV_fslope_gapGL_acmtp10_d20TG_mom5CV_curv_d20GL_slope_gapCB_am_tilt60BB_exch60FL_sec_lvl20FL_ins_curve20FX_arb3m_d20CV_s3_m1TG_ocFL_frn_curve5FL_pens_curve5BA_mb_diffFX_arb3mMS_short20MS_net_long20CB_frn_tilt20MS_btc_long_d60CV_beta60FL_trust_curve20PO_cd_baseGL_us2_d20GL_bei10_d20GL_bund_d20FL_frn_curve20CV_slopeCV_slope_d5FL_sec_curve20CB_bank_tilt20CB_am_long20_zMS_long60BB_long60PO_y3_basePO_m1_base_d20FX_sr1yFX_sr3m_d20FX_basis1y_zCV_y3_d5FX_arb1y_d20GL_us5s30_d20CB_amp_tilt20MS_net_all20CV_slope_d60CV_swap_slopePO_m1_baseFL_ins_curve5CB_am_tilt5BB_front20GL_us2s10sFL_volratio_zBA_tg_diffSU_long5FX_basis1yFX_basis1y_d20CV_s30_10_d20CV_s3_m1_d20CV_y3_d20CV_y10_d20TG_mom1PO_baseGL_us2s10s_d20GL_krw_d20FL_frn_curve20_zFL_aggr3FX_sr1y_zMS_long_share60FL_sec_curve5CB_ins_tilt20MS_long20OP_amt60CV_carryGL_vixCB_bank_tilt60MS_short60MS_long20_zSB_size60CV_slope_d1CV_s30_10PO_cycleFL_frn_lvl5CB_frn_tilt5CB_bank_long20_zFX_sr3mSB_sinceGL_us3m10FL_bank_curve20FL_bank_lvl20FL_pens_curve1CB_ins_long20_zFX_sr3m_d5CV_ss10_d20GL_us2s10s_d1GL_real10_d20FL_ins_curve1FL_ind_curve5FL_oi10_d5FL_aggr10CB_amp_tilt5SU_short5SU_next_longFX_sr1y_d20FX_arb3m_d5FX_arb3m_zMS_net_all60CV_y3_d1CV_y10_d1CV_y10_d5TG_gapPO_mpc_daysPO_mpc_eGL_us10_d1GL_us2_d1GL_us2s10s_d5GL_us10_d5GL_us2_d5GL_us10_d20GL_us5s30_d1GL_bei10_d1GL_real10_d1GL_vix_d1GL_vix_d5GL_bund_d1GL_dxy_d1GL_jgb_d1GL_jgb_d20GL_krw_d1FL_frn_curve1FL_sec_curve1FL_sec_lvl5FL_bank_curve1FL_bank_curve5FL_bank_lvl5FL_trust_curve1FL_trust_curve5FL_ind_curve1FL_oi3_d5BA_tg_diff_d5CA_rollwinCA_qendCA_decCA_mendCA_dowCA_gapdaysCB_ins_tilt5CB_bank_tilt5SU_e_longSU_e_anyFX_sr1y_d5FX_arb1y_d5FX_basis1y_d5FX_spot_d5SB_win20OP_win20합
깊이 0 (뿌리)93064917122215610001381067721201910001515150011700141933163101103083111402120002010011222000203020000200670010301001030000300331001010030001000000200010000000000000000000000000000000000000000000000000000000000000400
깊이 1222017181710910181146179117810106913635103246663387862146835144515335423364345337002501111467001221021420200012103100111100100000020011001101000000000000100001001000000000000000000000000000000000000000000000000000523
깊이 21914201416141391441061012598661091311112989553783114772876167276684731241424152233405280433123435221622133014401231521124313011110212111201021110010022001010000100010000000000000000000000000000000000000000000000000601
깊이 3232118557106312136104869977471349101214149515312612725271144532657261526823232483530231331532235232024000142112013100012112001301102001200021100000100001000010100000000000000000000000000000000000000000000000000516
깊이 4624854681353544554225133016540035332027533224003233133010311113531131110334300040412023011004202020031301141143013010210200000101112000000000110000000000000000000000000000000000000000000000000000000284
깊이 521021005132102000011002100201101020013112100100002200000001112022022100000111001010110110000001001000000010000010000000000001010100000000000000000000000000000000000000000000000000000000000000000000076
분기 합8169585453504744423939393837373737353533323231313030292828282827262625252524242322222221212018181818171717161616161616161615151414131313131312121212121212111111111110109998888887777776666666666665555444444333333332222221111111111111100000000000000000000000000000000000000000000000002,400
손실 감소(gain) 몫3.9%4.1%2.4%1.8%2.6%2.4%2.0%2.2%1.6%1.6%1.5%1.8%1.8%1.4%1.8%1.1%1.3%3.0%1.2%1.2%1.0%1.0%0.9%1.1%1.2%2.0%1.7%1.1%1.2%2.9%2.4%1.2%1.1%1.2%1.3%1.4%0.8%0.9%0.8%0.7%0.7%1.3%0.9%0.7%0.6%0.4%0.5%0.8%0.7%0.9%0.7%0.3%0.5%0.7%0.3%0.6%0.4%0.5%1.0%0.7%0.6%0.5%0.6%0.3%0.3%0.5%0.7%0.6%0.4%0.5%0.7%0.3%0.4%0.3%0.5%0.5%0.4%0.3%0.4%0.6%0.2%0.7%0.2%0.4%0.4%0.3%0.2%0.4%0.3%0.3%0.1%0.4%0.2%0.2%0.2%0.2%0.1%0.3%0.4%0.2%0.2%0.2%0.2%0.1%0.6%0.2%0.2%0.3%0.2%0.1%0.4%0.2%0.1%0.2%0.2%0.1%0.1%0.1%0.1%0.1%0.1%0.1%0.2%0.1%0.1%0.1%0.1%0.2%0.1%0.1%0.1%0.1%0.0%0.1%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%0.0%100%

어느 특징이 어느 깊이에서 몇 번 쓰였는지 센 표다.

결과 1 · 같은 날·같은 달 설명 (H153 미지지)

새 묶음을 더한 Shapley R²
그림 4. 앞선 묶음(남색)과 새 묶음(초록)의 Shapley R² 몫. 왼쪽 일별 2,845일, 오른쪽 20세션 묶음 142개(2015-03~).
새 묶음을 더한 R² 증분과 순환이동 귀무 1,000회 (results/20261014_explain/shapley.json)
판앞선 R²+새 R²증분귀무 평균귀무 95%p
일별, 새 4묶음 함께0.3060.3090.00260.00220.00430.31
일별, 스왑레이트 변화만0.306—0.0004——0.40
일별, 통안 발행과 중도환매만0.306—0.0012——0.20
일별, 바이백만0.306—0.0007——0.25
일별, 추경과 단순매입 사건일만0.306—0.0003——0.51
20세션 묶음, 새 4묶음 함께0.4100.4580.0490.0360.0700.29
  • 일별로는 새 묶음 넷을 합쳐 1.4%. 통안 0.6%, 스왑레이트 0.5%, 사건일 0.2%, 바이백 0.1%. 밤사이 미국(28%), 외국인 선물 수급(21%), 레벨(15%)의 순서는 그대로다.
  • 20세션 묶음에서는 스왑레이트 변화가 7.8%. 미국 커브와 10년 46%, 기간 프리미엄 11%, 한은 경로 9% 다음이다. 바이백 3.9%, 통안 2.0%. 그러나 묶음 142개에 변수 6개를 더한 증분은 귀무 95%(0.070) 안이다.
  • 밤사이 갭에서 스왑레이트 변화는 2.7%(미국 80% 다음)다. 장중에는 0.3% 다.

결과 2 · 특징 하나씩 (H154~H156 미지지)

주 검정 넷. 시험 구간 2016-01-04~, 특징 순환이동 귀무 2,000회 (results/20261014_uni/metrics_uni.json)
가설특징 → 표적기대n순위 상관귀무 sdpHolm
H154a재정거래 유인 1년 20세션 변화 → T20+2,616+0.0880.0610.0790.31
H154b같은 특징 → T5+2,631+0.0510.0330.0810.31
H155통안 2·3년 60세션 발행 → T20−2,618−0.0320.0610.390.77
H156잔존 3년 이하 바이백 60세션 → T20+2,618−0.0300.0800.690.77
새 특징 46개의 순위 상관
그림 5. 새 특징 46개의 순위 상관(막대)과 귀무 ±2 표준편차(선). 초록 양쪽 p < 0.05, 주황 < 0.10, 회색 그 밖(138개 검정, 다중 검정 미보정, 탐색). 순서는 T20 상관 기준.
  • 재정거래 유인은 기대한 부호다. 유인이 20세션 동안 커지면 다음 20세션 3년이 상대 강세였다. 그러나 귀무 sd 0.061 에 비해 +0.088 은 1.4 sd 다.
  • 탐색 표에서 귀무 최소 p(0.004)에 닿은 것은 basis1y 수준과 z → T5(+0.071, +0.093), 단순매입 60세션 합 → T1, T5, T20(+0.046, +0.083, +0.142), 바이백 앞단 → T1(−0.038), 추경 뒤 세션 수 → T1(−0.035) 이다. 138개에서 우연히 이 자리에 올 개수는 1개 안팎이다. 단순매입 합은 2020~2022 매입 군집 하나에 기댄다.

결과 3 · 사건 연구 (H157 미지지)

추경 발표와 단순매입 전후 누적 스티프너 손익
그림 6. 사건일 대비 누적 스티프너 손익(종가 d−1 = 0). 가는 선이 사건 하나, 주황이 평균, 회색 띠가 무작위 날짜 평균의 90% 범위다. 단순매입 2026-09-14 는 20세션 뒤가 아직 없어 그림에서 빠졌다(표에는 쓸 수 있는 창까지 넣었다).
사건 평균 누적 스티프너 손익(bp)과 무작위 날짜 10,000회 (results/20261014_events/metrics_events.json)
사건건수창평균스티픈 비율무작위 평균 ± sdp (기대 쪽)
추경 발표17[0, +10] 판정−1.4624%+0.38 ± 1.320.92
[0, +5]−2.3641%+0.18 ± 1.020.99 (반대쪽 0.008)
[0, +20]+0.9659%+0.59 ± 1.760.42
[−10, −1]+0.6347%+0.24 ± 1.260.38
추경 국회 통과17[0, +10]+1.2059%+0.21 ± 1.310.22
한은 단순매입16[−2, +5] 판정+0.7062%+0.23 ± 1.260.64
[−10, −3]−2.0350%+0.22 ± 1.25(반대쪽 0.036)
[0, +20]+1.8081%+0.81 ± 1.850.30
  • 추경 발표 직후는 플래트닝. 첫 5세션 −2.4bp 로 기대와 반대였다. 17건 중 7건이 적자국채 없는 추경이다. 문헌 조사가 모은 2022-05-11(«적자국채 없음») 사례는 3년 −11.8bp, 10년 −13.4bp 로 금리가 내렸는데도 10년이 더 내려 플래트닝(−1.6bp)이었다. 금리가 내리면 스티픈이라는 평소 관계와 반대라, 추경 발표에는 공급 말고 다른 이유(경기나 재정 신호)가 섞인다.
  • 단순매입은 약세 뒤에 들어왔다. 입찰 전 7세션 동안 −2.0bp(플래트닝)였고, 입찰 뒤 20세션은 81% 가 스티픈이었지만 무작위 평균과 구분되지 않는다.
  • 사건 수가 적어 검정력이 낮다는 것을 계획서에 미리 적었다.

결과 4 · 걷기 전진 증분 (H158 미지지)

시험 구간(2016-01~2026-10), 같은 날 짝지은 비교 (results/20261014_wf/metrics_wf.json). 비용 뒤는 매일 새로 진입해 왕복 1틱씩 문 거래당 평균.
표적모델IC 152IC 152+46ΔIC비용 뒤 bp/거래 152 → 152+46
T1E+0.099+0.100+0.001−0.310 → −0.323
T5R / L+0.143 / +0.153+0.147 / +0.150+0.004 / −0.004−0.076 → −0.116 / −0.088 → −0.145
T5E+0.164+0.161−0.004+0.018 → −0.020
T20R / L+0.093 / +0.113+0.060 / +0.149−0.033 / +0.037+0.144 → −0.067 / +0.159 → +0.278
T20E+0.115+0.102−0.013+0.012 → −0.052
새 46열 순환이동 귀무 (results/20261014_wf/metrics_null_R.json, metrics_null_L.json)
귀무표적관측 ΔIC귀무 평균귀무 95%p
릿지 100회T5+0.004−0.010+0.0090.19
릿지 100회T20−0.033−0.022+0.0240.61
LightGBM 단일 시드 20회T5−0.006−0.014+0.0020.33
LightGBM 단일 시드 20회T20+0.027−0.025+0.0130.048
걷기 전진 증분의 순환이동 귀무
그림 7. 새 46열을 함께 순환이동해 걷기 전진을 다시 돌린 ΔIC 분포(회색)와 관측값(주황). 귀무 평균이 음수다. 쓸모없는 열을 46개 더하면 그것만으로 IC 가 깎인다.
  • 판정 첫 조건(E 의 ΔIC > 0)부터 못 넘었다. 두 표적 모두 앙상블의 순위 상관이 낮아졌다.
  • LightGBM T20 만 올랐다(p 0.048, 20회 중 0회). 같은 열에서 릿지는 크게 떨어졌다. 2015 이전에 비어 중앙값으로 채운 공급 열, 국면마다 부호가 바뀌는 관계가 선형 모델을 흔들었다. 귀무 20회는 가능한 최소 p 가 0.048 이라 이 하나로 결론을 세우지 않는다.

탐색

계열을 하나씩 더한 판(2시드, 앙상블 E 의 IC). 비교 기준은 같은 2시드 152 특징 판.
판T5T20
152 특징만0.1650.115
새 46 특징만0.0760.054
152 + 재정거래 유인0.1600.130
152 + 통안 공급0.1550.102
152 + 바이백0.1490.083
152 + 추경0.1560.112
152 + 단순매입0.1600.112
계열 하나씩 더하기의 최대 통계량 귀무
그림 8. 새 열을 함께 순환이동한 뒤 계열마다 다시 학습해 다섯 계열 중 최대 ΔIC 를 모은 귀무 39회. 관측 최대(재정거래 유인 +0.015)는 귀무 최대 평균 +0.009, 95% +0.031 안이다(p 0.28). 재정거래 유인 하나만 보면 p 0.15.
부호 보유형 규칙 누적 손익
그림 9. 예측의 5일 평균 부호를 들고 있다가 바뀔 때만 바꾸는 규칙(결과를 본 뒤 만든 탐색 규칙)의 비용 뒤 누적. T20: 152+46 특징 연 +18.9bp/DV01(샤프 0.55, 11년 중 8년 플러스) vs 152 특징 +27.5(0.80, 11/11). T5: +17.8 vs +22.2.

한계와 다음

장기 CRS. 3년, 5년, 10년 원화 CRS 와 IRS−CRS 베이시스는 데이터 API 에 없고 단말 엑셀 연결(금리_CRS)로만 받을 수 있어 넣지 못했다. 1년 베이시스는 FX 스왑 내재 금리로 대신했다.
유인 정의. 한국은행 공식 지표는 통안 3개월 − SOFR 3개월을 쓴다. 여기서는 2012 부터 끊기지 않는 CD91 과 미 국채 3개월을 써서 수준이 20~30bp 다르다. 변화의 방향은 같다.
사건 수. 추경 17건과 단순매입 16회는 사건 연구로 효과 크기 2bp 를 가려내기에 적다. 추경 적자국채는 정부안 기준이다.
국면. 공급 자료는 2015 부터라 독립 국면이 적다. 2026 의 재정거래 유인 음수 국면은 표본에 처음 나온 영역이다.
다음. 커브 예측 정보의 주된 원천은 여전히 앞선 152 특징이다. 재정거래 유인은 같은 날과 같은 달의 설명(20세션 7.8%)과 기대 부호는 보였으니, 장기 CRS 를 장 마감 뒤 단말로 받아 1년, 3년, 5년 베이시스로 다시 재 볼 수 있다.

산출물

  • 계획과 가설protocol.md (커밋 39623db, 새 특징과 표적을 맞대기 전)
  • 분석과 판정analysis.md
  • 문헌과 사실 조사results/20261014_research/lit_supply_arb.md(출처 108개), chugyeong_events.csv, bok_outright.csv
  • 수집과 패널code/s0_fx_pull.py, s1_new.py, s1c_events.py → results/20261014_panel/
  • 동행, 단변량, 사건code/s2_explain.py, s3_uni.py, s4_events.py → results/20261014_explain/, _uni/, _events/
  • 걷기 전진, 귀무, 탐색code/s5_wf.py, s6_null.py, s7_hold.py, s8_family_null.py → results/20261014_wf/
  • 그림code/render_figures35.py, code/render_model35.py

Appendix

A. 데이터셋 실물(새 특징 네 행, 2026-09-01 ~ 09-04)

sr, arb, basis 는 %, arb1y 20세션 변화는 bp, 공급과 바이백, 단순매입은 조원. T20 은 그날 신호의 실현 스티프너 손익(bp). 패널 218열 중 일부.
ssr3m / sr1yarb3m / arb1y / basis1yarb1y 20세션 변화통안 2·3년 / 단기 60세션통안 순공급 60바이백 앞단 / 장기 60추경 뒤 세션 / 단순매입 60T20
2026-09-01−0.512 / −0.620−0.288 / −0.292 / −0.022−32.48.63 / 8.42−0.174.00 / 0.9060 / 0−2.14
2026-09-02−0.571 / −0.674−0.229 / −0.201 / +0.064−27.88.63 / 8.22−0.374.00 / 0.9060 / 0−3.03
2026-09-03−0.575 / −0.677−0.195 / −0.153 / +0.097−24.38.63 / 8.22−3.864.00 / 0.9060 / 0−4.04
2026-09-04−0.535 / −0.674−0.255 / −0.175 / +0.079−24.38.63 / 7.93−4.154.00 / 0.9860 / 0−3.68

B. 모델 입출력 실물(T20, 신호일 2026-08-31)

Request meta
T20, 시험 연도 2026 폴드(학습 2013-01-02 ~ 표적 창이 2025 안에 끝나는 행). 9월 1일 시가에 결정하고 s+20 종가까지 든다.
Input (새 특징 일부)
FX_sr3m −0.528 · FX_sr1y −0.621 · FX_arb3m −0.262 · FX_arb1y −0.278 · FX_basis1y −0.011 · FX_arb1y_d20 −32.97 · MS_long60 8.63 · MS_short60 8.42 · MS_net_all60 1.39 · BB_front60 4.00 · BB_long60 0.90 · SB_since 60 · OP_amt60 0.0 + 앞선 152개
Model response
152+46 판: 릿지 −1.300bp, LightGBM +2.139bp, E −0.106(플래트너). 152 판: 릿지 +0.287bp, LightGBM +3.210bp, E +0.124(스티프너)
Ground truth check
실현 T20 = −4.257bp(플래트닝). 152+46 판 E 는 맞혔고 152 판 E 는 틀렸다(비용 0.469bp). 재정거래 유인이 20세션 동안 33bp 줄어든 날이다. 그러나 시험 구간 전체에서 152+46 판 E 의 순위 상관은 더 낮았다. 하루가 아니라 표의 숫자로 판정한다.

C. 실험 설정

  • 표본패널 2012-01-02 ~ 2026-10-12 3,626일, 학습 시작 2013-01-02, 시험 2016~2026
  • 표적T1 = e 시가→e 종가, T5, T20 = e 시가→s+h 종가, 스티프너 bp. 학습만 1%, 99% 분위로 자름. 학습 행은 s ≤ (Y 첫 거래일 − h − 1)
  • 스왑포인트인포맥스 데이터 API /api/usdkrw/smb1530, term ∈ {SP, 1M, 3M, 6M, 1Y}, 반년씩(호출당 1,000행 상한), 빈 행과 0 호가 제거
  • 비용다리마다 왕복 1틱: 10⁴/d₃ + 10⁴/d₁₀ bp. 보유형 민감도 10선 2틱
  • 귀무 시드H153 일별 3501, 20세션 3502, H154~H156 3500+k, 탐색 표 9000+, H157 1571, 1572, 1573, H158 [3506, rep], 계열 최대 [3508, rep]
  • 동행 분해OLS, 12묶음 Shapley(4,096 부분집합 정확 계산), 2015-03-03 ~ 2026-10-12 2,845일, 20세션 묶음 142개 13묶음
  • 보유형(탐색)pos_s = sign(예측 5일 평균), 손익 = pos_s × (e 시가 → e+1 시가 스티프너), 비용 = |pos_s − pos_(s−1)| × 왕복 비용 / 2