|
| 1 | +# Maker Simulation v4 — Corrected fee + train/test split (2026-05-15T04:03:10.554424+00:00) |
| 2 | + |
| 3 | +**Method**: v3 plumbing + two fixes: |
| 4 | + (A) maker fee mode = `zero` (v3 used taker_rate, which was wrong; Polymarket docs: "makers never pay fees") |
| 5 | + (B) 10-day in-sample / 4-day OOS split. Top 18 groups picked by IN-SAMPLE daily $; their OOS sum reported separately. |
| 6 | + |
| 7 | +**Window**: 14 days (2026-03-20 -> 2026-05-15) |
| 8 | +**Basket size cap**: $100 |
| 9 | +**Trades fetched**: 48025 raw -> 1331 qualifying |
| 10 | +**Days with trade activity**: in-sample 10, OOS 4 |
| 11 | +**takerOnly distribution across our markets**: {True: 139} |
| 12 | + |
| 13 | +## Headline (with maker fee = 0) |
| 14 | + |
| 15 | +| Verdict | Daily $ | Annualized | |
| 16 | +|---|---:|---:| |
| 17 | +| Naive (all 68 groups), in-sample | $+0.36 | $+132 | |
| 18 | +| Naive (all 68 groups), OOS | $-3.06 | $-1,117 | |
| 19 | +| Whole window (no split) | $-0.62 | $-225 | |
| 20 | +| **Top 18 by in-sample, in-sample** | $+0.36 | $+132 | |
| 21 | +| **Top 18 by in-sample, OOS** ← honest verdict | $+0.40 | $+147 | |
| 22 | + |
| 23 | +If top-N OOS << top-N in-sample, the top-N looks like overfitting. |
| 24 | +OOS / in-sample ratio for top-18: 1.12 |
| 25 | + |
| 26 | +## Top 18 groups — in-sample picked, OOS measured |
| 27 | + |
| 28 | +| Rank | Group | Q | Best markup | IS daily $ | OOS daily $ | OOS/IS | |
| 29 | +|---:|---|---|---:|---:|---:|---:| |
| 30 | +| 1 | `0xf5f3857c3391...` | Will the Democrats win the Ohi vs Will the | $0.030 | $+0.126 | $+0.168 | +1.34 | |
| 31 | +| 2 | `0x82cc8472987c...` | Will the Democrats win the Kan vs Will the | $0.020 | $+0.036 | $+0.000 | +0.00 | |
| 32 | +| 3 | `0x4e43ba407ed4...` | Will the Democrats win the Wis vs Will the | $0.050 | $+0.033 | $+0.133 | +4.08 | |
| 33 | +| 4 | `0x64111969ce49...` | Will the Democrats win the New vs Will the | $0.020 | $+0.028 | $+0.000 | +0.00 | |
| 34 | +| 5 | `0x2aa7cf1991dd...` | Will the Democrats win the Kan vs Will the | $0.030 | $+0.028 | $+0.017 | +0.62 | |
| 35 | +| 6 | `0xcd24472b2d86...` | Will the Democrats win the Col vs Will the | $0.020 | $+0.026 | $+0.000 | +0.00 | |
| 36 | +| 7 | `0x5a57c20b2083...` | Will the Democrats win the Ida vs Will the | $0.020 | $+0.025 | $+0.062 | +2.43 | |
| 37 | +| 8 | `0xc28de9467003...` | Will the Democrats win the Tex vs Will the | $0.020 | $+0.018 | $+0.000 | +0.00 | |
| 38 | +| 9 | `0xd251f99f27d7...` | Will the Democrats win the New vs Will the | $0.030 | $+0.013 | $+0.021 | +1.64 | |
| 39 | +| 10 | `0x2a010ed53626...` | Will the Democrats win the Flo vs Will the | $0.030 | $+0.009 | $+0.001 | +0.11 | |
| 40 | +| 11 | `0xd4118b02b567...` | Will the Democrats win the Pen vs Will the | $0.020 | $+0.008 | $+0.000 | +0.00 | |
| 41 | +| 12 | `0xfbc9abdccc8a...` | Will the Democrats win the Flo vs Will the | $0.030 | $+0.006 | $+0.000 | +0.00 | |
| 42 | +| 13 | `0x67d0d210eee8...` | Will the Democrats win the Sou vs Will the | $0.005 | $+0.004 | $+0.000 | +0.00 | |
| 43 | +| 14 | `0xac17bb3e2188...` | Will the Democrats win the New vs Will the | $0.005 | $+0.002 | $+0.002 | +1.07 | |
| 44 | +| 15 | `0xa80fa85f7e10...` | Will the Democrats win the Geo vs Will the | $0.010 | $+0.000 | $+0.000 | +0.00 | |
| 45 | +| 16 | `0x22725f09e6a3...` | Will the Democratic Party cont vs Will the | $0.005 | $+0.000 | $+0.000 | +0.00 | |
| 46 | +| 17 | `0xd4ec843b5228...` | Will the Democratic Party cont vs Will the | $0.005 | $+0.000 | $+0.000 | +0.00 | |
| 47 | +| 18 | `0xdc4bd1724b69...` | Will the Republicans win the 2 vs Will the | $0.005 | $+0.000 | $+0.000 | +0.00 | |
| 48 | + |
| 49 | +## Compared to prior versions |
| 50 | + |
| 51 | +| Version | Method | Annualized | Issue | |
| 52 | +|---|---|---:|---| |
| 53 | +| v1 (mid-touch) | mid touch as fill proxy | $15,546 | mid touching != fill | |
| 54 | +| v2 size-uncapped | sum of all SELL Yes | $918 | income computed at $100/fill regardless of trade size | |
| 55 | +| v3 size-capped, taker fee | size cap added | -$263 naive / +$117 cherry-pick | maker fee wrongly = taker fee; no OOS check | |
| 56 | +| **v4 this run** | size cap + maker_fee=zero + IS/OOS | $-1,117 OOS naive / $+147 OOS top-18 | fee per docs; cherry-pick now measured out-of-sample | |
| 57 | + |
| 58 | +## Caveats (still standing) |
| 59 | + |
| 60 | +- Queue priority: assumes we are first in line at our maker price level. |
| 61 | +- Per-leg fills assumed independent within a day. |
| 62 | +- Maker fee = 0 ignores `rebateRate` (20-25% of pool taker fees redistributed to makers). Real maker income could be modestly HIGHER. Conservative direction. |
| 63 | +- 14 days is a short window; the in-sample / OOS split is *one* random partition, not k-fold. Repeat with different splits to test stability. |
| 64 | +- Today's bestAsk/bestBid used to compute maker target — historical spread may have differed. |
| 65 | + |
| 66 | +--- |
| 67 | +*Snapshot: 2026-05-15T04:03:10.554424+00:00* |
0 commit comments