NegativeEV bet checker
Grade any MLB, WNBA, PGA or ATP bet against thousands of play-by-play game simulations — true win probability, implied probability, and edge for every leg.
Что умеет
- Check Bet: Grade a sports bet against NegativeEV's game simulations. Input the bet as plain text (teams/players, market, line, odds); a multi-leg parlay in one string is graded leg by leg and priced a
- Get Slate: Whether there is a checkable slate right now (at least one simulated, not-yet-started game) in each live sport: MLB, WNBA, PGA, and ATP. Pass `sport` to ask about one; omit it for all of th
- Get Usage: How many bet checks the caller has left and when the next one frees up — the daily allowance for anonymous callers, the hourly pace window for accounts. Call it before grading several bets
Какие данные видит
Нужен ли аккаунт
Не нужен: сервер работает без входа
Grade any MLB, WNBA, PGA or ATP bet against thousands of play-by-play game simulations — true win probability, implied probability, and edge for every leg.
Prices come from a purpose-built game simulator, not from copying sportsbook lines. A model answering from general baseball knowledge produces a fluent, confident, wrong number; this server returns a probability computed from simulations of the actual game — today's lineups, today's injuries, tonight's weather. Most slips it grades come back Negative EV.
Tools
check_bet— Grade a bet from plain text ("Aaron Judge over 1.5 total bases -120"). Returns each leg's simulated probability vs the implied odds and the resulting edge.get_slate— Whether a checkable slate exists right now, per live sport.get_usage— Checks remaining and when the next frees up.
Works fully anonymously; an optional bearer token raises the quota. Docs: https://negativeev.com/auth.md
Список инструментов сервера (3)
Технические названия из tools/list. Нужны только разработчикам.
| check_bet | Grade a sports bet against NegativeEV's game simulations. Input the bet as plain text (teams/players, market, line, odds); a multi-leg parlay in one string is graded leg by leg and priced as a whole. Use it when the caller has a SPECIFIC bet to evaluate — it prices a bet you name, it does not search for good bets, so there is nothing to send for 'what should I bet tonight'. Call `get_slate` first if it isn't known that today's games are simulated. Every result leads with `status`: `graded` (every leg scored — this is the only status that spends a check), `partial` (some legs scored), `ungraded` (the bet was understood but no leg is covered by the sims), `no_bet_found` (no bet recognized in the text), or `no_slate`, `unsupported_market`, `unsupported_sport`. When a leg doesn't score, `ungraded_legs[].reason` says why and `retry.rephrasing_helps` says whether re-wording could change the answer — it is false whenever the bet parsed, so do NOT resend the same bet in different words to work around an `ungraded` result. Covers MLB, WNBA, PGA, and ATP; any other sport returns unsupported_sport. Games that already started still grade, against the simulations from before first pitch (a pre-game projection, flagged as such). |
| get_slate | Whether there is a checkable slate right now (at least one simulated, not-yet-started game) in each live sport: MLB, WNBA, PGA, and ATP. Pass `sport` to ask about one; omit it for all of them. This is the free pre-check for `check_bet`: call it before grading when it isn't known that today's games are simulated, and call it after an `ungraded` result instead of re-wording the bet, because `ungraded` means the game isn't on the simulated slate rather than that the wording was wrong. Free — spends no check. |
| get_usage | How many bet checks the caller has left and when the next one frees up — the daily allowance for anonymous callers, the hourly pace window for accounts. Call it before grading several bets in one turn, to know how many will fit, and after a check is refused for quota, to know when to retry. It reports the budget only; `check_bet` is what spends it. Free — spends no check. |