세 줄 요약
- 구간 안에서 캐리와 롤다운이 큰 종목을 사고 작은 종목을 판 쌍은 비용 전 월 +0.53bp 를 벌었고, 무작위 쌍(평균 0.00, 90% 범위 ±0.10)보다 확실히 컸다.
- 그러나 판정 비용인 쌍 왕복 1bp 를 빼면 −0.47bp(블록 부트스트랩 한쪽 p 1.00)이고, 15개 연도가 모두 음이다. 지표물을 빼도 −0.61bp 다. 신호는 진짜지만 크기가 호가 비용의 절반이다.
- 판정은 폐기(H390, H391 미지지). 2~3년 구간만 비용 1bp 를 넘고(+0.18bp), 회전율을 반영하면 비용이 줄지만 둘 다 결과를 본 뒤의 탐색이다.
가설과 결론
채권을 들고 있으면 수익률이 그대로여도 이자와 시간 경과로 돈이 생긴다. 이것이 캐리다. 커브가 우상향이면 시간이 지나 잔존이 줄 때 수익률이 커브를 따라 내려가 가격이 오른다. 이것이 롤다운이다. 둘을 합치면 «커브가 움직이지 않을 때 다음 한 달에 기대하는 손익» 이 된다. 같은 잔존 구간 안의 두 종목을 DV01 중립으로 맞춰 사고팔면 금리 방향 위험이 거의 없어지고, 두 종목의 기대 손익 차이만 남는다.
H390: 매월 첫 영업일에 다섯 구간 각각에서 캐리 + 롤다운 상위 1종목 매수, 하위 1종목 매도(유동성 하위 30% 제외)의 포트폴리오 월 손익이 비용 1bp 뒤 0 보다 크다. H391: 지표물을 뺀 표본에서도 그렇다. 사전 예측은 둘 다 미지지(비용 전 +0.5 ~ +1.5bp, 비용 뒤 0 근처)였다.
결과는 예측대로다. 비용 전 +0.53bp, 비용 1bp 뒤 −0.47bp(Holm p 1.00), 지표물 제외 −0.61bp(Holm p 1.00). 판정은 폐기다.
용어와 기호
| 용어 | 뜻 |
|---|---|
| 민평 | 민간 채권평가사 3사가 매일 장 마감 뒤 매기는 종목별 평가 수익률의 평균. 체결가가 아니다. |
| 잔존 | 만기까지 남은 기간(년, 365.25일 기준). |
| 구간 | 잔존 [2,3), [4,6), [8,11), [18,21), [28,31)년의 다섯. |
| d0, d1 | d1 은 그 달 첫 영업일, d0 은 그 직전 영업일. 신호는 d0, 진입은 d1, 청산은 다음 달 d1. |
| MD | 수정 듀레이션. 수익률 1%p 변화에 대한 가격 변화율. |
| DV01 | 수익률 1bp 변화에 대한 가격 변화(액면 × 가격 × MD × 0.0001). DV01 중립은 두 다리의 DV01 을 같게 맞춘 것. |
| CD91 | CD 91일물 AAA 3사 평균 금리. 매수 다리의 조달 금리이자 매도 다리가 받는 금리로 둔다. |
| 캐리 C | d0 수익률을 그대로 두고 한 달 들 때 초과수익(가격 변화 + 받은 이표 − CD91 × 일수/365)을 MD 로 나눠 bp 로 바꾼 값. |
| 롤다운 R | d0 국고채 민평 커브 c(T) 에서 [c(T) − c(T − 1개월)] × 100 bp. |
| 신호 S | S = C + R. 같은 단위(bp, 수익률 환산)라 그대로 더한다. |
| 쌍 손익 | 매수 다리 DV01 1 당 bp. 각 다리의 실현 초과수익을 MD 로 나눈 값의 차이(매수 − 매도). |
| 지표물 | d0 에 발행 만기(2, 3, 5, 10, 20, 30, 50년)별로 가장 최근에 발행된 종목. |
| 비용 1bp | 쌍 하나를 열고 닫는 왕복 비용. 두 다리 합이며 매달 다리가 그대로여도 뺀다. |
| 블록 부트스트랩 | 월 손익 계열에서 연속 3개월 덩어리를 복원 추출해 평균의 분포를 만드는 방법. 한쪽 p 는 재표집 평균이 0 이하인 비율. |
자료
데이터셋
| 자료 | 기간 | 해상도 | 쓰임 |
|---|---|---|---|
| 국고채 종목별 민평 3사 수익률 | 2009-01 ~ 2026-10-30 | 일 | 신호와 손익 |
| 종목별 장외 거래량 | 같은 기간 | 일 | 유동성 거르기, 거래 공백 점검 |
| 국채 발행정보(쿠폰, 발행일, 만기일) | 2015-03 이후 만기 고정금리 국고채 156종목 | 종목 | 가격 계산, 지표물 판정 |
| 국고채 민평 커브(1 ~ 50년 13점) | 2010-01 ~ 2026-09-11 | 일 | 롤다운 |
| CD 91일 AAA 3사 평균 | 2010-01 ~ 2026-09-14 | 일 | 조달 금리 |
| 항목 | 값 |
|---|---|
| 보유 월 | 2012-02 ~ 2026-09, 176개월 |
| 종목월(구간 안 후보, 유동성 거르기 전) | 3,802 (종목 146개) |
| 유동성 거르기를 통과한 비율 | 83% |
| 구간별 종목월 | 2~3년 957, 4~6년 1,055, 8~11년 982, 18~21년 416, 28~31년 392 |
| 구간별 평균 후보 수(거르기 뒤) | 5.0, 5.3, 4.1, 2.1, 3.0 |
| 쌍(H390 / H391) | 723 / 567 |
| 점검 | 중복 0, 살아 있는 종목의 민평 결측 0.09%, 같은 값이 이틀 이어지는 날 5.9%, 달력 최대 공백 11일(명절) |
2012년에는 발행정보 표에 2~3년 구간 종목이 없어 그 구간이 쉰다. 18~21년과 28~31년 구간은 거르기 뒤 후보가 둘 미만인 달이 많아 쌍이 102개, 98개뿐이다.
언제 무엇을 아는가
민평은 장 마감 뒤에 나온다. 그래서 신호는 전 영업일 d0 의 민평과 커브로 만들고, 진입은 하루 뒤 d1 민평으로 한다. 유동성 거르기에 쓰는 60영업일 장외 거래량도 d0 까지만 쓴다.
방법
- 가격은 국고채 관행(반년 이표, 이표 기간 안은 일할 단리 할인)으로 민평에서 dirty price 를 계산한다. 이렇게 계산한 MD 는 단말 듀레이션 표와 소수 둘째 자리까지 맞았다.
- 종목 i 의 실현 초과수익은 (청산 dirty + 받은 이표 − 진입 dirty) / 진입 dirty − CD91 × 일수/365 다. 이것을 진입일 MD 로 나누면 DV01 1 당 bp 가 된다.
- 포트폴리오 월 손익은 그 달 쌍이 있는 구간의 단순 평균이다. 비용은 쌍마다 매달 뺀다.
- 검정은 포트폴리오 월 손익 계열의 3개월 이동 블록 부트스트랩(10,000회, seed 169) 한쪽 p 이고, H390 과 H391 에 Holm 을 건다.
- 채택 조건: H390 Holm p < 0.05, 확인 구간(2020 ~)과 2024 ~ 평균 > 0, H391 평균 > 0, 비용 2bp 뒤 평균 > 0.
- 충격 구간: 공개된 15개 시장 충격(테이퍼 발작, 코로나, 비상계엄, 상호관세 등)의 시작일부터 10거래일과 보유 기간이 겹친 달을 빼고 따로 본다.
모델
학습하는 모델이 없다. 신호는 캐리와 롤다운을 구조적으로 계산한 기호 팩터 하나(S = C + R)이고, 규칙은 «구간 안 S 최대 매수, S 최소 매도» 의 순위 규칙이다. 그래서 구조도 대신 한 달의 실제 입력과 선택을 그린다.
| 설정 | 값 |
|---|---|
| 신호 | S = 캐리 + 롤다운, 보유 1개월 |
| 커브 보간 | 민평 커브 13점을 잔존에 대해 PCHIP(단조 3차) 보간 |
| 쌍 | 구간 안 후보 2개 이상일 때 S 최대 매수, S 최소 매도, 동률은 종목코드 순 |
| 헤지 비율 | 매도 액면 = 매수 액면 × DV01(매수) / DV01(매도) |
| 유동성 거르기 | d0 까지 60영업일 장외 거래량 합이 잔존 1년 이상 전 종목의 하위 30% 이면 제외 |
| 재조정 | 매월 첫 영업일, 연 12회, 구간 다섯이라 연 최대 60쌍 |
| 비교 규칙(탐색) | 캐리만, 롤다운만, 민평 수익률 단순 순위, 무작위 쌍 2,000회 |
결과
확증 결과
| 가설 | 표본 | 쌍 | 비용 전 | 비용 0.5bp | 비용 1bp | 비용 2bp | 한쪽 p | Holm | 발견 2012~2019 | 확인 2020~ | 2024~ |
|---|---|---|---|---|---|---|---|---|---|---|---|
| H390 | 유동성 하위 30% 제외 | 723 | +0.53 | +0.03 | −0.47 | −1.47 | 1.000 | 1.00 | −0.49 | −0.45 | −0.59 |
| H391 | 지표물도 제외 | 567 | +0.39 | −0.11 | −0.61 | −1.61 | 1.000 | 1.00 | −0.64 | −0.58 | −0.74 |
- 비용 1bp 뒤 90% 구간은 H390 [−0.60, −0.33], H391 [−0.74, −0.46] 이다. 0 을 넘는 달은 27% 다.
- 15개 연도(2012 ~ 2026) 모두 비용 1bp 뒤 합이 음이다.
- 충격 구간과 겹친 17개월을 빼도 −0.43bp 다. 결과는 특정 사건이 만든 것이 아니다.
- 손익분기 비용은 쌍 왕복 약 0.53bp 다. 비용 0.5bp 에서 +0.03bp 로 겨우 0 이다.
구간별로 보면
| 구간 | 쌍 | 비용 전 | 비용 1bp | 비용 전 t | 2012~2019 | 2020~2023 | 2024~2026 |
|---|---|---|---|---|---|---|---|
| 2~3년 | 171 | +1.18 | +0.18 | 6.1 | +0.88 | +2.13 | +0.63 |
| 4~6년 | 176 | +0.58 | −0.42 | 3.4 | +0.63 | +0.52 | +0.55 |
| 8~11년 | 176 | +0.29 | −0.71 | 1.8 | +0.26 | +0.31 | +0.33 |
| 18~21년 | 102 | +0.11 | −0.89 | 1.3 | +0.00 | +0.03 | +0.35 |
| 28~31년 | 98 | +0.07 | −0.93 | 1.2 | −0.03 | +0.11 | +0.08 |
기준선과 견주면
탐색 결과
아래는 판정에 쓰지 않는다. H392 ~ H395 는 사전등록한 탐색이고, 회전율 비용과 5분위는 결과를 본 뒤 만들었다.
| 번호 | 질문 | 결과 |
|---|---|---|
| H392 | 합친 신호가 단독 신호보다 낫나(같은 달 짝 차이) | S − 캐리만 −0.00bp(p 0.55), S − 롤다운만 +0.27bp(p < 0.001). 손익을 가른 것은 거의 캐리다. |
| H393 | 민평 수익률 단순 순위보다 낫나 | +0.31bp 더 큼(짝 차이 p 0.017). 무작위 쌍 분포의 최상단. |
| H394 | 구간별, 충격 구간 제외 | 위 표. 충격 구간 제외 −0.43bp. |
| H395 | 체결 가능성 | 진입 앞 5영업일 장외 거래가 없는 다리를 낀 쌍은 0.3%(2개). 빼도 −0.47bp. |
| 회전율 | 다리가 바뀔 때만 그 다리에 0.5bp | 같은 쌍이 다음 달에도 뽑히는 비율 44%. 평균 비용 0.41bp, 월 손익 +0.13bp(p 0.07). 2~3년 구간 +0.56bp. |
해석
같은 잔존 구간에서 캐리가 큰 종목은 대부분 민평이 높은, 즉 싼 종목이다. 이 종목은 다음 달 상대적으로 덜 내리거나 더 올랐고, 그 차이는 14년 동안 거의 매년 같은 방향이었다. 그러니 신호 자체는 있다. 문제는 크기다. 쌍 하나가 한 달에 버는 것이 0.5bp 남짓인데, 국고채 경과물의 호가 폭이 다리마다 0.5 ~ 1bp 라면 쌍을 열고 닫는 데 1 ~ 2bp 가 든다. 이 규칙을 그대로 매달 돌리면 신호가 버는 것보다 호가에 내는 것이 많다.
남은 길은 비용 쪽이다. 신호 차이가 큰 쌍만 들어가거나, 같은 쌍을 오래 들어 회전율을 낮추거나, 종목 사이 차이가 큰 짧은 구간에 모으는 규칙은 이번 결과를 본 뒤 나온 생각이다. 새 실험에서 사전등록하고, 실제 체결 호가로 비용을 재야 한다.
한계
- 민평은 체결가가 아니다. 평가값은 매끄럽고, 종목 사이 싸고 비쌈이 천천히 되돌아가는 모양이 실제 체결보다 크게 보일 수 있다. 비용 전 +0.53bp 의 일부는 평가 방식의 산물일 수 있다. 진입을 하루 늦췄지만 이 의심을 다 지우지는 못한다. 이 한계는 비용 전 손익을 부풀리는 쪽이라 폐기 판정을 뒤집지 않는다.
- 실제 현물 호가 비용을 재지 않았다. 판정 비용 1bp 는 가정이다. 20년, 30년 경과물은 호가 폭이 더 넓을 수 있다.
- 매도 다리 조달. 매도 다리가 CD91 로 레포 조달을 받는다고 두었다. 특정 종목이 레포에서 귀하면 매도 비용이 더 들고, 대차 수수료도 넣지 않았다.
- 유니버스. 발행정보 표가 2015-03 이후 만기 종목만 담아 2012년의 2~3년 구간이 비고, 장기 두 구간은 후보가 적다.
- 자료 끝. 민평 커브가 2026-09-11, CD91 이 2026-09-14 에 끝나 2026-10 진입은 만들지 않았다. 마지막 청산일(2026-10-01)의 CD91 은 직전 값을 썼다.
- 결제일. 가격 계산의 결제일을 평가일 당일로 두었다(실제는 T+1).
- 첫 런 뒤 독립 감사가 후보 조건에 청산일 민평 유무(미래 정보)가 들어간 것을 찾아, 후보를 신호일에 아는 종목만으로 정하도록 고쳐 다시 돌렸다. 그 조건이 걸러 낸 종목이 0개라 수치는 같다.
산출물
- 분석과 판정
analysis.md - 사전등록
protocol.md - 정본 런
results/20261102T224049_main/(metrics.json, pairs.csv, pairs_nobm.csv, legs.csv, monthly.csv) - 탐색 보조
results/20261102T224149_detail/(turnover.json, spread_quintile.csv, period.csv) - 코드
code/load.py(적재),code/s1.py(확증 런),code/s_detail.py(탐색),code/render_figures.py(그림, 재현 검사 포함)
Appendix
A. 데이터셋 실물
정본 런 legs.csv 에서 2024-06, 4~6년 구간의 후보 일곱 행을 그대로 옮겼다. 한 행이 한 종목월이다.
| 종목 | 잔존 | 민평 d0(%) | 캐리 | 롤다운 | S | 실현(bp) | MD | 유동성 통과 | 지표물 |
|---|---|---|---|---|---|---|---|---|---|
| 국고02625-2806(18-4) | 4.027 | 3.503 | −0.376 | 0.156 | −0.221 | 20.496 | 3.724 | 예 | 아니오 |
| 국고03500-2809(23-6) | 4.279 | 3.505 | −0.309 | 0.083 | −0.227 | 21.396 | 3.906 | 예 | 아니오 |
| 국고02375-2812(18-10) | 4.528 | 3.543 | −0.254 | 0.062 | −0.193 | 22.463 | 4.182 | 예 | 아니오 |
| 국고03250-2903(24-1) | 4.775 | 3.502 | −0.283 | 0.071 | −0.212 | 22.668 | 4.349 | 예 | 예 |
| 국고01875-2906(19-4) | 5.027 | 3.533 | −0.235 | 0.113 | −0.122 | 22.744 | 4.676 | 예 | 아니오 |
| 국고05500-2912(09-5) | 5.528 | 3.536 | −0.289 | 0.258 | −0.031 | 22.500 | 4.677 | 아니오 | 아니오 |
| 국고01375-2912(19-8) | 5.528 | 3.538 | −0.195 | 0.258 | 0.062 | 22.036 | 5.191 | 예 | 아니오 |
필드: 잔존(년, d0 기준), 캐리, 롤다운, S 는 bp(수익률 환산), 실현은 d1 → 다음 달 d1 의 초과수익을 MD 로 나눈 bp(이 달은 금리가 내려 모든 종목이 +20bp 남짓), MD 는 d1 수정 듀레이션. 강조한 두 행이 이 달의 매도(위)와 매수(아래) 다리다.
B. 모델 입출력 실물
규칙의 입력은 위 표의 S 열이고 출력은 쌍이다. 정본 런 pairs.csv 의 2024-06 다섯 행을 옮겼다.
| 구간 | 후보 | 매수 | S 매수 | 매도 | S 매도 | 쌍 손익(비용 전, bp) |
|---|---|---|---|---|---|---|
| 2~3년 | 6 | 국고02375-2703(22-1) | −0.655 | 국고03875-2612(23-10) | −0.912 | +2.110 |
| 4~6년 | 6 | 국고01375-2912(19-8) | 0.062 | 국고03500-2809(23-6) | −0.227 | +0.640 |
| 8~11년 | 6 | 국고03375-3206(22-5) | −0.047 | 국고03500-3406(24-5) | −0.099 | +0.385 |
| 18~21년 | 2 | 국고03875-4309(23-9) | −0.171 | 국고03250-4209(22-11) | −0.179 | −0.197 |
| 28~31년 | 4 | 국고03250-5403(24-2) | −0.115 | 국고03125-5209(22-9) | −0.136 | +0.635 |
이 달 포트폴리오 월 손익은 다섯 쌍의 평균 +0.71bp(비용 전), 비용 1bp 뒤 −0.29bp 다. 18~21년 구간은 두 종목의 S 차이가 0.008bp 로 거의 없는데도 규칙상 쌍을 짠다.
C. 실험 설정
| 항목 | 값 |
|---|---|
| 표본 | 보유 시작 2012-02 ~ 2026-09, 176개월 |
| 분할 | 발견 2012-02 ~ 2019-12, 확인 2020-01 ~ 2026-09, 공통 확인 2024-01 ~ |
| 비용 | 판정 쌍 왕복 1bp, 보고 0.5bp 와 2bp, 매달 부과 |
| 검정 | 3개월 이동 블록 부트스트랩 10,000회, seed 169, 한쪽 p, H390 과 H391 Holm |
| 무작위 쌍 | 2,000회, seed 170 |
| 충격 구간 | 15개 사건, 시작일부터 10거래일 |
| 외부 반출 | 없음(전부 이 PC 의 CPU 로 계산) |