세 줄 요약
- 3선 장중 손익의 90% 분위 예측 − 10% 분위 예측(폭 W)으로 카드 계약을 나눴다(R1 계약 × 발견 구간 중앙값 19.2 / W, 0.5 ~ 2배). 같은 총 계약으로 맞춘 일별 손익 차이(새 − 카드 + R1)는 발견 −0.233틱(p 0.965), 확인 −0.117틱(p 0.767) 이다.
- 폭은 위험 크기를 어느 정도 맞혔다(카드 날 |장중| 과 상관 발견 0.36, 확인 0.16). 그러나 카드는 움직임이 큰 날에 더 번다(폭 5분위 계약당 +4.13틱 대 1분위 +0.52틱). 폭이 넓은 날 계약을 줄이면 가장 잘 버는 날을 덜 싣게 된다.
- 위험을 맞히는 것과 손익을 맞히는 것은 다르다. 폭으로 카드를 줄이면 손해이고, 판정은 폐기다.
가설과 결론
데스크 카드는 «미국 10년 금리가 밤사이 3bp 이상 움직이면 다음 세션 3선을 반대로 잡는다» 는 규칙이고, 원화 충격이 미국 금리와 엇갈리면 1계약, 같은 방향이면 0.5계약을 싣는다(R1). 이 실험은 방향이 아니라 크기를 물었다. 장중이 크게 흔들릴 것으로 보이는 날은 손실도 클 수 있으니 계약을 줄이고, 조용할 날은 늘리면 위험 대비 성적이 좋아질 수 있다. 흔들림의 크기는 분위 회귀로 예측한다. 분위 회귀는 평균이 아니라 «10% 확률로 이보다 나쁘다», «10% 확률로 이보다 좋다» 는 꼬리 값을 직접 예측하는 회귀다.
- 가설
- H304. 확인 구간(2023-01 ~ 2026-10) 카드 날 일별 손익 차이(폭 사이징 − 카드 + R1, 같은 총 계약, 비용 1틱)의 평균 > 0, 월 블록 부트스트랩 한쪽 p < 0.05.
- 결론
- 확인 구간 평균 −0.117틱/일, 90% 구간 −0.418 ~ +0.119, 한쪽 p 0.767. 발견 구간은 −0.233틱/일로 더 나빴다. 2차와 3차 묶음 주가설 63개 Holm 보정 p 1.00. 판정은 폐기다.
| 가설 | 내용 | 결과(확인) | 한쪽 p | 판정 |
|---|---|---|---|---|
| H304 | 분위 회귀 폭으로 카드 크기 조정 − R1, 일별 손익 차이 > 0 | −0.117틱/일(419일) | 0.767 | 폐기 |
두 구간 모두 음이다. 폭이 넓은 날을 줄이는 방향 자체가 카드와 맞지 않는다.
용어와 기호
- 3선, 틱
- 한국거래소 3년 국채선물. 1틱은 가격 0.01, 계약당 1만원
- bp
- 금리 0.01%p
- s, e
- s 는 미국 금리 변화가 생긴 한국 거래일(뉴욕 날짜 s 종가가 한국 e 새벽에 나온다), e 는 카드가 진입하는 다음 세션
- g_us
- 미국 10년 금리 하루 변화(bp, FRED DGS10, 뉴욕 날짜 s)
- 카드
- |g_us| ≥ 3bp, e 가 s 의 바로 다음 달력일, 만기 교체 날 아님. 방향 sign(g_us)(미국 금리 상승이면 3선 매수), e 시가 진입 종가 청산
- ε, R1
- ε 는 원화 고유 충격(밤사이 원화 변화 중 달러인덱스와 미국 금리로 설명 안 되는 몫). R1 은 sign(ε) 가 sign(g_us) 와 엇갈리면 1계약, 같으면 0.5계약
- 분위 회귀
- 목표 변수의 τ 분위(예: 10%)를 설명 변수의 선형식으로 예측하는 회귀. 오차를 제곱이 아니라 비대칭 절댓값으로 잰다
- q10, q90, 폭 W
- 3선 장중(e 시가 → 종가, 틱)의 10%, 90% 분위 예측값과 그 차이 W = q90 − q10(틱)
- MOVE 비율
- 미국 국채 옵션 내재 변동성 지수 MOVE 를 직전 250일 중앙값으로 나눈 값. 1 보다 크면 평소보다 불안
- 배수, w_new
- 배수 = clip(19.20 / W, 0.5, 2), w_new = R1 계약 × 배수. W 가 없으면 배수 1
- 같은 총 계약, k
- 구간마다 Σ w_new 가 Σ R1 계약과 같도록 새 손익에 k 를 곱한다. 크기를 키워 이긴 것이 아니라 배분으로 이긴 것만 남긴다
- 일별 손익 차이 d
- 카드 날마다 (w_new × (손익 − 1틱)) × k − R1 × (손익 − 1틱)
- 확장 창
- 해마다 1월에 그 전 해 말까지의 자료 전부로 다시 학습한다. 첫 예측 연도 2016
- 발견, 확인 구간
- 발견 2013-01 ~ 2022-12(중앙값 19.20 을 정함), 확인 2023-01 ~ 2026-10(판정)
- 월 블록 부트스트랩, 한쪽 p
- d 를 달 단위로 묶어 복원 추출 5,000번으로 평균의 분포를 만들고, 효과가 0 일 때 지금 평균 이상이 나올 확률을 센다
- Holm 보정
- 여러 가설을 함께 시험할 때 p 를 가설 수에 맞춰 키우는 방법. 2차와 3차 묶음 주가설 63개
자료
데이터셋
| 자료 | 원천 | 기간 | 해상도 | 쓰임 |
|---|---|---|---|---|
| 3선 시가, 종가(기준가 사슬), 만기 교체 표시 | 인포맥스 단말 일봉 | 2012 ~ 2026-10 | 일 | 장중 손익(목표), 카드 손익 |
| 미국 10년 금리 g_us | FRED DGS10 | 2012 ~ 2026-10 | 일, 뉴욕 날짜 | 카드 날, |g_us| 특징 |
| 원화 고유 충격 ε | 인포맥스 단말 NDF, 달러인덱스 | 2012-10 ~ 2026-10 | 일 | R1, |ε| 특징 |
| 원달러 20일 실현 변동성 rv20 | 인포맥스 단말 원화 종가 | 2012 ~ 2026-10 | 일 | 특징 |
| MOVE 지수 | 인포맥스 단말 | 2010 ~ 2026-10 | 일, 뉴욕 날짜 | MOVE 비율 특징 |
| 나스닥100 선물 | 인포맥스 단말 | 2015-01 ~ 2026-10(마지막 몇 주 결측) | 일, 뉴욕 날짜 | |나스닥| 특징 |
표본과 분할
| 항목 | 발견 2013 ~ 2022 | 확인 2023 ~ 2026-10 |
|---|---|---|
| 카드 날 | 907 | 419 |
| W 가 없어 배수 1 인 날 | 29.5%(2013 ~ 2015 전부) | 2.9%(2026-10 등 나스닥 결측) |
| 배수가 하한 0.5 에 걸린 날 | 0.3% | 0.2% |
| 배수가 상한 2 에 걸린 날 | 0.9% | 0.2% |
| 총 계약 맞춤 계수 k | 0.987 | 1.030 |
| R1 하루 손익(틱, 비용 1틱 뒤) | 1.49 | 0.79 |
분위 회귀 학습에는 카드 날만이 아니라 만기 교체 날을 뺀 모든 거래일을 쓴다(위험 크기는 카드 날이 아니어도 배울 수 있다). 나스닥 열이 2015 년부터라 2016 년 첫 학습은 2015 년 235일로 했다. 시점은 이렇다. 다섯 특징 모두 행 s 값이고 미국 열은 뉴욕 날짜 s 종가라 한국 e 개장 전에 알려진다. 학습은 그 전 해 말까지 자료만 쓴다.
방법
- 분위 회귀 학습. 2016 ~ 2026 년 각 해에 대해, 그 전 해 말까지 만기 교체 날을 뺀 모든 거래일로 3선 장중의 10% 와 90% 분위 회귀를 각각 적합한다(statsmodels QuantReg, 상수 포함).
- 폭 예측. 그 해 거래일마다 W = q90 − q10 을 계산한다.
- 기준 정하기. 발견 구간 카드 날 W 의 중앙값 19.20틱을 잠근다.
- 계약 배분. 카드 날마다 w_new = R1 × clip(19.20 / W, 0.5, 2). W 가 없으면 R1 그대로.
- 비교. 구간마다 총 계약을 R1 과 같게 맞춘 뒤 일별 손익 차이 d 를 구하고, 확인 구간 d 의 월 블록 부트스트랩 5,000회(seed 66) 한쪽 p 를 낸다.
- 판정에 쓰지 않는 탐색. E1 카드 날 W 와 실제 |장중| 의 상관.
모델
설정
모델은 선형 분위 회귀 두 개(τ = 0.1, 0.9)다. 각 모델이 배우는 것은 상수와 특징 다섯의 계수이고, 두 예측의 차이가 «그날 장중이 얼마나 넓게 퍼질 것인가» 의 추정치다. 방향은 예측하지 않는다.
| 항목 | 값 |
|---|---|
| 모델 | statsmodels QuantReg, 기본 적합 설정(반복 재가중, 최대 1,000회) |
| 분위 | τ = 0.1, 0.9 |
| 특징 | 상수, |g_us|(bp), rv20, MOVE 비율, |ε|(%), |g_nq|(%) |
| 목표 | 3선 e 시가 → 종가(틱), 만기 교체 날 제외 모든 거래일 |
| 학습 | 확장 창, 해마다 1월 다시 학습, 첫 예측 2016, 결측 행 제외 |
| 사이징 | 배수 = clip(19.20 / W, 0.5, 2), R1 계약에 곱함, 구간별 총 계약 맞춤 |
| 비용 | 왕복 1틱 |
학습된 분위 회귀
| 특징 | q10 계수 | q90 계수 | 폭 W 에 주는 몫(q90 − q10) |
|---|---|---|---|
| 상수 | +7.15 | −6.33 | −13.48 |
| |g_us|, 1bp | −0.28 | +0.32 | +0.60 |
| rv20, 1 | −0.80 | +4.79 | +5.58 |
| MOVE 비율, 1 | −15.55 | +12.09 | +27.65 |
| |ε|, 1% | +1.34 | −0.93 | −2.27 |
| |g_nq|, 1% | −0.08 | +0.31 | +0.40 |
MOVE 비율이 평소(1.0)에서 1.2 로 오르면 폭이 약 5.5틱 넓어진다. 미국 금리 변화 10bp 는 6틱을 더한다. 원화 충격의 몫은 음이라 직관과 반대인데, 계수가 작고 해마다 바뀐다.
결과
확증 결과
| 항목 | 발견 2013 ~ 2022 | 확인 2023 ~ 2026-10 |
|---|---|---|
| 카드 날 | 907 | 419 |
| R1 하루 손익(틱) | 1.491 | 0.789 |
| 폭 사이징 하루 손익(틱, 총 계약 맞춤 뒤) | 1.259 | 0.672 |
| 차이(틱/일) | −0.233, p 0.965 | −0.117, p 0.767 |
| 90% 구간 | −0.435 ~ −0.045 | −0.418 ~ +0.119 |
| 차이가 양인 해 | 3/10 | 3/4 |
| Holm 보정 p(63개) | 1.00 |
발견 구간 90% 구간이 전부 0 아래다. 사이징이 체계적으로 손해를 냈다는 뜻이다. 확인 구간 4년 중 3년은 양이지만 크기가 +3 ~ +7틱이고, 2023 년 한 해의 −66틱이 그것을 덮는다.
누적 손익과 연도별 차이
아래는 확증 런을 그대로 다시 만들어(같은 중앙값과 차이 평균을 assert 로 확인) 낸 기술 통계다.
| 연도 | 카드 날 | R1 | 폭 사이징 | 차이 | 평균 W |
|---|---|---|---|---|---|
| 2013 ~ 2015 | 268 | +296.5 | +292.6 | −3.9 | (W 없음) |
| 2016 | 93 | +51.5 | +67.8 | +16.3 | 15.3 |
| 2017 | 78 | +52.0 | +52.9 | +0.9 | 18.4 |
| 2018 | 64 | +10.5 | +1.7 | −8.8 | 19.1 |
| 2019 | 86 | +126.0 | +107.3 | −18.7 | 21.1 |
| 2020 | 86 | −24.5 | −0.5 | +24.0 | 15.8 |
| 2021 | 97 | +56.5 | +41.4 | −15.1 | 21.2 |
| 2022 | 135 | +784.0 | +578.3 | −205.7 | 27.5 |
| 2023 | 126 | +258.0 | +192.0 | −66.0 | 21.9 |
| 2024 | 106 | −38.5 | −31.6 | +6.9 | 19.8 |
| 2025 | 105 | +99.0 | +106.1 | +7.1 | 19.7 |
| 2026(10월까지) | 82 | +12.0 | +15.1 | +3.1 | 22.3 |
2022 년은 카드가 가장 크게 번 해(+784틱)이고 동시에 W 가 가장 넓었던 해(27.5틱)다. 폭 사이징은 카드의 대목에서 계약을 덜어 낸다.
폭이 위험을 맞혔나, 손익을 맞혔나
| 분위 | 발견 W | 발견 |장중| | 발견 손익 | 배수 | 확인 W | 확인 |장중| | 확인 손익 | 배수 |
|---|---|---|---|---|---|---|---|---|
| 1(가장 좁음) | 13.3 | 4.8 | +0.52 | 1.47 | 14.8 | 6.4 | +0.66 | 1.31 |
| 2 | 17.3 | 6.6 | −0.02 | 1.11 | 18.2 | 6.9 | −0.95 | 1.05 |
| 3 | 19.3 | 5.8 | +0.86 | 1.00 | 20.3 | 8.9 | +2.83 | 0.95 |
| 4 | 22.4 | 10.1 | +2.88 | 0.86 | 22.7 | 6.7 | −0.46 | 0.85 |
| 5(가장 넓음) | 29.7 | 14.5 | +4.13 | 0.66 | 28.3 | 9.6 | +1.34 | 0.69 |
| 분위당 날 수 | 127 ~ 128(2016 ~ 2022) | 81 ~ 82 | ||||||
폭 모델의 꼬리 보정도 확인 구간에서 나빠졌다. 실제 장중이 q10 아래로 떨어진 날은 발견 12.0%, 확인 16.2%, q90 위로 간 날은 발견 11.9%, 확인 14.6% 였다(둘 다 10% 여야 맞다). 확인 구간에서는 폭이 실제보다 좁게 예측됐다.
탐색 결과
| 항목 | 발견 | 확인 |
|---|---|---|
| E1 카드 날 W 와 실제 |장중| 의 상관 | 0.361 | 0.160 |
상관이 양이라는 것은 폭 예측이 위험의 크기를 맞혔다는 뜻이다. 그러나 확인 구간에서 절반 아래로 줄었다.
해석
카드는 «미국 금리 충격에 한국 시가가 과하게 반응한 몫이 장중에 되돌아오는» 것을 먹는다. 충격이 크고 시장이 불안한 날일수록 과잉 반응이 크고, 되돌림도 크다. 그래서 카드의 기대 손익은 움직임의 크기와 함께 커진다. 폭 사이징은 그 반대로 실었다. 위험이 크다는 예측이 맞아도, 그 위험이 곧 카드의 기회인 날에는 크기를 줄이는 것이 손해다. 변동성으로 크기를 나누려면 손익이 아니라 위험 한도(낙폭)를 목표로 따로 설계해야 한다.
한계
- statsmodels 가 프로젝트 환경에 없어
uv run --with statsmodels임시 환경에서 돌렸다. 기술 통계 런도 같은 방식이다. - 2013 ~ 2015 년 카드 날(발견 구간의 30%)은 W 가 없어 배수 1 이었다. 발견 구간 비교는 사실상 2016 ~ 2022 년의 비교다.
- 2026-10 의 카드 날 다섯은 나스닥 열이 비어 W 가 없었다.
- 평가 지표가 같은 총 계약의 손익 차이라 «위험을 줄였는가» 는 판정하지 않는다. 손익 표준편차나 낙폭 기준이면 결과가 다를 수 있다.
산출물
- 계획
protocol.md(사전등록 88b2c97) - 분석, 판정
analysis.md - 코드
code/s1_qreg.py(확증),code/s_detail.py(기술 통계, 계수 기록, 확증 수치 재현 assert),code/render_figures.py(그림) - 런
results/20261029T160608_main/(확증),results/20261030T163118_detail/(card_days.csv, metrics.json) - 공용 코드
../0100_model_open_error_fade/code/libb2.py(카드 사이징 비교),../0066_multi_asset_panel/code/lib66.py(카드, 부트스트랩)
Appendix
A. 데이터셋 실물
card_days.csv 의 실제 행(2026-10 확인 구간). gross 는 카드 방향 계약당 손익(비용 전), base 와 new 는 비용 1틱 뒤 하루 손익, d = new − base 다. W 가 없는 날은 배수 1 이다.
| s | g_us | ε | gross | R1 | q10 | q90 | W | 배수 | base | new | d |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-01 | −5 | −0.29 | −7 | 0.5 | −17.5 | +16.6 | 34.1 | 0.56 | −4.0 | −2.32 | +1.68 |
| 2026-10-06 | −4 | −0.25 | +6 | 0.5 | −16.9 | +15.8 | 32.7 | 0.59 | +2.5 | +1.51 | −0.99 |
| 2026-10-13 | −3 | +0.20 | +4 | 1 | 없음 | 1 | +3.0 | +3.09 | +0.09 | ||
| 2026-10-15 | −9 | +0.29 | −15 | 1 | 없음 | 1 | −16.0 | −16.49 | −0.49 | ||
| 2026-10-19 | +6 | −0.03 | +19 | 1 | 없음 | 1 | +18.0 | +18.55 | +0.55 | ||
| 2026-10-22 | −17 | +0.46 | +17 | 1 | 없음 | 1 | +16.0 | +16.49 | +0.49 |
B. 모델 입출력 실물
- Request meta
- 행 s = 2026-10-01, 세션 e = 2026-10-02. 2026 년 모델(2013 ~ 2025 년 2,545일로 학습)
- Input
- |g_us| = 5bp, rv20 = 0.670, MOVE 비율 = 1.496, |ε| = 0.294%, |g_nq| = 0.201%. 카드: g_us −5bp → 3선 매도, ε 도 음이라 같은 방향 → R1 0.5계약
- Model response
- q10 = 5.195 − 0.056 × 5 − 1.925 × 0.670 − 14.039 × 1.496 − 0.340 × 0.294 − 0.110 × 0.201 = −17.50틱. q90 = −4.573 + 0.433 × 5 + 4.564 × 0.670 + 11.027 × 1.496 − 1.934 × 0.294 + 0.008 × 0.201 = +16.58틱. W = 34.08, 배수 = 19.20 / 34.08 = 0.56, w_new = 0.28계약
- Ground truth check
- 3선 e 장중 +7틱 → 카드(매도) 계약당 −7틱. |장중| 7틱은 예측 폭보다 훨씬 좁았지만 손실 날이라 계약을 줄인 것이 이 날은 도움이 됐다(d +1.68)
C. 실험 설정
- 카드, 기준선|g_us| ≥ 3bp, 다음 달력일 세션, 만기 교체 날 제외, R1 계약(엇갈림 1, 일치 0.5)
- 모델QuantReg τ = 0.1, 0.9, 특징 5개 + 상수, 확장 창 해마다 재학습, 첫 예측 2016
- 사이징배수 = clip(19.20 / W, 0.5, 2), W 없으면 1, 구간별 총 계약 맞춤
- 비용왕복 1틱
- 분할발견 2013-01 ~ 2022-12, 확인 2023-01 ~ 2026-10
- 검정일별 손익 차이 월 블록 부트스트랩 5,000회, seed 66, 한쪽 p < 0.05, 63개 Holm