|
1 | | -# Maker Simulation v2 — Trade Tape (2026-05-13T03:50:03.951692+00:00) |
| 1 | +# Maker Simulation v3 — Trade Tape + Size-capped (2026-05-13T06:26:16.072251+00:00) |
2 | 2 |
|
3 | | -> **Post-review correction (2026-05-13)**: this report was generated before the simulator capped PnL by the thinnest at-or-below-target leg trade size and before maker quotes were forced to stay strictly below bestAsk. Treat the dollar figures below as a stale upper bound. Re-run `scripts/simulate_maker_basket_v2.py` with the corrected code before making any trade/no-trade decision. |
4 | | -
|
5 | | -**Method**: real Polymarket trade tape. For each (group, day, markup), check if any SELL Yes trade at price <= target occurred on each leg that day. If ALL legs had a qualifying trade, basket fills. |
| 3 | +**Method (v3 = v2 + 3 fixes WW caught)**: real Polymarket trade tape. |
| 4 | +For each (group, day, markup), check if any SELL Yes trade at price <= target occurred on each leg. **Realized basket units per fill = min(intended_basket, min-over-legs of sum of qualifying-trade sizes that day)**. Maker target strictly clamped below bestAsk and above bestBid; groups with spread < 0.002 skipped. |
6 | 5 |
|
7 | 6 | **Window**: 14 days (2026-04-29 -> 2026-05-13) |
8 | | -**Basket size**: $100 |
9 | | -**Trades fetched**: 48030 raw -> 1602 qualifying (SELL Yes in window) |
| 7 | +**Intended basket size**: $100 of payout per fill (capped by trade size) |
| 8 | +**Trades fetched**: 48033 raw -> 1603 qualifying (SELL Yes in window) |
10 | 9 | **Days with activity**: 15 |
| 10 | +**Markup levels with no valid maker (spread too narrow)**: 20 |
11 | 11 |
|
12 | | -## v1 (mid-touch) vs v2 (trade tape) comparison |
| 12 | +## Fixes vs prior version (v2 from earlier today) |
13 | 13 |
|
14 | | -v1 mid-touch results from earlier today (see `maker-simulation-2026-05-13.md`): |
15 | | -- Total daily $: $+42.59 across 72 groups |
16 | | -- Annualized: $+15,546/yr |
17 | | -- Caveat: mid touching != trade happening at that price |
| 14 | +1. **Income now capped by realized basket units, not intended size.** Previous formula `fill_rate * avg_edge * intended_basket` assumed every fill captured the full $100. Per WW's review, that overstates by 5-20x when avg trade size is 5-9 units. |
| 15 | +2. **Maker target clamped strictly below bestAsk.** Previously `max(target, bestBid+0.001)` could produce target = bestAsk for narrow spreads (crossing/taker, not maker). |
| 16 | +3. **Per-leg fill size = sum of qualifying SELL Yes trade sizes at price <= target**, not total all SELL Yes sizes regardless of price. |
18 | 17 |
|
19 | | -## v2 results (this run) |
| 18 | +## v3 results |
20 | 19 |
|
21 | | -- Total expected daily income: **$+2.51/day** across 72 groups @ $100 basket |
22 | | -- Annualized: **$+918/yr** |
23 | | -- Groups with positive expected income at any markup: **17/72** |
| 20 | +- Total expected daily income: **$-0.72/day** across 72 groups @ $100 intended basket |
| 21 | +- Annualized: **$-263/yr** |
| 22 | +- Groups with positive expected income at any markup: **18/72** |
24 | 23 |
|
25 | | -## Top 20 by best expected daily income (v2) |
| 24 | +## Top 20 by best expected daily income (v3) |
26 | 25 |
|
27 | | -| Group | Q | Best markup | Fill rate | Avg edge | Avg sell size | Exp daily $ | |
| 26 | +| Group | Q | Best markup | Fill rate | Edge/unit | Avg realized units | Exp daily $ | |
28 | 27 | |---|---|---:|---:|---:|---:|---:| |
29 | | -| `0x2ecd963d91df...` | Will the Democrats win the Iow vs Will the Re | $0.030 | 20.0% | +5.027% | 77 | $+1.005 | |
30 | | -| `0x5cddfa5bafea...` | Will the Democrats win the Geo vs Will the Re | $0.030 | 20.0% | +3.887% | 9 | $+0.777 | |
31 | | -| `0x7146f4aff656...` | Will the Democrats win the Ill vs Will the Re | $0.050 | 6.7% | +5.738% | 5 | $+0.383 | |
32 | | -| `0x195e8f642b07...` | Will the Democrats win the Tex vs Will the Re | $0.020 | 13.3% | +2.728% | 3 | $+0.364 | |
33 | | -| `0xb17c29a2fb22...` | Will the Democrats win the Ten vs Will the Re | $0.020 | 6.7% | +5.138% | 6 | $+0.343 | |
34 | | -| `0x2aa7cf1991dd...` | Will the Democrats win the Kan vs Will the Re | $0.050 | 6.7% | +5.001% | 10 | $+0.333 | |
35 | | -| `0x6473c875a3d6...` | Will the Democrats win the New vs Will the Re | $0.030 | 13.3% | +2.442% | 5 | $+0.326 | |
36 | | -| `0xac17bb3e2188...` | Will the Democrats win the New vs Will the Re | $0.020 | 13.3% | +1.732% | 1 | $+0.231 | |
37 | | -| `0xd4118b02b567...` | Will the Democrats win the Pen vs Will the Re | $0.020 | 6.7% | +3.282% | 5 | $+0.219 | |
38 | | -| `0x4e43ba407ed4...` | Will the Democrats win the Wis vs Will the Re | $0.030 | 6.7% | +2.476% | 11 | $+0.165 | |
39 | | -| `0x209eca0d8c37...` | Will the Democrats win the Wyo vs Will the Re | $0.030 | 6.7% | +2.183% | 6 | $+0.146 | |
40 | | -| `0x7bd878bdc3cd...` | Will the Democrats win the Nev vs Will the Re | $0.050 | 6.7% | +1.823% | 10 | $+0.122 | |
41 | | -| `0x8941a4153cb2...` | Will the Democrats win the Ver vs Will the Re | $0.010 | 6.7% | +1.546% | 5 | $+0.103 | |
42 | | -| `0x2a010ed53626...` | Will the Democrats win the Flo vs Will the Re | $0.020 | 6.7% | +1.498% | 5 | $+0.100 | |
43 | | -| `0xb61918837517...` | Will the Democrats win the Nor vs Will the Re | $0.010 | 6.7% | +0.725% | 343 | $+0.048 | |
44 | | -| `0x82cc8472987c...` | Will the Democrats win the Kan vs Will the Re | $0.010 | 6.7% | +0.672% | 12 | $+0.045 | |
45 | | -| `0x1304dee4404b...` | Will the Democrats win the Ari vs Will the Re | $0.010 | 6.7% | +0.341% | 5 | $+0.023 | |
46 | | -| `0xb23e25438839...` | Aaron Taylor-Johnson announced vs James Norto | $0.005 | 0.0% | +0.000% | 0 | $+0.000 | |
47 | | -| `0x07311e10dac6...` | Will the Democrats win the Ala vs Will the Re | $0.005 | 0.0% | +0.000% | 0 | $+0.000 | |
48 | | -| `0x25025e1a8d9b...` | Will the Democrats win the Ark vs Will the Re | $0.005 | 0.0% | +0.000% | 0 | $+0.000 | |
| 28 | +| `0x5cddfa5bafea...` | Will the Democrats win the Geo vs Will the Re | $0.030 | 20.0% | +3.887% | 9.4 | $+0.073 | |
| 29 | +| `0xb61918837517...` | Will the Democrats win the Nor vs Will the Re | $0.010 | 6.7% | +0.725% | 100.0 | $+0.048 | |
| 30 | +| `0x2ecd963d91df...` | Will the Democrats win the Iow vs Will the Re | $0.030 | 20.0% | +5.027% | 4.0 | $+0.040 | |
| 31 | +| `0x2aa7cf1991dd...` | Will the Democrats win the Kan vs Will the Re | $0.050 | 6.7% | +5.992% | 10.0 | $+0.040 | |
| 32 | +| `0x4e43ba407ed4...` | Will the Democrats win the Wis vs Will the Re | $0.030 | 6.7% | +2.476% | 10.9 | $+0.018 | |
| 33 | +| `0x6473c875a3d6...` | Will the Democrats win the New vs Will the Re | $0.030 | 13.3% | +2.442% | 5.0 | $+0.016 | |
| 34 | +| `0x7146f4aff656...` | Will the Democrats win the Ill vs Will the Re | $0.050 | 6.7% | +4.772% | 5.0 | $+0.016 | |
| 35 | +| `0xb17c29a2fb22...` | Will the Democrats win the Ten vs Will the Re | $0.010 | 6.7% | +3.341% | 6.0 | $+0.013 | |
| 36 | +| `0x195e8f642b07...` | Will the Democrats win the Tex vs Will the Re | $0.020 | 13.3% | +2.728% | 3.4 | $+0.012 | |
| 37 | +| `0xd4118b02b567...` | Will the Democrats win the Pen vs Will the Re | $0.020 | 6.7% | +3.282% | 5.0 | $+0.011 | |
| 38 | +| `0x209eca0d8c37...` | Will the Democrats win the Wyo vs Will the Re | $0.030 | 6.7% | +2.391% | 6.2 | $+0.010 | |
| 39 | +| `0x7bd878bdc3cd...` | Will the Democrats win the Nev vs Will the Re | $0.050 | 6.7% | +1.012% | 10.0 | $+0.007 | |
| 40 | +| `0x2a010ed53626...` | Will the Democrats win the Flo vs Will the Re | $0.020 | 6.7% | +1.498% | 5.0 | $+0.005 | |
| 41 | +| `0x12dddaa9289c...` | Will the Democrats win the Ken vs Will the Re | $0.030 | 6.7% | +0.426% | 16.3 | $+0.005 | |
| 42 | +| `0x8941a4153cb2...` | Will the Democrats win the Ver vs Will the Re | $0.020 | 6.7% | +0.521% | 5.0 | $+0.002 | |
| 43 | +| `0x82cc8472987c...` | Will the Democrats win the Kan vs Will the Re | $0.010 | 6.7% | +0.672% | 3.9 | $+0.002 | |
| 44 | +| `0xac17bb3e2188...` | Will the Democrats win the New vs Will the Re | $0.020 | 13.3% | +1.732% | 0.7 | $+0.002 | |
| 45 | +| `0x1304dee4404b...` | Will the Democrats win the Ari vs Will the Re | $0.010 | 6.7% | +0.341% | 5.0 | $+0.001 | |
| 46 | +| `0xb23e25438839...` | Aaron Taylor-Johnson announced vs James Norto | $0.005 | 0.0% | +0.000% | 0.0 | $+0.000 | |
| 47 | +| `0x07311e10dac6...` | Will the Democrats win the Ala vs Will the Re | $0.005 | 0.0% | +0.000% | 0.0 | $+0.000 | |
| 48 | + |
| 49 | +## Markup-level aggregate (v3) |
| 50 | + |
| 51 | +| Markup | Avg fill rate | Avg edge/unit | Avg realized units | Groups positive | Total daily $ | |
| 52 | +|---:|---:|---:|---:|---:|---:| |
| 53 | +| $0.005 | 5.9% | -1.266% | 19.7 | 7/72 | $-2.09 | |
| 54 | +| $0.010 | 5.8% | -0.382% | 19.8 | 13/72 | $-1.04 | |
| 55 | +| $0.020 | 5.7% | +0.241% | 20.1 | 15/72 | $-0.88 | |
| 56 | +| $0.030 | 5.6% | +0.656% | 19.4 | 16/72 | $-0.78 | |
| 57 | +| $0.050 | 5.4% | +0.903% | 20.0 | 15/72 | $-0.75 | |
49 | 58 |
|
50 | | -## Markup-level aggregate (v2) |
| 59 | +## Notes / honest disclaimers |
51 | 60 |
|
52 | | -| Markup | Avg fill rate | Avg edge given fill | Groups positive | Total daily $ | |
53 | | -|---:|---:|---:|---:|---:| |
54 | | -| $0.005 | 5.5% | -1.067% | 8/72 | $-5.02 | |
55 | | -| $0.010 | 5.5% | -0.180% | 13/72 | $-1.62 | |
56 | | -| $0.020 | 5.4% | +0.638% | 16/72 | $+0.98 | |
57 | | -| $0.030 | 5.1% | +0.932% | 15/72 | $+1.79 | |
58 | | -| $0.050 | 4.9% | +1.102% | 15/72 | $+1.85 | |
| 61 | +- Real Polymarket trade tape. SELL Yes trades at price <= target are the only ones that would have hit a resting maker bid. |
| 62 | +- Realized basket units = min(intended_basket, min_over_legs of total qualifying-trade size that day). This is the **upper bound** on what we could have filled. |
| 63 | +- Still optimistic on (a) queue priority — assumes our bid was first in line at our price level, (b) per-leg fills are independent within a day. |
| 64 | +- Maker fee assumed = taker fee_rate from feeSchedule. Polymarket maker fees are sometimes lower or rebated — actual income could be slightly HIGHER from fees alone. |
| 65 | +- Realistic adjustment: discount by 0.4-0.6x for queue priority + correlation + gas, additional partial-fill hedging risk. |
59 | 66 |
|
60 | | -## Notes |
| 67 | +## Comparison to prior versions |
61 | 68 |
|
62 | | -- This uses the REAL trade tape — every SELL Yes trade in the past 14 days at price <= target is counted as a potential fill. |
63 | | -- Still optimistic: assumes (a) our resting bid was first in queue, (b) our size was always available, (c) per-leg fills are independent within a day. |
64 | | -- avg_min_leg_sell_size = avg of (min sell-size across legs on filled days). If this is < intended basket size, we couldn't have filled in full. |
65 | | -- Maker fee assumed equal to taker fee_rate from feeSchedule. Polymarket maker fees may be lower or rebated — actual income could be HIGHER. |
66 | | -- v2 vs v1 mismatch: v2 < v1 means mid-touch over-counts (less real trade activity at target); v2 > v1 means mid-touch under-counts (trades happened that mid-snapshot didn't capture). |
| 69 | +| Version | Method | Annualized | Issue | |
| 70 | +|---|---|---:|---| |
| 71 | +| v1 (mid-touch) | did mid touch target on day d | $15,546 | Massively over-counted; mid touching != fill | |
| 72 | +| v2 (trade tape, size-uncapped) | sum SELL-Yes sizes regardless of target | $918 | Income computed at full $100/fill regardless of trade size | |
| 73 | +| **v3 (this run)** | per-target qualifying sizes, capped income | **$-263** | Honest within stated assumptions | |
67 | 74 |
|
68 | 75 | --- |
69 | | -*Snapshot: 2026-05-13T03:50:03.951692+00:00* |
| 76 | +*Snapshot: 2026-05-13T06:26:16.072251+00:00* |
0 commit comments