created_at 기준으로 주문이 분 안의 어느 초에 몰려 있는지 봅니다.
x축은 0~60초, bin size는 1초입니다.
CloudWatch /crackshot의 Created order: status=failed 로그를 읽고,
failed 로그 시각 직전 30초 안에 생성된 주문은 모두 안 들어간 주문으로 간주합니다.
아래 failure ratio는 전체 주문 대비 비율이고, reason breakdown은 실패 주문 내부 비율과 전체 주문 대비 비율을 함께 보여줍니다.
| Failure Reason | Count | % of Failed | % of Total |
|---|---|---|---|
| 주문수량 오류 | 315 | 100.0% | 8.7% |
먼저 주문 시각 기준 -1.0s ~ +60.0s 안의 동일 market/side real fill row를 모으되,
다음 분으로 넘어간 체결은 제외하고 같은 분 안의 체결만 봅니다.
그 다음 다음 같은 market/side 주문이 생성되기 전까지만 현재 주문의 체결로 인정해서 중복 귀속을 막습니다.
그렇게 귀속된 체결 중 -1.0s ~ +3.0s 구간은 taker component,
그 이후 같은 분 안에서 남는 체결은 maker component로 분리합니다.
아래 집계와 품질 비교는 failed 로그 직전 30초 window에 걸린 주문을 제외한 valid order만 기준입니다.
| side | valid orders | real matched (guarded) | taker orders | maker orders | both | taker only | maker only | taker notional share | maker notional share |
|---|---|---|---|---|---|---|---|---|---|
| total | 3,293 | 567 | 560 | 7 | 0 | 560 | 7 | 97.7% | 2.3% |
| buy | 1,603 | 272 | 270 | 2 | 0 | 270 | 2 | 98.9% | 1.1% |
| sell | 1,690 | 295 | 290 | 5 | 0 | 290 | 5 | 96.4% | 3.6% |
quality 계산은 Part 2의 real quality 형식을 따르되, 이 리포트에서는 수수료를 편도 1회만 반영합니다.
진입가는 매칭된 실제 체결가(average_price), 청산은 진입 후 120개 거래 분봉 뒤 close, 수수료는 fee_rate 1회를 차감했습니다.
taker component와 maker component 모두 position cap은 적용하지 않습니다.
| side | notional-wtd mean | std | n |
|---|---|---|---|
| total | -25.1 bp | 238.0 bp | 503 |
| buy | -52.3 bp | 237.2 bp | 231 |
| sell | +4.6 bp | 236.7 bp | 272 |
| side | notional-wtd mean | std | n |
|---|---|---|---|
| total | -32.6 bp | 234.1 bp | 496 |
| buy | -52.3 bp | 237.8 bp | 229 |
| sell | -10.4 bp | 229.2 bp | 267 |
| side | notional-wtd mean | std | n |
|---|---|---|---|
| total | +262.6 bp | 451.6 bp | 7 |
| buy | -50.9 bp | 222.0 bp | 2 |
| sell | +373.8 bp | 535.5 bp | 5 |
taker / maker component 각각에 대해, 체결 지연시간과 120분 quality의 관계를 봅니다. marker 크기는 해당 component의 체결 notional에 비례하고, 색은 buy / sell을 구분합니다.