Kalshi KXATPMATCH 3m · 1790rKalshi KXWTAMATCH 3m · 1672rKalshi KXFRENCHOPEN 3mKalshi KXFOPENMENSINGLE 3mKalshi KXATPGRANDSLAM 3m · 14rKalshi KXUSOPEN 3mKalshi KXATPSETWINNER 3m · 3716rKalshi KXATPTOTALSETS 3mKalshi KXATPSETSWEEP 3m · 1rKalshi KXATPGAMESPREAD 3mKalshi KXATPEXACTMATCH 3m · 1810rKalshi KXWTADOUBLES 3m · 124rKalshi KXATP1RANK 3m · 16relo last computed 3m · 20280rrankings last pulled 3m · 7538rrankings atp latest date 6drankings wta latest date 6dmirror atp schedule 1m · 48rh2h last computed 14dh2h n pairs missinglast player db run missingresults last_run missingpp_edges CSV 0mkalshi edges JSON 0mpaper trades PP 0mpaper trades Kalshi 0mdaily payload 0mPP movement 0mPP calibration 0m
Matches today
13
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
13:15
2026-05-31 UTC
🏆 Best Bet (main-draw)
No main-draw Kalshi pick survived qualifying filter today.
🎯 Safest (P ≥ 65%)
Madison Keys
70%
Heavy main-draw favorite · PAPER
Edge +11.5pp
Ask 58¢
Ask 58¢
💎 Biggest Payout (ELITE)
No ELITE main-draw longshot today.
| # | Match | Tournament | Round | Surface | Start | ELO A | ELO B | ELO diff | Kalshi event |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Elina Svitolina vs Belinda Bencic | Roland Garros | Round 4 | clay | May 31 11:10 | 1797 | 1582 | +216 | KXWTAMATCH-26MAY31SVIBEN |
| 2 | Elina Svitolina vs Belinda Bencic | Roland Garros | Round 4 | clay | May 31 11:10 | 1797 | 1582 | +216 | KXWTAMATCH-26MAY31SVIBEN |
| 3 | Rafael Jodar vs Pablo Carreno Busta | Roland Garros | Round 4 | clay | May 31 11:25 | 1730 | 1642 | +88 | KXATPMATCH-26MAY31JODCAR |
| 4 | Rafael Jodar vs Pablo Carreno Busta | Roland Garros | Round 4 | clay | May 31 11:25 | 1730 | 1642 | +88 | KXATPMATCH-26MAY31JODCAR |
| 5 | Rebeka Masarova vs Celine Naef | Lexus Birmingham Open | Qualifying Final | grass | May 31 11:25 | 1533 | 1546 | -13 | |
| 6 | Jesper De Jong vs Alexander Zverev | Roland Garros | Round 4 | clay | May 31 13:30 | 1654 | 1817 | -163 | KXATPSETWINNER-26MAY31DEJZVE-3 |
| 7 | Jesper De Jong vs Alexander Zverev | Roland Garros | Round 4 | clay | May 31 13:30 | 1654 | 1817 | -163 | KXATPSETWINNER-26MAY31DEJZVE-3 |
| 8 | Mirra Andreeva vs Jil Teichmann | Roland Garros | Round 4 | clay | May 31 14:00 | 1808 | 1671 | +137 | KXWTAMATCH-26MAY31ANDTEI |
| 9 | Mirra Andreeva vs Jil Teichmann | Roland Garros | Round 4 | clay | May 31 14:00 | 1808 | 1671 | +137 | KXWTAMATCH-26MAY31ANDTEI |
| 10 | Jakub Mensik vs Andrey Rublev | Roland Garros | Round 4 | clay | May 31 15:00 | 1576 | 1685 | -109 | KXATPMATCH-26MAY31MENRUB |
| 11 | Jakub Mensik vs Andrey Rublev | Roland Garros | Round 4 | clay | May 31 15:00 | 1576 | 1685 | -109 | KXATPMATCH-26MAY31MENRUB |
| 12 | Casper Ruud vs Joao Fonseca | Roland Garros | Round 4 | clay | May 31 18:15 | 1793 | 1628 | +166 | KXATPSETWINNER-26MAY31RUUFON-3 |
| 13 | Casper Ruud vs Joao Fonseca | Roland Garros | Round 4 | clay | May 31 18:15 | 1793 | 1628 | +166 | KXATPSETWINNER-26MAY31RUUFON-3 |
| # | Match | Our pick | Our P | Mkt P | Ask | Edge | Tier | Decision | Vol 24h | Surface | Round | EV/$ |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Zachary Svajda vs Flavio Cobolli | Zachary Svajda | 52.3% | 16.0% | 16¢ | +36.3pp | LOW | PAPER | 52189 | hard | Round Of 16 | +0.363 |
| 2 | Rafael Jodar vs Pablo Carreno Busta | Rafael Jodar | 56.7% | 29.0% | 29¢ | +27.7pp | LOW | PAPER | 1774514 | clay | Round 4 | +0.277 |
| 3 | Mirra Andreeva vs Jil Teichmann | Jil Teichmann | 36.6% | 11.0% | 11¢ | +25.6pp | LOW | PAPER | 290044 | clay | Round 4 | +0.256 |
| 4 | Naomi Osaka vs Aryna Sabalenka | Naomi Osaka | 39.6% | 20.0% | 20¢ | +19.6pp | LOW | PAPER | 33576 | clay | Round 4 | +0.196 |
| 5 | Casper Ruud vs Joao Fonseca | Joao Fonseca | 58.3% | 39.0% | 39¢ | +19.3pp | LOW | PAPER | 197119 | hard | Round Of 16 | +0.193 |
| 6 | Jesper De Jong vs Alexander Zverev | Jesper De Jong | 27.0% | 9.0% | 9¢ | +18.0pp | LOW | PAPER | 527682 | hard | Round Of 16 | +0.180 |
| 7 | Madison Keys vs Diana Shnaider | Madison Keys | 69.5% | 58.0% | 58¢ | +11.5pp | LOW | PAPER | 12537 | clay | Round 4 | +0.115 |
| 8 | Diane Parry vs Maja Chwalinska | Maja Chwalinska | 67.1% | 62.0% | 62¢ | +5.1pp | LOW | PAPER | 3530 | clay | Round 4 | +0.051 |
| 9 | Frances Tiafoe vs Matteo Arnaldi | Matteo Arnaldi | 50.9% | 46.0% | 46¢ | +4.9pp | LOW | PAPER | 23000 | clay | Round 4 | +0.049 |
| 10 | Juan Manuel Cerundolo vs Matteo Berrettini | Matteo Berrettini | 61.9% | 58.0% | 58¢ | +3.9pp | LOW | PAPER | 8861 | hard | Round Of 16 | +0.039 |
| 11 | Andrey Rublev vs Jakub Mensik | Andrey Rublev | 58.5% | 55.0% | 55¢ | +3.5pp | LOW | PAPER | 407494 | clay | Round 4 | +0.035 |
| 12 | Anna Kalinskaya vs Anastasia Potapova | Anna Kalinskaya | 37.3% | 35.0% | 35¢ | +2.3pp | LOW | PAPER | 2619 | clay | Round 4 | +0.023 |
| 13 | Felix Auger-Aliassime vs Alejandro Tabilo | Alejandro Tabilo | 37.9% | 38.0% | 38¢ | -0.1pp | LOW | SKIP | 17168 | hard | Round Of 16 | -0.001 |
| # | Player | Stat | PP line | Our proj | Edge % | Side | Tier | Opp | Surface | Demon | Payout |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Jakub Mensik🟨 WARM | Aces | 13.5 | 6.30 | +53.3% | LESS | LOW | Andrey Rublev | clay | — | 0.5x |
| 2 | Matteo Berrettini | Total Games Won | 20.5 | 10.01 | +51.2% | LESS | LOW | Juan Manuel Cerundolo | clay | — | 0.5x |
| 3 | Matteo Berrettini | Total Tie Breaks | 0.5 | 0.25 | +50.2% | LESS | LOW | Juan Manuel Cerundolo | clay | — | 1.0x |
| 4 | Jakub Mensik🟨 WARM | Total Games Won | 19.5 | 9.77 | +49.9% | LESS | LOW | Andrey Rublev | clay | — | 0.5x |
| 5 | Andrey Rublev🟨 WARM | Total Games Won | 20.5 | 11.23 | +45.2% | LESS | LOW | Jakub Mensik | clay | — | 0.5x |
| 6 | Casper Ruud🟨 WARM | Total Games Won | 20.5 | 11.60 | +43.4% | LESS | LOW | Joao Fonseca | clay | — | 0.5x |
| 7 | Juan Manuel Cerundolo🟨 WARM | Total Games Won | 19.5 | 11.07 | +43.2% | LESS | LOW | Matteo Berrettini | clay | — | 0.5x |
| 8 | Jil Teichmann🧊 COLD | Total Games Won | 6.5 | 9.03 | +39.0% | MORE | LOW | Mirra Andreeva | clay | — | 0.5x |
| 9 | Andrey Rublev🟨 WARM | Total Games | 39.5 | 24.97 | +36.8% | LESS | LOW | Jakub Mensik | clay | — | 0.5x |
| 10 | Felix Auger-Aliassime🟨 WARM | Total Games | 39.5 | 25.01 | +36.7% | LESS | LOW | Alejandro Tabilo | clay | — | 0.5x |
| 11 | Zachary Svajda🧊 COLD | Total Games Won | 13.5 | 8.55 | +36.6% | LESS | LOW | Flavio Cobolli | clay | — | 0.5x |
| 12 | Casper Ruud🟨 WARM | Total Games | 38.5 | 24.49 | +36.4% | LESS | LOW | Joao Fonseca | clay | — | 0.5x |
| 13 | Matteo Berrettini | Total Games | 38.5 | 25.05 | +34.9% | LESS | LOW | Juan Manuel Cerundolo | clay | — | 0.5x |
| 14 | Frances Tiafoe⏳ RTRN | Total Games | 38.5 | 25.17 | +34.6% | LESS | LOW | Matteo Arnaldi | clay | — | 0.5x |
| 15 | Andrey Rublev🟨 WARM | Aces | 9.5 | 6.38 | +32.9% | LESS | LOW | Jakub Mensik | clay | — | 0.5x |
| 16 | Flavio Cobolli🟨 WARM | Total Sets | 3.5 | 2.43 | +30.7% | LESS | LOW | Zachary Svajda | clay | — | 1.0x |
| 17 | Mirra Andreeva🟨 WARM | Total Games | 18.5 | 23.70 | +28.1% | MORE | LOW | Jil Teichmann | clay | — | 0.5x |
| 18 | Flavio Cobolli🟨 WARM | Total Games | 32.5 | 23.43 | +27.9% | LESS | LOW | Zachary Svajda | clay | — | 0.5x |
| 19 | Jesper De Jong | Total Games Won | 12.5 | 9.49 | +24.1% | LESS | LOW | Alexander Zverev | clay | — | 0.5x |
| 20 | Diane Parry🧊 COLD | Total Games Won | 11.5 | 8.75 | +23.9% | LESS | LOW | Maja Chwalinska | clay | — | 0.5x |
| 21 | Alexander Zverev🟨 WARM | Total Games | 31.5 | 24.53 | +22.1% | LESS | LOW | Jesper De Jong | clay | — | 0.5x |
| 22 | Andrey Rublev🟨 WARM | Break Points Won | 4.5 | 3.59 | +20.3% | LESS | LOW | Jakub Mensik | clay | — | 1.0x |
| 23 | Anna Kalinskaya | Total Games Won | 11.5 | 9.33 | +18.9% | LESS | LOW | Anastasia Potapova | clay | — | 0.5x |
| 24 | Naomi Osaka🟨 WARM | Aces | 3.5 | 2.86 | +18.3% | LESS | LOW | Aryna Sabalenka | clay | — | 0.5x |
| 25 | Aryna Sabalenka🟨 WARM | Total Games | 20.5 | 23.60 | +15.1% | MORE | LOW | Naomi Osaka | clay | — | 0.5x |
| 26 | Juan Manuel Cerundolo🟨 WARM | Aces | 7.5 | 6.41 | +14.5% | LESS | LOW | Matteo Berrettini | clay | — | 0.5x |
| 27 | Madison Keys⏳ RTRN | Total Games | 21.5 | 24.13 | +12.2% | MORE | LOW | Diana Shnaider | clay | — | 0.5x |
| 28 | Naomi Osaka🟨 WARM | Total Games Won | 8.5 | 9.50 | +11.8% | MORE | LOW | Aryna Sabalenka | clay | — | 0.5x |
| 29 | Anastasia Potapova🟨 WARM | Total Games | 21.5 | 23.33 | +8.5% | MORE | LOW | Anna Kalinskaya | clay | — | 0.5x |
| 30 | Maja Chwalinska⏳ RTRN | Total Games | 21.5 | 23.32 | +8.4% | MORE | LOW | Diane Parry | clay | — | 0.5x |
| 31 | Aryna Sabalenka🟨 WARM | Total Games Won | 12.5 | 11.49 | +8.0% | LESS | LOW | Naomi Osaka | clay | — | 1.0x |
| 32 | Anastasia Potapova🟨 WARM | Total Games Won | 12.5 | 11.64 | +6.9% | LESS | LOW | Anna Kalinskaya | clay | — | 0.5x |
| 33 | Mirra Andreeva🟨 WARM | Break Points Won | 5.0 | 5.25 | +5.1% | MORE | LOW | Jil Teichmann | clay | — | 2.0x |
| 34 | Jesper De Jong | Aces | 6.5 | 6.25 | +3.8% | LESS | LOW | Alexander Zverev | clay | — | 0.5x |
Kalshi tennis — 0 picks · $0.00 staked
Day 1 - paper only, grade EOD before scaling · locked 2026-05-31T13:15:40.024588+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-05-31T13:15:39.965562+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-05-31T06:15:48 · flagged threshold = ±3.0pp · 8 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 |
|---|---|---|---|---|
| Karen Khachanov · exact | 44.0% | 0.5% | -43.5pp · SHARP HIGHER | Wim 1% |
| Alex de Minaur · exact | 44.0% | 0.6% | -43.4pp · SHARP HIGHER | Wim 1% |
| Felix Auger-Aliassime · exact | 44.0% | 0.7% | -43.3pp · SHARP HIGHER | Wim 1% |
| Lorenzo Musetti · exact | 45.0% | 1.8% | -43.2pp · SHARP HIGHER | Wim 1%, US 1% |
| Casper Ruud · exact | 32.5% | 14.1% | -18.4pp · SHARP HIGHER | Fre 13%, Wim 1% |
| Novak Djokovic · exact | 10.5% | 17.2% | +6.7pp · PUBLIC HIGHER | Wim 12%, US 6% |
| Alexander Zverev · exact | 44.5% | 49.1% | +4.6pp · PUBLIC HIGHER | Fre 43%, Wim 7%, US 4% |
| Jannik Sinner · exact | 80.5% | 76.2% | -4.3pp · SHARP HIGHER | Wim 56%, US 46% |
| Alexander Bublik · exact | 3.5% | 1.4% | -2.1pp · SHARP HIGHER | Wim 1%, US 1% |
| Daniil Medvedev · exact | 8.0% | 6.2% | -1.8pp · SHARP HIGHER | Wim 3%, US 3% |
| Jack Draper · exact | 3.5% | 4.6% | +1.1pp · PUBLIC HIGHER | Wim 3%, US 2% |
| Ben Shelton · exact | 4.0% | 4.4% | +0.4pp · PUBLIC HIGHER | Wim 2%, US 2% |
| Frances Tiafoe · exact | 4.5% | 4.2% | -0.3pp · SHARP HIGHER | Fre 3%, Wim 0%, US 1% |
| Taylor Fritz · exact | 4.5% | 4.6% | +0.1pp · PUBLIC HIGHER | Wim 3%, US 2% |
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-05-31.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 | 14750 | 2188 | 1893 | 1695 | 2062 |
| 2 | Carlos Alcaraz | ESP | 11960 | 2070 | 1867 | 1717 | 1956 |
| 3 | Alexander Zverev | GER | 5705 | 1953 | 1817 | 1594 | 1863 |
| 4 | Novak Djokovic | SRB | 4460 | 1938 | 1727 | 1636 | 1846 |
| 5 | Ben Shelton | USA | 4070 | 1819 | 1663 | 1561 | 1765 |
| 6 | Felix Auger Aliassime | CAN | 4050 | 1835 | 1595 | 1517 | 1803 |
| 7 | Alex De Minaur | AUS | 3855 | 1847 | 1675 | 1590 | 1806 |
| 8 | Daniil Medvedev | RUS | 3760 | 1903 | 1684 | 1585 | 1845 |
| 9 | Taylor Fritz | USA | 3720 | 1808 | 1566 | 1722 | 1749 |
| 10 | Alexander Bublik | KAZ | 3320 | 1804 | 1699 | 1569 | 1703 |
| 11 | Lorenzo Musetti | ITA | 3115 | 1832 | 1764 | 1607 | 1723 |
| 12 | Jiri Lehecka | CZE | 2665 | 1830 | 1648 | 1574 | 1754 |
| 13 | Andrey Rublev | RUS | 2460 | 1788 | 1685 | 1516 | 1683 |
| 14 | Flavio Cobolli | ITA | 2340 | 1775 | 1704 | 1557 | 1655 |
| 15 | Karen Khachanov | RUS | 2320 | 1717 | 1607 | 1567 | 1639 |
| 16 | Casper Ruud | NOR | 2275 | 1851 | 1793 | 1502 | 1685 |
| 17 | Luciano Darderi | ITA | 2260 | 1781 | 1802 | 1466 | 1466 |
| 18 | Learner Tien | USA | 2180 | 1847 | 1593 | 1506 | 1789 |
| 19 | Valentin Vacherot | MON | 2103 | 1810 | 1702 | 1467 | 1738 |
| 20 | Arthur Fils | FRA | 2040 | 1892 | 1746 | 1546 | 1771 |
| 21 | Tommy Paul | USA | 1945 | 1851 | 1761 | 1587 | 1743 |
| 22 | Frances Tiafoe | USA | 1905 | 1757 | 1610 | 1488 | 1719 |
| 23 | Alejandro Davidovich Fokina | ESP | 1860 | 1755 | 1585 | 1545 | 1703 |
| 24 | Cameron Norrie | GBR | 1785 | 1749 | 1639 | 1529 | 1682 |
| 25 | Arthur Rinderknech | FRA | 1736 | 1716 | 1574 | 1530 | 1631 |
| 26 | Francisco Cerundolo | ARG | 1570 | 1791 | 1711 | 1426 | 1698 |
| 27 | Jakub Mensik | CZE | 1550 | 1770 | 1576 | 1497 | 1747 |
| 28 | Tomas Martin Etcheverry | ARG | 1510 | 1768 | 1671 | 1456 | 1636 |
| 29 | Rafael Jodar | ESP | 1461 | 1878 | 1730 | — | 1765 |
| 30 | Joao Fonseca | BRA | 1435 | 1803 | 1628 | 1495 | 1795 |
| 31 | Ignacio Buse | PER | 1412 | 1785 | 1746 | 1482 | 1562 |
| 32 | Ugo Humbert | FRA | 1370 | 1722 | 1501 | 1517 | 1697 |
| 33 | Tallon Griekspoor | NED | 1340 | 1693 | 1587 | 1564 | 1645 |
| 34 | Corentin Moutet | FRA | 1323 | 1685 | 1576 | 1574 | 1640 |
| 35 | Brandon Nakashima | USA | 1295 | 1702 | 1571 | 1590 | 1660 |
| 36 | Alejandro Tabilo | CHI | 1278 | 1781 | 1691 | 1575 | 1637 |
| 37 | Alexander Blockx | BEL | 1238 | 1824 | 1695 | 1508 | 1713 |
| 38 | Mariano Navone | ARG | 1215 | 1773 | 1737 | 1460 | 1507 |
| 39 | Denis Shapovalov | CAN | 1170 | 1679 | 1491 | 1472 | 1698 |
| 40 | Zizou Bergs | BEL | 1150 | 1691 | 1558 | 1521 | 1631 |
| 41 | Jaume Munar | ESP | 1145 | 1707 | 1598 | 1508 | 1635 |
| 42 | Alex Michelsen | USA | 1115 | 1712 | 1493 | 1538 | 1702 |
| 43 | Tomas Machac | CZE | 1080 | 1740 | 1596 | 1500 | 1682 |
| 44 | Holger Rune | DEN | 1060 | 1744 | 1663 | 1515 | 1710 |
| 45 | Adrian Mannarino | FRA | 1037 | 1572 | 1380 | 1584 | 1569 |
| 46 | Marin Cilic | CRO | 1010 | 1708 | 1534 | 1611 | 1635 |
| 47 | Sebastian Korda | USA | 1000 | 1806 | 1537 | 1556 | 1757 |
| 48 | Miomir Kecmanovic | SRB | 980 | 1691 | 1585 | 1500 | 1595 |
| 49 | Gabriel Diallo | CAN | 975 | 1651 | 1554 | 1576 | 1615 |
| 50 | Ethan Quinn | USA | 974 | 1711 | 1580 | 1509 | 1683 |
WTA top 50
| Rk | Player | Country | Pts | ELO overall | ELO clay | ELO grass | ELO hard |
|---|---|---|---|---|---|---|---|
| 1 | Aryna Sabalenka | BLR | 9960 | 2098 | 1789 | 1588 | 2045 |
| 2 | Elena Rybakina | KAZ | 8313 | 2057 | 1771 | 1580 | 1972 |
| 3 | Iga Swiatek | POL | 7273 | 1951 | 1802 | 1658 | 1852 |
| 4 | Coco Gauff | USA | 6749 | 1987 | 1826 | 1519 | 1871 |
| 5 | Jessica Pegula | USA | 6286 | 1999 | 1728 | 1583 | 1901 |
| 6 | Amanda Anisimova | USA | 5958 | 1916 | 1561 | 1638 | 1822 |
| 7 | Elina Svitolina | UKR | 4315 | 1983 | 1797 | 1550 | 1824 |
| 8 | Mirra Andreeva | RUS | 4181 | 1941 | 1808 | 1513 | 1797 |
| 9 | Victoria Mboko | CAN | 3710 | 1938 | 1720 | 1515 | 1891 |
| 10 | Karolina Muchova | CZE | 3318 | 1935 | 1587 | 1494 | 1869 |
| 11 | Belinda Bencic | SUI | 3145 | 1888 | 1582 | 1561 | 1831 |
| 12 | Linda Noskova | CZE | 3054 | 1887 | 1613 | 1583 | 1763 |
| 13 | Jasmine Paolini | ITA | 2787 | 1813 | 1699 | 1585 | 1741 |
| 14 | Ekaterina Alexandrova | RUS | 2679 | 1722 | 1566 | 1584 | 1662 |
| 15 | Marta Kostyuk | UKR | 2387 | 1924 | 1757 | 1449 | 1755 |
| 16 | Naomi Osaka | JPN | 2341 | 1831 | 1650 | 1514 | 1734 |
| 17 | Iva Jovic | USA | 2306 | 1825 | 1662 | 1601 | 1759 |
| 18 | Sorana Cirstea | ROU | 1985 | 1901 | 1670 | 1429 | 1797 |
| 19 | Madison Keys | USA | 1962 | 1844 | 1719 | 1558 | 1766 |
| 20 | Clara Tauson | DEN | 1920 | 1726 | 1542 | 1520 | 1679 |
| 21 | Elise Mertens | BEL | 1858 | 1818 | 1616 | 1581 | 1714 |
| 22 | Leylah Fernandez | CAN | 1844 | 1773 | 1582 | 1546 | 1679 |
| 23 | Diana Shnaider | RUS | 1796 | 1785 | 1640 | 1565 | 1686 |
| 24 | Anna Kalinskaya | RUS | 1792 | 1798 | 1562 | 1546 | 1721 |
| 25 | Emma Navarro | USA | 1719 | 1755 | 1649 | 1590 | 1613 |
| 26 | Hailey Baptiste | USA | 1683 | 1790 | 1668 | 1488 | 1667 |
| 27 | Liudmila Samsonova | RUS | 1635 | 1692 | 1603 | 1619 | 1566 |
| 28 | Marie Bouzkova | CZE | 1631 | 1777 | 1689 | 1476 | 1648 |
| 29 | Ann Li | USA | 1601 | 1762 | 1652 | 1478 | 1647 |
| 30 | Anastasia Potapova | RUS | 1470 | 1835 | 1732 | 1484 | 1640 |
| 31 | Jelena Ostapenko | LAT | 1464 | 1766 | 1666 | 1534 | 1621 |
| 32 | Jaqueline Cristian | ROU | 1414 | 1782 | 1647 | 1432 | 1698 |
| 33 | Cristina Bucsa | ESP | 1406 | 1716 | 1454 | 1514 | 1684 |
| 34 | Xin Yu Wang | CHN | 1371 | 1715 | 1522 | 1591 | 1616 |
| 35 | Sara Bejlek | CZE | 1369 | 1785 | 1739 | 1486 | 1653 |
| 36 | Katerina Siniakova | CZE | 1362 | 1765 | 1546 | 1578 | 1693 |
| 37 | Alexandra Eala | PHI | 1340 | 1790 | 1504 | 1600 | 1748 |
| 38 | Elisabetta Cocciaretto | ITA | 1320 | 1812 | 1607 | 1577 | 1689 |
| 39 | Emma Raducanu | GBR | 1301 | 1739 | 1554 | 1577 | 1658 |
| 40 | Janice Tjen | INA | 1292 | 1799 | 1650 | — | 1785 |
| 41 | Barbora Krejcikova | CZE | 1271 | 1754 | 1561 | 1606 | 1647 |
| 42 | Tereza Valentova | CZE | 1265 | 1846 | 1745 | 1517 | 1788 |
| 43 | Lois Boisson | FRA | 1264 | 1768 | 1759 | 1483 | 1554 |
| 44 | Marketa Vondrousova | CZE | 1263 | 1728 | 1606 | 1578 | 1609 |
| 45 | Dayana Yastremska | UKR | 1246 | 1753 | 1650 | 1575 | 1594 |
| 46 | Magdalena Frech | POL | 1238 | 1651 | 1521 | 1434 | 1613 |
| 47 | Laura Siegemund | GER | 1230 | 1698 | 1565 | 1541 | 1592 |
| 48 | Mccartney Kessler | USA | 1229 | 1750 | 1541 | 1583 | 1688 |
| 49 | Maria Sakkari | GRE | 1208 | 1707 | 1568 | 1486 | 1658 |
| 50 | Jessica Bouzas Maneiro | ESP | 1200 | 1697 | 1663 | 1524 | 1578 |
| Source | DB / file | Last pulled | Age | Rows | Status |
|---|---|---|---|---|---|
| Kalshi KXATPMATCH | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 1790 | fresh |
| Kalshi KXWTAMATCH | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 1672 | fresh |
| Kalshi KXFRENCHOPEN | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 0 | fresh |
| Kalshi KXFOPENMENSINGLE | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 0 | fresh |
| Kalshi KXATPGRANDSLAM | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 14 | fresh |
| Kalshi KXUSOPEN | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 0 | fresh |
| Kalshi KXATPSETWINNER | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 3716 | fresh |
| Kalshi KXATPTOTALSETS | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 0 | fresh |
| Kalshi KXATPSETSWEEP | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 1 | fresh |
| Kalshi KXATPGAMESPREAD | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 0 | fresh |
| Kalshi KXATPEXACTMATCH | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 1810 | fresh |
| Kalshi KXWTADOUBLES | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 124 | fresh |
| Kalshi KXATP1RANK | tennis_kalshi.sqlite | 2026-05-31T13:13:05.908535+00:00 | 3m | 16 | fresh |
| elo last computed | tennis.sqlite | 2026-05-31T13:13:03+00:00 | 3m | 20280 | fresh |
| rankings last pulled | tennis.sqlite | 2026-05-31T13:13:05+00:00 | 3m | 7538 | fresh |
| rankings atp latest date | tennis.sqlite | 2026-05-25 | 157.26h | — | stale |
| rankings wta latest date | tennis.sqlite | 2026-05-25 | 157.26h | — | stale |
| mirror atp schedule | tennis.sqlite | 2026-05-31T13:14:41.660590+00:00 | 1m | 48 | fresh |
| h2h last computed | tennis.sqlite | 2026-05-17T10:11:57.514615+00:00 | 339.06h | — | stale |
| h2h n pairs | tennis.sqlite | 190184 | missing | — | missing |
| last player db run | tennis.sqlite | 1780233334 | missing | — | missing |
| results last_run | tennis_results.sqlite | [2026-05-31T13:14:43.957973+00:00] 2026-05-31T13:14:41.994888+00:00; dates=['20260530']; rows=887; resolved=853 | missing | — | missing |
| pp_edges CSV | pp_edges_tennis_2026-05-31.csv | 2026-05-31T13:15:37.815942+00:00 | 0m | — | fresh |
| kalshi edges JSON | tennis_kalshi_edges_2026-05-31.json | 2026-05-31T13:15:36.617955+00:00 | 0m | — | fresh |
| paper trades PP | paper_trades_pp_tennis_2026-05-31.json | 2026-05-31T13:15:40.472983+00:00 | 0m | — | fresh |
| paper trades Kalshi | paper_trades_kalshi_tennis_2026-05-31.json | 2026-05-31T13:15:40.931976+00:00 | 0m | — | fresh |
| daily payload | daily_tennis_2026-05-31.json | 2026-05-31T13:15:41.582834+00:00 | 0m | — | fresh |
| PP movement | pp_line_movement_tennis_2026-05-31.csv | 2026-05-31T13:15:41.118664+00:00 | 0m | — | fresh |
| PP calibration | pp_calibration_tennis.json | 2026-05-31T13:15:41.056275+00:00 | 0m | — | fresh |