09:00 UTC, 우리 크로스섹션 암호화폐 선물 전략은 10개의 무기한 계약에 걸쳐 $200,000를 재배분하려 했습니다. 백테스트에서 거래 비용은 4bp였습니다. 같은 신호와 거래소 수수료 등급을 적용한 페이퍼 트레이딩에서는 20bp를 조금 넘는 비용이 추정됐습니다.
수수료 체계에는 문제가 없었습니다. 수수료를 계산해 놓고 이를 체결 비용이라고 부른 것이 문제였습니다. 전략이 유동성 높은 시장에서 적당한 규모로 주문을 내고 하루에 한 번만 포트폴리오를 교체했기 때문에 그 실수는 눈에 띄지 않았습니다. 각 표현은 주문이 실제로 어떤 가격에 체결될 수 있는지 묻기 전까지는 안심이 되는 말처럼 들렸습니다.
이 리밸런싱 사례는 비용을 하나씩 뜯어보기 좋았습니다. 시장 가격을 무한한 수량으로 살 수 있는 것처럼 취급하면 수수료가 낮은 백테스트도 비용을 과소평가할 수 있음을 보여줬습니다.
먼저 주문 목록을 살펴봤습니다. 전략은 가장 강한 계약 5개를 매수하고 가장 약한 계약 5개를 매도했으며, 달러 기준 비중은 동일했습니다. 대부분의 포지션에서 조정해야 할 금액은 약 $20,000였습니다. 한 계약은 $3,400만 조정하면 됐고, 다른 계약은 $31,000을 조정해야 했습니다. 백테스트는 모든 거래를 해당 봉의 종가로 평가한 다음, 매수와 매도 각각에 거래소의 2bp 테이커 수수료를 부과했습니다.
| 비용 항목 | 백테스트 가정 | 페이퍼 트레이딩 추정치 |
|---|---|---|
| 거래소 수수료, 매수·매도 각각 | 2 bp | 2 bp |
| 스프레드, 매수·매도 각각 | 0 bp | 약 4 bp |
| 시장 충격 및 지연, 매수·매도 각각 | 0 bp | 약 4 bp |
| 왕복 거래 추정치 | 4 bp | 약 20 bp |
페이퍼 트레이딩 추정치는 체결을 보장하는 값이 아니었습니다. 이는 의사결정 시점의 관측 스프레드에 주문 규모와 최근 거래량을 바탕으로 한 시장 충격 추정치를 더하고, 주문 제출과 체결에 필요한 시간에 대해 약간의 여유분을 반영한 비용 모델이었습니다. 마지막 여유분은 의도적으로 대략적인 값으로 두었습니다. 불확실성을 없애 주는 모델은 유용하기보다 마음을 편하게 해 줄 뿐입니다.
먼저 스프레드를 확인했습니다. 신호는 완료된 1분 봉을 기준으로 계산했으므로, 해당 봉이 마감된 뒤에야 전략이 주문을 제출할 수 있었습니다. 각 계약마다 주문이 거래소에 도달했을 시점에 이용할 수 있었던 최우선 매수호가와 매도호가를 확인했습니다. 중간값은 비교 기준이지 실제로 체결 가능한 가격이 아니었습니다. 매수는 매도호가에서 시작하고, 매도는 매수호가에서 시작합니다.
이 차이만으로도 평균 종목에서 왕복 기준 약 8bp가 설명됐습니다. 계약과 분에 따라 차이는 달랐습니다. 가장 유동성이 높은 계약은 매수·매도 각각 약 2 bp였습니다. 유동성이 낮은 계약은 스프레드가 9 bp까지 벌어졌습니다. 모든 주문에 동일한 스프레드 값을 적용했다면 우리가 확인해야 할 바로 그 차이를 가렸을 것입니다.
다음은 주문 규모였습니다. $20,000 시장가 매수는 최우선 매도호가 잔량을 크게 소진하지 않고 체결되는 경우가 많지만, ‘많다’는 것은 그 순간의 호가창에 달려 있습니다. 스냅샷에 표시된 호가 잔량을 따라가며 시장 충격을 추정했습니다. 각 가격대에 얼마의 호가 금액이 있었는지, 주문을 체결할 만큼의 잔량을 소진했을 때 거래량 가중 평균 가격이 얼마가 되는지 계산했습니다. $31,000 조정 주문의 경우 스냅샷은 중간값 대비 약 6 bp의 추가 비용을 시사했습니다. $3,400 주문은 추정치에 거의 영향을 주지 않았습니다.
그리고 스냅샷 자체도 완벽하지 않았습니다. 스냅샷에는 표시된 잔량만 담길 뿐, 숨은 유동성이나 주문이 도착했을 때 남아 있을 잔량은 반영되지 않았습니다. 암호화폐 호가창은 관측 시점과 주문 제출 시점 사이에도 바뀔 수 있습니다. 듬성듬성 수집한 스냅샷으로 만든 백테스트로는 그 대기 순서를 정확히 복원할 수 없습니다. 우리는 호가창 정보를 이용해 가능한 비용 범위를 추정한 다음, 추정치가 지속적으로 낙관적인지 페이퍼 체결 결과와 비교했습니다.
시장가 주문에서 중간값은 측정 기준입니다. 실제 매수하거나 매도한 가격은 아닙니다.
세 가지 가정으로 리밸런싱을 시뮬레이션했습니다. 스프레드만 넘고 잔량은 무시하면 왕복 기준 12 bp로 추정됐습니다. 표시된 호가창 잔량을 따라가자 18 bp로 올라갔습니다. 거래소 수수료를 더하고 지연에 대해 매수·매도 각각 2 bp의 여유분을 추가하자 추정치는 약 22 bp가 됐습니다. 정확한 수치는 주문 목록과 호가창 스냅샷에 따라 달랐지만, 비용이 늘어난다는 점은 달라지지 않았습니다.
그렇다고 전략을 포기할 이유는 없었습니다. 전략이 제안하는 거래에 따라 달라지는 비용을 반영해 백테스트를 다시 실행할 이유가 생겼습니다. 주문별 스프레드와 시장 충격 추정치를 추가하고, 보고서에서는 수수료를 별도로 유지했습니다. 또한 각 모의 체결 옆에 비교 기준, 타임스탬프, 가정한 체결 방식을 기록했습니다.
다음 페이퍼 트레이딩에서는 한 계약의 주문을 더 작은 단위로 나눴습니다. 첫 주문 조각이 예상보다 많은 잔량을 소진했기 때문입니다. 전략 신호는 바뀌지 않았습니다. 체결 방식이 달라졌고, 그것만으로도 비용 귀속이 달라졌습니다.
백테스트에서 리밸런싱 비용이 수수료뿐이라고 나온다면, 모든 체결에 대해 가격, 규모, 그리고 당시 이용 가능한 유동성을 보여 달라고 해 보세요. 설득력 있는 답은 ‘슬리피지’라고 적힌 단일 숫자가 아니라 이런 구체적인 정보에서 시작합니다.
← 전체 글


