세 줄 요약
- 국고에서 배운 규칙을 얼려 모형 학습이 끝난 뒤의 통안증권 신호(2024 ~ 2026)에 옮기자 69건, 거래당 비용 전 +0.01bp, 비용 뒤 −1.43bp(p 0.996)였다. 안 본 표본에서 비용을 넘는 이익은 재현되지 않았다.
- 날짜 안 종목 순열 귀무(평균 −1.46bp)와도 다르지 않았다(p 0.46). 분기마다 다시 학습한 시점 정합 판도 2016 ~ 2023 년 38건 +3.20bp 뒤 2024년 이후 59건 −1.06bp 로 같은 붕괴를 보였다.
- 2005 ~ 2009 국고는 자료에 장기물 8종목뿐이라 신호가 0건이어서 보류다. 판정은 폐기이고, 같은 문턱의 AR(1)은 양(+1.58bp)이지만 연 3 ~ 4건이다.
가설과 결론
- 가설
- 국고채 경과물 전 종목 패널에서 학습한 LightGBM 이 예측한 20영업일 뒤 곡선 잔차 변화가 실측 쌍 왕복 비용의 2배를 넘을 때 이웃 종목과 DV01 중립으로 교체해 20영업일 보유하는 규칙은, 다시 학습하지 않고 얼린 채로 안 본 통안증권 신호에 옮겨도 거래당 비용 뒤 손익이 0 보다 크다(H1026). 2005 ~ 2009 국고 표본에서도 그렇다(H1027). 그날 유니버스 안에서 종목끼리 예측을 섞은 순열 귀무보다 낫다(H1028).
- 결론
- H1026 은 미지지다. 모형 학습이 끝난 뒤의 통안 신호 69건의 비용 뒤 평균은 −1.43bp, 월 블록 부트스트랩 한쪽 p 0.996 이다. H1028 도 미지지다(p 0.46). H1027 은 문턱을 넘는 종목일이 0개라 사전 규칙대로 보류다. 판정 규칙상 H1026 이 실패하면 폐기다.
이 질문이 나온 배경은 이렇다. 앞선 국고 경과물 실험에서 5영업일 지평의 교체 규칙은 거래가 거의 없어 실패했는데, 결과를 본 뒤 지평을 20영업일로 늘린 변형이 확인 구간 110건에서 비용 뒤 +0.94bp 를 냈다. 그러나 여러 변형 가운데 결과를 보고 고른 것이라 그 수치를 그대로 믿을 수 없었다. 가장 값싸고 결정적인 다음 걸음은 규칙의 숫자를 하나도 바꾸지 않고 그 실험이 한 번도 보지 않은 종목에 적용하는 것이다. 통안증권은 같은 무위험 곡선 계열이지만 발행자와 잔존 구간이 달라 «안 본 표본» 으로 알맞다.
첫 런은 얼린 모형을 2013년부터의 통안 신호 전부에 썼다. 독립 감사가 이것을 시점 누설로 지적했다. 모형은 2023년 말까지의 국고 목표값으로 학습했으므로, 2013 ~ 2023 통안 신호는 신호일 뒤의 같은 시장 국면을 본 모형이 낸 것이다. 그래서 프로토콜 수정을 먼저 등록하고 확증을 모형 학습이 끝난 뒤의 신호(2024-01-01 이후)로 좁혀 다시 돌렸다. 고친 결과에서 얼린 규칙은 비용 전에도 0 이었고 비용 뒤에는 손실이었다. 2016 ~ 2023 년은 분기마다 다시 학습하는 시점 정합 판으로 따로 보고한다.
용어와 기호
- 통안증권(통안)
- 한국은행이 발행하는 할인채와 이표채. 이 실험에서는 1년, 2년, 3년 발행 이표채 186종목을 쓴다.
- 민평
- 민간 채권평가사 평가 수익률의 평균. 종목별 일별 수익률로 손익을 잰다.
- 넬슨 시겔(NS)
- 잔존만기 τ 의 함수로 곡선을 그리는 형태. ŷ(τ) = β0 + β1 f1(τ/λ) + β2 f2(τ/λ). 국고는 항 하나를 더한 스벤손 형태를 쓴다.
- 잔차 e
- 종목 수익률에서 그날 적합 곡선 값을 뺀 값, 단위 bp. 양이면 곡선보다 수익률이 높다(싸다).
- dev, z
- dev 는 잔차에서 직전 60영업일 평균을 뺀 편차, z 는 dev 를 같은 창의 표준편차로 나눈 값.
- y20
- 목표. 20영업일 뒤 잔차와 오늘 잔차의 차 e(t+20) − e(t), bp.
- p
- 모형이 낸 y20 예측. 음수면 잔차가 줄어 종목이 비싸질 것이라는 뜻이다.
- RT
- 쌍 왕복 비용. 신호 종목과 이웃을 사고팔아 들어갔다 나오는 비용 2 × (c_i + c_j), bp.
- k
- 문턱 배수. |p| ≥ k × RT 일 때만 신호를 낸다. 얼린 값은 2.
- DV01 중립
- 두 종목의 금리 1bp 변동 손익이 같도록 크기를 맞춘 교체. 곡선 전체 수준 변화에 대한 노출을 없앤다.
- 거래 유니버스
- 잔존 1년 이상, 지표물 아님, 상장잔액이 늘어난 날과 그 뒤 5영업일 아님, 앞 20영업일 장외 거래량이 0 보다 큰 종목.
- 지표물
- 국고는 지정과 해제 일정표, 통안은 그날까지 발행된 가장 최근 2년물.
- 얼린 모형
- 목표 날짜가 2024-01-01 앞인 국고 종목일로 한 번 학습하고 다시 맞추지 않는 모형. 확증에 쓴다.
- 분기 재학습 판
- 분기마다 그 분기 시작 전에 목표가 끝난 국고 종목일로 같은 설정의 모형을 다시 맞춰 그 분기 통안 신호에 쓰는 시점 정합 보충 판.
- AR(1) 기준선
- y20 = a + b × dev 를 같은 국고 학습 표본에서 맞춘 단순 되돌림 예측. 얼린 값은 a = −0.017, b = −0.425.
- 순열 귀무
- 날마다 그날 유니버스 종목끼리 예측값을 무작위로 섞고 같은 규칙을 다시 돌린 결과.
- 월 블록 부트스트랩
- 거래를 진입 달로 묶어 달 단위로 복원 추출하는 부트스트랩. 10,000회, 중심화한 한쪽 p.
- Holm
- 확증 가설 셋의 p 를 크기 순으로 보정하는 다중검정 방법.
자료
데이터셋
모든 자료는 데스크가 매일 받는 종목별 일별 파일이다. 통안 표본은 종목 민평 파일 가운데 통안증권 코드(KR310) 종목으로 만든다. 아이디어는 2008년부터라고 적었지만 파일의 통안 종목은 2013-02-06 에 시작한다. 패널은 2013-02-06 ~ 2026-11-09, 3,384일이고, 확증은 그중 2024-01-01 이후 신호(청산이 2026-11-09 안에 끝나는 2026-10-08 까지)다. 국고 2005 ~ 2009 표본은 같은 파일의 국고 이표채다. 만기, 이표, 발행일, 발행 만기는 발행 정보 파일에서, 상장잔액과 장외 거래량은 연도별 종목 파일에서, 입찰 일정은 통안과 국채 입찰 파일에서 온다. 캐리에 쓰는 단기 금리는 CD91 이며 2010-01-04 에 시작한다.
| 항목(기간 포함) | 통안 | 국고 2005 ~ 2009 |
|---|---|---|
| 패널 기간 | 2013-02-06 ~ 2026-11-09 | 2005-06-02 ~ 2009-12-31 |
| 확증 신호 기간 | 2024-01-01 ~ 2026-10-08 | 2005-06 ~ 2009-12 |
| 날 수, 종목 수 | 3,384일, 186종목 | 1,146일, 8종목 |
| 하루 중앙 종목 수 | 19 | 4.5 |
| 곡선을 맞춘 날, 적합 오차 중앙 | 3,259일, 1.01bp | 573일, 0.21bp |
| 거래 유니버스 종목일(2024 ~ 2026) | 17,443(4,382) | 2,309 |
| (날짜, 종목) 중복, 가장 긴 빈 구간 | 0, 11일(명절) | 0, 6일 |
| 문턱을 넘는 날, 2024 ~ 2026(1차 비용) | 449일 | 0 |
점검, 재현, 시점 정합
손익을 보기 전에 세 가지를 확인했다. 첫째, 우리가 날마다 다시 맞춘 통안 넬슨 시겔 잔차가 데스크의 일별 적합표 잔차와 같은 것인지 봤다. 겹치는 종목일 16,842개에서 상관 0.984, 절대 차 중앙 0.11bp, 20일 변화끼리 상관 0.960 이다. 둘째, 국고 2005 ~ 2009 표본이 쓸 만한지 봤다. 파일에는 2005-09 이후 발행된 장기물 8종목만 있고 그 앞에 발행된 3년, 5년물이 없다. 6모수 스벤손을 7종목 남짓에 맞추면 곡선이 거의 보간이 되어 잔차가 작고 얼린 모형의 예측도 작다. 그 결과 문턱을 넘는 종목일이 0개였다.
셋째, 얼린 모형이 정말 그 모형인지 확인했다. 같은 설정으로 다시 만든 모형을 앞선 실험의 거래 엔진에 넣어 2024년 1분기를 돌리면 그 실험이 공개한 거래 7건이 모두 같은 종목 쌍, 같은 신호 강도(차 4.4e−16bp)로 나온다. 시각 정렬은 단순하다. 모든 특징은 날 t 장 마감 민평과 그날까지 공표된 일정에서 나오고, 진입은 다음 영업일 민평이다. 모형의 시점은 감사 뒤 고쳤다. 얼린 모형은 목표 날짜가 2024-01-01 앞인 자료로 학습했으므로 확증 신호는 그 뒤로만 둔다. 그 앞 구간은 분기 재학습 판으로만 본다. 그림 1 은 두 표본의 연도별 크기와 문턱 통과 날을 보인다.
방법
곡선과 특징
곡선은 날마다 그날 민평이 있는 모든 종목에 맞춘다. 맞추는 함수는 데스크 수집 배치가 일별 적합표를 만들 때 쓰는 것과 같은 함수다. λ 를 여러 시작점에서 Nelder-Mead 로 찾고, λ 가 정해지면 β 는 최소제곱으로 닫힌 꼴로 풀며, 잔차가 2.5 표준편차를 넘는 종목은 세 번까지 빼고 다시 맞춘다. 통안은 넬슨 시겔, 국고는 스벤손 형태다. 아이디어는 «앞선 실험의 고정 λ» 를 쓰자고 했지만 앞선 실험의 잔차도 날마다 λ 를 다시 고르는 적합표에서 왔으므로 그런 고정값은 없다. 그래서 1차는 같은 방식의 일별 적합이고, 잔존 0.25 ~ 3년 한정 적합과 데스크 적합표 통안 곡선을 강건성으로 둔다.
특징은 앞선 실험의 17개 정의를 코드째 옮겼다. 잔차 수준, 1일, 5일, 20일 변화, 60일 편차와 z, 60일 표준편차, 잔존만기, 발행 만기, 발행 경과 연수, 지표 해제 뒤 경과 영업일, 인도 바스켓 여부, 장외 거래량 20일 합의 로그, 5일 대 20일 비율, 상장잔액의 로그, 같은 발행 만기의 다음 입찰까지와 직전 입찰부터의 영업일이다. 통안에는 선물 인도 바스켓이 없어 0 이고, 입찰 자료가 2015년에 시작해 그 앞은 결측이다. 다음 입찰까지는 같은 달 입찰이고 그달 둘째 영업일 이후일 때만 값을 두므로 통안에서 65% 가 결측이다. LightGBM 은 결측을 학습 때 정한 기본 방향으로 보낸다.
얼린 규칙과 비용
규칙은 숫자 하나 바꾸지 않았다. 날 t 마감에 거래 유니버스 종목 i 마다 예측 p_i 를 내고, |p_i| 가 k = 2 배의 쌍 왕복 비용을 넘으면 신호다. 이웃 j 는 같은 날 유니버스 안에서 |z_j| < 1 이고 잔존 차가 max(1년, 0.25 × 잔존_i) 이내인 종목 중 잔존이 가장 가까운 것이다. p_i 가 양이면 i 를 팔고 j 를 사며, 음이면 반대다. 다음 영업일 민평으로 들어가 20영업일 뒤 민평으로 나온다. 보유 중인 종목의 새 신호는 무시하고, 같은 날 여러 신호는 |p| 가 큰 순서로 처리한다. 확증 런은 2024-01-01 에 보유 상태를 비우고 시작한다. 손익은 신호 종목 DV01 1 당 bp 로, 두 종목 수익률 변화 차의 가격 항과 단기 금리 대비 캐리 항의 합이다.
비용은 국고 현물 실측 비용 지도에서 잔존 칸별 지표물 묶음 비용(100억)에 경과물 웃돈을 더한 체결 한 번 비용 c 다. 통안 잔존 2.5년 미만은 2년 칸, 그 위는 3년 칸을 쓴다. 통안 경과물의 호가 폭은 따로 재지 않았으므로 1차 배수는 ×1.0, 강건은 ×1.5 로 등록했다. 2005 ~ 2009 국고는 시장 깊이가 얕았을 것이므로 1차 ×1.5, 강건 ×2.0 이다. 배수는 문턱과 차감 모두에 곱한다. 국채선물 3년물 1틱 비용은 현물 교체에 맞지 않아 쓰지 않고, 대신 평탄 쌍 왕복 0.5bp, 1bp, 2bp 를 보고한다.
기준선과 검정
기준선은 셋이다. 같은 문턱에 얼린 AR(1) 예측을 넣은 규칙은 «모형이 아니라 되돌림 자체가 이익을 내는가» 를 가른다. 같은 신호일에 같은 수의 무작위 종목과 무작위 방향을 200번 뽑은 것은 신호가 아무 교체보다 나은지를 본다. 날짜 안 순열 1,000회는 예측의 크기 분포를 날마다 그대로 둔 채 종목과의 대응만 지운다. 이 귀무는 문턱 통과와 이웃 선택까지 같은 절차를 다시 돌리므로 선택 절차의 편향도 함께 담는다.
확증 가설 H1026, H1027, H1028 은 Holm 으로 묶는다. H1026 은 월 블록 부트스트랩 한쪽 p, 60건 미만이면 p 1 이다. H1027 은 30건 미만이면 보류다. 채택은 H1026 과 H1028 이 Holm 뒤 통과하고, 통안 비용 뒤 평균이 앞선 실험 확인 구간 +0.94bp 의 절반인 +0.47bp 이상이며, 연 24건 이상일 때다. 시점 정합 보충 판, 문턱과 보유 격자, 비용 배수, 진입 지연, 연도별, 충격 구간 제외는 판정에 쓰지 않는 보고다. 첫 런 뒤 고친 것은 확증 표본의 시작 날짜 하나이고 문턱은 그대로다.
모델
모델은 새로 고르지 않았다. 앞선 실험의 20일 변형이 2024년 1분기에 쓴 LightGBM 회귀 모형을 같은 설정으로 다시 만든 것이다. 목표 날짜가 2024-01-01 앞인 국고 경과물 종목일 108,811개(신호일 2010-01-04 ~ 2023-11-30)로 학습했고, 목표는 0.5% 와 99.5% 분위(−7.35, +6.37bp)에서 잘랐다. 나무 400그루, 학습률 0.03, 잎 15, 잎당 최소 200표본, 행과 열 표집 0.8, L2 정칙 1, seed 261 이다. 아래 그림은 학습된 모형 객체에서 그린 구조이며, 그리기 전에 저장된 모형이 확증 거래의 신호 강도를 그대로 재현하는지 확인했다. 시점 정합 보충 판은 같은 설정으로 43개 분기마다 다시 맞춘 모형이며 구조는 같다.
| 분기 위치 \ 피처 | 잔존만기 | 60일 표준편차 | 잔차 수준 | 상장잔액 | 지표 해제 경과 | 장외 거래량 20일 | 60일 편차 | 발행 경과 | 20일 변화 | 5일 변화 | 60일 z | 1일 변화 | 거래량 5/20일 | 직전 입찰부터 | 발행 만기 | 다음 입찰까지 | 인도 바스켓 | 합 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 깊이 0 (뿌리) | 30 | 1 | 243 | 29 | 13 | 4 | 8 | 12 | 5 | 9 | 18 | 25 | 1 | 0 | 1 | 0 | 1 | 400 |
| 깊이 1 | 85 | 91 | 137 | 44 | 38 | 23 | 52 | 24 | 38 | 42 | 15 | 24 | 11 | 6 | 8 | 10 | 9 | 657 |
| 깊이 2 | 216 | 138 | 100 | 83 | 73 | 52 | 70 | 28 | 41 | 53 | 27 | 12 | 8 | 6 | 5 | 8 | 10 | 930 |
| 깊이 3 | 233 | 162 | 90 | 116 | 74 | 64 | 71 | 54 | 44 | 51 | 34 | 19 | 13 | 3 | 12 | 6 | 10 | 1,056 |
| 깊이 4 | 220 | 157 | 62 | 133 | 76 | 63 | 40 | 51 | 38 | 20 | 31 | 6 | 5 | 16 | 8 | 9 | 4 | 939 |
| 깊이 5 | 128 | 117 | 26 | 100 | 65 | 55 | 28 | 46 | 27 | 19 | 33 | 7 | 12 | 10 | 9 | 7 | 3 | 692 |
| 깊이 6 | 79 | 58 | 28 | 62 | 43 | 44 | 25 | 41 | 26 | 12 | 10 | 4 | 9 | 8 | 4 | 5 | 2 | 460 |
| 깊이 7 | 56 | 34 | 16 | 39 | 33 | 24 | 14 | 23 | 10 | 5 | 7 | 2 | 3 | 5 | 4 | 3 | 1 | 279 |
| 깊이 8 | 24 | 19 | 16 | 27 | 11 | 10 | 6 | 6 | 5 | 4 | 5 | 0 | 4 | 1 | 1 | 1 | 0 | 140 |
| 깊이 9 | 4 | 9 | 1 | 6 | 2 | 1 | 1 | 5 | 1 | 1 | 2 | 0 | 1 | 1 | 1 | 0 | 0 | 36 |
| 깊이 10 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 7 |
| 깊이 11 | 0 | 0 | 1 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 |
| 분기 합 | 1,076 | 787 | 721 | 639 | 432 | 341 | 316 | 290 | 235 | 216 | 182 | 100 | 67 | 56 | 53 | 49 | 40 | 5,600 |
| 손실 감소(gain) 몫 | 15.7% | 10.1% | 39.9% | 5.3% | 3.2% | 2.9% | 9.6% | 2.1% | 2.6% | 2.7% | 3.0% | 0.7% | 0.4% | 0.3% | 0.5% | 0.3% | 0.5% | 100% |
표 M1 은 깊이마다 어떤 특징으로 몇 번 갈랐는지 센 것이다.
결과
확증 결과
| 가설 | 측정 | 값 | p | Holm | 판정 |
|---|---|---|---|---|---|
| H1026 | 통안 얼린 GBM, 거래당 비용 뒤 | 69건, 전 +0.01, 뒤 −1.43bp | 0.996 | 1.0 | 미지지 |
| H1027 | 국고 2005 ~ 2009 같은 규칙 | 0건 | 1 | 1.0 | 보류 |
| H1028 | 날짜 안 순열 1,000회 대비 | −1.43 대 귀무 −1.46(95% −0.97) | 0.460 | 1.0 | 미지지 |
| H1029 | 얼린 AR(1) 같은 문턱 | 통안 10건 +1.58bp, 국고 0건 | 보고 | ||
| H1031 | 무작위 종목과 방향 200회, 비용 전 | −0.03(95% +1.14) 대 +0.01 | 0.48 | 보고 |
모형 학습이 끝난 뒤의 통안 신호에서 얼린 규칙은 2.8년 동안 69건, 연 24.9건의 교체를 냈다. 빈도는 데스크 기준을 넘지만 거래당 비용 전 손익이 +0.01bp 로 사실상 0 이고, 평균 쌍 왕복 1.44bp 를 빼면 −1.43bp 다. 적중률 41%, 월 블록 부트스트랩 90% 구간 −2.30 ~ −0.59bp 로 구간 전체가 0 아래다. 한쪽 p 0.996 이므로 H1026 은 미지지다. 판정 규칙에 따라 이 실험은 폐기다.
순열 귀무(그림 3)도 같은 이야기를 한다. 예측값을 날마다 종목끼리 섞으면 규칙은 평균 136건을 내며 거래당 −1.46bp 를 잃는다. 실제 −1.43bp 는 귀무 분포 한가운데에 있다(p 0.46). 무작위 종목과 방향 기준선도 비용 전 −0.03bp 로 실제 +0.01bp 와 다르지 않다(p 0.48). 이 구간에서 얼린 예측은 거래에 쓸 종목 정보를 주지 못했다. 같은 문턱의 AR(1)은 10건 +1.58bp 로 양이었지만 연 3.6건이다.
시점 정합 보충 판
2016 ~ 2023 년 통안은 얼린 모형으로는 볼 수 없으므로(시점 누설) 분기마다 그 분기 전에 목표가 끝난 국고 종목일로 모형을 다시 맞춰 그 분기 통안 신호에 썼다. 앞선 실험이 실제로 운용하던 방식이다. 그림 2 에서 LightGBM 은 전 구간 97건 비용 뒤 +0.61bp(p 0.24, 연 9.0건)이고, 2016 ~ 2023 년 38건은 +3.20bp(p 0.048), 2024년 이후 59건은 −1.06bp(p 0.99)다. AR(1)은 30건 +3.01bp(p 0.18), 2024년 이후 9건 +1.52bp 다. 순열 귀무 200회 대비 전 구간 p 는 0.005 다.
이 판은 두 가지를 말한다. 2024년 이전에는 국고에서 배운 규칙이 통안에서도 거래당 +3bp 를 벌었다. 다만 연 4.8건으로 드물었고 사전에 정한 확증이 아니다. 그리고 매 분기 다시 학습해도 2024년 이후의 붕괴는 그대로다. 얼린 탓이 아니라 통안 곡선 쪽에서 무언가가 바뀌었다는 뜻이다. 그림 7 의 연도별 손익도 2021 ~ 2023 년 양, 2024 ~ 2026 년 음으로 갈린다.
예측 품질과 보정
예측의 순위는 통안으로 어느 정도 옮겨 갔다. 확증 구간 종목일 4,254개에서 날마다 순위 상관 평균은 얼린 LightGBM 0.242, AR(1) 0.101 이다. 그러나 크기는 틀렸다. RMSE 는 LightGBM 3.13, AR 2.83, 지속성(변화 0) 2.83bp 로 트리가 가장 나쁘다. 그림 6 오른쪽에서 실현을 예측에 회귀한 기울기는 0.31 이고 예측이 실현의 세 배를 말한다. |p| ≥ 2.5bp 인 종목일 비중이 24.8% 다.
그림 6 왼쪽은 분기 재학습 판의 2016 ~ 2023 년이다. 기울기 1.09, 순위 상관 0.41, |p| ≥ 2.5bp 비중 4.4% 로 거의 45도 선 위에 있다. 같은 분기 재학습 판의 2024년 이후는 기울기 0.34, 비중 23.6% 로 얼린 모형과 같다. 문턱은 예측 크기로 신호를 고르므로 부풀어 오른 예측이 곧 많은 신호가 되었고 그 신호들이 실현되지 않았다. AR(1)은 같은 시기 기울기 0.50 으로 덜 무너졌고 |p| ≥ 2.5bp 비중도 2% 대에 머물렀다.
손익 분해와 실패 원인
교체 손익은 세 항으로 나뉜다. 두 종목 잔차 변화 차인 잔차 항, 두 종목 자리에서 적합 곡선 값이 바뀐 차인 곡선 항, 그리고 캐리다. 그림 8 에서 얼린 LightGBM 69건은 잔차 항 −0.15, 곡선 항 −0.34, 캐리 +0.49bp 다. 곡선 기울기 노출은 작고 원인이 아니다. 고른 종목의 잔차가 이웃 대비 되돌아오지 않은 것이다. 얼린 AR(1) 10건은 잔차 항 +2.40bp 로 잔차가 실제로 되돌아왔다.
왜 되돌아오지 않았는가. 통안 3년물은 2021-09 에 다시 발행되기 시작했고 2024년에는 잔존 1 ~ 3년 유니버스의 상당 부분을 차지했다. 69건 중 52건이 2년물과 3년물이 섞이거나 3년물끼리인 쌍이었고 비용 뒤 −1.67bp 다. 발행 프로그램이 다른 종목 사이의 수준 차는 오래 유지된다. 트리는 잔차 수준이 크면 되돌림을 크게 말하도록 배웠다. 실제로 신호 종목의 60일 편차는 평균 0.19bp 로 작았다. 최근 벌어진 편차가 아니라 오래된 수준 차를 되돌리려 한 셈이다. 2년물끼리 17건도 −0.70bp 여서 이것만으로 다 설명되지는 않는다.
격자, 비용, 실행
| 가정 | 모형 | 건수 | 비용 전 | 비용 뒤 | p |
|---|---|---|---|---|---|
| 배수 ×0.5 | GBM | 123 | +0.01 | −0.71 | 0.985 |
| 배수 ×1.0(1차) | GBM | 69 | +0.01 | −1.43 | 0.996 |
| 배수 ×1.5 | GBM | 34 | +1.19 | −0.97 | 0.966 |
| 배수 ×2.0 | GBM | 12 | +0.28 | −2.60 | 0.975 |
| 평탄 0.5bp | GBM | 69 | +0.01 | −0.49 | 0.829 |
| 평탄 1bp | GBM | 69 | +0.01 | −0.99 | 0.969 |
| 평탄 2bp | GBM | 69 | +0.01 | −1.99 | 1.000 |
| 300억 비용 | GBM | 69 | +0.01 | −1.55 | 0.998 |
| 배수 ×1.0 | AR(1) | 10 | +3.02 | +1.58 |
비용 전 손익이 0 이므로 어떤 비용 가정에서도 비용 뒤 손익은 음이다. 평탄 쌍 왕복을 0.5bp 로 아주 싸게 잡아도 −0.49bp 다. 그림 4 의 문턱과 보유 격자에서 LightGBM 16칸 가운데 15칸이 음이고, k 3 보유 30일 한 칸만 28건 +0.36bp(p 0.36)다. 얼린 칸(k 2, 보유 20일)이 우연히 나쁜 칸이 아니다. AR 격자는 k 2 이상, 보유 15일 이상의 칸 대부분이 +1.08 ~ +5.29bp 로 양이지만 건수가 2 ~ 11건이다.
실행을 하루 늦춰 t+2 민평으로 들어가면 68건 −0.68bp 다. 충격 구간(사건일부터 10영업일)과 겹친 거래를 빼면 61건 −1.34bp 다. 비싼 쪽 팔기 25건 −1.32, 싼 쪽 사기 44건 −1.49bp 로 방향 차이도 없다. 거래는 22종목에 퍼져 있고 한 종목 비중은 최대 10% 다. 연도별로는 2024년 −1.16(12건), 2025년 −0.88(21건), 2026년 −1.84bp(36건)로 해마다 음이다. 곡선 정의를 바꿔도 결론은 같다. 잔존 0.25 ~ 3년 한정 적합은 59건 −0.60bp, 데스크 적합표 통안 곡선은 57건 −1.00bp 다. 자료가 일별 민평이라 1분, 5분 지연은 정의되지 않고, 통안 경과물은 장외 협상 체결이 대부분이라 지정가 체결 확률 모형도 세울 수 없었다.
탐색 변형, 요인, 독립성
| 탐색 | LightGBM | AR(1) |
|---|---|---|
| 같은 발행 만기 이웃만 | 60건 −0.18(p 0.66) | 9건 +1.23 |
| 버터플라이 헤지 | 38건 −0.82(p 0.98) | 5건 +1.60 |
| 실시간 β 재보정 | 11건 −0.50(p 0.69) | |
| β 재보정과 같은 만기 이웃 | 10건 +2.79 |
실패 원인이 발행 프로그램 섞임이라면 이웃을 같은 발행 만기로 묶으면 나아져야 한다. 손실은 줄어 60건 −0.18bp 가 되었지만 0 을 넘지 못했다. 짧은 쪽과 긴 쪽 이웃으로 선형 보간 헤지하는 버터플라이는 세 종목 비용이 붙어 38건 −0.82bp 다. 그날 이미 실현된 통안 종목일(직전 250영업일)로 실현 대 예측 기울기 β 를 구해 예측에 곱하는 실시간 재보정은 그림 9 처럼 β 가 2024년 이후 평균 0.53, 최저 0.12 로 떨어져 붕괴를 그 시점에 감지한다. 재보정 판은 신호를 11건으로 줄여 손실을 −0.50bp 로 좁혔고, 같은 만기 이웃을 겹치면 10건 +2.79bp 지만 건수가 너무 적다.
기존 요인도 봤다. 거래당 비용 뒤 손익을 보유 기간의 통안 곡선 수준 변화, 기울기 변화, 미국 야간 되돌림 3선 전략의 같은 기간 손익과 각각의 방향 곱으로 회귀하면 R² 는 0.10, 절편은 −1.05bp 다. 손실은 금리 수준, 기울기, 미국 밤사이 요인으로 설명되지 않는다. 독립성은 참고로 냈다. 통안 교체 월별 손익과 미국 야간 되돌림 3선의 월 상관은 +0.08(58개월), 앞선 국고 20일 변형 거래와는 −0.05(66개월)이고 같은 신호일은 7일이다. 이익이 없으니 분산 효과를 따질 단계가 아니다.
해석
국고 경과물에서 배운 20일 잔차 예측은 통안증권에서도 종목 순위를 어느 정도 맞힌다. 시점을 맞춘 판의 2016 ~ 2023 년 순위 상관은 0.41 이고 크기 보정도 맞아 거래당 +3bp 를 벌었다. 잔차 수준과 잔존만기의 비선형 결합이라는 트리의 학습 내용이 다른 발행자의 짧은 곡선에서도 쓸모 있었다는 뜻이다. 그러나 교체 규칙은 예측의 순위가 아니라 크기로 신호를 고른다. 예측이 비용의 두 배를 넘어야 들어가므로 크기 보정이 틀리면 잘못된 신호가 곧바로 늘어난다.
통안 3년물이 다시 발행되며 곡선에 발행 프로그램별 수준 차가 생기자 트리는 그 수준 차를 되돌림 기회로 읽고 큰 예측을 쏟아냈고, 그 예측은 맞지 않았다. 확증 표본인 2024년 이후가 바로 이 구간이고, 매 분기 다시 학습해도 결과가 같았다. AR(1)은 60일 편차만 보아 오래된 수준 차에 속지 않았고 양이었다. 출처 노트가 말하는 «강한 단순 기준» 의 교훈과 같은 방향이다. 복잡한 모형은 구조가 바뀐 표본에서 단순 되돌림보다 먼저 깨졌다. 다만 AR 규칙은 연 3 ~ 4건이라 데스크가 원하는 빈도에 한참 못 미친다. 2005 ~ 2009 국고는 자료가 없어 아무것도 말하지 못한다. 결국 앞선 20일 변형의 이익은 안 본 표본에서 재현되지 않았고 채택 후보에서 내린다.
한계
이 결론이 틀릴 수 있는 이유를 구체적으로 적는다.
표본 크기와 구간. 확증 거래는 69건, 2.8년이다. 90% 구간이 0 아래에 있어 «이익 없음» 은 비교적 분명하지만 통안 3년물 재발행 뒤라는 한 구간의 결과다. 곡선 구조가 다시 안정되면 규칙이 되살아날 수 있다. H1027 은 시험하지 못했다. 2005 ~ 2009 국고 민평은 장기물 8종목뿐이라 곡선이 거의 보간이었다. 그 시기 전 종목 민평과 발행 정보를 단말에서 새로 받아야 시험할 수 있는데 이 밤의 예산과 단말 부담 때문에 하지 않았고 보수적으로 보류했다. 이 표본에 2010 ~ 2023 으로 학습한 모형을 쓰는 것도 미래로 학습한 모형을 과거에 쓰는 시점 문제가 있다.
비용 가정. 국고 2025 ~ 2026 실측에서 온 2년 칸 비용을 통안에 그대로 썼다. 통안 경과물의 실제 호가 폭은 재지 않았다. 다만 비용 전 손익이 0 이라 비용 가정과 무관하게 결론은 같다. 입찰 특징의 공표 시각. 다음 입찰까지 특징은 같은 달, 그달 둘째 영업일 이후 조건으로만 막았고 실제 공표 시각을 날마다 대조하지 않았다. 민평과 매도 다리. 손익을 민평으로 쟀고, 판 다리는 보유 재고 교체로 가정했으며 대차 비용은 넣지 않았다. 정의 바꿈. 아이디어의 고정 λ 는 실제로 없어 같은 방식의 일별 적합을 1차로 두었고, 통안 지표물은 가장 최근 발행 2년물로 우리가 정했다.
결과를 본 뒤 고친 것. 첫 런은 국고 표본 거래가 0건일 때 빈 표의 날짜형 처리에서 멈춰 날짜형 변환만 더해 다시 돌렸다. 그 뒤 독립 감사가 얼린 모형을 학습 기간과 겹치는 2013 ~ 2023 통안 신호에 쓴 시점 누설을 지적해, 프로토콜 수정을 먼저 등록하고 확증을 2024년 이후로 좁혀 다시 돌렸다. 이 수정으로 순열 귀무 가설이 통과에서 미지지로 바뀌었고 판정은 폐기 그대로다. 시점 정합 보충 판, 탐색 변형, 요인 회귀, 실시간 재보정은 결과를 본 뒤 정한 보고와 탐색이다.
다음에 해 볼 것
첫째, 발행 프로그램을 아는 곡선과 규칙을 사전등록한다. 통안 2년물과 3년물을 같은 곡선에 넣지 말고 발행 만기별 곡선(또는 발행 만기 더미를 둔 곡선)의 잔차를 쓰며, 이웃도 같은 발행 만기로 묶는다. AR(1) 편차 되돌림과 분기 재학습 LightGBM 을 함께 잠그고 국고 경과물과 한 장부로 합쳐 빈도를 늘린다. 확인 구간은 앞으로 쌓이는 날이고, 등록 전에 손익 없이 건수만 세어 연 24건에 닿는지 본다. 둘째, 2005 ~ 2009 국고 전 종목의 발행 정보와 일별 민평을 단말 직접 통신으로 연도별로 나눠 받아 H1027 을 다시 시험한다. 미래로 학습한 모형을 과거에 쓰는 문제를 피하려면 2010 ~ 2011 국고만으로 학습한 모형을 쓴다.
산출물
분석과 판정은 analysis.md, 사전등록과 수정 절은 protocol.md 다. 정본 런은 results/20261111T022338_main/ 이고 확증 수치는 그 안의 metrics.json, 거래는 trades_msb_main_gbm.csv 와 trades_msb_main_ar.csv, 격자와 비용과 연도별은 grid.csv, costs.csv, yearly.csv, 순열 귀무는 null_perm_msb.csv 에 있다. 시점 정합 보충 판은 wf/, 손익 분해와 탐색은 depth/, 자료 점검과 재현 점검은 results/dc/ 에 있다. 시점 누설이 있던 첫 런은 results/20261111T011403_void_main/ 으로 남겼다.
- 패널, 곡선, 규칙, 검정, 분기 재학습
code/common.py - 자료 점검, 재현 점검
code/dc.py,code/repro.py - 본 런
uv run python experiments/0275_unseen_sample_resid_reversion_20d/code/s1.py - 보충과 깊이 보강
code/s6_wf.py,code/s2_depth.py,code/s3_explore.py,code/s4_calib.py,code/s5_depth.py(인자: 정본 런 폴더 이름) - 그림, 모델 구조도
code/render_figures.py,code/render_model.py
Appendix
A. 데이터셋 실물
2022-06-15 하루의 통안 종목 민평과 그날 맞춘 넬슨 시겔 잔차다(18종목 중 잔존 0.6년 이상 일부). 그날 적합에 쓴 종목은 18개, 적합 오차 7.36bp, λ 0.304 였다. 잔존 1년 미만 종목은 거래 유니버스 밖이고, 통안01560-2310-02 같은 잔존 1 ~ 3년 종목이 신호와 이웃 후보다. 3년물(끝이 -03)과 2년물(끝이 -02)이 같은 곡선에 섞여 있는 것이 보인다.
| 종목 | 민평(%) | 잔존(년) | 잔차 e(bp) | z | 유니버스 | 지표물 |
|---|---|---|---|---|---|---|
| 통안00870-2302-02 | 1.998 | 0.635 | −15.97 | 0.23 | 아니오 | 아니오 |
| 통안01030-2306-02 | 2.644 | 0.964 | 3.29 | 2.35 | 아니오 | 아니오 |
| 통안01270-2308-02 | 2.836 | 1.131 | 2.47 | −0.34 | 예 | 아니오 |
| 통안01560-2310-02 | 3.020 | 1.298 | 3.41 | −0.98 | 예 | 아니오 |
| 통안01800-2401-02 | 3.303 | 1.550 | 9.90 | 1.53 | 예 | 아니오 |
| 통안02780-2404-02 | 3.405 | 1.799 | 3.00 | 0.25 | 아니오 | 예 |
| 통안01510-2409-03 | 3.562 | 2.220 | −2.78 | −1.21 | 예 | 아니오 |
| 통안02320-2503-03 | 3.685 | 2.716 | −7.82 | −0.80 | 예 | 아니오 |
B. 모델 입출력 실물
모형에 실제로 들어간 한 종목일과 그 출력이다. 2022-01-06 통안01560-2310-02 의 특징은 잔차 7.69bp, 1일 변화 +5.25, 5일 +9.78, 20일 +9.40, 60일 편차 +8.86bp, z 6.63, 60일 표준편차 1.34, 잔존 1.74년, 발행 만기 2년, 발행 경과 0.26년, 지표 해제 경과 4영업일, 바스켓 0, 장외 거래량 로그 3.82, 거래량 비율 1.02, 상장잔액 로그 11.31, 다음 입찰까지 결측, 직전 입찰부터 1영업일이다. 얼린 모형 출력은 p = −4.44bp(AR(1) −3.78bp)로, 잔차가 줄어 종목이 비싸질 것이라는 예측이다. 실현 20일 잔차 변화는 −0.36bp 였다. 이 날은 얼린 모형의 학습 기간 안이라 확증에는 쓰지 않는 예시다.
확증 구간의 예로, 2026-01-06 통안02620-2704-02(2년물) 매수와 통안03430-2703-03(3년물) 매도 거래는 p −3.66bp 로 문턱(2 × 쌍 왕복 1.44bp = 2.88bp)을 넘어 다음 날 들어가 2026-02-04 에 나왔다(28일). 가격 항 −1.30, 캐리 +1.13, 비용 전 −0.17, 비용 뒤 −1.61bp 였다. 2년물과 3년물이 섞인 쌍의 전형이다.
C. 실험 설정
| 항목 | 값 |
|---|---|
| LightGBM | 회귀 L2, 나무 400, 학습률 0.03, 잎 15, 잎당 최소 200, 행 표집 0.8(매 반복), 열 표집 0.8, L2 정칙 1, seed 261 |
| 학습 표본(얼린 모형) | 국고 경과물 종목일 108,811개, 신호일 2010-01-04 ~ 2023-11-30, 목표 절단 −7.35 ~ +6.37bp |
| 분기 재학습 판 | 2016-01 ~ 2026-10 43개 분기, 분기 시작 전 목표가 끝난 국고 종목일, 같은 설정 |
| AR(1)(얼림) | y20 = −0.0167 − 0.4251 × dev |
| 규칙 | k 2, 보유 20영업일, 진입 t+1, 이웃 |z| < 1 과 잔존 차 max(1년, 0.25 잔존) |
| 비용 | 체결 한 번 = 칸별 지표물 묶음 비용(100억) + 경과물 웃돈, 통안 2년 칸 쌍 왕복 약 1.44bp, 배수 통안 ×1.0, 국고 ×1.5 |
| 곡선 | 통안 넬슨 시겔, 국고 스벤손, λ 다중 시작, 2.5 표준편차 트림 3회 |
| 확증 표본 | 통안 신호일 2024-01-01 ~ 2026-10-08(2.77년, 보유 상태 비우고 시작), 국고 2005-06 ~ 2009-12 |
| 검정 | 월 블록 부트스트랩 10,000회, 순열 1,000회(보충 판 200회), 무작위 200회, Holm(H1026, H1027, H1028) |