created_at 기준으로 주문이 분 안의 어느 초에 몰려 있는지 봅니다.
x축은 0~60초, bin size는 1초입니다.
CloudWatch /crackshot-kospi200의 Created order: status=failed 로그를 읽고,
failed 로그 시각 직전 30초 안에 생성된 주문은 모두 안 들어간 주문으로 간주합니다.
아래 failure ratio는 전체 주문 대비 비율이고, reason breakdown은 실패 주문 내부 비율과 전체 주문 대비 비율을 함께 보여줍니다.
| Failure Reason | Count | % of Failed | % of Total |
|---|---|---|---|
| 주문가능금액 초과 | 242 | 92.7% | 18.5% |
| 주문수량 오류 | 19 | 7.3% | 1.5% |
먼저 주문 시각 기준 -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 | 1,049 | 419 | 411 | 8 | 0 | 411 | 8 | 98.1% | 1.9% |
| buy | 552 | 232 | 225 | 7 | 0 | 225 | 7 | 97.2% | 2.8% |
| sell | 497 | 187 | 186 | 1 | 0 | 186 | 1 | 99.3% | 0.7% |
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 | +26.3 bp | 249.3 bp | 404 |
| buy | -17.3 bp | 223.3 bp | 224 |
| sell | +79.0 bp | 268.7 bp | 180 |
| side | notional-wtd mean | std | n |
|---|---|---|---|
| total | +27.1 bp | 251.3 bp | 396 |
| buy | -18.0 bp | 226.1 bp | 217 |
| sell | +80.3 bp | 269.1 bp | 179 |
| side | notional-wtd mean | std | n |
|---|---|---|---|
| total | -14.3 bp | 114.4 bp | 8 |
| buy | +5.5 bp | 115.1 bp | 7 |
| sell | -116.3 bp | nan bp | 1 |
taker / maker component 각각에 대해, 체결 지연시간과 120분 quality의 관계를 봅니다. marker 크기는 해당 component의 체결 notional에 비례하고, 색은 buy / sell을 구분합니다.