세 줄 요약
- CPI 기준월 원화 환산 두바이유 평균이 전월보다 크게 움직인 달(직전 36개월 표준편차 기준 |z| ≥ 1) 32건에서, 발표 전날 10선 종가에 유가 반대로 들어가 발표일 종가에 나온 손익은 비용 1틱 뒤 +0.29틱/건(승률 53%), 부트스트랩 한쪽 p 0.48 이다.
- 2014 ~ 2022 년 21건은 +5.05틱, 2023 ~ 2026 년 11건은 −8.80틱으로 뒤집혔다. 가장 큰 1건(2026-04, z 10.7, +97틱)을 빼면 나머지 31건은 평균 −2.8틱이다(기술 통계).
- 부호는 양이나 문턱에 크게 못 미쳐 판정은 보류다. 월 1회 발표라 표본이 늘려면 몇 년이 걸린다. 원자재 묶음 Holm(H327 ~ H333) 은 1.00 이다.
가설과 결론
한국 소비자물가(CPI)에서 석유류는 국제 유가를 원화로 환산한 값을 몇 주 늦게 따라간다. 그래서 기준월(발표되는 달의 전달) 동안 원화로 본 두바이유가 크게 올랐다면 석유류 물가가 오르고, 헤드라인 CPI 도 시장이 생각한 것보다 높게 나올 수 있다. CPI 가 높게 나오면 금리가 오르고 10선 가격은 내린다.
시장이 이 기계적인 연결을 이미 다 반영했다면 이익이 없다. 반영하지 못했다면 발표 전날 종가에 10선을 유가 반대 방향(유가 상승이면 매도)으로 들어가 발표일 종가에 나오면 그 몫을 거둘 수 있다. 보유는 한 밤뿐이지만, 사용자 요구대로 연휴와 충격 점프에 대한 조건을 넣었다.
- 가설
- H330. 2012-03 ~ 2026-10 발표 중 |z| ≥ 1 인 건의 비용 1틱 뒤 건당 평균 > 0, 부트스트랩(건마다 다른 달이라 월 블록 = 건 단위) 5,000회 한쪽 p < 0.05. 방향, 문턱, 창이 결과 전에 정해졌고 학습 값이 없어 전체 표본을 한 번 평가한다. 예측은 약 50 ~ 70건, 건당 +2 ~ +6틱
- 결론
- 32건 +0.29틱/건, p 0.48, 90% 구간 [−11.2, +11.6]. 원자재 묶음 Holm 1.00. 부호가 양이고 문턱에 못 미쳐 사전 규칙대로 판정은 보류
| 가설 | 검정 | 결과 | 한쪽 p | Holm | 판정 |
|---|---|---|---|---|---|
| H330 | 비용 1틱 뒤 건당 평균 > 0 | +0.29틱 (32건) | 0.48 | 1.00 | 보류 |
용어와 기호
- 10선
- 한국거래소 10년 국채선물. 가격으로 거래하며 금리가 오르면 가격이 내린다
- 틱
- 10선 가격의 최소 단위 0.01. 계약(액면 1억원)당 1만원
- CPI
- 통계청 소비자물가지수. 매월 초(대개 1 ~ 5일) 08:00 에 전달 값을 공표한다
- 발표월 M, 기준월 M−1
- M 월 초에 발표되는 CPI 는 M−1 월 물가다
- 원화 두바이
- 두바이유 현물 일별 종가(달러) × 원/달러 환율. 월 평균을 쓴다
- o_M
- log(기준월 M−1 원화 두바이 평균) − log(M−2 평균). 기준월 동안 원화 유가가 얼마나 변했나
- z
- o_M / (직전 36개 o 의 표준편차, 그달 제외, 최소 24개). |z| ≥ 1 이면 거래
- 방향
- z > 0(원화 유가 상승)이면 10선 매도, z < 0 이면 매수
- b, r
- r 은 발표일(한국 거래일), b 는 그 직전 거래일. 진입은 b 종가(정산가), 청산은 r 종가
- 연휴 조건
- b 에서 r 까지 달력 4일 이상이면(연휴 뒤 발표) 거래하지 않는다. 보통 주말(금 → 월)은 든다
- 손절
- 직전 60거래일 10선 종가 일변화 표준편차의 2.5배. r 시가가 이미 넘어 열리면 시가 체결, 아니면 r 의 고가와 저가로 닿았는지 보고 손절선에서 1틱 더 불리하게
- 교체 조건
- r 이 10선 근월물 교체일이면 거래하지 않는다
- 충격 구간
- 미리 정한 공개 충격 15개의 시작일부터 10거래일. 겹친 건을 따로 보고하고 빼지 않는다
- 비용
- 왕복 1틱(판정), 2틱(보고)
- 부트스트랩, 한쪽 p
- 건별 손익을 다시 뽑아(한 달에 한 건이라 월 블록이 곧 건) 5,000번 평균을 만든다. 한쪽 p 는 «참 평균이 0 인데 이만큼 양으로 나올 확률»
- Holm 보정
- 여러 가설을 한꺼번에 시험할 때 우연한 통과를 막으려고 p 값을 가설 수에 맞춰 키우는 방법. 원자재 묶음 주가설 H327 ~ H333 을 한 가족으로 센다
- 카드
- 이 저장소의 기존 전략(미국 10년 금리 밤사이 3bp 이상 변화 뒤 3선 반대 방향 당일 매매). 독립성 비교에만 쓴다
자료
데이터셋
| 자료 | 원천 | 기간 | 해상도 | 쓰임 |
|---|---|---|---|---|
| CPI 발표 시각 | 인포맥스 1002 제목 검색(«소비자» + «물가», 매월 1 ~ 12일 중 퍼센트와 방향 낱말이 든 첫 제목, «전망», «예상» 제외) | 2011-07 ~ 2026-10, 179개월 | 발표 한 건, 초 단위 시각 | 발표일 r |
| 두바이유 현물 | 인포맥스 단말 일별 종가 | 2010-01 ~ 2026-10 | 일 | 원화 두바이 |
| 원/달러 현물 | 인포맥스 단말(패널 열) | 2012-01 ~ 2026-10 | 일, 한국 종가 | 원화 환산 |
| 10선 연결 일봉 | 인포맥스 단말 일봉(2012 이전 직접 수신분 포함) | 2011 ~ 2026-10 | 일(시가, 고가, 저가, 정산가) | 진입, 청산, 손절 |
발표 제목은 2012 ~ 2026 년 모두 08:00 전후로 찍혔다(통계청 08:00 공표). 2014-01 ~ 04 와 2021-01 은 1002 에 그달 제목이 없어 뺐다. 브렌트 후보 코드는 값이 실제 브렌트와 맞지 않아 쓰지 않았다.
| 단계 | 건수 |
|---|---|
| 1002 에서 찾은 발표 | 179 |
| z 가 서고 발표일이 거래일이며 09:00 전 발표(쓸 수 있는 발표, 2014-06 ~) | 117 |
| 그중 |z| ≥ 1 | 33 |
| 연휴 뒤 발표 제외 뒤 거래(2014 ~ 2022 / 2023 ~ 2026) | 32(21 / 11) |
원/달러가 2012 년부터라 z 의 36개월 창(최소 24개월)이 2014 년에야 찬다. 그래서 사전등록의 시작(2012-03)보다 실제 첫 거래(2014-10)가 늦다.
언제 무엇을 아는가
| 시각 | 일어나는 일 |
|---|---|
| 기준월 말 | 기준월 원화 두바이 평균 확정, z 계산 가능 |
| b 일 15:45 | 발표 전날 10선 정산가에 진입(종가 단일가로 체결 가능한 값) |
| r 일 08:00 | CPI 공표 |
| r 일 개장 | 시가가 손절선 너머면 시가 청산 |
| r 일 장중, 15:45 | 고가나 저가가 손절선에 닿으면 손절, 아니면 r 종가 청산 |
방법
- 발표일 찾기. 1002 제목에서 매월 CPI 발표일과 시각을 뽑고, 발표일이 한국 거래일이고 09:00 전인 건만 쓴다.
- 신호. 원화 두바이 월평균으로 o 와 z 를 만들고 |z| ≥ 1 이면 거래.
- 매매. b 종가 진입, r 종가 청산, 1계약. 연휴 뒤 발표와 교체일 발표는 거래하지 않고, 손절을 둔다.
- 판정. 비용 1틱 뒤 건당 평균, 부트스트랩 5,000회 한쪽 p < 0.05, 원자재 묶음 Holm < 0.05.
- 보고와 탐색(판정에 쓰지 않음). S1 구간별 성적, S2 충격 구간, 카드 상관, 위험 조건을 뺀 변형. E1 문턱 없이 부호만으로 모든 발표, E2 원화 환산 없이 달러 두바이, E3 발표일 시가 청산(밤사이 몫만).
모델
학습하는 모델은 없다. 신호는 «기준월 원화 유가 변화를 그 변동성으로 나눈 값» 하나이고, 방향과 문턱, 창은 사전등록 때 정했다. 이 신호는 석유류 물가의 기계적인 몫을 대신 재는 값이지, CPI 예측치나 시장 컨센서스와 견준 서프라이즈는 아니다.
| 항목 | 값 |
|---|---|
| 유가 변화 | 기준월 원화 두바이 월평균의 로그 변화 |
| 표준화 창 | 직전 36개월(최소 24), 그달 제외 |
| 문턱 | |z| ≥ 1 |
| 방향 | z > 0 이면 10선 매도, z < 0 이면 매수 |
| 진입, 청산 | 발표 전날 정산가, 발표일 종가 |
| 연휴 | b → r 달력 4일 이상이면 거래 안 함 |
| 손절 | 2.5σ(60일), 시가 점프는 시가 체결, 장중은 손절선 −1틱 |
| 교체 | r 이 교체일이면 거래 안 함 |
| 비용 | 왕복 1틱(판정), 2틱(보고) |
결과
확증 결과
| 항목 | 2014 ~ 2022 | 2023 ~ 2026 | 전체 |
|---|---|---|---|
| 건수 | 21 | 11 | 32 |
| 비용 전 건당 | +6.05 | −7.80 | +1.29 |
| 비용 1틱 뒤 건당 | +5.05 | −8.80 | +0.29 |
| 비용 2틱 뒤 누적 | +85 | −108 | −23 |
| 승률 | 57% | 45% | 53% |
| 양인 해 | 5 / 7 | 2 / 4 | 7 / 11 |
| 부트스트랩 한쪽 p, 90% 구간 | 0.48, [−11.2, +11.6] | ||
| 건별 표준편차, 최악 1건, 최선 1건 | 39.8, −83, +97 | ||
| 최대 낙폭, 손절 | −179틱, 2건 | ||
| 연도 | 2014 | 2015 | 2016 | 2018 | 2019 | 2020 | 2022 | 2023 | 2024 | 2025 | 2026 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 합 | +52 | +14 | −23 | +40 | +28 | −54 | +49 | +5 | −7 | −144 | +49 |
2017 년과 2021 년은 |z| ≥ 1 인 달이 없었다. 효과가 있다면 크기는 건당 몇 틱인데 건별 표준편차가 40틱이라, 32건으로는 +5틱짜리 효과도 우연과 구별할 수 없다.
건별로 보면
| 갈래 | 건수 | 평균(틱) |
|---|---|---|
| 유가 하락 뒤 10선 매수(z ≤ −1) | 18 | +4.7 |
| 유가 상승 뒤 10선 매도(z ≥ 1) | 14 | −5.4 |
| 가장 큰 1건(2026-04-02, z 10.7) 뺀 31건 | 31 | −2.8 |
유가 상승 뒤 매도 쪽은 가장 큰 이익(+97)을 넣고도 평균이 음이다. 가설이 그럴듯했던 «유가 상승 → CPI 상승 → 금리 상승» 쪽이 오히려 맞지 않았다. 충격 구간과 겹친 건은 1건(2020-03 코로나, −3틱)뿐이다. 카드와 일별 손익 상관은 −0.01 이다(겹친 날 12일).
보고 변형과 탐색
| 변형 | 건수 | 건당 | 무엇이 다른가 |
|---|---|---|---|
| 주규칙 | 32 | +0.29 | 사전등록 그대로 |
| 연휴 뒤 발표도 거래 | 33 | +4.58 | 연휴 뒤 발표 1건이 비용 전 약 +143틱으로 컸다(규칙상 거래하지 않음) |
| 손절 없음 | 32 | −0.56 | 손절 2건이 오히려 손실을 줄였다 |
| 위험 조건 없음 | 33 | +3.76 | 연휴 건 포함, 손절과 교체 조건 없음 |
| E1 모든 발표(부호만) | 113 | +3.13 | |z| 문턱 없이 z 부호로 매일 발표 |
| E2 달러 두바이 | 34 | +5.62 | 원화 환산 없이 달러 유가로 z |
| E3 발표일 시가 청산 | 32 | −7.59 | 밤사이 몫만(b 종가 → r 시가) |
E3 이 음이고 주규칙이 0 근처라는 것은, 발표일 시가까지는 가설과 반대로 가고 장중에 되돌아온다는 뜻이다. 문턱 없이 모든 발표(E1)나 달러 유가(E2)가 더 좋아 보이지만 결과를 본 뒤 고를 수 없고, 어느 것도 우연과 구별되지 않는다.
해석
원화 유가 변화와 발표일 10선 사이에는 앞 구간에서 약한 연결이 보였지만, 2023 년 이후 반대가 됐다. 시장 참가자들이 석유류 몫을 이미 예상치에 넣고 있다면 유가가 아니라 «유가가 예측한 CPI» 와 «시장 예상» 의 차이가 움직임을 정한다. 이 신호를 살리려면 컨센서스(인포맥스 설문)를 모아 유가로 예측한 서프라이즈와 실제 서프라이즈를 맞대는 것이 다음 단계다.
한계
- 월 1회 사건이라 12년에 32건이다. 효과가 있어도 검정 힘이 거의 없다.
- 평균이 단 한 건(2026-04, +97틱)에 크게 기댄다.
- 원/달러가 2012 년부터라 2012 ~ 2014 발표는 z 를 만들지 못해 빠졌다.
- 발표 시각을 1002 제목으로 정했다. 제목이 없는 다섯 달은 빠졌다.
산출물
- 계획
protocol.md(사전등록 ee07b5e) - 분석
analysis.md - 코드
code/s1_cpi.py(H330, S1 ~ S3, E1 ~ E3),../0153_cu_au_fair_value_10y/code/riskrule.py(공용 10선 일봉, 요약, 충격 구간),code/render_figures.py(그림) - 런
results/20261030T134101_main/(metrics.json, events.csv, trades_R.csv)
Appendix
A. 데이터셋 실물
trades_R.csv 의 실제 행. 열은 진입일 b, 발표일 r, 발표 시각, z, 방향(+1 매수), 청산 방식, 비용 전과 비용 1틱 뒤 손익(틱). 원천 발표 표 한 행의 구조는 release_month 2011-07, date 20110701, time 080002, pct_in_title 4.4, title «6월 소비자물가 4.4% 상승(1보)» 이다.
| b | r | 발표 시각 | z | 방향 | 청산 | 비용 전 | 비용 뒤 |
|---|---|---|---|---|---|---|---|
| 2014-09-30 | 2014-10-01 | 08:00:04 | −1.12 | +1 | 종가 | +47 | +46 |
| 2015-02-02 | 2015-02-03 | 08:00:01 | −5.06 | +1 | 종가 | +40 | +39 |
| 2016-05-31 | 2016-06-01 | 08:00:07 | +1.53 | −1 | 손절 | −56.04 | −57.04 |
| 2020-04-01 | 2020-04-02 | 08:00:00 | −6.53 | +1 | 종가 | +32 | +31 |
| 2025-06-02 | 2025-06-04 | 08:00:00 | −1.44 | +1 | 손절 | −81.79 | −82.79 |
| 2026-04-01 | 2026-04-02 | 08:00:00 | +10.70 | −1 | 종가 | +98 | +97 |
| 2026-10-01 | 2026-10-02 | 08:00:02 | +1.59 | −1 | 종가 | −72 | −73 |
B. 모델 입출력 실물
- Request meta
- 발표월 2026-04, 기준월 2026-03. 진입일 b = 2026-04-01, 발표일 r = 2026-04-02 08:00:00
- Input
- 2026-03 원화 두바이 월평균이 2026-02 보다 크게 올라 z = +10.70(직전 36개월 표준편차의 10배 넘음). b → r 하루, 교체일 아님
- Model response
- z ≥ 1, 유가 상승 → 2026-04-01 10선 정산가에 1계약 매도. 손절선은 진입가 + 2.5σ
- Ground truth check
- 발표일 종가 청산, 비용 전 +98틱, 비용 뒤 +97틱. 32건 가운데 가장 큰 이익이고 이 한 건이 전체 평균을 양으로 만든다
C. 실험 설정
- 발표1002 제목, 매월 1 ~ 12일 첫 수치 제목, 거래일, 09:00 전
- 신호기준월 원화 두바이 월평균 로그 변화, 36개월(최소 24) 표준화, |z| ≥ 1, z > 0 매도
- 매매발표 전날 정산가 진입, 발표일 종가 청산, 1계약
- 위험 조건연휴 뒤 발표(달력 4일 이상) 제외, 2.5σ(60일) 손절 시가 점프 체결과 −1틱, 교체일 발표 제외, 충격 구간 15개 보고
- 판정2012-03 ~ 2026-10, 비용 1틱 뒤 건당 평균 > 0, 부트스트랩 5,000회(seed 66) 한쪽 p < 0.05, 원자재 묶음 Holm(H327 ~ H333)
- 보고와 탐색S1 ~ S3, 카드 상관, 비용 2틱, E1 모든 발표, E2 달러 두바이, E3 발표일 시가 청산