Kalshi KXATPMATCH 31m · 1922rKalshi KXWTAMATCH 31m · 1948rKalshi KXFRENCHOPEN 31mKalshi KXFOPENMENSINGLE 31mKalshi KXATPGRANDSLAM 31m · 14rKalshi KXUSOPEN 31mKalshi KXATPSETWINNER 31m · 4416rKalshi KXATPTOTALSETS 31mKalshi KXATPSETSWEEP 31m · 2rKalshi KXATPGAMESPREAD 31mKalshi KXATPEXACTMATCH 31m · 4096rKalshi KXWTADOUBLES 31m · 254rKalshi KXATP1RANK 31m · 16relo last computed 14d · 20430rrankings last pulled 20d · 11348rrankings atp latest date 28drankings wta latest date 28dmirror atp schedule 31m · 92rh2h last computed 49dh2h n pairs missinglast player db run missingresults last_run missingpp_edges CSV 6.7hkalshi edges JSON 28mpaper trades PP 0mpaper trades Kalshi 0mdaily payload 6.7hPP movement 6.7hPP calibration 6.7h
Matches today
49
scheduled
ELITE edges
0
across Kalshi + PP
STRONG edges
0
tier 2
MED edges
0
tier 3
Paper locks
0
Kalshi + PP
Real Money YTD
-$10.00
paper-gate restored
Qualifying skipped
0
filtered out today
Last refresh
05:31
2026-07-06 UTC
🏆 Best Bet (main-draw)
No main-draw Kalshi pick survived qualifying filter today.
🎯 Safest (P ≥ 65%)
Jessica Pegula
55%
Heavy main-draw favorite · PAPER
Edge +20.3pp
Ask 35¢
Ask 35¢
💎 Biggest Payout (ELITE)
No ELITE main-draw longshot today.
| # | Match | Tournament | Round | Surface | Start | ELO A | ELO B | ELO diff | Kalshi event |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Noma Noha Akugue vs ? | Nordea Open | Round 1 | hard | Jul 06 09:00 | 1706 | — | — | |
| 2 | Oleksandra Oliynykova vs Moyuka Uchijima | Nordea Open | Round 1 | hard | Jul 06 09:00 | 1521 | 1574 | -52 | |
| 3 | ? vs Valeriya Strakhova | Nordea Open | Round 1 | hard | Jul 06 09:00 | — | 1480 | — | |
| 4 | Alicia Herrero Linana vs Lucie Nguyen Tan | Grand Est Open 88 | Qualifying Final | hard | Jul 06 09:00 | 1500 | 1465 | +35 | |
| 5 | Amandine Monnot vs Maria Sara Popa | Grand Est Open 88 | Qualifying Final | hard | Jul 06 09:00 | 1693 | 1456 | +237 | |
| 6 | Liv Boulard vs Yelyzaveta Kotliar | Grand Est Open 88 | Qualifying Final | hard | Jul 06 09:00 | 1437 | 1526 | -89 | |
| 7 | Noma Noha Akugue vs ? | Nordea Open | Round 1 | hard | Jul 06 09:00 | 1706 | — | — | |
| 8 | Oleksandra Oliynykova vs Moyuka Uchijima | Nordea Open | Round 1 | hard | Jul 06 09:00 | 1521 | 1574 | -52 | |
| 9 | ? vs Valeriya Strakhova | Nordea Open | Round 1 | hard | Jul 06 09:00 | — | 1480 | — | |
| 10 | Ashlyn Krueger vs Marta Kostyuk | Wimbledon | Round 4 | grass | Jul 06 10:00 | 1563 | 1449 | +114 | KXWTAMATCH-26JUL06KRUKOS |
| 11 | Ashlyn Krueger vs Marta Kostyuk | Wimbledon | Round 4 | grass | Jul 06 10:00 | 1563 | 1449 | +114 | KXWTAMATCH-26JUL06KRUKOS |
| 12 | Leyre Romero Gormaz vs Darja Semenistaja | Nordea Open | Round 1 | hard | Jul 06 10:30 | 1575 | 1598 | -23 | |
| 13 | Emiliana Arango vs Lea Nilsson | Nordea Open | Round 1 | hard | Jul 06 10:30 | 1548 | 1553 | -4 | |
| 14 | Martha Matoula vs Yulia Putintseva | Nordea Open | Round 1 | hard | Jul 06 10:30 | 1551 | 1664 | -113 | |
| 15 | Julia Grabher vs Rebeka Masarova | Grand Est Open 88 | Round 1 | hard | Jul 06 10:30 | 1459 | 1615 | -156 | |
| 16 | Amandine Hesse vs Barbora Palicova | Grand Est Open 88 | Round 1 | hard | Jul 06 10:30 | 1585 | 1529 | +56 | |
| 17 | Astrid Lew Yan Foon vs Diana Martynov | Grand Est Open 88 | Qualifying Final | hard | Jul 06 10:30 | 1588 | 1507 | +81 | |
| 18 | Leyre Romero Gormaz vs Darja Semenistaja | Nordea Open | Round 1 | hard | Jul 06 10:30 | 1575 | 1598 | -23 | |
| 19 | Emiliana Arango vs Lea Nilsson | Nordea Open | Round 1 | hard | Jul 06 10:30 | 1548 | 1553 | -4 | |
| 20 | Martha Matoula vs Yulia Putintseva | Nordea Open | Round 1 | hard | Jul 06 10:30 | 1551 | 1664 | -113 | |
| 21 | Marie Bouzkova vs Elise Mertens | Wimbledon | Round 4 | grass | Jul 06 11:30 | 1476 | 1581 | -105 | KXWTAMATCH-26JUL06BOUMER |
| 22 | Marie Bouzkova vs Elise Mertens | Wimbledon | Round 4 | grass | Jul 06 11:30 | 1476 | 1581 | -105 | KXWTAMATCH-26JUL06BOUMER |
| 23 | Alex De Minaur vs Flavio Cobolli | Wimbledon | Round 4 | grass | Jul 06 12:00 | 1590 | 1557 | +34 | KXATPSETWINNER-26JUL06DECOB-2 |
| 24 | Simona Waltert vs Katarzyna Kawa | Nordea Open | Round 1 | hard | Jul 06 12:00 | 1642 | 1455 | +186 | |
| 25 | Marina Bassols Ribera vs Paula Badosa | Nordea Open | Round 1 | hard | Jul 06 12:00 | 1627 | 1683 | -56 | |
| 26 | Alex De Minaur vs Flavio Cobolli | Wimbledon | Round 4 | grass | Jul 06 12:00 | 1590 | 1557 | +34 | KXATPSETWINNER-26JUL06DECOB-2 |
| 27 | ? vs Dominika Salkova | Grand Est Open 88 | Round 1 | hard | Jul 06 12:00 | — | 1701 | — | |
| 28 | Anna Blinkova vs Erika Andreeva | Grand Est Open 88 | Round 1 | hard | Jul 06 12:00 | 1577 | 1616 | -39 | |
| 29 | Simona Waltert vs Katarzyna Kawa | Nordea Open | Round 1 | hard | Jul 06 12:00 | 1642 | 1455 | +186 | |
| 30 | Marina Bassols Ribera vs Paula Badosa | Nordea Open | Round 1 | hard | Jul 06 12:00 | 1627 | 1683 | -56 | |
| 31 | Jasmine Paolini vs Alexandra Eala | Wimbledon | Round 4 | grass | Jul 06 12:30 | 1585 | 1665 | -80 | KXWTAMATCH-26JUL06PAOEAL |
| 32 | Jasmine Paolini vs Alexandra Eala | Wimbledon | Round 4 | grass | Jul 06 12:30 | 1585 | 1665 | -80 | KXWTAMATCH-26JUL06PAOEAL |
| 33 | Tiana Tian Deng vs Kaitlin Quevedo | Nordea Open | Round 1 | hard | Jul 06 13:30 | 1533 | 1717 | -184 | |
| 34 | Tiana Tian Deng vs Kaitlin Quevedo | Nordea Open | Round 1 | hard | Jul 06 13:30 | 1533 | 1717 | -184 | |
| 35 | Grigor Dimitrov vs Arthur Fery | Wimbledon | Round 4 | grass | Jul 06 14:00 | 1569 | 1521 | +49 | KXATPSETWINNER-26JUL06DIMFER-2 |
| 36 | Madison Keys vs Linda Noskova | Wimbledon | Round 4 | grass | Jul 06 14:00 | 1558 | 1583 | -25 | KXWTAMATCH-26JUL06KEYNOS |
| 37 | Grigor Dimitrov vs Arthur Fery | Wimbledon | Round 4 | grass | Jul 06 14:00 | 1569 | 1521 | +49 | KXATPSETWINNER-26JUL06DIMFER-2 |
| 38 | Madison Keys vs Linda Noskova | Wimbledon | Round 4 | grass | Jul 06 14:00 | 1558 | 1583 | -25 | KXWTAMATCH-26JUL06KEYNOS |
| 39 | Sayaka Ishii vs Kayla Cross | Cerity Partners Hall of Fame Open for the Van Alen Cup Presented by the Margaret Fund | Round 1 | grass | Jul 06 15:00 | 1501 | 1412 | +88 | |
| 40 | Olivia Lincer vs Tatjana Maria | Cerity Partners Hall of Fame Open for the Van Alen Cup Presented by the Margaret Fund | Round 1 | grass | Jul 06 15:00 | 1483 | 1598 | -116 | |
| 41 | Taylor Fritz vs Alexander Bublik | Wimbledon | Round 4 | grass | Jul 06 15:30 | 1722 | 1569 | +153 | KXATPSETWINNER-26JUL06FRIBUB-2 |
| 42 | Taylor Fritz vs Alexander Bublik | Wimbledon | Round 4 | grass | Jul 06 15:30 | 1722 | 1569 | +153 | KXATPSETWINNER-26JUL06FRIBUB-2 |
| 43 | Francesca Curmi vs Oceane Dodin | Grand Est Open 88 | Round 1 | hard | Jul 06 15:30 | 1643 | 1597 | +45 | |
| 44 | Jiri Lehecka vs Alexander Zverev | Wimbledon | Round 4 | grass | Jul 06 16:00 | 1574 | 1594 | -21 | KXATPSETWINNER-26JUL06LEHZVE-1 |
| 45 | Jiri Lehecka vs Alexander Zverev | Wimbledon | Round 4 | grass | Jul 06 16:00 | 1574 | 1594 | -21 | KXATPSETWINNER-26JUL06LEHZVE-1 |
| 46 | Kylie Collins vs ? | Cerity Partners Hall of Fame Open for the Van Alen Cup Presented by the Margaret Fund | Round 1 | grass | Jul 06 16:30 | 1578 | — | — | |
| 47 | Lea Ma vs Clervie Ngounoue | Cerity Partners Hall of Fame Open for the Van Alen Cup Presented by the Margaret Fund | Round 1 | grass | Jul 06 16:30 | 1485 | 1483 | +1 | |
| 48 | Madison Brengle vs Ana Sofia Sanchez | Cerity Partners Hall of Fame Open for the Van Alen Cup Presented by the Margaret Fund | Round 1 | grass | Jul 06 18:00 | 1734 | 1657 | +77 | |
| 49 | Katie Volynets vs ? | Cerity Partners Hall of Fame Open for the Van Alen Cup Presented by the Margaret Fund | Round 1 | grass | Jul 06 19:30 | 1519 | — | — |
| # | Match | Our pick | Our P | Mkt P | Ask | Edge | Tier | Decision | Vol 24h | Surface | Round | EV/$ |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Flavio Cobolli vs Alex de Minaur | Flavio Cobolli | 48.1% | 24.0% | 24¢ | +24.1pp | LOW | PAPER | 31126 | hard | Round Of 16 | +0.241 |
| 2 | Coco Gauff vs Jessica Pegula | Jessica Pegula | 55.3% | 35.0% | 35¢ | +20.3pp | LOW | PAPER | 130 | grass | Quarterfinal | +0.203 |
| 3 | Grigor Dimitrov vs Arthur Fery | Arthur Fery | 51.1% | 34.0% | 34¢ | +17.1pp | LOW | PAPER | 6524 | hard | Round Of 16 | +0.171 |
| 4 | Taylor Fritz vs Alexander Bublik | Alexander Bublik | 50.3% | 35.0% | 35¢ | +15.3pp | LOW | PAPER | 35750 | hard | Round Of 16 | +0.153 |
| 5 | Jan-Lennard Struff vs Jannik Sinner | Jan-Lennard Struff | 16.7% | 6.0% | 6¢ | +10.7pp | LOW | PAPER | 4689 | hard | Quarterfinal | +0.107 |
| 6 | Marta Kostyuk vs Ashlyn Krueger | Ashlyn Krueger | 42.4% | 34.0% | 34¢ | +8.4pp | LOW | PAPER | 4963 | grass | Round 4 | +0.084 |
| 7 | Alexander Zverev vs Jiri Lehecka | Jiri Lehecka | 35.6% | 28.0% | 28¢ | +7.6pp | LOW | PAPER | 10537 | hard | Round Of 16 | +0.076 |
| 8 | Alexandra Eala vs Jasmine Paolini | Jasmine Paolini | 47.1% | 40.0% | 40¢ | +7.1pp | LOW | PAPER | 17119 | grass | Round 4 | +0.071 |
| 9 | Madison Keys vs Linda Noskova | Linda Noskova | 50.0% | 43.0% | 43¢ | +7.0pp | LOW | PAPER | 2182 | grass | Round 4 | +0.070 |
| 10 | Novak Djokovic vs Felix Auger-Aliassime | Felix Auger-Aliassime | 44.2% | 39.0% | 39¢ | +5.2pp | LOW | PAPER | 16692 | hard | Quarterfinal | +0.052 |
| 11 | Elise Mertens vs Marie Bouzkova | Marie Bouzkova | 49.7% | 46.0% | 46¢ | +3.7pp | LOW | PAPER | 2445 | grass | Round 4 | +0.037 |
| 12 | Naomi Osaka vs Karolina Muchova | Karolina Muchova | 48.6% | 48.0% | 48¢ | +0.6pp | LOW | SKIP | 2888 | grass | Quarterfinal | +0.006 |
| # | Player | Stat | PP line | Our proj | Edge % | Side | Tier | Opp | Surface | Demon | Payout |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Alex de Minaur | Double Faults | 4.5 | 0.00 | +100.0% | LESS | LOW | Flavio Cobolli | clay | — | 0.5x |
| 2 | Alexander Bublik🧊 COLD | Double Faults | 5.5 | 0.00 | +100.0% | LESS | LOW | Taylor Fritz | clay | — | 0.5x |
| 3 | Taylor Fritz⏳ RTRN | Double Faults | 2.5 | 0.00 | +100.0% | LESS | LOW | Alexander Bublik | clay | — | 0.5x |
| 4 | Felix Auger-Aliassime🟨 WARM | Double Faults | 4.5 | 0.00 | +100.0% | LESS | LOW | Novak Djokovic | clay | — | 0.5x |
| 5 | Novak Djokovic⏳ RTRN | Double Faults | 2.5 | 0.00 | +100.0% | LESS | LOW | Felix Auger-Aliassime | clay | — | 0.5x |
| 6 | Karolina Muchova⏳ RTRN | Break Points Won | 2.5 | 4.65 | +85.9% | MORE | LOW | Naomi Osaka | clay | — | 1.0x |
| 7 | Linda Noskova🟨 WARM | Break Points Won | 2.5 | 4.43 | +77.2% | MORE | LOW | Madison Keys | clay | — | 1.0x |
| 8 | Taylor Fritz⏳ RTRN | Aces | 23.0 | 6.26 | +72.8% | LESS | LOW | Alexander Bublik | clay | — | 0.5x |
| 9 | Felix Auger-Aliassime🟨 WARM | Aces | 21.5 | 6.39 | +70.3% | LESS | LOW | Novak Djokovic | clay | — | 0.5x |
| 10 | Alexander Bublik🧊 COLD | Aces | 20.0 | 6.02 | +69.9% | LESS | LOW | Taylor Fritz | clay | — | 0.5x |
| 11 | Martha Matoula🟨 WARM | Total Games Won | 5.5 | 8.90 | +61.8% | MORE | LOW | Yulia Putintseva | clay | — | 1.0x |
| 12 | Madison Keys⏳ RTRN | Aces | 7.5 | 2.87 | +61.8% | LESS | LOW | Linda Noskova | clay | — | 0.5x |
| 13 | Alexander Zverev🟨 WARM | Aces | 15.5 | 6.08 | +60.8% | LESS | LOW | Jiri Lehecka | clay | — | 0.5x |
| 14 | Jiri Lehecka🟨 WARM | Aces | 13.0 | 6.02 | +53.7% | LESS | LOW | Alexander Zverev | clay | — | 0.5x |
| 15 | Taylor Fritz⏳ RTRN | Total Games Won | 21.5 | 10.34 | +51.9% | LESS | LOW | Alexander Bublik | clay | — | 0.5x |
| 16 | Arthur Fery🧊 COLD | Total Games Won | 19.5 | 9.60 | +50.7% | LESS | LOW | Grigor Dimitrov | clay | — | 0.5x |
| 17 | Alexander Bublik🧊 COLD | Total Games Won | 20.5 | 10.13 | +50.6% | LESS | LOW | Taylor Fritz | clay | — | 0.5x |
| 18 | Jiri Lehecka🟨 WARM | Total Games Won | 18.5 | 9.29 | +49.8% | LESS | LOW | Alexander Zverev | clay | — | 0.5x |
| 19 | Grigor Dimitrov🧊 COLD | Total Games Won | 20.5 | 10.35 | +49.5% | LESS | LOW | Arthur Fery | clay | — | 0.5x |
| 20 | Grigor Dimitrov🧊 COLD | Aces | 12.0 | 6.12 | +49.0% | LESS | LOW | Arthur Fery | clay | — | 0.5x |
| 21 | Alex de Minaur | Total Games Won | 20.5 | 10.49 | +48.8% | LESS | LOW | Flavio Cobolli | clay | — | 0.5x |
| 22 | Marie Bouzkova🟨 WARM | Break Points Won | 3.5 | 5.15 | +47.2% | MORE | LOW | Elise Mertens | clay | — | 1.0x |
| 23 | Alexander Zverev🟨 WARM | Total Games Won | 21.5 | 11.71 | +45.5% | LESS | LOW | Jiri Lehecka | clay | — | 0.5x |
| 24 | Jasmine Paolini🧊 COLD | Break Points Won | 3.5 | 5.08 | +45.1% | MORE | LOW | Alexandra Eala | clay | — | 1.0x |
| 25 | Taylor Fritz⏳ RTRN | Total Games | 41.5 | 24.57 | +40.8% | LESS | LOW | Alexander Bublik | clay | — | 0.5x |
| 26 | Alexander Zverev🟨 WARM | Total Games | 39.5 | 23.74 | +39.9% | LESS | LOW | Jiri Lehecka | clay | — | 0.5x |
| 27 | Yulia Putintseva | Total Games | 17.5 | 24.35 | +39.1% | MORE | LOW | Martha Matoula | clay | — | 1.0x |
| 28 | Novak Djokovic⏳ RTRN | Aces | 10.5 | 6.39 | +39.1% | LESS | LOW | Felix Auger-Aliassime | clay | — | 0.5x |
| 29 | Novak Djokovic⏳ RTRN | Total Games | 40.5 | 25.02 | +38.2% | LESS | LOW | Felix Auger-Aliassime | clay | — | 0.5x |
| 30 | Flavio Cobolli🟨 WARM | Total Games Won | 16.5 | 10.51 | +36.3% | LESS | LOW | Alex de Minaur | clay | — | 0.5x |
| 31 | Grigor Dimitrov🧊 COLD | Total Games | 39.5 | 25.24 | +36.1% | LESS | LOW | Arthur Fery | clay | — | 0.5x |
| 32 | Alex de Minaur | Total Games | 37.5 | 24.98 | +33.4% | LESS | LOW | Flavio Cobolli | clay | — | 1.0x |
| 33 | Noma Noha Akugue🟨 WARM | Total Games | 18.5 | 24.53 | +32.6% | MORE | LOW | Irene Burillo Escorihuela | clay | — | 1.0x |
| 34 | Flavio Cobolli🟨 WARM | Aces | 9.5 | 6.42 | +32.4% | LESS | LOW | Alex de Minaur | clay | — | 1.0x |
| 35 | Marina Bassols Ribera🟨 WARM | Total Games Won | 7.5 | 9.86 | +31.4% | MORE | LOW | Paula Badosa | clay | — | 1.0x |
| 36 | Jannik Sinner🟨 WARM | Total Games | 30.5 | 22.22 | +27.1% | LESS | LOW | Jan-Lennard Struff | clay | — | 0.5x |
| 37 | Taylor Fritz⏳ RTRN | Break Points Won | 2.5 | 3.17 | +26.9% | MORE | LOW | Alexander Bublik | clay | — | 1.0x |
| 38 | Lea Nilsson⏳ RTRN | Total Games Won | 8.5 | 10.68 | +25.6% | MORE | LOW | Emiliana Arango | clay | — | 1.0x |
| 39 | Emiliana Arango | Total Games | 19.5 | 24.39 | +25.1% | MORE | LOW | Lea Nilsson | clay | — | 1.0x |
| 40 | Ashlyn Krueger | Total Games Won | 11.5 | 8.81 | +23.4% | LESS | LOW | Marta Kostyuk | clay | — | 0.5x |
| 41 | Francesca Jones | Total Games | 19.5 | 24.01 | +23.1% | MORE | LOW | Alice Rame | clay | — | 1.0x |
| 42 | Paula Badosa🧊 COLD | Total Games | 19.5 | 23.76 | +21.8% | MORE | LOW | Marina Bassols Ribera | clay | — | 1.0x |
| 43 | Simona Waltert🟨 WARM | Total Games | 20.5 | 24.52 | +19.6% | MORE | LOW | Katarzyna Kawa | clay | — | 1.0x |
| 44 | Tamara Korpatsch🟨 WARM | Total Games | 19.5 | 23.32 | +19.6% | MORE | LOW | Linea Bajraliu | clay | — | 1.0x |
| 45 | Dalma Galfi | Total Games | 20.5 | 24.49 | +19.4% | MORE | LOW | Kajsa Rinaldo Persson | clay | — | 1.0x |
| 46 | Rebeka Masarova | Total Games | 20.5 | 24.48 | +19.4% | MORE | LOW | Julia Grabher | clay | — | 1.0x |
| 47 | Anna Blinkova | Total Games | 20.5 | 24.35 | +18.8% | MORE | LOW | Erika Andreeva | clay | — | 1.0x |
| 48 | Karolina Muchova⏳ RTRN | Total Games Won | 12.5 | 10.20 | +18.4% | LESS | LOW | Naomi Osaka | clay | — | 1.0x |
| 49 | Elsa Jacquemot🧊 COLD | Total Games | 20.5 | 23.92 | +16.7% | MORE | LOW | Aurora Zantedeschi | clay | — | 1.0x |
| 50 | Alice Tubello🟨 WARM | Total Games | 19.5 | 22.66 | +16.2% | MORE | LOW | Yufei Ren | clay | — | 1.0x |
| 51 | Julia Grabher | Total Games Won | 11.5 | 9.65 | +16.1% | LESS | LOW | Rebeka Masarova | clay | — | 1.0x |
| 52 | Barbora Palicova🧊 COLD | Total Games | 20.5 | 23.77 | +15.9% | MORE | LOW | Amandine Hesse | clay | — | 1.0x |
| 53 | Alex de Minaur | Aces | 5.5 | 6.36 | +15.7% | MORE | LOW | Flavio Cobolli | clay | — | 0.5x |
| 54 | Lola Radivojevic🧊 COLD | Total Games | 20.5 | 23.64 | +15.3% | MORE | LOW | Mona Barthel | clay | — | 1.0x |
| 55 | Elise Mertens | Total Games Won | 12.5 | 10.60 | +15.2% | LESS | LOW | Marie Bouzkova | clay | — | 0.5x |
| 56 | Valeriya Strakhova | Total Games Won | 8.5 | 9.77 | +15.0% | MORE | LOW | Miriam Bianca Bulgaru | clay | — | 1.0x |
| 57 | Erika Andreeva🟨 WARM | Total Games Won | 11.5 | 9.83 | +14.5% | LESS | LOW | Anna Blinkova | clay | — | 1.0x |
| 58 | Amandine Monnot🟨 WARM | Total Games | 21.5 | 24.54 | +14.1% | MORE | LOW | Maria Sara Popa | clay | — | 1.0x |
| 59 | Naomi Osaka🟨 WARM | Total Games Won | 12.5 | 10.80 | +13.6% | LESS | LOW | Karolina Muchova | clay | — | 1.0x |
| 60 | Madison Keys⏳ RTRN | Total Games Won | 12.5 | 10.81 | +13.6% | LESS | LOW | Linda Noskova | clay | — | 0.5x |
| 61 | Varvara Lepchenko | Total Games | 21.5 | 24.29 | +13.0% | MORE | LOW | Lisa Zaar | clay | — | 1.0x |
| 62 | Darja Semenistaja🟨 WARM | Total Games | 21.5 | 24.28 | +12.9% | MORE | LOW | Leyre Romero Gormaz | clay | — | 1.0x |
| 63 | Francesca Curmi🟨 WARM | Total Games | 19.5 | 22.02 | +12.9% | MORE | LOW | Oceane Dodin | clay | — | 1.0x |
| 64 | Oleksandra Oliynykova | Total Games | 21.5 | 23.90 | +11.2% | MORE | LOW | Moyuka Uchijima | clay | — | 1.0x |
| 65 | Claire Liu🟨 WARM | Total Games | 21.5 | 23.87 | +11.0% | MORE | LOW | Sinja Kraus | clay | — | 1.0x |
| 66 | Amandine Hesse | Total Games Won | 9.5 | 10.51 | +10.6% | MORE | LOW | Barbora Palicova | clay | — | 1.0x |
| 67 | Petra Marcinko | Total Games | 20.5 | 22.63 | +10.4% | MORE | LOW | Clara Burel | clay | — | 1.0x |
| 68 | Alexandra Eala | Aces | 2.5 | 2.76 | +10.3% | MORE | LOW | Jasmine Paolini | clay | — | 0.5x |
| 69 | Elise Mertens | Total Games | 22.5 | 24.35 | +8.2% | MORE | LOW | Marie Bouzkova | clay | — | 0.5x |
| 70 | Alexandra Eala | Total Games | 21.5 | 23.02 | +7.1% | MORE | LOW | Jasmine Paolini | clay | — | 0.5x |
| 71 | Arthur Fery🧊 COLD | Aces | 6.5 | 6.10 | +6.1% | LESS | LOW | Grigor Dimitrov | clay | — | 0.5x |
| 72 | Madison Keys⏳ RTRN | Total Games | 22.5 | 23.85 | +6.0% | MORE | LOW | Linda Noskova | clay | — | 0.5x |
| 73 | Naomi Osaka🟨 WARM | Total Games | 23.5 | 24.16 | +2.8% | MORE | LOW | Karolina Muchova | clay | — | 0.5x |
| 74 | Marta Kostyuk🟨 WARM | Total Games Won | 12.5 | 12.19 | +2.5% | LESS | LOW | Ashlyn Krueger | clay | — | 0.5x |
| 75 | Marta Kostyuk🟨 WARM | Total Games | 22.0 | 21.77 | +1.1% | LESS | LOW | Ashlyn Krueger | clay | — | 0.5x |
Kalshi tennis — 0 picks · $0.00 staked
Day 1 - paper only, grade EOD before scaling · locked 2026-07-05T22:47:30.092501+00:00
| # | Match | Pick | Our P | Ask | Edge | Tier | Surface | Stake | Status | P&L |
|---|
PrizePicks tennis — 0 picks · $0.00 staked
Day 1 - paper only, grade EOD before scaling · locked 2026-07-05T22:47:30.030030+00:00
| # | Player | Stat | Line | Our proj | Side | Edge | Tier | Surface | Stake | Status | P&L |
|---|
Polymarket = retail/crypto sentiment. We can't bet there from CA, but the divergence vs Kalshi (sharp) reveals where the public is loading up. Generated 2026-07-05T15:49:18 Β· flagged threshold = Β±3.0pp Β· 6 flagged futures / 0 flagged matches.
Grand-slam futures Β· ANY 2026 Slam (Kalshi KXATPGRANDSLAM vs Polymarket per-slam aggregate)
Polymarket "any-slam" probability computed naively as
1 - product(1 - p_slam). Positive divergence = public (Polymarket) more bullish than sharp (Kalshi). Sorted by |divergence|.| Player | Sharp (Kalshi) | Public (Poly) | Ξ | Poly per-slam |
|---|---|---|---|---|
| Felix Auger-Aliassime Β· exact | 43.0% | 2.7% | -40.3pp Β· SHARP HIGHER | Wim 3% |
| Alex de Minaur Β· exact | 20.0% | 2.2% | -17.8pp Β· SHARP HIGHER | Wim 2% |
| Lorenzo Musetti Β· exact | 16.0% | 1.0% | -15.0pp Β· SHARP HIGHER | US 1% |
| Jannik Sinner Β· exact | 67.5% | 77.9% | +10.4pp Β· PUBLIC HIGHER | Wim 60%, US 44% |
| Daniil Medvedev Β· exact | 6.5% | 2.5% | -4.0pp Β· SHARP HIGHER | US 3% |
| Jack Draper Β· exact | 4.5% | 1.3% | -3.2pp Β· SHARP HIGHER | US 1% |
| Frances Tiafoe Β· exact | 2.5% | 1.1% | -1.4pp Β· SHARP HIGHER | US 1% |
| Novak Djokovic Β· exact | 21.0% | 19.7% | -1.3pp Β· SHARP HIGHER | Wim 14%, US 6% |
| Taylor Fritz Β· exact | 7.0% | 8.3% | +1.3pp Β· PUBLIC HIGHER | Wim 6%, US 3% |
| Ben Shelton Β· exact | 3.0% | 2.4% | -0.6pp Β· SHARP HIGHER | US 2% |
| Alexander Bublik Β· exact | 3.5% | 3.1% | -0.4pp Β· SHARP HIGHER | Wim 2%, US 1% |
| Karen Khachanov Β· no-match | 1.0% | — | no Poly match | — |
| Casper Ruud Β· no-match | 5.0% | — | no Poly match | — |
Per-match overlaps
No active per-match overlaps right now (Polymarket tennis volume concentrates in Grand Slam futures).
Per-stat-type MAE (n_graded=18)
Bar width = MAE (lower = better). "INSUFFICIENT" = need more graded picks.
Total Games
n=4
Ours
PP
Us 6.45
PP 3.25
INSUFFICIENT_N
PP 3.25
INSUFFICIENT_N
Total Games Won
n=13
Ours
PP
Us 5.11
PP 4.96
NULL
PP 4.96
NULL
Total Tie Breaks
n=1
Ours
PP
Us 0.25
PP 0.50
INSUFFICIENT_N
PP 0.50
INSUFFICIENT_N
Per-tier MAE
Bar width = MAE (lower = better). "INSUFFICIENT" = need more graded picks.
ELITE
n=16
Ours
PP
Us 4.94
PP 3.75
NULL
PP 3.75
NULL
MED
n=0
Ours
PP
Us —
PP —
INSUFFICIENT_N
PP —
INSUFFICIENT_N
STRONG
n=2
Ours
PP
Us 6.75
PP 9.00
INSUFFICIENT_N
PP 9.00
INSUFFICIENT_N
No AAR available yet.
Expected:
Expected:
~/.claude/projects/.../memory/aar_tennis_<date>.mdNo actionable PP line movement yet.
Expected:
Expected:
pp_line_movement_tennis_2026-07-05.csv. Needs at least 2 PP snapshots in pp_snapshots_tennis/.ATP top 50
| Rk | Player | Country | Pts | ELO overall | ELO clay | ELO grass | ELO hard |
|---|---|---|---|---|---|---|---|
| 1 | Jannik Sinner | ITA | 13500 | 2167 | 1879 | 1695 | 2062 |
| 2 | Carlos Alcaraz | ESP | 9960 | 2070 | 1867 | 1717 | 1956 |
| 3 | Alexander Zverev | GER | 7305 | 1994 | 1865 | 1594 | 1863 |
| 4 | Felix Auger Aliassime | CAN | 4440 | 1854 | 1642 | 1517 | 1803 |
| 5 | Ben Shelton | USA | 3920 | 1816 | 1665 | 1561 | 1765 |
| 6 | Alex De Minaur | AUS | 3905 | 1851 | 1677 | 1590 | 1806 |
| 7 | Novak Djokovic | SRB | 3760 | 1929 | 1729 | 1636 | 1846 |
| 8 | Daniil Medvedev | RUS | 3760 | 1884 | 1659 | 1585 | 1845 |
| 9 | Taylor Fritz | USA | 3720 | 1793 | 1551 | 1722 | 1749 |
| 10 | Flavio Cobolli | ITA | 3540 | 1833 | 1754 | 1557 | 1655 |
| 11 | Alexander Bublik | KAZ | 2930 | 1785 | 1681 | 1569 | 1703 |
| 12 | Jiri Lehecka | CZE | 2575 | 1814 | 1632 | 1574 | 1754 |
| 13 | Andrey Rublev | RUS | 2460 | 1804 | 1705 | 1516 | 1683 |
| 14 | Casper Ruud | NOR | 2425 | 1866 | 1805 | 1502 | 1685 |
| 15 | Karen Khachanov | RUS | 2320 | 1723 | 1622 | 1567 | 1639 |
| 16 | Lorenzo Musetti | ITA | 2315 | 1832 | 1764 | 1607 | 1723 |
| 17 | Jakub Mensik | CZE | 2300 | 1825 | 1661 | 1497 | 1747 |
| 18 | Luciano Darderi | ITA | 2300 | 1772 | 1790 | 1466 | 1466 |
| 19 | Learner Tien | USA | 2270 | 1847 | 1622 | 1506 | 1789 |
| 20 | Valentin Vacherot | MON | 2145 | 1800 | 1695 | 1467 | 1738 |
| 21 | Arthur Fils | FRA | 1940 | 1892 | 1746 | 1546 | 1771 |
| 22 | Alejandro Davidovich Fokina | ESP | 1860 | 1749 | 1593 | 1545 | 1703 |
| 23 | Rafael Jodar | ESP | 1849 | 1893 | 1755 | — | 1765 |
| 24 | Arthur Rinderknech | FRA | 1776 | 1713 | 1576 | 1530 | 1631 |
| 25 | Joao Fonseca | BRA | 1735 | 1837 | 1673 | 1495 | 1795 |
| 26 | Frances Tiafoe | USA | 1705 | 1775 | 1640 | 1488 | 1719 |
| 27 | Francisco Cerundolo | ARG | 1660 | 1790 | 1700 | 1426 | 1698 |
| 28 | Tommy Paul | USA | 1645 | 1851 | 1758 | 1587 | 1743 |
| 29 | Cameron Norrie | GBR | 1595 | 1738 | 1631 | 1529 | 1682 |
| 30 | Tomas Martin Etcheverry | ARG | 1510 | 1751 | 1656 | 1456 | 1636 |
| 31 | Alejandro Tabilo | CHI | 1428 | 1798 | 1705 | 1575 | 1637 |
| 32 | Brandon Nakashima | USA | 1385 | 1713 | 1582 | 1590 | 1660 |
| 33 | Ugo Humbert | FRA | 1370 | 1715 | 1498 | 1517 | 1697 |
| 34 | Matteo Arnaldi | ITA | 1336 | 1719 | 1676 | 1455 | 1558 |
| 35 | Ignacio Buse | PER | 1316 | 1773 | 1732 | 1482 | 1562 |
| 36 | Corentin Moutet | FRA | 1283 | 1673 | 1567 | 1574 | 1640 |
| 37 | Alexander Blockx | BEL | 1280 | 1820 | 1688 | 1508 | 1713 |
| 38 | Alex Michelsen | USA | 1205 | 1727 | 1522 | 1538 | 1702 |
| 39 | Mariano Navone | ARG | 1165 | 1767 | 1722 | 1460 | 1507 |
| 40 | Zizou Bergs | BEL | 1150 | 1681 | 1547 | 1521 | 1631 |
| 41 | Tallon Griekspoor | NED | 1150 | 1680 | 1576 | 1564 | 1645 |
| 42 | Denis Shapovalov | CAN | 1130 | 1668 | 1483 | 1472 | 1698 |
| 43 | Tomas Machac | CZE | 1120 | 1745 | 1602 | 1500 | 1682 |
| 44 | Jaume Munar | ESP | 1105 | 1695 | 1589 | 1508 | 1635 |
| 45 | Juan Manuel Cerundolo | ARG | 1055 | 1756 | 1753 | 1469 | 1532 |
| 46 | Adrian Mannarino | FRA | 1031 | 1565 | 1369 | 1584 | 1569 |
| 47 | Marin Cilic | CRO | 994 | 1684 | 1513 | 1611 | 1635 |
| 48 | Matteo Berrettini | ITA | 985 | 1749 | 1689 | 1524 | 1694 |
| 49 | Miomir Kecmanovic | SRB | 980 | 1688 | 1584 | 1500 | 1595 |
| 50 | Nuno Borges | POR | 970 | 1656 | 1596 | 1493 | 1596 |
WTA top 50
| Rk | Player | Country | Pts | ELO overall | ELO clay | ELO grass | ELO hard |
|---|---|---|---|---|---|---|---|
| 1 | Aryna Sabalenka | BLR | 9090 | 2089 | 1801 | 1588 | 2045 |
| 2 | Elena Rybakina | KAZ | 8143 | 2040 | 1766 | 1580 | 1972 |
| 3 | Iga Swiatek | POL | 6733 | 1957 | 1809 | 1658 | 1852 |
| 4 | Jessica Pegula | USA | 6056 | 1979 | 1701 | 1583 | 1901 |
| 5 | Amanda Anisimova | USA | 5848 | 1906 | 1580 | 1638 | 1822 |
| 6 | Mirra Andreeva | RUS | 5751 | 1995 | 1867 | 1513 | 1797 |
| 7 | Coco Gauff | USA | 4879 | 1980 | 1824 | 1519 | 1871 |
| 8 | Elina Svitolina | UKR | 4315 | 1996 | 1824 | 1550 | 1824 |
| 9 | Victoria Mboko | CAN | 3670 | 1937 | 1726 | 1515 | 1891 |
| 10 | Karolina Muchova | CZE | 3438 | 1927 | 1602 | 1494 | 1869 |
| 11 | Belinda Bencic | SUI | 3385 | 1904 | 1636 | 1561 | 1831 |
| 12 | Marta Kostyuk | UKR | 3157 | 1959 | 1801 | 1449 | 1755 |
| 13 | Linda Noskova | CZE | 3054 | 1869 | 1599 | 1583 | 1763 |
| 14 | Jasmine Paolini | ITA | 2617 | 1809 | 1701 | 1585 | 1741 |
| 15 | Naomi Osaka | JPN | 2571 | 1855 | 1688 | 1514 | 1734 |
| 16 | Diana Shnaider | RUS | 2506 | 1841 | 1701 | 1565 | 1686 |
| 17 | Ekaterina Alexandrova | RUS | 2449 | 1711 | 1556 | 1584 | 1662 |
| 18 | Sorana Cirstea | ROU | 2415 | 1919 | 1714 | 1429 | 1797 |
| 19 | Iva Jovic | USA | 2366 | 1833 | 1667 | 1601 | 1759 |
| 20 | Anna Kalinskaya | RUS | 2212 | 1834 | 1631 | 1546 | 1721 |
| 21 | Maja Chwalinska | POL | 1996 | 1860 | 1795 | 1483 | 1693 |
| 22 | Elise Mertens | BEL | 1918 | 1811 | 1619 | 1581 | 1714 |
| 23 | Leylah Fernandez | CAN | 1844 | 1760 | 1569 | 1546 | 1679 |
| 24 | Clara Tauson | DEN | 1800 | 1719 | 1527 | 1520 | 1679 |
| 25 | Emma Navarro | USA | 1779 | 1759 | 1653 | 1590 | 1613 |
| 26 | Madison Keys | USA | 1772 | 1864 | 1732 | 1558 | 1766 |
| 27 | Anastasia Potapova | RUS | 1640 | 1855 | 1743 | 1484 | 1640 |
| 28 | Marie Bouzkova | CZE | 1631 | 1787 | 1702 | 1476 | 1648 |
| 29 | Ann Li | USA | 1601 | 1759 | 1646 | 1478 | 1647 |
| 30 | Hailey Baptiste | USA | 1513 | 1790 | 1667 | 1488 | 1667 |
| 31 | Xin Yu Wang | CHN | 1431 | 1719 | 1537 | 1591 | 1616 |
| 32 | Katerina Siniakova | CZE | 1422 | 1771 | 1559 | 1578 | 1693 |
| 33 | Alexandra Eala | PHI | 1416 | 1837 | 1495 | 1665 | 1748 |
| 34 | Cristina Bucsa | ESP | 1406 | 1705 | 1443 | 1514 | 1684 |
| 35 | Liudmila Samsonova | RUS | 1405 | 1680 | 1593 | 1619 | 1566 |
| 36 | Jelena Ostapenko | LAT | 1404 | 1762 | 1660 | 1534 | 1621 |
| 37 | Maria Sakkari | GRE | 1328 | 1729 | 1589 | 1486 | 1658 |
| 38 | Jaqueline Cristian | ROU | 1294 | 1767 | 1631 | 1432 | 1698 |
| 39 | Mccartney Kessler | USA | 1289 | 1751 | 1547 | 1583 | 1688 |
| 40 | Janice Tjen | INA | 1267 | 1780 | 1634 | 1503 | 1785 |
| 41 | Elisabetta Cocciaretto | ITA | 1260 | 1800 | 1586 | 1577 | 1689 |
| 42 | Emma Raducanu | GBR | 1241 | 1727 | 1548 | 1577 | 1658 |
| 43 | Magdalena Frech | POL | 1238 | 1655 | 1530 | 1434 | 1613 |
| 44 | Laura Siegemund | GER | 1230 | 1691 | 1553 | 1541 | 1592 |
| 45 | Barbora Krejcikova | CZE | 1211 | 1743 | 1550 | 1606 | 1647 |
| 46 | Sara Bejlek | CZE | 1205 | 1783 | 1736 | 1486 | 1653 |
| 47 | Tereza Valentova | CZE | 1165 | 1829 | 1727 | 1517 | 1788 |
| 48 | Marketa Vondrousova | CZE | 1133 | 1728 | 1606 | 1578 | 1609 |
| 49 | Dayana Yastremska | UKR | 1126 | 1743 | 1640 | 1575 | 1594 |
| 50 | Petra Marcinko | CRO | 1123 | 1771 | 1743 | 1467 | 1633 |
Top Kalshi edges
#1 Marco Cecchinato ELITE_LOW_N
Marco Cecchinato vs Marcelo Tomas Barrios Vera on hard β model 45% vs market 15% (+30.0pp). ELITE_LOW_N, ask 15Β’.
#2 Andres Andrade ELITE_LOW_N
Andres Andrade vs Colton Smith on hard β model 49% vs market 20% (+29.4pp). ELITE_LOW_N, ask 20Β’. Form: Andres Andra=COLD | Colton Smith=WARM.
#3 Gonzalo Bueno STRONG_LOW_N
Gonzalo Bueno vs Jerome Kym on hard β model 45% vs market 16% (+29.0pp). STRONG_LOW_N, ask 16Β’.
#4 Adam Walton ELITE_LOW_N
Adam Walton vs Nick Kyrgios on hard β model 64% vs market 93% (+-28.5pp). ELITE_LOW_N, ask 93Β’.
#5 Florent Bax ELITE_LOW_N
Florent Bax vs Chris Rodesch on hard β model 45% vs market 17% (+28.0pp). ELITE_LOW_N, ask 17Β’.
Top PrizePicks edges
#1 Martin Landaluce ELITE_LOW_N
Martin Landaluce LESS 0.5 Total Tie Breaks vs Jan-Lennard Struff β proj 0.2 (+50.0% edge). Surface: clay.
#2 Rei Sakamoto ELITE_LOW_N
Rei Sakamoto LESS 0.5 Total Tie Breaks vs Anton Matusevich β proj 0.2 (+49.9% edge). Surface: clay.
#3 Jack Draper STRONG_LOW_N
Jack Draper LESS 0.5 Total Tie Breaks vs Brandon Nakashima β proj 0.2 (+49.9% edge). Surface: clay.
Fade signals
- Clara Tauson (RETURNING): RETURNING form tag β fade or fade-against.
- Gabriel Diallo (COLD): COLD form tag β fade or fade-against.
- Raphael Collignon (RETURNING): RETURNING form tag β fade or fade-against.
- Maya Joint (RETURNING): RETURNING form tag β fade or fade-against.
- Antonia Ruzic (COLD): COLD form tag β fade or fade-against.
- Francisco Comesana (COLD): COLD form tag β fade or fade-against.
- Jan Lennard Struff (COLD): COLD form tag β fade or fade-against.
- Alexei Popyrin (COLD): COLD form tag β fade or fade-against.
Surface leans
| Surface | Matches | % strong fav | Lean |
|---|---|---|---|
| hard | 5 | 0.0% | pick'em slate |
| grass | 154 | 3.9% | pick'em slate |
ATP (current surface: grass, top 50 by composite)
| Rk | Player | Country | Composite | ELO overall | ELO grass | Form | Off. rank |
|---|---|---|---|---|---|---|---|
| 1 | Jannik Sinner | ITA | 2051.6 | 2167 | 1695 | WARM | 1 |
| 2 | Carlos Alcaraz | ESP | 1923.6 | 2070 | 1717 | RETURNING | 2 |
| 3 | Rafael Jodar | ESP | 1913.0 | 1893 | 1893 | WARM | 23 |
| 4 | Alexander Zverev | GER | 1898.3 | 1994 | 1594 | WARM | 3 |
| 5 | Daniil Medvedev | RUS | 1808.0 | 1884 | 1585 | WARM | 8 |
| 6 | Arthur Fils | FRA | 1791.0 | 1892 | 1546 | WARM | 21 |
| 7 | Novak Djokovic | SRB | 1788.6 | 1929 | 1636 | RETURNING | 7 |
| 8 | Tommy Paul | USA | 1778.5 | 1851 | 1587 | WARM | 28 |
| 9 | Felix Auger Aliassime | CAN | 1777.3 | 1854 | 1517 | WARM | 4 |
| 10 | Adolfo Daniel Vallejo | PAR | 1775.3 | 1755 | 1755 | WARM | 72 |
| 11 | Alex De Minaur | AUS | 1775.0 | 1851 | 1590 | NEUTRAL | 6 |
| 12 | Daniel Merida Aguilar | ESP | 1767.7 | 1748 | 1748 | WARM | 82 |
| 13 | Yibing Wu | CHN | 1766.8 | 1747 | 1747 | WARM | 101 |
| 14 | Ben Shelton | USA | 1764.8 | 1816 | 1561 | WARM | 5 |
| 15 | Flavio Cobolli | ITA | 1759.5 | 1833 | 1557 | WARM | 10 |
| 16 | Casper Ruud | NOR | 1758.5 | 1866 | 1502 | WARM | 14 |
| 17 | Lorenzo Musetti | ITA | 1753.5 | 1832 | 1607 | NEUTRAL | 16 |
| 18 | Dino Prizmic | CRO | 1753.2 | 1813 | 1499 | HOT | 70 |
| 19 | Jiri Lehecka | CZE | 1750.1 | 1814 | 1574 | WARM | 12 |
| 20 | Alejandro Tabilo | CHI | 1739.8 | 1798 | 1575 | WARM | 31 |
| 21 | Joao Fonseca | BRA | 1737.3 | 1837 | 1495 | WARM | 25 |
| 22 | Alexander Blockx | BEL | 1730.5 | 1820 | 1508 | WARM | 37 |
| 23 | Jakub Mensik | CZE | 1730.1 | 1825 | 1497 | WARM | 17 |
| 24 | Toby Samuel | GBR | 1728.8 | 1709 | 1709 | WARM | 150 |
| 25 | Learner Tien | USA | 1727.2 | 1847 | 1506 | NEUTRAL | 19 |
| 26 | Taylor Fritz | USA | 1724.0 | 1793 | 1722 | RETURNING | 9 |
| 27 | Stefanos Sakellaridis | GRE | 1711.7 | 1692 | 1692 | WARM | 155 |
| 28 | Alexander Bublik | KAZ | 1709.5 | 1785 | 1569 | NEUTRAL | 11 |
| 29 | Rei Sakamoto | JPN | 1706.3 | 1686 | 1686 | WARM | 149 |
| 30 | Valentin Vacherot | MON | 1703.4 | 1800 | 1467 | WARM | 20 |
| 31 | Andrey Rublev | RUS | 1703.1 | 1804 | 1516 | NEUTRAL | 13 |
| 32 | Zachary Svajda | USA | 1696.9 | 1722 | 1650 | NEUTRAL | 62 |
| 33 | Michael Mmoh | USA | 1695.3 | 1675 | 1675 | WARM | 195 |
| 34 | Alex Molcan | SVK | 1694.0 | 1744 | 1744 | RETURNING | 102 |
| 35 | Nikolas Sanchez Izquierdo | ESP | 1691.4 | 1641 | 1641 | HOT | 226 |
| 36 | Kilian Feldbausch | SUI | 1688.9 | 1669 | 1669 | WARM | 287 |
| 37 | Pablo Carreno Busta | ESP | 1684.3 | 1761 | 1484 | WARM | 71 |
| 38 | Buvaysar Gadamauri | BEL | 1684.1 | 1664 | 1664 | WARM | 261 |
| 39 | Francisco Cerundolo | ARG | 1682.9 | 1790 | 1426 | WARM | 27 |
| 40 | Jack Draper | GBR | 1682.2 | 1806 | 1594 | RETURNING | 112 |
| 41 | Mariano Navone | ARG | 1679.8 | 1767 | 1460 | WARM | 39 |
| 42 | Franco Roncadelli | URU | 1679.0 | 1659 | 1659 | WARM | 227 |
| 43 | Alejandro Davidovich Fokina | ESP | 1677.3 | 1749 | 1545 | NEUTRAL | 22 |
| 44 | Roman Andres Burruchaga | ARG | 1676.8 | 1733 | 1514 | WARM | 63 |
| 45 | Juan Manuel Cerundolo | ARG | 1675.7 | 1756 | 1469 | WARM | 45 |
| 46 | Hubert Hurkacz | POL | 1675.6 | 1714 | 1547 | WARM | 96 |
| 47 | Ignacio Buse | PER | 1671.0 | 1773 | 1482 | NEUTRAL | 35 |
| 48 | Matteo Berrettini | ITA | 1670.6 | 1749 | 1524 | NEUTRAL | 48 |
| 49 | Brandon Nakashima | USA | 1670.4 | 1713 | 1590 | NEUTRAL | 32 |
| 50 | Bu Yunchaokete | CHN | 1668.7 | 1709 | 1536 | WARM | 131 |
WTA (current surface: grass, top 50 by composite)
| Rk | Player | Country | Composite | ELO overall | ELO grass | Form | Off. rank |
|---|---|---|---|---|---|---|---|
| 1 | Aryna Sabalenka | BLR | 1963.9 | 2089 | 1588 | WARM | 1 |
| 2 | Elena Rybakina | KAZ | 1925.9 | 2040 | 1580 | WARM | 2 |
| 3 | Alexandra Shubladze | RUS | 1898.6 | 1879 | 1879 | WARM | 184 |
| 4 | Jeline Vandromme | BEL | 1883.0 | 1863 | 1863 | WARM | 176 |
| 5 | Jessica Pegula | USA | 1881.7 | 1979 | 1583 | WARM | 4 |
| 6 | Iga Swiatek | POL | 1876.4 | 1957 | 1658 | NEUTRAL | 3 |
| 7 | Elina Svitolina | UKR | 1869.3 | 1996 | 1550 | WARM | 8 |
| 8 | Lisa Pigato | ITA | 1866.5 | 1846 | 1846 | WARM | 132 |
| 9 | Mirra Andreeva | RUS | 1861.0 | 1995 | 1513 | WARM | 6 |
| 10 | Coco Gauff | USA | 1850.8 | 1980 | 1519 | WARM | 7 |
| 11 | Akasha Urhobo | USA | 1843.4 | 1823 | 1823 | WARM | 180 |
| 12 | Tyra Caterina Grant | USA | 1840.5 | 1820 | 1820 | WARM | 157 |
| 13 | Dayeon Back | KOR | 1825.7 | 1806 | 1806 | WARM | 279 |
| 14 | Kaitlin Quevedo | USA | 1824.7 | 1825 | 1825 | NEUTRAL | 107 |
| 15 | Victoria Mboko | CAN | 1815.1 | 1937 | 1515 | WARM | 9 |
| 16 | Laura Samson | CZE | 1810.3 | 1810 | 1810 | NEUTRAL | 137 |
| 17 | Alice Tubello | FRA | 1810.1 | 1790 | 1790 | WARM | 222 |
| 18 | Belinda Bencic | SUI | 1804.3 | 1904 | 1561 | WARM | 11 |
| 19 | Carol Young Suh Lee | POC | 1801.3 | 1781 | 1781 | WARM | 192 |
| 20 | Jennifer Ruggeri | ITA | 1801.1 | 1781 | 1781 | WARM | 213 |
| 21 | Marta Kostyuk | UKR | 1800.2 | 1959 | 1449 | WARM | 12 |
| 22 | Anastasia Zolotareva | RUS | 1798.0 | 1778 | 1778 | WARM | 233 |
| 23 | Kristina Liutova | RUS | 1796.5 | 1777 | 1777 | WARM | 229 |
| 24 | Luisina Giovannini | ARG | 1793.4 | 1843 | 1843 | RETURNING | 173 |
| 25 | Angela Fita Boluda | ESP | 1793.2 | 1773 | 1773 | WARM | 195 |
| 26 | Eva Guerrero Alvarez | ESP | 1791.5 | 1772 | 1772 | WARM | 274 |
| 27 | Linda Noskova | CZE | 1788.9 | 1869 | 1583 | WARM | 13 |
| 28 | Hayu Kinoshita | JPN | 1787.3 | 1767 | 1767 | WARM | 217 |
| 29 | Martyna Kubka | POL | 1784.6 | 1765 | 1765 | WARM | 243 |
| 30 | Darya Astakhova | RUS | 1782.7 | 1763 | 1763 | WARM | 236 |
| 31 | Amanda Anisimova | USA | 1780.3 | 1906 | 1638 | RETURNING | 5 |
| 32 | Samira De Stefano | ITA | 1779.4 | 1759 | 1759 | WARM | 263 |
| 33 | Alexandra Eala | PHI | 1776.5 | 1837 | 1665 | NEUTRAL | 33 |
| 34 | Caijsa Wilda Hennemann | SWE | 1773.6 | 1774 | 1774 | NEUTRAL | 276 |
| 35 | Lilli Tagger | AUT | 1770.9 | 1771 | 1771 | NEUTRAL | 86 |
| 36 | Claire Liu | USA | 1770.0 | 1750 | 1750 | WARM | 148 |
| 37 | Sorana Cirstea | ROU | 1767.4 | 1919 | 1429 | WARM | 18 |
| 38 | Lanlana Tararudee | THA | 1766.5 | 1860 | 1536 | WARM | 94 |
| 39 | Daria Snigur | UKR | 1765.8 | 1863 | 1528 | WARM | 84 |
| 40 | Veronika Podrez | UKR | 1764.2 | 1814 | 1814 | RETURNING | 145 |
| 41 | Lucie Havlickova | CZE | 1758.1 | 1738 | 1738 | WARM | 212 |
| 42 | Sohyun Park | KOR | 1756.7 | 1737 | 1737 | WARM | 270 |
| 43 | Julie Struplova | CZE | 1755.7 | 1786 | 1786 | COLD | 272 |
| 44 | Tatiana Prozorova | RUS | 1755.6 | 1806 | 1806 | RETURNING | 172 |
| 45 | Elizara Yaneva | BUL | 1752.5 | 1752 | 1752 | NEUTRAL | 225 |
| 46 | Iva Jovic | USA | 1751.9 | 1833 | 1601 | NEUTRAL | 19 |
| 47 | Oleksandra Oliynykova | CRO | 1748.0 | 1859 | 1485 | WARM | 51 |
| 48 | Hanyu Guo | CHN | 1747.7 | 1728 | 1728 | WARM | 156 |
| 49 | Anhelina Kalinina | UKR | 1746.9 | 1842 | 1513 | WARM | 69 |
| 50 | Rebeka Masarova | ESP | 1746.2 | 1813 | 1623 | NEUTRAL | 140 |
ATP on CLAY (top 15 by surface tilt)
| Player | Ξ ELO | ELO clay | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Zdenek Kolar | +27.9 | 1617 | 1589 | NEUTRAL | 162 |
| Gustavo Heide | +25.1 | 1725 | 1700 | RETURNING | 182 |
| Jan Choinski | +19.6 | 1688 | 1668 | COLD | 105 |
| Juan Carlos Prado Angelo | +19.3 | 1648 | 1628 | RETURNING | 161 |
| Gonzalo Bueno | +17.6 | 1637 | 1619 | RETURNING | 180 |
| Luciano Darderi | +17.2 | 1790 | 1772 | WARM | 18 |
| Valentin Royer | +16.5 | 1654 | 1638 | WARM | 74 |
| Alex Barrena | +13.9 | 1571 | 1557 | NEUTRAL | 197 |
| Jesper De Jong | +12.7 | 1672 | 1659 | NEUTRAL | 83 |
| Hugo Dellien | +11.2 | 1688 | 1677 | RETURNING | 165 |
| Timofey Skatov | +11.0 | 1631 | 1620 | NEUTRAL | 175 |
| Tomas Barrios Vera | +9.1 | 1686 | 1677 | COLD | 138 |
| Lukas Neumayer | +8.9 | 1693 | 1684 | WARM | 168 |
| Marco Trungelliti | +8.6 | 1684 | 1675 | NEUTRAL | 80 |
| Facundo Diaz Acosta | +4.7 | 1703 | 1698 | RETURNING | 128 |
WTA on CLAY (top 15 by surface tilt)
| Player | Ξ ELO | ELO clay | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Katarzyna Kawa | +26.3 | 1730 | 1704 | HOT | 143 |
| Despina Papamichail | +7.5 | 1686 | 1679 | NEUTRAL | 168 |
| Teodora Kostovic | +4.7 | 1735 | 1730 | NEUTRAL | 182 |
| Anna Bondar | +4.5 | 1779 | 1775 | WARM | 75 |
| Simona Waltert | -2.9 | 1764 | 1767 | WARM | 90 |
| Carole Monnet | -3.1 | 1662 | 1665 | NEUTRAL | 191 |
| Julia Grabher | -4.8 | 1715 | 1720 | NEUTRAL | 116 |
| Andrea Lazaro Garcia | -7.6 | 1791 | 1799 | WARM | 153 |
| Luisina Giovannini | -10.7 | 1833 | 1843 | RETURNING | 173 |
| Veronika Erjavec | -12.4 | 1739 | 1752 | WARM | 89 |
| Darja Semenistaja | -13.5 | 1778 | 1792 | WARM | 102 |
| Mayar Sherif | -13.8 | 1707 | 1720 | RETURNING | 118 |
| Whitney Osuigwe | -13.8 | 1668 | 1682 | WARM | 183 |
| Nuria Brancaccio | -14.1 | 1658 | 1672 | COLD | 177 |
| Tamara Zidansek | -15.2 | 1761 | 1777 | RETURNING | 134 |
ATP on GRASS (top 15 by surface tilt)
| Player | Ξ ELO | ELO grass | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Shintaro Mochizuki | +54.6 | 1565 | 1511 | RETURNING | 129 |
| Nicolas Jarry | +29.4 | 1564 | 1535 | RETURNING | 189 |
| Billy Harris | +25.6 | 1541 | 1515 | COLD | 144 |
| Adrian Mannarino | +19.4 | 1584 | 1565 | COLD | 46 |
| Roberto Bautista Agut | -25.0 | 1551 | 1576 | COLD | 116 |
| Aleksandar Vukic | -31.8 | 1537 | 1569 | COLD | 100 |
| Otto Virtanen | -49.0 | 1631 | 1680 | NEUTRAL | 158 |
| Tristan Schoolkate | -50.4 | 1550 | 1600 | WARM | 123 |
| Alex Bolt | -56.1 | 1592 | 1648 | WARM | 157 |
| August Holmgren | -56.7 | 1548 | 1605 | WARM | 148 |
| Gabriel Diallo | -63.2 | 1576 | 1639 | COLD | 54 |
| Marcos Giron | -71.3 | 1570 | 1641 | WARM | 88 |
| Zachary Svajda | -72.3 | 1650 | 1722 | NEUTRAL | 62 |
| Marin Cilic | -73.2 | 1611 | 1684 | NEUTRAL | 47 |
| Ugo Blanchet | -74.7 | 1459 | 1534 | COLD | 173 |
WTA on GRASS (top 15 by surface tilt)
| Player | Ξ ELO | ELO grass | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Tatjana Maria | -18.0 | 1598 | 1616 | NEUTRAL | 52 |
| Beatriz Haddad Maia | -64.5 | 1514 | 1578 | COLD | 108 |
| Viktoriya Tomova | -107.0 | 1500 | 1607 | NEUTRAL | 167 |
| Ajla Tomljanovic | -111.2 | 1536 | 1647 | NEUTRAL | 109 |
| Xin Yu Wang | -127.1 | 1591 | 1719 | NEUTRAL | 31 |
| Kamilla Rakhimova | -128.2 | 1576 | 1705 | NEUTRAL | 78 |
| Linda Fruhvirtova | -133.9 | 1543 | 1677 | NEUTRAL | 164 |
| Suzan Lamens | -135.0 | 1489 | 1624 | COLD | 125 |
| Lulu Sun | -136.6 | 1519 | 1655 | NEUTRAL | 110 |
| Victoria Jimenez Kasintseva | -136.9 | 1499 | 1636 | NEUTRAL | 124 |
| Rebecca Sramkova | -137.3 | 1509 | 1646 | NEUTRAL | 120 |
| Dalma Galfi | -138.3 | 1576 | 1714 | NEUTRAL | 117 |
| Ashlyn Krueger | -149.2 | 1563 | 1712 | NEUTRAL | 113 |
| Elena Gabriela Ruse | -159.4 | 1570 | 1730 | NEUTRAL | 88 |
| Bianca Andreescu | -161.6 | 1539 | 1700 | NEUTRAL | 158 |
ATP on HARD (top 15 by surface tilt)
| Player | Ξ ELO | ELO hard | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Hugo Gaston | +45.5 | 1666 | 1620 | WARM | 119 |
| Luca Van Assche | +35.7 | 1704 | 1668 | WARM | 98 |
| Toby Samuel | +29.5 | 1738 | 1709 | WARM | 150 |
| Gauthier Onclin | +6.0 | 1613 | 1607 | HOT | 186 |
| Clement Chidekh | +5.5 | 1629 | 1624 | NEUTRAL | 200 |
| Rinky Hijikata | +3.2 | 1683 | 1680 | WARM | 106 |
| Alexis Galarneau | +2.9 | 1613 | 1610 | WARM | 187 |
| Coleman Wong | -1.9 | 1641 | 1643 | WARM | 108 |
| Benjamin Bonzi | -3.0 | 1678 | 1680 | WARM | 99 |
| Michael Mmoh | -10.9 | 1664 | 1675 | WARM | 195 |
| Borna Gojo | -11.2 | 1698 | 1709 | WARM | 178 |
| Ethan Quinn | -13.2 | 1683 | 1696 | WARM | 67 |
| Marcos Giron | -13.6 | 1628 | 1641 | WARM | 88 |
| Sho Shimabukuro | -14.6 | 1643 | 1657 | NEUTRAL | 104 |
| Terence Atmane | -14.7 | 1627 | 1641 | NEUTRAL | 53 |
WTA on HARD (top 15 by surface tilt)
| Player | Ξ ELO | ELO hard | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Talia Gibson | +53.5 | 1832 | 1779 | HOT | 63 |
| Hanne Vandewinkel | +51.2 | 1848 | 1796 | HOT | 97 |
| Xiaodi You | +1.4 | 1730 | 1729 | WARM | 170 |
| Kimberly Birrell | -6.3 | 1751 | 1757 | WARM | 74 |
| Victoria Jimenez Kasintseva | -6.9 | 1629 | 1636 | WARM | 124 |
| Ye Xin Ma | -9.4 | 1684 | 1693 | WARM | 189 |
| Sofia Costoulas | -11.2 | 1729 | 1740 | WARM | 150 |
| Taylah Preston | -15.5 | 1796 | 1811 | WARM | 126 |
| Polina Iatcenko | -17.5 | 1721 | 1738 | NEUTRAL | 163 |
| Himeno Sakatsume | -18.4 | 1742 | 1761 | NEUTRAL | 127 |
| Vendula Valdmannova | -18.6 | 1785 | 1804 | WARM | 199 |
| Priscilla Hon | -19.1 | 1646 | 1665 | NEUTRAL | 146 |
| Harriet Dart | -23.5 | 1740 | 1763 | WARM | 160 |
| Francisca Jorge | -27.2 | 1699 | 1727 | RETURNING | 196 |
| Hanyu Guo | -27.7 | 1700 | 1728 | WARM | 156 |
WTA on INDOOR (top 15 by surface tilt)
| Player | Ξ ELO | ELO indoor | ELO overall | Form | Off. rank |
|---|---|---|---|---|---|
| Linda Klimovicova | -124.1 | 1616 | 1740 | NEUTRAL | 165 |
| Kimberly Birrell | -177.1 | 1580 | 1757 | NEUTRAL | 74 |
| Ye Xin Ma | -177.9 | 1515 | 1693 | WARM | 189 |
| Carole Monnet | -194.2 | 1471 | 1665 | NEUTRAL | 191 |
| Elvina Kalieva | -209.7 | 1521 | 1731 | WARM | 135 |
| Himeno Sakatsume | -218.0 | 1543 | 1761 | NEUTRAL | 127 |
| Emerson Jones | -222.0 | 1584 | 1806 | WARM | 133 |
| Dalma Galfi | -228.3 | 1486 | 1714 | NEUTRAL | 117 |
| Marina Bassols Ribera | -229.2 | 1503 | 1732 | WARM | 144 |
| Tamara Korpatsch | -240.1 | 1534 | 1774 | WARM | 79 |
| Mona Barthel | -254.2 | 1500 | 1754 | WARM | 193 |
| Polina Iatcenko | -254.5 | 1484 | 1738 | NEUTRAL | 163 |
| Sofia Costoulas | -256.1 | 1484 | 1740 | WARM | 150 |
| Vendula Valdmannova | -269.7 | 1534 | 1804 | WARM | 199 |
| Daria Snigur | -273.9 | 1589 | 1863 | WARM | 84 |
β Caveat: Model CLV anti-correlated with skill (Phase A finding); treat parlays as paper.
Kalshi cross-match (independent fav parlays)
No combos surfaced.
Kalshi same-match (correlated)
No combos surfaced.
PrizePicks slips
| Label | Variance | Legs | Joint P | Payout | EV/$ |
|---|---|---|---|---|---|
| 2-pick MED-variance | MED | Alex de Minaur LESS 37.5 Total Games, Noma Noha Akugue MORE 18.5 Total Games | 0.442 | 5.00x | 1.211 |
| 2-pick HIGH-variance | HIGH | Flavio Cobolli LESS 9.5 Aces, Taylor Fritz MORE 2.5 Break Points Won | 0.420 | 10.00x | 3.201 |
| 3-pick MED-variance | MED | Alex de Minaur LESS 37.5 Total Games, Noma Noha Akugue MORE 18.5 Total Games, Marina Bassols Ribera MORE 7.5 Total Games Won | 0.290 | 10.00x | 1.905 |
| 3-pick HIGH-variance | HIGH | Flavio Cobolli LESS 9.5 Aces, Taylor Fritz MORE 2.5 Break Points Won, Alex de Minaur MORE 5.5 Aces | 0.243 | 25.00x | 5.074 |
| 4-pick MED-variance | MED | Alex de Minaur LESS 37.5 Total Games, Noma Noha Akugue MORE 18.5 Total Games, Marina Bassols Ribera MORE 7.5 Total Games Won, Jannik Sinner LESS 30.5 Total Games | 0.185 | 18.00x | 2.325 |
| 4-pick HIGH-variance | HIGH | Flavio Cobolli LESS 9.5 Aces, Taylor Fritz MORE 2.5 Break Points Won, Alex de Minaur MORE 5.5 Aces, Alexandra Eala MORE 2.5 Aces | 0.134 | 50.00x | 5.699 |
β Inverted CLV signal: win rate at POSITIVE CLV (0.429) < win rate at NEGATIVE CLV (0.6562). When we beat the close, we LOSE; when we lose the close, we WIN. Model is anti-correlated with skill. Real money gated.
CLV vs Pinnacle close (overall)
| n picks total | 1802 |
| matched Pinnacle | 370 (20.5%) |
| mean CLV (pp) | 16.16 |
| median CLV (pp) | 15.824 |
| win rate at +CLV | 0.429 |
| win rate at -CLV | 0.6562 |
CLV by market price bucket (FLB signal)
| Bucket | n | Mean CLV (pp) |
|---|---|---|
| <10% | 30 | 32.535 |
| 10-30% | 146 | 21.473 |
| 30-50% | 129 | 11.786 |
| 50-70% | 49 | 6.21 |
| 70-90% | 8 | 3.478 |
| >90% | 8 | 1.915 |
Calibration buckets
| n_total | 1321 |
| ECE (pp) | 4.355 |
| Brier Score | 0.2417 |
| Log Loss | 0.6762 |
Predicted vs actual (10pp buckets)
| Bucket | n | Predicted | Actual | Gap (pp) |
|---|---|---|---|---|
| 0.2-0.30 | 20 | 0.2832 | 0.35 | +6.68 |
| 0.3-0.40 | 154 | 0.3585 | 0.2792 | -7.93 |
| 0.4-0.50 | 521 | 0.4513 | 0.4319 | -1.95 |
| 0.5-0.60 | 487 | 0.5448 | 0.4949 | -4.99 |
| 0.6-0.70 | 124 | 0.6405 | 0.5806 | -5.98 |
| 0.7-0.80 | 14 | 0.7179 | 0.8571 | +13.93 |
| 0.8-0.90 | 1 | 0.8232 | 1.0 | +17.68 |
| Source | DB / file | Last pulled | Age | Rows | Status |
|---|---|---|---|---|---|
| Kalshi KXATPMATCH | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 1922 | fresh |
| Kalshi KXWTAMATCH | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 1948 | fresh |
| Kalshi KXFRENCHOPEN | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 0 | fresh |
| Kalshi KXFOPENMENSINGLE | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 0 | fresh |
| Kalshi KXATPGRANDSLAM | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 14 | fresh |
| Kalshi KXUSOPEN | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 0 | fresh |
| Kalshi KXATPSETWINNER | tennis_kalshi.sqlite | 2026-07-06T05:00:02.762102+00:00 | 31m | 4416 | fresh |
| Kalshi KXATPTOTALSETS | tennis_kalshi.sqlite | 2026-07-06T05:00:02.762102+00:00 | 31m | 0 | fresh |
| Kalshi KXATPSETSWEEP | tennis_kalshi.sqlite | 2026-07-06T05:00:02.762102+00:00 | 31m | 2 | fresh |
| Kalshi KXATPGAMESPREAD | tennis_kalshi.sqlite | 2026-07-06T05:00:02.762102+00:00 | 31m | 0 | fresh |
| Kalshi KXATPEXACTMATCH | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 4096 | fresh |
| Kalshi KXWTADOUBLES | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 254 | fresh |
| Kalshi KXATP1RANK | tennis_kalshi.sqlite | 2026-07-06T05:00:09.056435+00:00 | 31m | 16 | fresh |
| elo last computed | tennis.sqlite | 2026-06-21T17:36:52+00:00 | 347.91h | 20430 | stale |
| rankings last pulled | tennis.sqlite | 2026-06-15T17:40:18+00:00 | 491.85h | 11348 | stale |
| rankings atp latest date | tennis.sqlite | 2026-06-08 | 677.52h | — | stale |
| rankings wta latest date | tennis.sqlite | 2026-06-08 | 677.52h | — | stale |
| mirror atp schedule | tennis.sqlite | 2026-07-06T05:00:08.279463+00:00 | 31m | 92 | fresh |
| h2h last computed | tennis.sqlite | 2026-05-17T10:11:57.514615+00:00 | 1195.32h | — | stale |
| h2h n pairs | tennis.sqlite | 190184 | missing | — | missing |
| last player db run | tennis.sqlite | 1783291636 | missing | — | missing |
| results last_run | tennis_results.sqlite | [2026-07-06T05:02:16.037775+00:00] 2026-07-06T05:02:13.312599+00:00; dates=['20260705']; rows=910; resolved=894 | missing | — | missing |
| pp_edges CSV | pp_edges_tennis_2026-07-05.csv | 2026-07-05T22:49:18.653988+00:00 | 6.70h | — | stale |
| kalshi edges JSON | tennis_kalshi_edges_2026-07-05.json | 2026-07-06T05:02:33.306580+00:00 | 28m | — | fresh |
| paper trades PP | paper_trades_pp_tennis_2026-07-05.json | 2026-07-06T05:31:10.094530+00:00 | 0m | — | fresh |
| paper trades Kalshi | paper_trades_kalshi_tennis_2026-07-05.json | 2026-07-06T05:31:09.541031+00:00 | 0m | — | fresh |
| daily payload | daily_tennis_2026-07-05.json | 2026-07-05T22:48:58.182064+00:00 | 6.70h | — | stale |
| PP movement | pp_line_movement_tennis_2026-07-05.csv | 2026-07-05T22:48:56.674461+00:00 | 6.70h | — | stale |
| PP calibration | pp_calibration_tennis.json | 2026-07-05T22:47:32.263948+00:00 | 6.73h | — | stale |