Polymarket & Kalshi 예측 시장 전략 백테스트 방법
예측 시장 백테스팅은 주식 백테스팅이 아닙니다. 계약은 $0 또는 $1로 정산되고, 윈도우는 수분 길이이며, 마감 근처에서 호가창이 얕아집니다. 정직하게 하는 방법을 알아봅니다.
예측 시장 전략을 정직하게 백테스트하려면 각 마켓이 거래됐을 기록된 호가창을 재현하고, 실제로 잔량이 있던 유동성을 기준으로 각 체결 크기를 정하고, 각 포지션을 실제 $0/$1 결과로 정산해야 합니다. DepthFeed에서는 두 가지 방법으로 이를 수행할 수 있습니다 — Backtest Lab에서 노코드로, 또는 자체 스택에서 데이터 API를 통해 — 이후 페이퍼 트레이딩으로 라이브 호가창에서 살아남은 전략을 전방 테스트합니다.
예측 시장 백테스팅이 다른 이유
예측 시장 계약은 주식이나 선물이 아닙니다. 각 결과는 0에서 1 사이 — 내재 확률 — 로 호가되며, 정산 시 한쪽은 정확히 $1, 다른 쪽은 $0의 가치를 갖습니다. 크립토 up/down 마켓은 참조 가격 대비 5분에서 60분 안에 정산되고, 마감에 가까워질수록 스프레드가 벌어지고 깊이가 얕아지며, 마켓의 전체 수명이 일반 차트의 단일 캔들보다 짧을 수 있습니다.
이 특성이 백테스트에 필요한 것을 바꿉니다. 분당 한 번 최종 가격을 샘플링하면 5분 마켓의 대부분을 놓칩니다. 호가창을 무시하면 최대 1달러를 지불하는 계약에서 P&L을 결정하는 스프레드가 숨겨집니다. 정산을 잘못 레이블링하면 승자와 패자가 뒤바뀝니다. 이 가이드의 나머지 부분은 이 각각을 올바르게 처리하는 방법에 관한 것입니다.
1단계 — 실제 호가창에서 시작
백테스트는 데이터만큼만 정직할 수 있습니다. 양쪽 모두의 크기가 있는 모든 잔량 매수/매도호가를 포함한 전체 호가창이 필요합니다. 고정 클락이 아닌 변경 시마다 캡처해야 합니다. 이벤트 기반 캡처만이 단기 마켓의 전체 아크를 볼 수 있는 유일한 방법이기 때문입니다. Polymarket도 Kalshi도 자체 히스토리 호가창 깊이를 제공하지 않으므로, 당시 호가창을 재현하려면 지속적으로 캡처한 제공자가 필요합니다.
DepthFeed는 두 거래소 모두를 하나의 스키마로 정확히 제공합니다. Polymarket은 CLOB 웹소켓에서 이벤트 기반으로 캡처하고, Kalshi는 양쪽 최대 100레벨의 전체 깊이로 지속적으로 폴링하며, 각 스냅샷에는 에포크 밀리초 타임스탬프와 조인된 기초 크립토 참조 가격이 포함됩니다. 하나의 로더가 두 거래소를 모두 읽습니다.
2단계 — 미드가 아닌 깊이를 기준으로 체결 모델링
이것이 실제로 거래할 수 있는 백테스트와 거짓 백테스트를 구분하는 단계입니다. 시장가 주문은 호가창을 따라갑니다 — 최우선 레벨을 먼저 체결하고 다음으로 이동하므로, 최우선 레벨 이상을 소화할 때마다 평균 가격이 최우선 호가보다 나빠집니다. 지정가 주문은 대기열에 합류하여 시장이 충분한 크기로 해당 가격을 통과할 때만 체결됩니다. 모든 것을 슬리피지 없이 미드에서 체결하는 것은 대부분의 비공식 백테스트의 기본값으로, 체계적으로 엣지를 과대평가합니다.
어떤 경로를 선택하든 깊이 인식 체결을 고집하세요. 최대 1달러를 지불하는 계약에서 4센트 왕복 스프레드에서 미드 체결과 실제 체결의 차이는 엄청납니다 — 그리고 모든 거래에 걸쳐 복리로 쌓입니다.
3단계 — 실제 결과로 정산
지급이 이진이기 때문에 정산은 반올림 세부 사항이 아닙니다 — P&L의 대부분입니다. Polymarket up/down 마켓은 시가에 설정된 '이겨야 할 가격'과 종가의 최종 참조를 기준으로 정산됩니다. Kalshi 계약은 만기 시 공표된 참조 가격에 대해 예/아니오로 정산됩니다. 가정이 아닌 실제 정산을 기준으로 백테스트하고, 분할을 정상성 검사하세요. 우리가 캡처한 정산된 크립토 up/down 마켓 전반에서 결과는 동전 던지기에 가깝습니다. 따라서 정산이 그것에서 크게 벗어나는 백테스트는 아마도 승자를 잘못 레이블링하고 있을 것입니다.
4단계 — 워크플로 선택: 노코드 또는 API
DepthFeed에서 위의 모든 것을 실행하는 두 가지 방법이 있습니다. 노코드 경로는 Backtest Lab입니다. 코인과 윈도우를 선택하고, 프리셋을 고르거나 짧은 규칙을 작성하고, 체결 모델을 선택하면 정산된 마켓을 재현하고 브라우저에서 정산해 줍니다 — 깊이 인식 VWAP 체결 포함, 파이프라인 구축 불필요.
API 경로는 규모에 맞는 커스텀 연구를 위한 것입니다. REST API로 전체 깊이 스냅샷을 가져와 자체 스택에서 호가창을 재구성하고 원하는 모델을 실행합니다. 히스토리 REST API와 라이브 WebSocket이 동일한 JSON을 출력하므로, 히스토리를 재현하기 위해 작성한 로더가 변경 없이 라이브 피드를 읽습니다 — 백테스트한 정확한 코드로 거래합니다.
5단계 — 자본 위험 전에 전방 테스트
백테스트는 아무리 가볍게도 과거에 맞춰져 있으므로, 마지막 단계는 살아남은 전략을 아무도 결과를 모르는 마켓에서 전방으로 실행하는 것입니다. 규칙을 페이퍼 트레이딩에 배포하거나 — 웹훅을 통해 자체 봇으로 구동하거나 — 가상 현금으로 라이브 호가창에서 거래하고, 실제 매수/매도호가에서 체결하고 정산 시 자동으로 정산됩니다. 쌓인 자산 곡선이 백테스트가 제공할 수 없는 전방 증거입니다.
이것으로 루프가 완성됩니다: 데이터 → 정직한 백테스트 → 전방 테스트. 히스토리에서 저렴하게 아이디어를 제거하고, 살아남은 것을 라이브 페이퍼 호가창으로 졸업시키고, 그 이후에야 실제 자본을 고려합니다.
흔한 함정
- 최종 가격 또는 시간별 데이터: 스프레드를 숨기고 5~60분 마켓의 수명을 놓칩니다.
- 미드 체결: 슬리피지 없음을 가정하면 최대 $1을 지불하는 계약에서 엣지를 심각하게 과대평가합니다.
- 가정된 정산: 추측이 아닌 실제 참조 가격에서 승자를 레이블링하세요 — P&L의 대부분입니다.
- 미래 정보 유출 편향: 결정 시점 이전의 수신 타임스탬프가 있는 데이터에만 반응하세요.
- 전방 테스트 건너뛰기: 정산된 히스토리에서만 존재하는 엣지는 라이브 마켓에서 살아남지 못할 수 있습니다.
Key takeaways
- 01예측 시장은 수분 안에 $0/$1로 정산되므로 깊이, 타이밍, 정산이 일반 차트보다 훨씬 중요합니다.
- 02실제 기록된 호가창 — 양쪽 모두, 모든 레벨 — 에서 샘플링이 아닌 변경 시마다 캡처된 것을 기준으로 백테스트하세요.
- 03깊이를 기준으로 체결을 모델링하세요(호가창 따라가기). 미드 체결은 최대 $1을 지불하는 계약에서 조용히 엣지를 과대평가합니다.
- 04실제 정산에서 정산하고 동전 던지기에 가까운 분할을 정상성 검사하세요. 잘못 레이블링된 정산은 승자를 뒤집습니다.
- 05Backtest Lab에서 노코드로 또는 API를 통해 실행하고, 이후 페이퍼 트레이딩으로 라이브 호가창에서 살아남은 전략을 전방 테스트하세요.
예측 시장 백테스팅은 주식 백테스팅이 아닙니다. 계약은 $0 또는 $1로 정산되고, 윈도우는 수분 길이이며, 마감 근처에서 호가창이 얕아집니다. 정직하게 하는 방법을 알아봅니다.
무료로 시작