세 줄 요약
- 10년 국채선물 종가 단일가에 100계약을 더하면 예상 체결가가 한 방향으로 0.81틱(95% 구간 0.65 ~ 0.99) 밀린다. 문턱 0.5틱을 넘으므로 «종가 단일가 충격 0» 가정은 100계약에서 깨진다.
- 충격은 크기에 거의 정비례한다. 50계약 0.40틱, 100계약 0.80틱으로 오목하지 않았다. 3년 선물은 같은 크기에서 0.10틱으로 10년의 8분의 1 수준이다.
- 판정은 폐기(H864)다. 10년 종가 단일가 전략은 50계약 이상에서 비용을 다시 매겨야 하고, 3년은 지금 가정으로 충분하다.
가설과 결론
- 가설
- H864: 10년 국채선물 종가 단일가에서 100계약 주문의 예상 충격은 0.5틱 미만이다. 보조 가설로 H865(3년의 충격은 10년의 절반 이하), H866(충격은 크기에 오목해 100계약 충격이 50계약의 두 배보다 작다), H867(10년 개장 단일가에서도 100계약 충격이 0.5틱 미만), H868(종가 단일가에서 진입과 청산을 하는 10년 고유 몫 되돌림 전략을 100계약으로 키워도 거래당 순손익이 양)을 두었다.
- 결론
- 10년 선물 100계약의 충격은 0.81틱이고 95% 한쪽 상한이 0.96틱이라 H864 는 지지되지 않는다. 3년 선물은 10년의 0.12배라 H865 는 Holm 보정 뒤에도 지지된다. 충격은 오목하지 않고 선형이며(H866 미지지), 10년 개장 단일가는 3.1틱으로 훨씬 크다(H867 미지지). 고유 몫 되돌림은 100계약 충격을 진입과 청산에 모두 물려도 평균 +4.41틱이 남지만 Holm 보정 뒤 p 는 0.12 다(H868 미지지).
왜 이 질문을 했나. 종가 단일가는 15:35 부터 15:45 까지 주문을 모아 15:45 에 한 가격으로 체결한다. 연속 거래처럼 호가 간격(스프레드)을 건너지 않으므로 앞선 백테스트들은 종가 단일가 체결을 «충격 0, 여유분으로 왕복 1틱» 으로 다뤘다. 이 가정은 주문이 작을 때는 맞지만, 주문을 10계약에서 100계약으로 키우면 우리 주문 자체가 수급의 균형을 옮겨 체결가를 밀 수 있다. 단일가에서 체결가는 매수와 매도 누적 수량이 만나는 점이므로, 그 점 근처에 쌓인 잔량이 얇으면 100계약만으로 1틱 이상 움직일 수 있다.
이 실험은 생성형 주문장 모형의 시장 충격을 평가한 논문(arXiv 2610.27100, LOB-Impact Benchmark)에서 출발했다. 그 논문은 생성 모형에 큰 주문을 넣어 충격 지수 δ 가 0.63 ~ 1.21 로 나온다고 보고하고, 모형의 반응을 볼 수 있는 주입과 기계적 효과만 있는 통제(blind control)를 나눈다. 우리는 생성 모형을 학습하지 않고 실제 단일가 장부로 직접 잰다. 시장 반응이 섞인 충격은 방법 A 로, 반응 없는 기계적 충격은 방법 B 로 옮겨 왔다. 결론은 크기를 키우는 결정이 10년 종가 단일가에서는 비용 가정을 바꾼다는 것이다.
용어와 기호
- 3선, 10선
- 3년, 10년 국채선물 근월물. 그날 체결량이 가장 큰 월물을 근월로 본다.
- 틱
- 가격 최소 변동 단위 0.01 포인트. 3선과 10선이 같다.
- 종가 단일가
- 15:35 ~ 15:45 접수한 주문을 15:45 에 한 가격으로 체결하는 방식. 그 가격이 종가다.
- 개장 단일가
- 08:30 ~ 08:45 접수, 08:45 에 한 가격으로 체결한다.
- 예상체결가 e
- 단일가 접수 중 거래소가 알리는 «지금 마감하면 체결될 가격». 틱 단위로 적는다.
- 잔량 장부
- 단일가 접수 중 호가 행이 보여 주는, 가상 체결 뒤 남은 매수와 매도 주문. 다섯 단계 가격과 수량, 총잔량이 있다.
- x
- 총매수잔량 − 총매도잔량(계약). 체결 예정 물량은 양쪽에 같은 크기로 있으므로 x 의 변화 Δx 는 그 사이 새 주문과 취소로 생긴 순매수 주문 흐름이다.
- Δe
- 두 관측 사이 예상체결가 변화(틱).
- λ_d
- 하루 d 의 충격 탄력(틱/계약). Δe 를 Δx 에 원점 통과 최소제곱으로 회귀한 기울기.
- λ̄
- 날 평균 탄력. 날마다 같은 무게로 평균한다.
- I(Q)
- Q계약 한 방향 주문의 예상 충격 = λ̄ × Q (틱). 왕복이면 두 배.
- m(S)
- 크기 구간 S 의 실측 반응. |Δx| 가 S 에 드는 관측의 sign(Δx) × Δe 평균. S50 = 35 ~ 65계약, S100 = 75 ~ 125계약, S10 = 5 ~ 15계약.
- ρ
- 오목성 비율 m(S100) / m(S50). 선형이면 약 2, 제곱근 법칙이면 약 1.41.
- 방법 B 최악, 낙관
- 마지막 장부에 시장가 Q 를 더해 새 체결가를 손으로 다시 잡는 계산. 최악은 이미 체결 예정인 주문이 가격에 둔감하다고 보고, 낙관은 우리 주문이 잔량 쪽과 같을 때 그 가격의 체결 예정 주문이 흡수한다고 본다.
- 날 부트스트랩
- 44일을 복원 추출해 λ̄ 를 다시 내는 일을 10,000번 되풀이해 구간과 한쪽 p 를 잡는다.
- Holm
- 가설 다섯 개의 p 를 작은 것부터 (5, 4, 3, ...) 배 하여 다중 비교를 보정하는 방법.
- 고유 몫 되돌림
- 앞선 실험의 10선 전략. 주식선물과 달러선물로 설명되지 않는 하루 변화를 종가 단일가에서 거슬러 진입하고 다음 날 종가 단일가에서 청산한다. 2024-07 ~ 2026-10 에 207건.
자료
자료는 거래소 시각이 마이크로초까지 찍힌 코스콤 국채선물 호가 행이다. 단일가 접수 중의 행은 매수와 매도가 교차하지 않는다. 자료 점검에서 교차한 행은 하나도 없었고, 예상체결가는 1호가 매수와 1호가 매도 사이(경계 포함)에 99.8% 있었다. 이것은 거래소가 접수 중에 «가상 체결 뒤 남은 잔량» 을 보여 준다는 뜻이다. 한쪽 1호가가 예상체결가와 같으면 그 가격에 그쪽 주문이 남아 있는 것이고, 반대쪽 1호가는 한 틱 이상 떨어져 있다.
예상체결가와 총잔량, 2 ~ 5단 수량이 모두 기록된 날만 쓴다. 수신 장치가 이 필드를 받기 시작한 2026-07-21 ~ 07-28(6일)과 2026-09-08 ~ 11-05(38일), 합계 44일이다. 그 밖의 날은 예상체결가가 비어 있어 쓸 수 없다. 두 세션이 한 날짜로 섞인 07-31 은 원래 제외 목록에 있고 어차피 깊이가 없다. 마지막 예상체결가가 실제 종가와 같은지 1분봉 15:45 봉으로 맞대 보았다. 봉이 있는 37일 모두 같았고, 1분봉 구멍이 있는 7일은 마지막 예상체결가를 종가로 쓴다.
44일 모두 단일가 창의 마지막 행이 15:44:57.8 이후라 마감 직전 장부가 빠진 날은 없다. 11-04 와 11-05 는 다른 수신 사본에서 메운 날이라 행이 약 두 배 촘촘하다. 하위 표본에서 그 이틀을 뺀 판을 따로 보고한다. 근월 교체는 3선 09-14, 10선 09-15 에 있었고 그 이틀도 뺀 판을 낸다. 종가 단일가 체결량 중앙은 3선 8,191계약, 10선 2,932계약이다. 100계약은 10선 단일가 체결량의 약 3.4%, 3선의 약 1.2% 다.
| 자료 | 기간 | 해상도 | 행, 표본 | 비고 |
|---|---|---|---|---|
| 코스콤 선물 호가(단일가 창) | 2026-07-21 ~ 07-28, 09-08 ~ 11-05 | 거래소 시각, 마이크로초 | 44일, 하루 3선 496행, 10선 462행(중앙) | 예상체결가, 1 ~ 5단 잔량, 총잔량 |
| 확증 창(15:40 ~ 15:45) | 같음 | 행 단위 | 하루 약 235행 | Δx 75 ~ 125계약 관측 10선 820건 |
| 자체 1분봉 15:45 봉 | 같음 | 1분 | 37일(7일 구멍) | 종가 확인과 단일가 체결량 |
| 고유 몫 되돌림 거래 목록 | 2024-07-29 ~ 2026-10-28 | 거래 | 207건 | 진입과 청산 모두 종가 단일가 |
방법
질문은 «우리가 Q계약을 더하면 종가가 몇 틱 움직이나» 다. 이것을 두 가지로 잰다. 방법 A 는 실제로 다른 참가자들의 주문이 들어올 때 예상체결가가 얼마나 반응했는지를 보고, 그 반응률을 우리 주문에 옮긴다. 방법 B 는 마지막 장부 위에 우리 주문을 얹어 체결가를 직접 다시 계산한다. 방법 A 가 확증이고 B 는 비교다. 판정 문턱, 창, 관측 단위, 검정은 결과를 보기 전에 사전등록 문서로 커밋했다.
방법 A 충격 탄력
단일가 접수 중 행에서 행으로 넘어갈 때마다 두 값을 잰다. 하나는 순주문 흐름 Δx(총매수잔량 − 총매도잔량의 변화)이고 다른 하나는 예상체결가 변화 Δe 다. 체결 예정 물량은 매수와 매도에 같은 크기로 들어 있으므로 Δx 는 체결가가 바뀌어도 흔들리지 않는 «새로 들어온 순매수 주문의 양» 이다. 하루마다 Δe 를 Δx 에 원점 통과로 회귀해 기울기 λ_d 를 얻고, 44일 평균 λ̄ 에 Q 를 곱해 I(Q) 를 낸다.
확증 창은 마지막 5분(15:40:00 ~ 15:44:59.999)이다. 단일가 초반에는 장부가 얇아 예상체결가가 크게 출렁이는데, 우리 주문은 끝까지 남아 마지막 장부와 함께 체결되므로 장부가 두꺼워진 뒤의 반응이 맞는 척도다. 오목성은 선형 회귀로는 볼 수 없으므로 크기 구간 실측 m(S50), m(S100) 을 따로 낸다. 실제로 50계약 남짓, 100계약 남짓한 순주문이 한 번에 들어온 관측만 모아 그때의 반응을 평균한 값이라 모형 가정이 없다.
방법 B 직접 재계산
15:44:59 의 마지막 장부에 시장가 매수 Q 를 더한다. 이미 체결 예정인 주문들이 가격에 둔감하다고 보면 새 체결가는 예상체결가 이상의 매도 잔량을 아래부터 누적해 Q 를 처음 넘는 가격이다. 매도는 대칭이다. 실제로는 지정가가 정확히 예상체결가인 체결 예정 주문이 가격이 움직이면 빠지므로 이 계산은 상한이다. 반대로 우리 주문이 잔량이 남은 쪽과 같은 방향이면 그 가격의 체결 예정 주문이 우리 주문에 자리를 내줄 수도 있어 0 이 될 수 있다. 이것을 낙관 판으로 둔다. 체결 예정 주문의 지정가 구성은 장부에 보이지 않으므로 방법 B 는 경계만 준다. 다섯 단계 밖으로 넘치면 5단 가격에 1틱을 더해 자른다.
검정과 격자
H864 와 H867 은 날 부트스트랩 10,000회에서 I(100) 이 0.5 이상인 비율을 한쪽 p 로 쓴다. H865 는 같은 날 재표본으로 낸 비율 λ̄₃/λ̄₁₀ 이 0.5 이상인 비율, H866 은 ρ 가 2 이상인 비율이다. H868 은 고유 몫 되돌림 207건의 거래당 순손익(총이익 − 기본 비용 1틱 − 2 × I(100))을 월 블록 부트스트랩으로 검정한다. 다섯 p 에 Holm 을 건다. 이 실험은 매매 규칙이 아니라 비용 측정이라 신호 빈도 규칙은 적용하지 않는다.
판정에 쓰지 않는 비교도 미리 정했다. 귀무는 날 안에서 Δx 의 순서를 섞은 순열 1,000회다. 기준선은 충격 0, 고정 1틱, 제곱근 법칙(σ × √(Q/V), V 는 그날 단일가 체결량) 셋이다. 강건성 격자는 창 넷(전체, 마지막 5분, 2분, 1분) × 관측 단위 셋(행, 5초 묶음, 30초 묶음) × x 정의 둘(총잔량, 1 ~ 5단 잔량 합)이다. 하위 표본은 근월 교체 제외, 촘촘한 이틀 제외, 앞뒤 22일, 체결량 상하위, 예상체결가 범위 상위 10% 충격일 제외다.
결과
확증 결과
그림 1 은 하루(2026-10-28)의 종가 단일가를 따라간 것이다. 초반 2분 동안 10선 예상체결가가 종가 대비 40틱 넘게 흔들리다가 마지막 5분(점선 뒤)에는 x 가 오를 때 예상체결가도 계단처럼 올라 종가로 수렴한다. 이 «x 가 움직이면 e 가 따라가는» 관계의 기울기가 충격 탄력이다.
그림 2 는 44일의 마지막 5분 관측을 모두 모은 것이다. 10선은 순주문 100계약에 예상체결가가 평균 약 0.8틱, 3선은 같은 100계약에 약 0.1틱 움직인다. 날별 기울기의 평균은 10선 0.0081틱/계약, 3선 0.00096틱/계약이다. 날 안에서 Δx 순서를 섞은 귀무에서는 기울기의 99% 분위가 10선 0.0005, 3선 0.00006 이라 관측값은 귀무보다 열 배 이상 크다. 44일 모두 두 테너의 기울기가 양이었다. 구간 평균(초록)이 회귀선(빨강)을 따라가므로 선형 근사가 크게 어긋나지 않는다.
| 가설 | 측정 | 값 [95% 구간] | 한쪽 p | Holm p | 판정 |
|---|---|---|---|---|---|
| H864 10선 종가 I(100) < 0.5틱 | λ̄ × 100 | 0.81 [0.65, 0.99], 한쪽 상한 0.96 | 1.000 | 1.000 | 미지지 |
| H865 3선 ≤ 10선의 절반 | λ̄₃ / λ̄₁₀ | 0.119 [0.091, 0.154] | < 0.0001 | < 0.0001 | 지지 |
| H866 오목(ρ < 2) | m(S100)/m(S50), 10선 | 2.00, 한쪽 상한 2.52 | 0.49 | 1.000 | 미지지 |
| H867 10선 개장 I(100) < 0.5틱 | λ̄ × 100 | 3.10 [2.38, 3.86] | 1.000 | 1.000 | 미지지 |
| H868 고유 몫 되돌림 100계약 순손익 > 0 | 거래당 평균 | +4.41틱, 한쪽 하한 +0.58 | 0.031 | 0.124 | 미지지 |
그림 3 은 크기 구간마다 실측 반응을 로그 축에 그린 것이다. 기울기 1 의 점선(선형)과 기울기 0.5 의 점선(제곱근)을 함께 두었다. 10선 종가(빨강 실선)는 5계약부터 300계약까지 선형 점선 위를 거의 그대로 따라간다. 50계약 구간 평균은 0.40틱, 100계약 구간 평균은 0.80틱으로 비율이 정확히 2.00 이다. 3선 종가는 오히려 조금 가팔라 비율이 2.43 이다. 연속 거래에서 흔히 보는 제곱근 모양의 오목성은 단일가 장부에서 나타나지 않았다.
그림 4 는 날별 λ_d × 100 이다. 10선은 44일 중 14일만 0.5틱 아래였고, 중앙값은 0.65틱, 가장 낮은 날 0.14틱, 가장 높은 날 2.42틱이다. 9월 초중순에 1.5 ~ 2.4틱인 날이 몰려 있고 10월에는 0.2 ~ 0.8틱 날이 많다. 시기에 따라 장부 두께가 다르다는 뜻이다. 3선은 44일 모두 0.5틱 아래이고 가장 큰 날이 0.33틱이다. 3선은 어느 날에도 100계약 충격이 0.5틱을 넘지 않았다.
크기별 비용표
아래 표와 그림 6 은 계약 수별 한 방향 충격을 방법마다 나란히 놓은 것이다. 10선 종가에서 방법 A 의 선형 추정과 크기 구간 실측은 10, 50, 100계약 모두 0.02틱 안에서 맞는다. 방법 B 의 낙관과 최악 사이에 방법 A 가 들어간다. 낙관 판(0.47틱)은 우리 주문이 잔량 쪽과 같을 때 비용이 0 이라고 보는 가장 좋은 경우이고, 최악 판(1.98틱)은 체결 예정 주문이 전혀 움직이지 않는다고 보는 가장 나쁜 경우다. 실제 반응을 담은 방법 A 가 그 가운데인 0.81틱이다. 50계약에서 10선 충격은 0.40틱으로 문턱 아래이므로 문턱을 넘는 크기는 약 60계약 근처다.
| 단일가 | 테너 | 방법 | 10계약 | 20계약 | 50계약 | 100계약 |
|---|---|---|---|---|---|---|
| 종가 | 10선 | A 선형 | 0.08 | 0.16 | 0.40 | 0.81 |
| 종가 | 10선 | A 구간 실측 | 0.06 | 0.40 | 0.80 | |
| 종가 | 10선 | B 낙관 ~ 최악 | 0.06 ~ 0.89 | 0.09 ~ 1.00 | 0.27 ~ 1.42 | 0.47 ~ 1.98 |
| 종가 | 3선 | A 선형 | 0.01 | 0.02 | 0.05 | 0.10 |
| 종가 | 3선 | B 낙관 ~ 최악 | 0.00 ~ 0.57 | 0.00 ~ 0.57 | 0.03 ~ 0.65 | 0.07 ~ 0.73 |
| 개장 | 10선 | A 선형 | 0.31 | 0.62 | 1.55 | 3.10 |
| 개장 | 3선 | A 선형 | 0.03 | 0.05 | 0.13 | 0.26 |
강건성과 실행 시점
그림 5 는 사전등록한 격자 가운데 총잔량 정의 12칸이다. 10선에서 0.5틱 아래인 칸은 하나도 없다. 마지막 1분 창이 0.60 ~ 0.77, 마지막 2분이 0.68 ~ 0.73, 마지막 5분이 0.63 ~ 0.91, 단일가 전체 창이 1.02 ~ 1.89 다. 3선은 모든 칸이 0.04 ~ 0.10 이다. 1 ~ 5단 잔량 합을 x 로 쓴 정의는 0 근처나 음수가 나왔다. 가격이 한 틱 움직이면 다섯 단계 창이 함께 옮겨 가면서 잔량 합이 기계적으로 반대로 바뀌기 때문이고, 이 정의는 쓸 수 없는 것으로 판단했다.
창의 차이는 곧 실행 시점의 차이다. 주문을 단일가가 막 열린 15:35 에 넣으면 그 뒤 장부가 얇은 시간을 통과하며 반응이 크다(전체 창 1.89틱). 15:44 이후에 넣으면 0.60틱이다. 방법 B 를 15:40 의 장부에 걸면 10선 100계약 최악이 6.2틱으로 마지막 장부(2.0틱)의 세 배다. 단일가 주문은 늦게 넣을수록 싸다.
| 하위 표본 | 날 수 | 10선 | 3선 |
|---|---|---|---|
| 전체 | 44 | 0.81 | 0.10 |
| 근월 교체 이틀 제외 | 42 | 0.78 | 0.09 |
| 촘촘한 이틀 제외 | 42 | 0.80 | 0.10 |
| 앞 22일 | 22 | 1.05 | 0.11 |
| 뒤 22일 | 22 | 0.57 | 0.08 |
| 단일가 체결량 하위 절반 | 19 | 0.81 | 0.07 |
| 단일가 체결량 상위 절반 | 18 | 0.72 | 0.11 |
| 충격일(범위 상위 10%) 제외 | 38 ~ 39 | 0.74 | 0.08 |
하위 표본 어디에서도 10선은 0.5틱 아래로 내려가지 않았다. 가장 작은 것이 뒤 22일의 0.57틱이고, 앞 22일은 1.05틱이다. 단일가 체결량이 많은 날이 적은 날보다 약간 작지만 차이는 0.1틱이다. 체결량보다 예상체결가 근처 잔량의 두께가 충격을 정한다는 해석과 맞는다. 체결량 정보가 1분봉 구멍 때문에 37일에만 있어 그 두 줄의 날 수는 합이 37이다.
전략 손익 다시 매기기
고유 몫 되돌림 207건은 진입과 청산이 모두 10선 종가 단일가다. 거래당 총이익은 평균 7.03틱이다. 계약 수 Q 의 충격을 진입과 청산에 한 번씩 물리고 기본 비용을 뺐다. 100계약, 기본 1틱이면 7.03 − 1 − 2 × 0.81 = +4.41틱이 남는다(월 블록 한쪽 p 0.031, 하한 +0.58). Holm 보정 뒤 p 는 0.124 라 H868 은 지지되지 않았다. 원래 전략의 유의성도 크지 않았으므로 충격을 더하면 문턱 근처로 내려오는 것이 자연스럽다.
방법 B 최악(한 방향 1.98틱)을 물리면 100계약 기본 1틱에서 +2.07틱(p 0.19)으로 줄어든다. 연도별로 보면 100계약, 기본 1틱에서 2024년 +0.76틱(43건), 2025년 +4.33틱(88건), 2026년 +6.58틱(76건)이다. 2024년은 충격을 물리면 거의 0 이다. 큰 충격일 2024-08-05 한 건을 빼면 평균 +3.92틱이다. 단일가에는 스프레드가 없으므로 기본 비용을 0.5틱으로 보면 +4.91틱(p 0.019)이다.
탐색 결과
다음은 계획에 없던 탐색이라 판정에 쓰지 않는다. 첫째, 충격이 종가까지 남는지 보았다. 행의 Δx 에 대해 그 행 직전부터 마감까지의 예상체결가 변화를 회귀하면 10선 100계약당 1.27틱이다. 순간 반응 0.81틱의 1.58배(구간 1.04 ~ 2.33배)라 충격은 단일가 안에서 되돌아가지 않는다. 1보다 큰 것은 순주문이 같은 방향으로 이어지는 자기상관 때문이며, 우리 주문이 추종 주문을 부른다는 증거는 아니다. 날 단위로 15:40 ~ 15:45 의 순주문 합과 예상체결가 변화를 날 사이 회귀한 값도 10선 1.09틱(0.72 ~ 1.42), 상관 0.81 이다.
둘째, 구간 평균을 로그로 회귀한 충격 지수 δ 는 10선 종가 1.02, 3선 종가 1.28 이다. 출처 논문의 생성 모형 지수(0.63 ~ 1.21)와 제곱근 법칙(0.5)보다 크다. 셋째, 방법 B 최악에서 방향을 나누면 마지막 잔량 쪽과 같은 방향의 100계약은 10선 3.0틱, 반대 방향은 0.9틱이다. 3선은 1.3틱 대 0.14틱이다. 10선 마지막 장부에서 잔량 반대편 1호가까지 거리의 중앙은 1틱이다. 넷째, 제곱근 법칙 기준선은 10선 100계약 13.4틱으로 지나치게 컸는데, σ 를 단일가 창 전체의 흔들림으로 잡아 초반의 얇은 장부가 σ 를 부풀렸기 때문이다.
실패 진단
여기부터는 결과를 본 뒤 더한 탐색이며 판정을 바꾸지 않는다. 10선 100계약이 왜 0.5틱을 넘는지, 그리고 날마다 왜 0.14틱에서 2.42틱까지 갈리는지 보았다. 마지막 5분 동안 예상체결가 ±2틱 안에 남아 있던 잔량(매수와 매도 합)의 평균을 그날의 «두께» 로 두고 날별 충격과 맞대었다. 10선은 순위상관 −0.58(p 0.00003, 44일)로 두꺼운 날일수록 충격이 작다. 단일가 체결량과는 −0.17(p 0.31)로 관계가 없었고, 그날 예상체결가가 얼마나 흔들렸는지와는 +0.41(p 0.005)이었다.
두께의 중앙은 10선 217계약, 3선 1,814계약으로 여덟 배 남짓 차이가 난다. 그런데 λ 와 두께를 곱한 값의 중앙은 10선 1.61, 3선 1.57 로 거의 같다. «예상체결가 ±2틱 안 잔량만큼 주문을 넣으면 약 1.6틱 움직인다» 는 한 관계가 두 테너의 차이를 함께 설명한다. 앞 22일과 뒤 22일의 차이도 같은 방향이다. 두께 평균이 208계약에서 262계약으로 두꺼워졌고, 이 관계로 예측한 100계약 충격은 0.86틱에서 0.67틱으로 줄어든다(실측 1.05틱과 0.57틱). 10선 100계약이 0.5틱 아래가 되려면 두께가 약 320계약 이상이어야 하는데 44일 중 그런 날은 6일뿐이다. 실패의 원인은 신호가 아니라 장부의 두께이고, 주문 크기를 그날 두께에 맞추면 비용을 다스릴 수 있다는 뜻이다.
| 특성 | 10선 순위상관 (p) | 3선 순위상관 (p) |
|---|---|---|
| 예상체결가 ±2틱 안 잔량 | −0.58 (0.00003) | −0.21 (0.18) |
| 예상체결가 ±1틱 안 잔량 | −0.58 (0.00003) | −0.30 (0.049) |
| 단일가 체결량(37일) | −0.17 (0.31) | +0.36 (0.028) |
| 단일가 중 예상체결가 범위 | +0.41 (0.005) | +0.35 (0.021) |
나누기와 지정가
실행을 바꾸면 비용이 얼마나 주는지 두 가지로 보았다(탐색). 첫째는 연속 거래와 나누기다. 15:34:59, 단일가가 열리기 직전의 연속 거래 장부를 Q계약만큼 걸어 올라가면 미드 대비 계약당 비용이 10선 10, 20, 50, 100계약에 0.68, 0.74, 0.98, 1.39틱, 3선은 0.52 ~ 0.54틱이다. 단일가 쪽 비용을 날별 λ_d × q 로 두고 100계약을 두 곳에 나누어 계약당 평균 비용을 날마다 계산했다. 10선은 단일가 70계약과 연속 거래 30계약에서 0.64틱으로 가장 싸고, 전량 단일가 0.81틱보다 0.17틱, 전량 연속 거래 1.39틱보다 0.75틱 싸다. 3선은 전량 단일가 0.10틱이 가장 싸다.
다만 연속 거래 쪽 체결가는 종가가 아니라 15:34:59 미드 근처다. 10선에서 그 미드와 종가의 차이는 44일 평균 −0.91틱, 표준편차 7.0틱이라 평균 비용은 거의 그대로지만 나눈 30계약의 손익은 종가 기준 전략과 거래마다 어긋난다. 종가에서 진입하고 종가에서 청산하는 전략에는 이 흔들림이 비용만큼 중요하다.
둘째는 단일가 안의 지정가다. 마지막 장부에서 매수 지정가를 예상체결가 그대로 두면 충격은 0 이지만, 최악 가정에서 10선 100계약이 다 체결되는 날은 16%, 평균 체결 비율은 30% 다. 한 틱 위에 두면 다 체결되는 날 53%, 두 틱 위면 72% 다. 3선은 한 틱 위에서 90% 가 다 체결된다. 10선에서 지정가로 충격을 묶으면 큰 주문의 일부를 놓친다.
| 테너 | 지정가 | 50계약 평균 체결 | 50계약 전량 체결 날 | 100계약 평균 체결 | 100계약 전량 체결 날 |
|---|---|---|---|---|---|
| 10선 | 예상체결가 | 39% | 27% | 30% | 16% |
| 10선 | +1틱 | 78% | 70% | 68% | 53% |
| 10선 | +2틱 | 89% | 82% | 83% | 72% |
| 3선 | 예상체결가 | 49% | 47% | 47% | 43% |
| 3선 | +1틱 | 96% | 93% | 94% | 90% |
마지막으로 고유 몫 되돌림 거래가 불리한 날에 몰리는지 보았다. 44일 안에 그 전략의 진입이나 청산이 있는 34개 다리에서 우리 방향이 마지막 잔량 쪽과 같은 비율은 정확히 50% 이고, 그 방향의 방법 B 최악 100계약은 평균 1.91틱(전체 1.98틱), 그날 100계약 충격은 0.71틱(전체 0.81틱)이다. 전략이 특별히 얇은 날이나 불리한 방향에 몰리지 않으므로 전체 평균 충격을 그대로 물리는 재평가가 맞다. 제곱근 법칙을 하루 단위(σ 는 44일 종가 변화 표준편차, V 는 하루 거래량)로 다시 계산하면 100계약 충격은 10선 1.70틱, 3선 0.39틱으로 실측의 두 배에서 네 배다.
해석
10선과 3선의 차이는 단일가 체결량 차이(약 2.8배)보다 훨씬 크다(약 8.4배). 단일가에서 체결가를 정하는 것은 하루 전체 물량이 아니라 예상체결가 바로 옆에 쌓인 잔량이다. 3선은 예상체결가 근처 1호가에 수백 계약이 쌓이고 10선은 수십 계약이다. 10선 100계약은 예상체결가 옆 한두 단계를 다 먹고 다음 단계로 넘어가는 크기다. 그래서 10선에서는 주문 크기가 비용을 바꾸고, 3선에서는 거의 바꾸지 않는다.
충격이 오목하지 않은 이유도 같은 데서 나온다. 연속 거래에서 큰 주문의 충격이 제곱근처럼 휘는 것은 주문을 나누어 내는 동안 상대 잔량이 다시 차기 때문이다. 단일가는 한 번에 체결되므로 우리 주문 뒤로 잔량이 다시 차는 시간이 없다. 장부를 그대로 걸어 올라가면 잔량이 고르게 쌓인 구간에서는 충격이 크기에 정비례한다. 실측 비율 2.00 은 그 그림과 맞는다. 그러므로 10선 종가 단일가 비용은 «계약당 약 0.008틱» 으로 크기에 비례해 늘린다고 보는 것이 맞다.
전략 쪽으로 옮기면, 거래당 총이익이 큰 고유 몫 되돌림은 100계약 충격(왕복 약 1.6틱)을 물어도 이익이 남는다. 하지만 총이익이 2 ~ 3틱인 다른 10선 종가 단일가 전략은 50계약 이상에서 비용을 다시 매겨야 한다. 10선 개장 단일가는 100계약에 3.1틱이라 큰 주문을 개장 단일가로 내는 것은 피해야 한다. 3선 종가 단일가는 100계약까지 0.1틱이라 기존 «왕복 1틱» 가정 안쪽이다.
한계
이 결론이 틀릴 수 있는 이유를 구체적으로 적는다.
표본이 44일, 한 해의 넉 달뿐이다. 앞 22일 1.05틱과 뒤 22일 0.57틱이 크게 갈려 시기 변동이 크다. 2024 ~ 2025년의 10선 장부가 지금과 같은 두께였다는 보장이 없다. 고유 몫 되돌림 재평가는 2024 ~ 2026년 거래에 2026년 충격을 그대로 덧씌운 것이다. 뒤 22일만 믿으면 10선 100계약은 0.57틱으로 문턱 바로 위이고, 장부가 더 두꺼워지면 0.5 아래로 내려올 수 있다. 100일이 쌓이면 다시 판정해야 한다.
회귀는 인과가 아니다. 순주문이 가격을 따라 들어오면(추종) 탄력이 부풀고, 가격에 맞서 들어오면(유동성 공급) 줄어든다. 우리 주문도 다른 참가자가 보고 반응하므로 반응이 섞인 값이 맞는 척도라고 보았지만, 마지막 1초에 넣는 주문은 반응을 받지 않는다. 그때 충격은 방법 B 의 낙관과 최악 사이(0.47 ~ 1.98틱)이고 그 폭이 넓다. 총잔량에는 예상체결가에서 먼 주문도 들어 있어 시장성 주문 하나의 충격은 λ̄ 보다 클 수 있다.
방법 B 는 경계만 준다. 체결 예정 물량의 지정가 구성이 장부에 보이지 않는다. 10선 100계약은 19% 의 날에 다섯 단계 밖으로 넘쳐 최악값도 잘렸다. 단일가에 임의 종료 규칙이 있는지는 이 실험에서 확인하지 못했지만 44일 모두 마지막 행이 15:44:57 이후였고 마지막 예상체결가가 종가와 같았다.
결과를 본 뒤 바꾼 것은 없다. 확증 정의와 문턱은 결과 전에 커밋한 그대로다. 영구 몫, 날 단위 집계, 충격 지수, 방향 의존은 계획에 없던 탐색이다. 제곱근 기준선은 계획대로 계산했으나 결과를 보니 σ 정의가 부적절했다. 비용 가정에 대해서도 적는다. 고유 몫 되돌림의 기본 비용 1틱은 단일가에 스프레드가 없는데도 둔 여유분이고, 10선의 연속 거래 스프레드는 3선보다 넓으므로 연속 거래로 나누어 내는 대안의 비용은 따로 재야 한다.
다음에 해 볼 것
첫째, 나누기를 실제 체결로 확인한다. 탐색의 70 대 30 배분(계약당 0.64틱)은 15:34:59 장부가 그대로 있다는 가정이다. 15:30 ~ 15:34:59 에 30계약을 나누어 낼 때 장부 회복을 포함한 실제 체결가를 같은 44일 체결 틱으로 재고, 종가와의 추적 오차가 전략 손익 분산을 얼마나 키우는지와 함께 0.17틱 이득이 남는지 본다.
둘째, 잔량 두께로 크기를 정한다. «λ × ±2틱 잔량 ≈ 1.6» 관계로 15:44:50 의 두께에서 충격 0.5틱 이하가 되는 계약 수만 단일가에 넣고 나머지를 연속 거래로 돌리는 규칙을 사전등록한다. 함께, 15:44:50 의 마지막 잔량이 우리와 반대 쪽일 때만 종가 단일가로 내고 같은 쪽이면 크기를 줄이는 규칙이 방법 B 기준 편도 0.9틱 대 3.0틱의 차이를 얼마나 거두는지 고유 몫 되돌림 거래로 잰다. 2027년 1분기에 표본이 100일을 넘으면 H864 를 다시 판정한다.
산출물
모든 수치는 아래 결과 폴더의 파일에서 옮겼다. 코드는 저장소 실험 폴더의 code 아래에 있고, 같은 명령으로 다시 돌리면 같은 날 목록과 같은 난수 씨앗으로 같은 값을 낸다.
- 사전등록
protocol.md - 분석과 판정
analysis.md - 자료 점검
code/s0_check.py,results/_check/data_check.csv - 본 런
code/s1_main.py,results/20261109T000649_main/(metrics.json, day_stats.csv, cost_table.csv, grid.csv, subsets.csv, curve.csv, repricing_0229.csv) - 탐색
code/s2_persist.py, persist.json, aggregate_days.csv - 깊이 보강(탐색)
code/s3_depth.py,results/20261109T002243_depth/(depth.json, depth_days.csv, split.csv, auction_limit.csv, trades0229_overlap.csv) - 그림
code/render_figures.py - 재현
uv run python code/s1_main.py다음uv run python code/s2_persist.py results/<런>
Appendix
A. 데이터셋 실물
2026-10-28 10선 종가 단일가의 마지막 네 행이다. 예상체결가 107.05 에 매수 잔량이 남아 있고(1호가 매수 = 예상체결가), 매도 1호가는 5틱 위 107.10 이다. 마감 직전 몇 초 동안 107.05 매수 잔량이 182 에서 211 로 늘며 x 가 −84 에서 −55 로 오른다.
| 거래소 시각 | e | x | 총매수 | 총매도 | 매수1 | 수량 | 매수2 | 수량 | 매도1 | 수량 | 매도2 | 수량 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 15:44:58.040766 | 107.05 | −84 | 8,126 | 8,210 | 107.05 | 182 | 107.04 | 93 | 107.10 | 168 | 107.11 | 62 |
| 15:44:58.748157 | 107.05 | −74 | 8,136 | 8,210 | 107.05 | 192 | 107.04 | 93 | 107.10 | 168 | 107.11 | 62 |
| 15:44:59.000421 | 107.05 | −60 | 8,150 | 8,210 | 107.05 | 206 | 107.04 | 93 | 107.10 | 168 | 107.11 | 62 |
| 15:44:59.305115 | 107.05 | −55 | 8,155 | 8,210 | 107.05 | 211 | 107.04 | 93 | 107.10 | 168 | 107.11 | 62 |
B. 모델 입출력 실물
학습한 모델은 없다. 규칙의 입력은 행 단위 (Δx, Δe) 쌍이고 출력은 날별 기울기와 방법 B 재계산값이다. 같은 날 10선 확증 창에는 220쌍이 있었고, 그중 |Δx| 가 75 이상인 처음 여섯 쌍과 그날의 출력은 아래와 같다.
| Δx(계약) | 100 | 150 | −130 | 150 | 300 | 118 |
|---|---|---|---|---|---|---|
| Δe(틱) | 0 | 2 | −2 | 3 | 2 | 1 |
| 테너 | 행 수 | λ_d × 100 | m(S50) | m(S100) | 잔량 쪽 | B 최악 매수, 매도 100 | B 낙관 매수, 매도 100 | 단일가 체결량 | 종가 |
|---|---|---|---|---|---|---|---|---|---|
| 10선 | 473 | 0.62 | 0.32 | 0.69 | 매수 | 5, 0 | 0, 0 | 2,884 | 107.05 |
| 3선 | 502 | 0.11 | 0.00 | 0.15 | 매수 | 1, 0 | 0, 0 | 10,085 | 103.20 |
이날 10선은 잔량이 매수 쪽에 남았으므로 우리가 100계약을 사면 최악 판에서는 매도 1호가 107.10 까지 5틱을 올라간다. 팔면 남은 매수 잔량 211계약이 받아 주므로 0 이다. 방향에 따라 최악 충격이 이렇게 갈리는 것이 탐색에서 본 «같은 방향 3.0틱 대 반대 방향 0.9틱» 의 원인이다.
C. 실험 설정
| 항목 | 값 |
|---|---|
| 확증 창 | 종가 15:40:00 ~ 15:44:59.999, 개장 08:40:00 ~ 08:44:59.999, 창 시작 직전 행을 기준점으로 |
| 관측 단위, x 정의 | 행 단위, 총매수잔량 − 총매도잔량 |
| 회귀 | 날마다 원점 통과 최소제곱, 날 평균 |
| 크기 구간 | S10 5 ~ 15, S50 35 ~ 65, S100 75 ~ 125계약 |
| 부트스트랩 | 날 단위 10,000회, 월 블록 10,000회(H868), 씨앗 20261108 |
| 순열 귀무 | 날 안 Δx 섞기 1,000회 |
| 격자 | 창 4 × 단위 3 × x 정의 2 |
| 주문 크기 | 10, 20, 50, 100계약 |
| 다중 비교 | H864 ~ H868 Holm, α 0.05 |
| 재평가 비용 | 기본 0.5, 1, 2틱 + 2 × 한 방향 충격 |