세 줄 요약
- 콜옵션 행사 예정액이 큰 달에 낙찰은 실링보다 더 아래로 가지 않았다. 오히려 1 SD 당 +5.97bp 실링에 가까웠고, 확인 구간에서도 +4.75bp 였다. 재투자 수요 가설은 «낙찰 − 실링» 표적에서 지지되지 않는다.
- 발행 예정액(전년 같은 달 대비)은 발견 구간 +4.59bp 에서 확인 구간 −2.01bp 로 뒤집혔고, 국고채 입찰 겹침은 −0.34bp 로 0 근처였다.
- 세 변수로 기존 낙찰 예측을 보정하면 확인 구간 MAE 가 5.18bp 에서 5.41bp 로 나빠졌다. 판정은 폐기다.
가설과 결론
- 가설
- 주금공 MBS 는 거의 매달 경쟁입찰로 발행되고, 주금공은 입찰 전날 트랜치마다 응찰 상한 가산금리(실링)를 공시한다. 낙찰 가산금리가 실링보다 얼마나 아래에서 끝나는지는 그날의 수요를 보여 준다. K-MBS 월보는 매달 말 다음 달의 발행 예정액과 콜옵션 행사 예정액을 공개한다. 콜옵션이 행사되면 기존 MBS 보유자가 원금을 돌려받으므로 그 돈을 다시 넣을 재투자 수요가 생긴다. 그래서 세 가설을 세웠다. H624: 콜 행사 예정액이 큰 달은 «낙찰 − 실링» 이 더 음이다(1 SD 당 −0.5 ~ −1.5bp). H625: 발행 예정액이 전년 같은 달보다 큰 달은 공급 부담으로 실링에 가깝다(+0.5 ~ +1.5bp). H626: 국고채 경쟁입찰이 입찰일 당일이나 전 영업일에 있으면 같은 투자자의 돈이 나뉘어 실링에 가깝다(+0.5 ~ +1.5bp). 여기에 실용 검정 H627: 세 변수로 기존 낙찰 예측을 보정하면 확인 구간 MAE 가 0.2bp 이상 준다.
- 결론
- 세 가설 모두 지지되지 않았고, 콜 계획은 예측과 반대 부호로 강하게 나왔다. 콜 계획 계수는 1 SD 당 +5.97bp(90% 구간 4.08 ~ 7.57)였다. 콜 계획이 큰 시기에는 낙찰 금리 자체도 낮았지만(1 SD 당 −10.3bp), 주금공이 실링을 그보다 더 낮게(−16.2bp) 걸어 둘의 차가 좁아졌다. 재투자 수요가 있다 해도 그 정보가 실링에 먼저 들어가 «낙찰 − 실링» 에는 남지 않는다는 뜻으로 읽힌다. 발행 계획은 Holm 조정 p 0.517 로 통과하지 못했고 확인 구간 부호가 반대였으며, 국고 입찰 겹침은 효과가 없었다. 예측 보정은 오히려 MAE 를 0.23bp 키웠다. 판정은 폐기다.
이 질문이 데스크에 중요한 이유는 응찰 가산금리를 정할 때 실링 아래 몇 bp 에 넣을지가 곧 낙찰 여부와 수익을 정하기 때문이다. 월보의 공급 달력은 입찰 며칠 전에 공개되므로, 만약 이것이 낙찰 위치를 말해 준다면 비용 없이 쓸 수 있는 정보가 된다. 이 실험은 그 정보가 이미 실링에 반영돼 있다는 쪽의 증거를 냈다.
용어와 기호
- 주금공 MBS
- 한국주택금융공사가 보금자리론 등 주택담보대출을 기초로 발행하는 주택저당증권. 회차마다 1년에서 30년까지 여러 만기의 트랜치로 나뉜다.
- 회차, 트랜치
- 회차는 한 번의 입찰(예: 2024-18), 트랜치는 그 회차 안 만기 하나. 결정 단위는 트랜치 응찰이다.
- 기준금리(bench)
- 가산금리를 잴 때 쓰는 같은 만기 국고채 금리. 원장 규약대로 2021-06 전 7, 15년은 5, 10년 국고를, 2018 년까지 20년은 10년 국고를 쓴다.
- 실링
- 주금공이 입찰 전날 공시하는 응찰 상한 가산금리(bp). 이보다 높게 응찰하면 받지 않는다.
- 낙찰 가산금리
- 입찰에서 정해진 트랜치의 발행 가산금리(bp).
- y (낙찰 − 실링)
- 표적. 낙찰 가산금리 − 실링(bp). 0 이면 실링에서 낙찰, 음수일수록 실링보다 아래에서 끝났다. 위로 0 에서 잘려 있다.
- 미매각
- 응찰이 발행액에 못 미쳐 실링으로 낙찰되고 남은 물량이 생긴 트랜치. 이때 y = 0.
- 콜옵션 행사 예정액
- 월보가 공개하는 그 달 주금공의 MBS 조기상환 예정 금액(억원). 기존 투자자가 돌려받는 원금이다.
- CALL
- log(1 + 콜옵션 행사 예정액, 억원)을 표본 안에서 표준화한 값. 계수는 1 SD 당 bp 로 읽는다.
- ISS
- (그 달 발행 예정액 − 1년 전 같은 계획 월의 원장 발행 합) ÷ 1조원을 표준화한 값.
- KTB
- 국고채 경쟁입찰이 입찰일 D 또는 그 전 영업일 D−1 에 있으면 1, 아니면 0.
- 계획 월
- 회차가 속한 월보 계획의 달. 그 회차를 계획 표에 처음 올린 호에서 읽고, 없으면 입찰일에 4일을 더한 날(발행일 근사)의 달로 둔다.
- 공시일
- 게시판 등록일과 제목에 적힌 발행일 중 늦은 날. 공시일이 입찰일보다 엄격히 앞설 때만 그 계획 값을 쓴다.
- SD
- 표준편차. 표준화한 변수의 1 SD 는 표본 안 표준편차 하나만큼의 차이다.
- 발견 구간, 확인 구간
- 2023-12 까지와 2024-01 부터. 확인 구간은 지지 조건에 따로 들어간다.
- 월 블록 부트스트랩
- 계획 월을 통째로 복원 추출해 같은 회귀를 5,000번 다시 적합하는 방법. 한쪽 p 는 예측과 반대 부호(0 포함)가 나온 비율이다.
- Holm
- 가설 여럿의 p 를 작은 것부터 (남은 개수 × p) 로 키워 가는 다중검정 보정. 여기서는 H624 ~ H626 셋에 건다.
- MAE
- 평균 절대 오차. 예측 낙찰 가산금리와 실제 낙찰의 차의 절댓값 평균(bp).
- 앞선 릿지, B3
- 앞선 낙찰 예측 실험의 걷기 전진 릿지 회귀 예측(입찰 전날 정보만 사용). B3 는 거기에 학습 구간 평균 잔차만 더한 비교 기준이다.
자료
데이터셋
공개 자료는 주택금융공사 K-MBS 사이트 게시판의 뉴스레터 전부다. 게시판에 등록된 129건을 한 건도 빼지 않고 받아 PDF 의 글을 뽑았다. 경매 결과는 앞선 실험에서 정리한 입찰 원장을 쓰고, 원장 규약대로 핵심 행(core), 날짜가 확인된 행, 일반과 ST 유형, 낙찰 가산금리가 있는 행, 비고에 비경쟁이나 스왑이 없는 행만 남겼다. 국고채 입찰은 경쟁입찰 행만 쓴다. 국고채 입찰 일정은 기재부가 전월에 발표하는 월 발행계획에 나오므로 MBS 입찰 전에 알 수 있다.
| 자료 | 기간 | 단위 | 행 수 | 쓰임 |
|---|---|---|---|---|
| K-MBS 뉴스레터 | 2017-12 ~ 2026-11 | 호 | 129 | CALL, ISS 와 공시일 |
| MBS 경매 원장(조건 적용) | 2016-01-06 ~ 2026-10-23 | 트랜치 | 1,883 (243회차) | 표적 y, 통제 변수 |
| 국고채 경쟁입찰 | 2007 ~ 2026-11 | 입찰 | 1,210 | KTB |
| 앞선 낙찰 예측(릿지) | 2019-01 ~ 2026-10 | 트랜치 | 1,323 | H627 의 기준 |
| CALL 표본 | 2021-08 ~ 2026-10 | 트랜치 | 845 (112회차, 59개월) | H624 |
| ISS 표본 | 2022-07 ~ 2026-10 | 트랜치 | 716 (96회차, 51개월) | H625 |
| KTB 표본 | 2016-01 ~ 2026-10 | 트랜치 | 1,883 (243회차, 129개월) | H626 |
월보를 어떻게 읽었나
월보 첫 쪽의 «이달의 주요내용» 에는 «N월 MBS 발행계획 : X억원» 과 «N월 콜옵션 행사계획 : X억원» 이 적혀 있다. 2017-12 ~ 2021-06 의 호는 회차마다 내는 격주 양식이라 월 단위 표제가 없어서, 콜 계획은 2021-07호(8월 계획)부터, 발행 계획은 2022-06호(7월 계획)부터 읽혔다. 콜 계획은 첫 쪽 표제와 뒤쪽 콜옵션 절에 두 번 나오는데, 세 호에서 둘이 달랐다. 다음 호에 나온 실적과 대조해 보니 한 번은 표제가 발행액 차이를 잘못 옮긴 것이었고 두 번은 콜옵션 절이 지난 호 숫자를 그대로 둔 것이었다. 어느 쪽이 맞는지 미리 알 수 없으므로 그 세 달은 결측으로 두었다.
공시 시각은 게시판 등록일과 제목의 발행일 중 늦은 날로 잡았다. 2018 년 호 몇 개는 등록일이 발행일보다 한 달 넘게 늦은데, 늦은 쪽을 쓰면 실제보다 늦게 알았다고 보는 셈이라 보수적이다. 공시일이 입찰일과 같은 날이면 게시 시각을 몰라 쓰지 않았고, 이 규칙으로 계획 값이 지워진 회차는 2개였다. 같은 호가 두 번 등록된 경우(23-9호)는 첫 등록만 썼다. 월보의 발행 계획과 원장의 월 발행 합(전 유형)은 상관 0.76, 중앙 절대차 623억원으로 대체로 맞았다. 차이는 월말 입찰분이 어느 달 계획에 들어가는지와 계획 변경에서 온다.
방법
표적은 트랜치의 y = 낙찰 가산금리 − 실링 가산금리다. 낙찰 가산금리 자체가 아니라 실링과의 차를 쓰는 이유는, 실링이 입찰 전날 공시되고 낙찰 수준의 대부분을 이미 설명하기 때문이다. 수준을 표적으로 두면 금리 국면이나 신용 국면이 만든 큰 움직임이 설명변수와 우연히 겹친다. 실링 대비 차는 «주금공이 짐작한 수요» 와 «실제 수요» 의 차이에 가깝다.
가설마다 따로 회귀했다. y 를 그 변수 하나와 만기 고정효과(1, 2, 3, 5, 7, 10, 15, 20, 30년), ST 더미에 OLS 로 회귀했다. CALL 과 ISS 는 표본 안에서 표준화해 계수를 1 SD 당 bp 로 읽고, KTB 는 0 과 1 그대로 둔다. 표본은 변수가 있는 기간 전체다. 월 변수는 같은 달 회차들이 같은 값을 가지므로 독립 관측은 개월 수만큼이다. 그래서 검정은 계획 월 블록 부트스트랩으로 했다. 계획 월을 복원 추출해 5,000번(seed 208) 다시 적합하고, 예측과 반대 부호가 나온 비율을 한쪽 p 로 둔다. 월 군집 강건 t 와 회차 군집 결과도 함께 낸다.
판정 문턱은 결과를 보기 전에 정했다. 가설 하나가 지지되려면 전체 표본 Holm 조정 p 가 0.05 보다 작고, 확인 구간(2024-01 ~)에서 같은 부호이며 한쪽 p 가 0.10 보다 작아야 한다. 발견 구간은 콜 계획 28개월, 발행 계획 17개월로 짧아 따로 문턱을 두지 않고 보고만 한다. 아이디어 원안의 «국고 입찰과 같은 주» 는 원장에서 98% 가 1 이라 변별력이 없어, 결과를 보기 전에 D 또는 D−1 로 바꿨다(당일만은 13.8%, D 또는 D−1 은 33%).
실용 검정 H627 은 확인 구간 58회차 각각에서, 그 앞 회차(2022-07 부터, 세 변수가 모두 있는 행)로 «실제 낙찰 − 앞선 릿지 예측» 을 세 변수와 절편에 회귀하고, 그 적합값을 릿지 예측에 더한다. 회차마다 다시 학습하고 표준화도 학습 행으로 한다. 비교 기준 B3 는 절편만 더한 것이다. 이득이 0.2bp 이상이고 회차 군집 짝 부트스트랩 한쪽 p 가 0.05 보다 작으면 지지다. 기준선으로는 실링 그대로, 만기별 평균 차, 앞선 릿지를 함께 낸다. 강건성 격자(정의 네 가지씩, 표본 여섯 가지, 연도별), 월 사이 순열 귀무 2,000회, 세 변수 동시 모형은 모두 사전등록했고 판정에는 쓰지 않는다. 결과를 본 뒤의 진단은 탐색으로 따로 표시한다.
이 실험은 선물 매매 규칙이 아니라 응찰 입력 후보를 검정한다. 그래서 진입 지연이나 체결 확률, 선물 틱 비용은 해당이 없고, 결정 단위인 트랜치 응찰은 연 약 170건(회차 연 약 22회)이다.
결과
확증 결과
세 가설 모두 지지 조건을 채우지 못했다. 가장 뚜렷한 것은 콜 계획이다. 콜 행사 예정액이 1 SD 클수록 «낙찰 − 실링» 은 5.97bp 커졌다(실링에 가까워졌다). 예측은 음이었으므로 한쪽 p 는 1.000 이다. 같은 계수는 발견 구간(+6.18bp)과 확인 구간(+4.75bp) 모두에서 양이고, 90% 구간이 0 을 한참 벗어난다. 회차 군집으로 바꿔도 같다. 반대 방향으로 물었다면 강한 결과였겠지만, 사전등록한 방향은 음이었고 아래 탐색에서 보듯 이 양의 계수는 수요가 아니라 실링 설정에서 왔다.
| 가설 | 예측 | 계수 | 90% 구간 | p | Holm | 발견 ~2023 | 확인 2024~ | 지지 |
|---|---|---|---|---|---|---|---|---|
| H624 CALL | 음 | +5.97 | 4.08 ~ 7.57 | 1.000 | 1.000 | +6.18 | +4.75 (p 1.000) | 아니오 |
| H625 ISS | 양 | +2.71 | −1.38 ~ 4.19 | 0.172 | 0.517 | +4.59 (p 0.029) | −2.01 (p 0.893) | 아니오 |
| H626 KTB | 양 | −0.34 | −2.07 ~ 1.39 | 0.614 | 1.000 | +0.40 | −2.14 (p 0.937) | 아니오 |
발행 계획은 전체 계수 +2.71bp 로 예측 방향이었지만 부트스트랩 p 0.172, Holm 0.517 로 문턱에 못 미쳤다. 월 군집 t 로는 p 0.030 이 나와 두 검정이 엇갈리는데, 이는 소수의 극단 월(2023-03 계획 5.6조원, 2022-12 전년 대비 −14.7조원)에 계수가 기대고 있어 부트스트랩이 그 달들을 빼거나 겹쳐 뽑을 때 계수가 크게 흔들리기 때문이다. 결정적인 것은 확인 구간이다. 2024 년 이후에는 계수가 −2.01bp 로 뒤집혔다. 발견 구간의 +4.59bp 는 2023 년 한 해(특례보금자리 공급이 몰린 해)의 몫이다.
국고채 입찰 겹침은 전체 −0.34bp 로 0 과 구별되지 않았다. 발견 구간 +0.40bp, 확인 구간 −2.14bp 로 부호도 일정하지 않다. 같은 날 국고 입찰이 MBS 수요를 빼앗는다는 이야기는 시장에서 자주 들리지만, 실링 대비 낙찰로 보면 흔적이 없다. 세 변수 중 어느 것도 사전에 정한 방향과 문턱을 동시에 넘지 못했다.
예측 보정 검정
계수 검정과 별도로, 세 변수가 실제 응찰 판단에 쓸모가 있는지를 확인 구간 예측 오차로 쟀다. 확인 구간 58회차, 416트랜치에서 실링 그대로를 낙찰 예측으로 쓰면 MAE 는 7.61bp, 학습 구간 만기별 평균 차를 빼면 7.50bp 이고, 앞선 릿지 예측은 5.02bp 로 훨씬 낫다. 릿지에 학습 구간 평균 잔차를 더한 B3 는 5.18bp 로 약간 나빠졌고, 여기에 세 달력 변수를 더한 보정은 5.41bp 로 더 나빠졌다. B3 대비 이득은 −0.23bp(90% 구간 −0.59 ~ +0.12)이고 «이득 ≥ 0.2bp» 의 한쪽 p 는 0.977 이다. 달력 변수는 낙찰 예측에 정보를 더하지 못하고 잡음만 더한다.
| 방법 | 무엇을 쓰나 | MAE (bp) |
|---|---|---|
| 실링 그대로 | 실링에서 낙찰된다고 본다 | 7.61 |
| 만기별 평균 차 | 실링 + 학습 구간 만기별 평균 y | 7.50 |
| 앞선 릿지 | 입찰 전날 정보 걷기 전진 예측 | 5.02 |
| B3 | 릿지 + 평균 잔차 | 5.18 |
| 달력 보정 | 릿지 + CALL, ISS, KTB 회귀 적합값 | 5.41 |
보조 가설 H628(미매각 여부의 로지스틱)도 같은 그림이다. CALL 계수는 +0.63 으로 콜 계획이 큰 달에 미매각이 오히려 잦았고(예측과 반대), ISS 와 KTB 는 +0.06 으로 0 에 가깝다(p 0.43). 표본의 미매각 비율은 14 ~ 17% 다.
강건성과 귀무
CALL 의 양의 계수는 사전등록한 모든 변형에서 살아남았다. 콜 계획을 로그 대신 수준(조원)으로 넣으면 +3.67bp, 발행 계획 대비 비율로 넣으면 +3.20bp, 직전 달 실적 콜로 바꾸면 +5.02bp 다. 충격 구간(2020-03 ~ 06, 2022-09-15 ~ 12-31)을 빼도 +5.22bp, 콜옵션부 트랜치만 보면 +6.13bp, 연도 고정효과를 넣어도 +6.89bp 다. 표적을 «직전 같은 만기 대비 낙찰 변화» 로 바꿔도 +3.53bp 로 양이다. 연도별로는 2022 +8.2, 2023 +6.7, 2024 +4.5 로 크고 2025 −1.2, 2026 +0.4 로 작아진다.
ISS 는 변형에 따라 흔들렸다. 연도 고정효과를 넣으면 +6.32bp(p 0.023)로 커지지만 충격 구간을 빼면 +0.17bp(p 0.440)로 사라진다. 원장 월 합으로 2017 년까지 늘린 판(그 달 뒤쪽 회차를 미리 아는 셈이라 누설 가능)도 +0.92bp(p 0.279)다. 세 변수를 한 모형에 넣으면(691트랜치, 48개월) ISS 가 +2.64bp(p 0.008)로 유의해지지만, 이 판은 판정용이 아니고 확인 구간에서 부호가 반대였다는 사실은 바뀌지 않는다. KTB 는 정의 넷(당일만, 낙찰 합, 만기 맞춤 포함)과 표본 다섯 모두 −0.6 ~ +0.3bp 였다.
귀무 분포도 같은 결론이다. 월 변수를 계획 월 사이에서 섞은 순열 2,000회에서 CALL 계수의 5 ~ 95% 는 −1.51 ~ +1.60bp 인데 관측값 +5.97bp 는 그 밖에 있다. 즉 우연이 아니라 체계적인 양의 관계다. ISS 의 관측 +2.71bp 는 순열 p 0.021 로 귀무 꼬리에 있지만 Holm 과 확인 구간 조건을 넘지 못한다. KTB 는 순열 p 0.632 다.
| 변수 | 관측 계수 | 귀무 5% | 귀무 95% | 귀무 SD | 순열 p |
|---|---|---|---|---|---|
| CALL | +5.97 | −1.51 | +1.60 | 0.93 | 1.000 |
| ISS | +2.71 | −1.40 | +1.89 | 1.01 | 0.021 |
| KTB | −0.34 | −1.64 | +1.60 | 0.99 | 0.632 |
탐색: 왜 반대로 나왔나
여기부터는 확증 결과를 본 뒤 한 진단이며 판정에 쓰지 않는다. 먼저 표적이 느리게 움직인다. 회차 평균 «낙찰 − 실링» 의 1차 자기상관은 0.58, 월 평균은 0.67 이다. 2022-12 ~ 2024-02 에는 월 평균이 −42 ~ −11bp 로 크게 벌어졌는데, 그 시기 콜 계획은 0 에 가까웠다. 2024 하반기에는 콜 계획이 4,956억원까지 커지는 동안 «낙찰 − 실링» 이 −17bp 에서 −1bp 로 좁아졌다. 몇 해 단위로 움직이는 두 계열이 겹치면 회귀 계수는 크게 나온다.
그렇다면 큰 콜 달에 무엇이 움직였는가. 낙찰 수준과 실링 수준을 따로 회귀해 보니, CALL 1 SD 당 낙찰 수준은 −10.3bp, 실링 수준은 −16.2bp 였다. 콜 계획이 큰 시기에 낙찰 금리는 실제로 낮았다. 재투자 수요 가설과 같은 방향이다. 그러나 주금공이 실링을 그보다 더 많이 낮춰 걸었기 때문에 둘의 차는 좁아졌다. 직전 같은 만기 대비 변화로 봐도 실링 변화 +3.1bp, 낙찰 변화 +3.5bp 로 같은 방향이다. 다만 수준 회귀는 2021 ~ 2024 의 금리와 신용 국면을 그대로 담고 있어 인과로 읽을 수 없다.
추가 진단도 같은 쪽을 가리킨다. 직전 회차의 차를 통제해도 CALL 은 +4.71bp, 6개월과 12개월 블록으로 부트스트랩해도 예측 방향 p 는 1.000 이다. 2022-12 ~ 2024-02 의 큰 벌어짐 구간을 통째로 빼면 +2.50bp 로 작아지지만 부호는 그대로다. 월 1차 차분으로 보면 콜 계획 변화와 «낙찰 − 실링» 변화의 상관이 +0.47 이다. ISS 는 월 차분 회귀에서 +4.62bp(p 0.026, 47개월)로 예측 방향이 나왔지만, 차분 판은 사전등록에 없었고 수준 판의 확인 구간 부호가 반대라 후보로만 남긴다.
탐색: 실링 설정과 보정 모형 비교
앞 절의 해석(정보가 실링에 먼저 들어간다)을 직접 확인하려고, 표적을 실링 쪽으로 옮긴 회귀를 더 돌렸다. 이것도 확증 결과를 본 뒤 정한 탐색이다. «실링 − 직전 같은 만기 낙찰» 을 표적으로 두면 CALL 1 SD 당 −2.41bp(90% 구간 −3.72 ~ −1.07, 59개월, 음 방향 p 0.002)이고, «실링 − 앞선 릿지 예측» 을 표적으로 두면 −3.03bp(−5.07 ~ −0.82, p 0.009)다. 콜 계획이 큰 달에 주금공은 실링을 직전 낙찰보다도, 시장 정보로 만든 예측보다도 낮게 건다. 재투자 수요 정보는 낙찰이 아니라 실링에 먼저 반영된다. 발행 계획(+0.39, +0.20)과 국고 입찰 겹침(+0.24, −0.53)은 실링 설정과도 관계가 없었다.
수준 대신 변화를 신호로 쓰는 서프라이즈 정의도 확인했다. 콜 계획의 전월 대비 로그 변화는 «낙찰 − 실링» 에 1 SD 당 +1.19bp(90% 구간 −2.18 ~ +3.47), 발행 계획의 «직전 3개월 계획 평균 대비» 차는 +0.82bp(−0.72 ~ +2.15)로 둘 다 0 과 구별되지 않는다. 공급 서프라이즈로 정의를 바꿔도 낙찰 위치를 설명하지 못한다.
보정 모형의 형태가 문제였는지도 보았다. H627 과 같은 걷기 전진에서 보정 회귀를 다섯 가지로 바꿨다. B3(5.18bp) 대비 MAE 는 확증 OLS 5.41, 능형 벌점을 준 축소 OLS 5.33, LightGBM(깊이 2, 150그루) 6.33, 직전 회차의 «낙찰 − 실링» 만 쓰는 보정 5.16, 직전 차와 달력을 함께 쓰는 보정 5.44 였다. 달력 변수를 넣은 판은 모두 B3 보다 나빴고, 비선형 모형이 가장 나빴다. 학습 표본이 35 ~ 90회차로 작은데 월 변수는 몇 해 단위로 움직여서, 모형이 과거 국면의 우연한 짝을 외우기 때문으로 읽힌다. 앞선 릿지는 B3 보다 0.17bp 낫다(p 0.024). 평균 잔차를 더하는 일조차 해가 된다는 뜻이다.
| 보정 | MAE (bp) | B3 대비 이득 | 90% 구간 |
|---|---|---|---|
| 앞선 릿지(보정 없음) | 5.02 | +0.17 | +0.03 ~ +0.30 |
| B3(평균 잔차) | 5.18 | 0 | 기준 |
| 직전 차 보정 | 5.16 | +0.02 | −0.01 ~ +0.05 |
| 달력 축소 OLS | 5.33 | −0.15 | −0.50 ~ +0.20 |
| 달력 OLS(확증) | 5.41 | −0.23 | −0.60 ~ +0.11 |
| 직전 차 + 달력 | 5.44 | −0.25 | −0.69 ~ +0.18 |
| 달력 LightGBM | 6.33 | −1.15 | −2.11 ~ −0.31 |
탐색: 응찰 위치 모의
선물 실험의 지정가 점검에 해당하는 것이 입찰에서는 응찰 위치다. 예측이 쓸모 있다면 같은 체결률을 더 높은 금리에서 얻게 해 줘야 한다. 확인 구간 416트랜치마다 응찰 가산금리를 «예측 + m» 으로 내되 실링을 넘지 않게 하고, 응찰이 실제 낙찰 이하이면 체결로 보았다. m 을 −15 ~ +6bp 로 0.5bp 씩 움직여 체결률과 «체결된 응찰 − 실링» 평균(복수가격 방식이라면 받는 금리)의 맞바꿈 곡선을 만들었다. 원장에는 낙찰 경계의 배정 비율과 가격 결정 방식이 없으므로 손익이 아니라 곡선끼리의 비교로만 읽는다. 결과를 본 뒤 정한 탐색이다.
같은 체결률에서 달력 보정 예측은 앞선 릿지보다 받는 금리가 낮다. 체결률 50% 에서 −1.16bp(회차 부트스트랩 90% 구간 −2.00 ~ −0.28), 70% 에서 −1.10bp(−1.68 ~ −0.33)이고, 달력이 낫지 않을 비율은 0.99 이상이다. 트랜치당 1.1bp 는 MBS 유통 왕복 판정 비용 2bp 의 절반을 넘는 손해다. 달력 변수를 응찰에 쓰면 같은 물량을 더 낮은 금리에 받게 된다. B3 는 릿지와 거의 같은 곡선이다. 모형 없이 «실링 − k» 로 내는 규칙은 체결률 50% 에서 릿지보다 +1.13bp 높게 나왔지만, 실링과 낙찰이 모두 정수 bp 여서 같은 값에서 체결되는 경우가 많아 유리하게 잡히므로(연속값 예측 응찰은 그렇지 않다) 해석하지 않는다.
| 방법 | 체결률 50% | 체결률 70% | 체결률 90% |
|---|---|---|---|
| 앞선 릿지 + m | −7.05 | −9.06 | −14.84 |
| B3 + m | −7.06 | −9.27 | −14.87 |
| 달력 보정 + m | −8.24 | −10.19 | −15.89 |
| 실링 − k (정수 동률 유리) | −5.72 | −9.58 | −15.00 |
깊이 점검
야간 연구의 깊이 기준 일곱 항목을 스스로 점검했다. 기준선과 귀무, 정의와 모형 비교, 강건성 격자, 실패 진단, 지정가에 해당하는 응찰 위치 모의는 했다. 선물 매매 규칙이 아니어서 틱 비용 민감도와 진입 지연, 기존 전략과의 독립성은 해당이 없다. 대신 응찰 모의의 손해 1.1bp 를 MBS 왕복 비용 2bp 와 견줬다.
| 항목 | 상태 | 어디에 |
|---|---|---|
| 기준선 둘 이상과 귀무 | 했다 | 실링 그대로, 만기별 평균, 앞선 릿지, B3, 순열 2,000회 |
| 모델이나 정의 비교 | 했다 | 정의 4가지씩, 서프라이즈, 보정 모형 다섯 |
| 강건성, 연도별, 충격 구간 제외 | 했다 | 격자 그림, 연도별 그림 |
| 비용 민감도 | 해당 없음 | 손익 축이 없는 응찰 입력 검정 |
| 진입 지연 | 해당 없음 | 입찰은 하루 한 창, 공시일 < 입찰일만 사용 |
| 지정가(응찰 위치) | 했다 | 응찰 위치 모의, 체결률 곡선 |
| 실패 진단, 탐색 변형 | 했다 | 자기상관, 분해, 실링 설정 모형 |
| 독립성 | 해당 없음 | 효과와 손익이 없다 |
해석
실링은 주금공이 그날의 수요를 짐작해 거는 값이다. 주금공은 월보를 쓰는 당사자이므로 자기 콜 행사 계획과 발행 계획을 누구보다 먼저 안다. 재투자 수요가 클 것으로 보이는 달에 실링을 그만큼 낮춰 건다면, 수요 정보는 실링에 먼저 들어가고 «낙찰 − 실링» 에는 남지 않는다. 이번 결과는 그 이야기와 맞는다. 큰 콜 달에 낙찰은 낮았지만 실링은 더 낮았다. 공개 달력은 실링을 이기는 정보가 아니다.
응찰 실무로 옮기면 이렇다. 월보의 공급 달력을 보고 «이번 달은 재투자 돈이 많으니 실링 한참 아래로 넣어도 된다» 고 판단하면 오히려 낙찰을 놓칠 수 있다. 큰 콜 달의 낙찰은 실링에 더 가까웠다. 낙찰 위치를 가장 잘 맞힌 것은 여전히 입찰 전날 시장 정보로 만든 릿지 예측(MAE 5.02bp)이고, 달력 변수는 그 위에 더할 것이 없었다. 발행 계획 효과는 2023 년 특례보금자리 공급 급증기에만 보였고 2024 년 이후에는 반대였으므로, 공급 국면이 바뀌는 순간에 한정된 현상일 수 있다.
한계
이 결론이 틀릴 수 있는 이유를 구체적으로 적는다.
표본이 짧다. 월 계획이 공개된 기간은 콜 59개월, 발행 51개월이고 발견 구간은 각각 28개월, 17개월이다. 월 변수의 독립 관측은 개월 수만큼이라 1bp 안팎의 작은 효과는 이 표본으로 가려낼 수 없다. 특히 ISS 는 2022-12(전년 대비 −14.7조원)와 2023-03(5.6조원) 같은 극단 월 몇 개가 계수를 끌고 간다.
표적이 위로 잘려 있다. 미매각이면 낙찰이 실링과 같아 y = 0 이다. OLS 는 잘림 때문에 계수를 0 쪽으로 줄일 수 있다. 미매각을 뺀 판도 같은 결론이었지만 결과로 표본을 고른 것이라 참고용이다. 월보 판독에도 오차가 있다. 표제와 콜옵션 절이 다른 세 달은 결측으로 두었고, «1조 ,5000억원» 같은 오타는 1조 5천억원으로 읽었다. 2021-06 이전 격주 양식의 회차별 발행 예정액은 이번에 읽지 않아 ISS 를 2022-07 앞으로 늘리지 못했다.
측정과 정의. ISS 의 1년 전 값은 원장 월 합이고 월보 계획과의 상관은 0.76 이라 측정오차가 섞인다. 국고 입찰 정의는 아이디어 원안의 «같은 주» 가 98% 1 이라 결과를 보기 전에 D 또는 D−1 로 바꿨다. H627 의 보정 회귀는 2022-07 부터 쌓은 회차로 학습해 확인 구간 앞쪽은 학습 표본이 35 ~ 40회차뿐이고, 보정이 나빠진 일부는 추정 잡음일 수 있다.
비용과 사후 진단. 이 실험은 매매 손익을 내지 않는다. MBS 유통 왕복 판정 2bp, 보고 4bp 가정은 보정 이득을 금액으로 읽을 때 쓰려 했으나 이득이 음이라 쓰지 않았고, 선물 틱 비용 규약도 해당이 없다. 탐색 절의 분해, 차분, 긴 블록, 구간 제외는 모두 확증 결과를 본 뒤 정했으므로 그 수치로 결론을 세우지 않는다.
다음에 해 볼 것
첫째, 실링 설정 모형의 확증판이다. 이번 탐색에서 콜 계획 1 SD 당 실링이 직전 낙찰보다 2.4bp 낮게 걸린다는 결과가 나왔으므로, 이것을 사전등록하고 앞으로 공개될 월보(2026-12 계획부터)로 표본 밖 확인을 한다. 실용 판으로는 «실링 − 릿지 예측» 이 큰 회차(주금공이 수요를 낮게 본 회차)에서 실링 아래 깊게 응찰하는 규칙을 MBS 왕복 비용 2bp 로 모의한다. 둘째, 격주 양식 월보의 회차별 발행 예정액을 읽어 ISS 를 2018 년부터 늘리고, 발견 구간을 40개월 더 확보해 공급 서프라이즈를 다시 확증 검정한다.
산출물
모든 수치는 아래 정본 런에서 왔고, 그림은 정본 런 파일만 읽어 다시 그렸다(그리기 전에 패널에서 확증 계수 셋을 다시 적합해 저장된 값과 맞는지 확인한다).
- 계획
protocol.md(결과 전 커밋) - 분석과 판정
analysis.md - 월보 수집, 판독
code/fetch_newsletters.py,code/parse_newsletters.py→results/newsletter_calendar.csv - 패널과 확증 런
code/panel.py,code/s1.py→results/20261105T192812_main/(metrics.json, panel.csv, grid.csv, perm_null.csv, h627_forecasts.csv, monthly.csv) - 탐색 진단
code/s2_explore.py→ 같은 폴더 explore.json, decompose.json - 깊이 보강
code/s3_deep.py→ 같은 폴더 deep.json, deep_h627.csv - 응찰 모의
code/s4_bid.py→ 같은 폴더 bid.json, bid_curve.csv - 그림
code/render_figures.py→paper/assets/ - 재현
uv run python experiments/0208_khfc_mbs_supply_calendar/code/s1.py다음 s2_explore.py 에 런 폴더를 주고 render_figures.py
Appendix
A. 데이터셋 실물
입력 1: 월보 판독 결과(results/newsletter_calendar.csv)의 실제 행. 2024-12 와 2025-05 계획은 표제와 콜옵션 절의 콜 계획이 달라 결측(빈칸)으로 두었다.
| 등록일 | 계획 월 | 발행 계획 원문 | 발행 (억원) | 콜 표제 | 콜 절 | 콜 (억원) | 계획 회차 |
|---|---|---|---|---|---|---|---|
| 2024-08-30 | 2024-09 | 1조 2,000억원 | 12,000 | 4,956억원 | 4,956억원 | 4,956 | 2024-18;2024-19 |
| 2024-11-29 | 2024-12 | 5,500억원 | 5,500 | 2,771억원 | 2,734억원 | 2024-24 | |
| 2025-04-28 | 2025-05 | 7,000억원 | 7,000 | 1,463억원 | 813억원 | 2025-6 |
입력 2: 회귀 패널(panel.csv)의 한 회차 2024-18(입찰 2024-09-06). 공시일 2024-08-30 이 입찰일보다 앞서므로 계획 값을 쓴다. 1년 전 같은 계획 월(2023-09)의 원장 발행 합은 28,553억원이다.
| 만기 | 발행액 | 실링 | 낙찰 | y | 콜 계획 | 발행 계획 | ISS 원값 (조원) | KTB |
|---|---|---|---|---|---|---|---|---|
| 1년 | 996 | 25 | 22 | −3 | 4,956 | 12,000 | −1.66 | 0 |
| 3년 | 600 | 26 | 21 | −5 | 4,956 | 12,000 | −1.66 | 0 |
| 7년 | 800 | 22 | 16 | −6 | 4,956 | 12,000 | −1.66 | 0 |
| 20년 | 500 | 15 | 14 | −1 | 4,956 | 12,000 | −1.66 | 0 |
| 30년 | 200 | 24 | 21 | −3 | 4,956 | 12,000 | −1.66 | 0 |
B. 모델 입출력 실물
학습한 예측 모형은 없고, H627 의 달력 보정 회귀가 한 회차에 실제로 받은 입력과 낸 출력을 싣는다(h627_forecasts.csv, 회차 2024-18). 콜 계획이 표본 최대였던 달이다.
- Request meta
- 2024-09-06 입찰 회차 2024-18, 학습 행은 2022-07 ~ 2024-08 의 앞선 회차, 보정 회귀 «실제 낙찰 − 릿지 예측» 을 log 콜 계획, ISS 원값, KTB 와 절편에 OLS
- Input
- 콜 계획 4,956억원(log 8.51), ISS 원값 −1.66조원, KTB 0, 트랜치별 앞선 릿지 예측(1년 20.85, 7년 17.56, 30년 21.10bp)
- Model response
- 보정 예측 1년 24.65, 7년 21.36, 30년 24.90bp. 큰 콜 계획 때문에 릿지 예측보다 약 3.8bp 위(실링 쪽)로 올렸다. B3 는 1년 19.97, 7년 16.67, 30년 20.22bp
- Ground truth check
- 실제 낙찰 1년 22, 7년 16, 30년 21bp. 이 회차 여덟 트랜치 평균 절대 오차는 릿지 1.50, B3 1.92, 달력 보정 3.00bp 로 보정이 가장 나빴다. 콜 계획이 커서 실링 쪽으로 끌어올렸지만 실제 낙찰은 릿지 예측 근처였다
C. 실험 설정
- 표본원장 core, dated, 일반과 ST, 낙찰 있음, 비경쟁과 스왑 제외. 2016-01-06 ~ 2026-10-23
- 표적y = 낙찰 가산금리 − 실링(bp), 미매각은 0
- 설명변수CALL = 표준화 log(1 + 콜 계획), ISS = 표준화 (발행 계획 − 1년 전 원장 합) / 1조원, KTB = 국고 경쟁입찰 D 또는 D−1
- 통제만기 고정효과 9개, ST 더미
- 공시 규칙max(등록일, 제목 발행일) < 입찰일, 표제와 절이 다른 콜 계획은 결측
- 검정계획 월 블록 부트스트랩 5,000회 한쪽 p, seed 208, H624 ~ H626 Holm, 지지는 Holm p < 0.05 와 확인 구간 같은 부호 p < 0.10
- H627확인 구간 회차마다 재학습하는 잔차 회귀, B3 대비 이득 0.2bp 이상과 회차 군집 짝 부트스트랩 p < 0.05
- 분할발견 ~ 2023-12, 확인 2024-01 ~ 2026-10
- 귀무계획 월 사이(CALL, ISS) 또는 회차 사이(KTB) 순열 2,000회
- 충격 구간2020-03 ~ 06, 2022-09-15 ~ 12-31(강건성에서 제외)