주식 파일의 공식 종가는 다른 가격과 똑같아 보인다. 타임스탬프는 동부시간 16:00:00, 숫자 하나, 체결할 준비만 되어 있다. 일간 시그널이 그 가격을 찍는다. 리밸런스가 그 가격을 친다. 리서치 에이전트는 호가창에 앉아 당신을 기다리던 호가로 취급한다.
종가는 호가가 아니라 경매다. 컷오프 전에 접수되어야 했던 종가 주문들의 언크로싱 가격이다. 그 배치에 참여하지 않은 채 백테스트가 거기서 체결했다면, 당신이 끼어 있지 않았을 체결을 가져간 것이다.
언크로스를 시장가 주문인 양 16:00에 체결하기
흔한 지름길은 이렇다. 종가 시점 또는 직전에 시그널을 계산하고, 공식 종가로 체결하고, 16:00을 찍는다. AAPL의 한산한 화요일에는 그 거짓이 몇 센트다. 일간 리밸런스 북을 좌우하는 날에는 그게 거래 전부다.
16:00:00.000에 클로징 크로스는 돌아가고 있거나 막 끝났다. 그때 보내는 시장성 주문은 그 크로스에 들어가지 않는다. 남은 것 위로 떨어진다. 잔여 표시 수량, 단주, ARCA나 Nasdaq의 시간외. 그 체결은 공식 종가에서 2센트 떨어져 있을 수도, 40bp일 수도 있고, 다른 유동성 풀이다. Russell 재구성일, 월말, 또는 트리플 위칭 금요일에 종가는 종종 당일 거래량의 두 자릿수 비중을 차지한다. 그게 유동성이었다. 당신은 그 안에 없었다.
우리는 이걸 실수로 페이퍼 트레이딩했다. 파라미터 조정이 15:48에 떨어졌다. 백테스트는 여전히 모든 종목을 공식 종가로 체결했다. 아무도 MOC를 연결해 두지 않아서 OMS는 16:00:03에 일반 시장가 주문을 보냈다. 시간외 체결, 몇 건의 거부, 그리고 파일이 종가까지 플랫이라고 한 날에 파일 대비 19bp 숏폴. 전략이 깨진 게 아니었다. 체결 규칙이 깨진 것이었다.
나는 아직도 15:49를 물리적인 장소로 생각한다. 누군가는 비중을 바꾸고 있다. 다른 누군가는 시계를 보고 있다. 컷오프는 둘 중 누가 맞든 상관하지 않는다.
그 언크로스를 실제로 요청하는 주문이 MOC이고, MOC조차 약속이 아니다. 거래 정지, LULD 일시정지, 취소된 경매, 한 번도 개장하지 않은 종목. 살아 있던 종가 주문이 죽으면 16:00에 플랫일 수 있다. LOC는 완전히 놓쳐도 된다. 언크로스가 $40.12이고 지정가가 $40.00이면 당신은 아무것도 갖지 못한다. 수많은 백테스트는 그래도 종가를 장부에 넣는다.
더 나쁜 것은, 어떤 벤더 파일은 어느 거래소 하나에서도 체결된 적 없는 합성 종가를 저장한다. 합성 가격에는 참여할 수 없다. 전략이 NYSE MOC를 냈을 것이라면, 의미 있는 체결은 NYSE 언크로스이고, 경매가 소화했을 수량이다.
정규장 마지막 체결을 종가라고 부르기
어떤 파이프라인은 원칙적으로 공식 종가를 거부하고 16:00 직전 마지막 SIP 체결을 가져간다. 그 체결은 적어도 "일어났다"는 이유에서다. 초대형주에서는 마지막 체결과 공식 종가가 1–2센트 차이인 경우가 많고, 눈치채지 못한다. 중형주에서 마지막 체결은 15:59:51의 200주, 잔여 표시 호가를 들어 올린 누군가의 서명일 수 있다. 2초 뒤 공식 종가는 다른 가격의 100만 주 언크로스다.
지수, ETF 설정 바스켓, 모든 MOC 리밸런스는 언크로스를 거래했다. 당신의 백테스트는 잔여 물량을 거래했다. 그리고 마지막 체결에는 당신의 수량이 붙어 있지 않다. 그 체결이 400주이고 클립이 5,000이면 당신은 그 가격을 받지 못했다. 마침 마지막이었던 타임스탬프를 받은 것이다.
나는 리밸런스 목요일에 마지막 체결과 공식 종가가 28센트 움직인 중형주 파일을 본 적이 있다. 마지막 체결을 쓴 백테스트는 더 "미시구조에 밝은" 것처럼 보였다. 그저 다르고 더 얇은 시장이었을 뿐이고, 그래도 우리가 그 200주였을 수 있다고 가정했다.
보수적으로 체결을 다음날 시가로 미루기
3번째 꼼수는 코드 리뷰에서 주석으로 나타난다. 종가를 거래할 수 있다고 가정하지 말자, 그러니 다음 시가로 체결하자. 어른스러워 들린다. 다른 전략을 만든다.
종가 대 종가 시그널을 다음 시가에 집행하면 오버나이트 갭을 삼킨 것이다. 많은 주식 팩터에서 그 갭은 당신이 가졌다고 생각한 움직임의 큰 조각이다. 시가로 체결한다고 백테스트가 신중해지는 것이 아니다. P&L을 애초에 거래하려 하지 않았던 세션으로 옮기고, 역시 모델링하지 않은 시가 경매에 떨어뜨린다.
서류상으로는 그 잔해를 오독하기 쉽다. 백테스트의 일간 P&L은 여전히 시그널과 맞춰진다. 페이퍼 북은 하룻밤의 지수 갭과 아침의 오프닝 크로스 슬리피지를 들고 있다. 사람들은 그다음 implementation shortfall을 놓고 논쟁하는데, 정직한 설명은 두 시스템이 같은 거래를 하고 있지 않다는 것이다.
하지만 시가도 경매다. 어제 컷오프를 놓쳤다고 해서 깨끗한 9:30 마지막 체결이 자동으로 생기는 것이 아니다. MOO/LOO 메커니즘, 불균형, 갭을 받는다. 그걸 보수적인 종가 체결이라고 부르는 것은 미덕인 척하는 주석 아래 모델링하지 않은 두 번째 크로스를 숨길 뿐이다.
| 장부에 넣은 체결 | 거래소가 실제로 필요했던 것 | 잔해의 모습 |
|---|---|---|
| 공식 종가, 주문 유형 없음 | 해당 거래소 컷오프 전에 접수된 MOC 또는 LOC | 시간외 체결, 거부, 또는 아무도 주관하지 않은 합성 가격 |
| 16:00 직전 마지막 SIP 체결 | 당신의 수량으로 당신이 될 수 있었던 거래 | 클립 체결로 취급한 200주 잔여 물량 |
| "더 안전한" 종가로서의 다음 시가 | 오프닝 크로스 모델, 그리고 오버나이트 갭 | 다른 전략, 여전히 경매, 여전히 놓침 |
정직한 구분은 작다. 리서치 계약이 우리가 종가에 있다고 하면, 주문은 종가 주문이고, NYSE에서는 15:50 전, Nasdaq에서는 15:55 전에 타임스탬프가 찍히고, 예상 종가 거래량에 맞춰 수량을 정하고, LOC라면 미체결로 만료되어도 된다. 아니면 우리는 종가에 없고, 그 경우 시간외 또는 다음 시가는 자체 경매를 가진 명시된 정책이며, 수익 곡선은 16:00 라벨을 벗는다.
우리는 이제 해당 거래소의 컷오프 안에 종가 주문이 앉아 있지 않은 채 공식 종가를 장부에 넣는 백테스트를 실패 처리한다. 꽤 멋진 일간 시그널 곡선 몇 개를 죽였다. 그 곡선들은 주장한 가격으로 결코 집행할 수 있는 것이 아니었다.
← 전체 글


