<?xml version="1.0" encoding="UTF-8"?>
<rss  xmlns:atom="http://www.w3.org/2005/Atom" 
      xmlns:media="http://search.yahoo.com/mrss/" 
      xmlns:content="http://purl.org/rss/1.0/modules/content/" 
      xmlns:dc="http://purl.org/dc/elements/1.1/" 
      version="2.0">
<channel>
<title>Slam Dunk Bets Articles</title>
<link>https://slamdunk.bet/articles.html</link>
<atom:link href="https://slamdunk.bet/articles.xml" rel="self" type="application/rss+xml"/>
<description>How we predict first baskets and home runs, season ROI recaps, and prop betting strategy for NBA, WNBA and MLB.</description>
<language>en-US</language>
<image>
<url>https://slamdunk.bet/images/brand/og-default.png</url>
<title>Slam Dunk Bets Articles</title>
<link>https://slamdunk.bet/articles.html</link>
</image>
<generator>quarto-1.10.18</generator>
<lastBuildDate>Tue, 04 Aug 2026 05:00:00 GMT</lastBuildDate>
<item>
  <title>How Do We Predict Home Runs? Part 4 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2026-08/predict-home-runs-4.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/hr-alerts-press.jpg" class="img-fluid" alt="Engraving of a large early-1900s rotary newspaper printing press" width="600"></p>
<p>If you read our <a href="../../posts/2024-10/predict-first-baskets-1.html">first-baskets series</a>, you already know we’re obsessive about the last mile. A projection that never reaches you, or reaches you stale, might as well not exist. So the whole system runs like a tiny newspaper with an extremely niche beat.</p>
<p>Every Monday at 2am, the models retrain on everything through the day before. Every morning at 6am, a full refresh: schedules, rosters, park factors, yesterday’s plays graded and logged. And then every 30 minutes from 7am to 10pm ET, a tick: pull the newest pitch data, check for posted lineups and probable starters, grab a fresh hourly forecast for every ballpark, re-simulate every game whose inputs actually changed (the fingerprint trick from <a href="../../posts/2026-08/predict-home-runs-2.html">Part 2</a>), re-price 13 books, and push alerts.</p>
<p>Weather gets the full nerd treatment, by the way. Wind “blowing out” isn’t a vibe — every forecast is resolved against the actual compass bearing from home plate to center field in that specific park, so a gust that’s blowing out in one stadium is a crosswind in another. Domes are a permanent 72°F and windless, which is boring, but boring is easy to model. Retractable roofs get a per-game open-or-closed call.</p>
<p>Alerts land in Discord looking like this:</p>
<blockquote class="blockquote">
<p><strong>LAA @ TEX (8:05 pm ET)</strong></p>
<ul>
<li>Josh Lowe 1+ (proj +519): +750 br (2.5u), +720 dk (2.3u), …</li>
<li>Jorge Soler 2+ (proj +545): +600 br (0.7u)</li>
</ul>
</blockquote>
<p>Games in start-time order, plays sorted by edge, every qualifying book listed with its price and recommended units, best value first. And the emoji do actual work:</p>
<ul>
<li>🚨 first time a play qualifies today</li>
<li>🚀 new day-high in value — the market moved further from us</li>
<li>⬇️ still playable, but off its peak</li>
<li>📖 a new book just joined the party</li>
</ul>
<p>The high-water marks reset at midnight ET, so a 🚀 is always a genuinely new best — a play that faded and crawled back to a price it already hit today gets a ⬇️, never a fresh rocket.</p>
<p>And when a game goes live, we stop. Projections freeze at first pitch — no in-game re-pricing, no chasing. Pregame edges are our lane, and we stay in it.</p>
<p>If Discord isn’t your speed, the same numbers live in the Slam Dunk Dashboard at <a href="https://app.slamdunk.bet">app.slamdunk.bet</a>: one card per game, with the weather, projected lineups, first-inning odds, and per-batter home run odds. And because we archive the full edge table on every single odds refresh, the app can show you how prices moved through the day — when the books adjusted, which direction, and whether the value is growing or already got eaten.</p>
<p>And that’s the machine: 119 columns on every pitch, six million pitches of training data, a chain of models, an exact little 72-cell plate-appearance solve, 20,000 simulations per game, a calibration layer, 13 books twice an hour, half-Kelly sizing, and a rocket emoji when it matters. From data to dingers, we’ve covered the bases. For real this time — it’s baseball. The bases are literal.</p>
<p>Thanks as always for reading, holler if you have questions (<a href="https://x.com/jimtheflash">@jimtheflash</a> is the best way to find us), and if you want these alerts in your pocket, please consider <a href="https://sharpduel.com/slam_dunk_bets">subscribing</a> — first month’s free — or come hang out in the <a href="https://whop.com/slam-dunk-bets">Discord</a> 🙏</p>



 ]]></description>
  <category>mlb</category>
  <category>home-runs</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2026-08/predict-home-runs-4.html</guid>
  <pubDate>Tue, 04 Aug 2026 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/hr-alerts-press.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do We Predict Home Runs? Part 3 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2026-08/predict-home-runs-3.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/hr-edges-ticker.jpg" class="img-fluid" alt="Vintage stock ticker machines under glass domes on a long desk in a marble room" width="600"></p>
<p>Being able to put a fair price on every potential dinger in baseball is a nifty parlor trick, and it might win you an argument at the bar. But unless those prices find us spots where the books disagree with us, they’re just trivia. Fortunately, they do. Here’s how.</p>
<p>Twice an hour, we collect home run odds from 13 sportsbooks: bet365, BetMGM, BetRivers, Caesars, Circa, DraftKings, Fanatics, FanDuel, Hard Rock, Kalshi, Novig, ProphetX, and theScore. Every American price converts to an implied probability, and then the comparison is almost embarrassingly simple:</p>
<p><strong>edge = our probability − the book’s implied probability</strong></p>
<p>Say our calibrated projection has a batter at 14% to go deep — a fair price of +614 — and a book is dangling +900, which implies 10%. That’s a 4-point edge. Play.</p>
<p>Two details we’re picky about. First, we compare against the book’s price exactly as posted — no de-vigging, no theoretical “true” line. The number we beat is the number you can actually bet, juice included. Second, not every positive edge is playable. The bar right now: 2 points of probability for 1+ home run plays, 1.5 points for the multi-homer and first-inning markets. It used to be lower. We started this season at 1 point and raised it twice, because our own tracking data was blunt with us: thin edges on 1+ homers were about a third of our volume and returned roughly nothing. We’d rather alert fewer, better plays. The thresholds will keep evolving, and the tracking data — not vibes — decides.</p>
<p>(For the 2+ and 3+ homer markets, we take the sim’s expected homers for each batter and run it through a little Poisson math to get the tail probabilities. Longshot city, priced with the same machinery.)</p>
<p>Then there’s sizing. Recommendations are half-Kelly, where 1 unit = 1% of a bankroll, scaled so the average alerted play lands right around 1u. Bigger edges and longer odds earn bigger recommendations, and nothing ever earns a “max bet!!”. Why HALF Kelly? Because full Kelly assumes your probabilities are perfect, and ours are merely good 😎</p>
<p>And finally, line shopping — the closest thing this industry has to free money. The same homer can be +600 at one book and +900 at another, and that’s the difference between implied 14.3% and implied 10% on the same swing of the same bat. Our alerts list every book clearing the bar, best value first, so you can grab the top of the market. (One exception: exchange-style books like Novig and Kalshi show up in our tables but not our official plays. Prices there move too fast, and the resting liquidity is too thin to promise the posted number is actually gettable.)</p>
<p>A word about variance, because we’d rather say it up front than have you learn it the hard way: a 3-point edge on a +700 prop still loses most of the time. That is the shape of this business — many small positions on longshots, graded over months, not nights. We track every alerted play publicly, wins and losses both, and those tracked results are exactly what moved the thresholds above. No cherry-picking, no memory-holing the bad weeks.</p>
<p>Of course, an edge you hear about after first pitch is worth exactly nothing. <a href="../../posts/2026-08/predict-home-runs-4.html">Part 4 of …</a> covers the last mile: alerts, and the app. Thanks for reading!</p>



 ]]></description>
  <category>mlb</category>
  <category>home-runs</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2026-08/predict-home-runs-3.html</guid>
  <pubDate>Mon, 03 Aug 2026 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/hr-edges-ticker.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do We Predict Home Runs? Part 2 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2026-08/predict-home-runs-2.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/hr-game-state.jpg" class="img-fluid" alt="Black-and-white photo of a large crowd in hats gathered outside a newspaper office to follow a baseball game on a scoreboard" width="600"></p>
<p>Everything in <a href="../../posts/2026-08/predict-home-runs-1.html">Part 1</a> is stuff we know before first pitch, and you could stop there: throw the pregame features into a model and get a decent baseline probability that a player goes deep. But pitches don’t happen in a vacuum, they happen inside games. Pitchers change their approach when they’re protecting a big lead or chasing from behind, when they’re ahead or behind in the count, when there are runners in scoring position. Batters do the same! With two strikes, the pitch mix tilts hard toward breaking and offspeed stuff — and as we covered in Part 1, breaking balls become dingers a lot less often than heaters do. Our models see all of it: balls, strikes, outs, all 24 combinations of runners and outs, the inning, the score difference, times through the order, home/away, and the handedness matchup.</p>
<p>And then there’s the obvious one: a player’s chances of homering in a game rise and fall with his plate appearances. So how a team moves through its lineup — and how it handles substitutions, for defense or pinch-hitting or pinch-running — matters a LOT. By the time the lineup turns over a third time, the 9-hole hitter is about three times as likely as the leadoff man to have been lifted, and some clubs go to their bench much faster than others. Our sim tracks per-slot survival odds and per-team pinch-hit tendencies for exactly this reason.</p>
<p>Given all that, it should be pretty clear: the state of the game is a real predictor of whether an at-bat produces a homer, and the state changes on every pitch. So how do you account for game states before the game even starts? SIMULATIONS.</p>
<p>But first, a confession: we don’t actually roll dice pitch by pitch. For every batter-pitcher matchup, in every context, we solve the plate appearance EXACTLY. There are only 12 possible counts and six pitch classes, so a plate appearance is really a little 72-cell grid: push probability through every path — every pitch choice, every swing and take, every foul — until all of it has been absorbed into an outcome. Foul balls with two strikes just loop the count back on itself, and the math is perfectly happy to price the at-bat that takes a dozen foul balls to resolve. Out the other side comes an exact distribution for that matchup: strikeout, walk, hit-by-pitch, single, double, triple, homer, out. No randomness, no simulation noise, just probability doing its job.</p>
<p>THEN we roll dice. We simulate each game 20,000 times, plate appearance by plate appearance, through a full game-state machine: lineups turning over, starters running out of gas, bullpens, pinch hitters, baserunners doing baserunner things (the sim knows a runner on second scores on a single about 60% of the time). The endings are score-aware, too: a home team that’s leading skips the bottom of the ninth, walk-offs end innings mid-stream, and ties go to extras with the free runner on second (yes, the Manfred runner lives in our simulator; no, he cannot be traded). Getting the endings right isn’t just cosmetic — it fixed a systematic ~5% inflation in home hitters’ projections, since home teams bat in the ninth a lot less often than a lazy sim assumes.</p>
<p>After 20,000 sims we can answer questions like, “in what percentage of sims for the Phillies-Dodgers game did Ohtani go yard?” That proportion is our probability — the number that eventually becomes a projection, an edge, and maybe an alert. Why 20,000? Because at a 10% homer probability, that’s enough sims to shrink the random noise to about ±0.2 points — and in our testing, extra sims sharpen the PRICES, not the model. Backtest accuracy is flat whether we run 2,000 or 20,000. Precision is for the odds; accuracy was decided back in Part 1. (Also: everything is seeded, so every run is perfectly reproducible. The seed is 2026. Because of course it is.)</p>
<p>Now, simulating every game 20,000 times, then re-simulating all day as lineups post and weather shifts, sounds computationally expensive. Three tricks keep it manageable:</p>
<ol type="1">
<li><strong>Solve once, sample cheap.</strong> The expensive part is the exact plate-appearance math — about three seconds of thinking per game. After that, each additional simulated game costs six <em>hundredths</em> of a millisecond.</li>
<li><strong>Simulate wide.</strong> Instead of looping through 20,000 games one at a time, we advance all 20,000 together, one plate appearance per step, as big numpy arrays. The slow part of the code scales with the length of a game, not the number of sims.</li>
<li><strong>Fingerprints.</strong> Every game’s projection carries a signature of its inputs: lineups, starters, weather (bucketed into 3°F and 2 mph steps, so ordinary forecast wobble doesn’t count as news). New update, same signature? Skip the re-run. And once a game goes live, its pregame projection freezes for good.</li>
</ol>
<p>Add it up and a full slate re-scores in about the time it takes to microwave a burrito, on an old i7 with 16GB of RAM. Still just a couple of guys on laptops over here. V nifty.</p>
<p>One last step before the numbers are ready for prime time: calibration. An assembled simulator carries small compounding biases — ours ran a touch hot on balls in play, and its generic bullpens were a touch friendlier to hitters than real ones — so a final calibration layer, fit on held-out data, trues everything up. It stretches the tiniest probabilities upward (a raw 2% becomes about 4%) and trims the biggest ones (a raw 20% becomes about 17%). The goal is simple: when we publish 12%, we mean 12%.</p>
<p>So now we’ve got a calibrated probability that any batter in baseball goes deep tonight. A probability is not a bet, though. In <a href="../../posts/2026-08/predict-home-runs-3.html">Part 3 of …</a> we turn projections into edges. Thanks for reading!</p>



 ]]></description>
  <category>mlb</category>
  <category>home-runs</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2026-08/predict-home-runs-2.html</guid>
  <pubDate>Sun, 02 Aug 2026 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/hr-game-state.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do We Predict Home Runs? Part 1 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2026-08/predict-home-runs-1.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/hr-pitch-data.jpg" class="img-fluid" alt="A baseball pitcher mid-delivery with the batter and umpire in the foreground" width="600"></p>
<p>Home runs are the most exciting part of baseball, imho, and they don’t happen very often — right around 3% of plate appearances. They’re a pretty rare event, so figuring out whether a player is going to hit one is a little bit like finding that one lego brick you need in your bin of unsorted bricks.</p>
<p>We know home runs are at least a teensy bit predictable. Some players are going to hit a lot more home runs than others, year in and year out, and some players are hardly going to hit any. Same story on the mound: some pitchers give up way more homers than others. We know homers are more common at higher elevations (thanks Colorado!), on warmer days, in parks with shorter fences, and when the wind blows out from home plate.</p>
<p>But…how do you actually turn any of that into a prediction?</p>
<p>(That question is this whole series — the data, the models, the edges, the alerts, and the app. It will get long and nerdy. That’s the fun part.)</p>
<p>It starts with data! Statcast publishes 119 columns about every single MLB pitch — velocity, spin, release point, exit velocity, launch angle, all the way down to the tilt of the batter’s swing path. We mirror all of it, roughly 750,000 pitches per season going back to 2017, and then build our own layers on top: batter profiles (career numbers AND the trailing 40 games, with platoon splits and performance against different pitch types), pitcher profiles (arsenal, velocity, workload, recent form), park factors, fence distances in every direction (including the batter’s pull side), elevation, roofs, temperature, wind. Plus team tendencies, like how quickly each club goes to its bench. Plus game-state stuff — score, outs, count, runners — which we’ll get into in Part 2.</p>
<p>Rookies get seeded with minor-league data, and the translation is not gentle: MiLB power gets marked DOWN on the way up (a AAA dinger is worth about 80% of an MLB one in our priors), strikeout rates get marked up, and lower levels count for less than AAA. Sorry, rooks. And every rate in every profile gets empirical-Bayes shrinkage, which is a fancy way of saying small samples get dragged toward league average until they earn their distance. One hot week does not make you Aaron Judge. Yet.</p>
<p>All told, our models use around 145 features per pitch (145 to 154, depending on the model), which is way more information than I can juggle in my brain at any point in time, let alone for every pitch of every game on a full slate. Fortunately, that’s where the ML models come in.</p>
<p>We use a chain of models — boosted decision trees, trained on about six million pitches — to predict what happens on each pitch, one question at a time:</p>
<ol type="1">
<li><strong>What’s he throwing?</strong> Statcast tags pitches with 18 different type codes; we collapse them into six classes (fastball, sinker, cutter, breaking, offspeed, other) because for our purposes the coarse distinctions are the ones that matter. And they DO matter: in 2024, balls in play against four-seamers became homers about 5.3% of the time, versus 3.2% against sinkers.</li>
<li><strong>Does he swing?</strong> Given the pitch class, the count, and everything else about the matchup.</li>
<li><strong>What happens on the swing?</strong> Whiff, foul, or fair contact — with a sibling model handling the takes: ball, called strike, or the occasional plunking.</li>
<li><strong>What happens on contact?</strong> Single, double, triple, home run, or out, priced off the batter’s power, the pitcher, the park, and the weather.</li>
</ol>
<p>(Fun aside: none of these models ever sees pitch <em>location</em>, on purpose. Our simulator only decides WHAT gets thrown, not where, and if you hand location-hungry models a filled-in average location, every simulated pitch becomes a down-the-middle meatball. Ask us how we know.)</p>
<p>Sharp-eyed readers might notice there’s no ball-physics step in that list. There used to be! We had models that predicted exit velocity and launch angle off the bat, then turned the physics into outcomes, and they were beautiful. Then we tested them head-to-head against the boring direct approach over a full season, and the boring approach was a hair more accurate and literally twice as fast. So the physics models got benched — they still hang around as diagnostics, but they don’t touch the predictions anymore. The number of models drifts between five and seven as we experiment (RIP to the physics arm), and the current starting five is the list above.</p>
<p>Accuracy is what everybody wants to talk about with models, and ours do pretty well for predicting the outcomes of hundreds of interactions between groups of human beings. On the question that matters — does this batter homer in this game — our AUC runs in the .6 to .7 range across backtests and live seasons (this season: .61 through late July, across about 7,000 player-games), with Brier scores around .10 and calibration error around a single point of probability. Translated from nerd: the model is meaningfully better than naive guessing at separating homer games from no-homer games, and when it says 12%, homers happen about 12% of the time. In this business, that second part is the superpower.</p>
<p>Chains of models can be REALLY useful (it’s the same trick behind our <a href="../../posts/2024-10/predict-first-baskets-1.html">first-basket models</a>), but they undeniably add complexity, and they add the risk of compounding errors: mess something up in the first model and it flows downstream through everything else, because each model takes the previous outputs as inputs. Are they worth it?</p>
<p>Our research says yes. You can absolutely estimate a batter’s probability of homering with the simplest possible method: count his games, count his homer games, divide. If Jim played 100 games and homered in 10 of them, call it 10% (+900 in American odds). Totally intuitive, easy to update, and genuinely a lot better than flipping a coin. But the chained approach beats that baseline by roughly +.02 to +.04 of AUC, season after season, in leak-free backtests. That sounds modest, so here’s the honest version: home runs are HARD, nobody’s model sees the future, and a couple points of AUC is the difference between finding real edges and donating vig to the books. The complexity earns its keep. (One of our favorite findings along the way: home runs are overwhelmingly a <em>batter</em> skill. A pitcher’s homer-allowed history carries almost no predictive weight — that’s not a bug in our models, it’s a fact about baseball.)</p>
<p>So that’s cool — we can price individual pitches. But the bets are on games, and games have STATE. That’s <a href="../../posts/2026-08/predict-home-runs-2.html">Part 2 of …</a>, where we get into score effects, lineups, and the simulations that hold this whole thing together. Thanks for reading!</p>



 ]]></description>
  <category>mlb</category>
  <category>home-runs</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2026-08/predict-home-runs-1.html</guid>
  <pubDate>Sat, 01 Aug 2026 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/hr-pitch-data.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>2023-24 NBA ROI Recap: Biggest Hits</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/nba-202324-biggest-hits.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/2017-365-64_Stop_Clowning_Around_with_Money_(33123997902).jpg" class="img-fluid" alt="A toy clown balancing on a ball inside a dollar-sign coin tray full of quarters"></p>
<p>As we get ready for the next NBA season, we’re taking a look back at our 2023-24 NBA betting performance. Here were the top 10 biggest hits (by units returned):</p>
<ul>
<li>Dean Wade, first player to score exact method 2-pointer, Jan 1 2024
<ul>
<li>+8000 odds at MGM, 1.2u wager, 97u return</li>
<li>HAPPY NEW YEAR! Wade rarely took the first shot, and tended toward 3-pointers, so MGM gave us that big line.</li>
</ul></li>
<li>Vince Williams Jr., first player to score exact method 2-pointer, Jan 13 2024
<ul>
<li>+5000 odds at MGM, 1.5u wager, 74u return</li>
<li>Vince showed up 43 times in our plays, almost always at MGM, and hit 6 of them</li>
</ul></li>
<li>Noah Clowney, first player to score exact method 2-pointer, Apr 12 2024
<ul>
<li>+2200 at Draftkings, 3u wager, 65u ROI</li>
<li>This shot shows up twice - the beauty of correlated markets!</li>
</ul></li>
<li>Scottie Barnes, first player to score exact method 3-pointer, Dec 23 2023
<ul>
<li>+7000 at Fanduel, 0.9u wager, 65u ROI</li>
<li>Who says big men can’t hit from long range? This moved closer to +4000 by end of season.</li>
</ul></li>
<li>Noah Clowney, first player to score by team exact method 2-pointer, Apr 12 2024
<ul>
<li>+1300 at Draftkings, 4.5u wager, 59u ROI</li>
<li>The second hit from this same shot, both times at DK</li>
</ul></li>
<li>Trayce Jackson-Davis, first player to score by team exact method 2-pointer, Jan 2 2024
<ul>
<li>+470 at Caesars, 10.5u wager, 49u ROI</li>
<li>Our biggest individual wager of the year at 10.5 units, netted 49 for the courageous</li>
</ul></li>
<li>Markelle Fultz, first 3-pointer by team, Feb 6 2024
<ul>
<li>+4000 at Draftkings, 1.1u wager, 46u ROI</li>
<li>Fultz was overall a 10.3 unit return, so it was basically this and then nothing else</li>
</ul></li>
<li>Terance Mann, first player to score exact method 3-pointer, Jan 10 2024
<ul>
<li>+5000 at MGM, .9u wager, 45u ROI</li>
<li>We got value on TM frequently on first 3-pointer plays as well</li>
</ul></li>
<li>Nikola Jovic, first 3-pointer, Feb 13 2024
<ul>
<li>+1600 at Draftkings, 2.8u wager, 44u ROI</li>
<li>this was one of our first hits on the first 3-pointer market</li>
</ul></li>
<li>Trayce Jackson-Davis, first basket by team, Jan 2 2024
<ul>
<li>+500 at Fanduel, 8.1u wager, 40.5u ROI</li>
<li>our second biggest wager of the year (yeah January 2nd was a big day of betting) and the second leg of a massive ROI on TJD for the day</li>
</ul></li>
</ul>
<p>Thanks as always for reading, and please consider <a href="https://whop.com/slam-dunk-bets">subscribing</a> if you haven’t yet!</p>



 ]]></description>
  <category>nba</category>
  <category>first-basket</category>
  <category>roi-recap</category>
  <guid>https://slamdunk.bet/posts/2024-10/nba-202324-biggest-hits.html</guid>
  <pubDate>Fri, 18 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/2017-365-64_Stop_Clowning_Around_with_Money_(33123997902).jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>2023-24 NBA ROI Recap: Top 5 ROI Players</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/nba-202324-top-players.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/Kick_scooters_parking.jpg" class="img-fluid" alt="Kick scooters lined up in a parking area"></p>
<p>In prep for the 2024-25 NBA season we’re looking back at some of the highlights from the 2023-24 season (where we were up <a href="../../posts/2024-10/nba-202324-performance.html">1692 units</a>).</p>
<p>Here were the top 5 players from 2023-24, from a net ROI perspective. We’re showing how many bets we made on that player over the year (across all first basket type markets), how many wins we hit, our net ROI in units, as well as an ROI %.</p>
<ul>
<li>Scoot Henderson, Portland Trailblazers
<ul>
<li>102 bets, 30 wins, net 150 units, 109% ROI</li>
<li>He didn’t always start at PG, but when he did, he was heavily involved early in the game; he wasn’t efficient but could follow up a missed jumper with a tip.</li>
</ul></li>
<li>Bradley Beal, Phoenix Suns
<ul>
<li>149 bets, 39 wins, net 122 units, 103% ROI</li>
<li>Our 6th most heavily wagered, Beal was bound to be a consistent value in lineups with KD, Booker, and Nurk drawing a lot of the action.</li>
</ul></li>
<li>Josh Giddey, Oklahoma City Thunder
<ul>
<li>167 bets, 42 wins, net 118 units, 71% ROI</li>
<li>Like Beal but less efficient from an ROI perspective, we bet on Giddey to score first for the Thunder basically every game they played, more than all but 3 other players all season, while the rest of the world bet on SGA and Chet (not saying we liked it!).</li>
</ul></li>
<li>Andrew Wiggins, Golden State Warriors
<ul>
<li>92 bets, 31 wins, net 84 units, 112% ROI</li>
<li>Another part-time starter who benefited from odds depressed due to playing with superstar shooters, i.e.&nbsp;Steph Curry and Klay Thompson.</li>
</ul></li>
<li>Ivica Zubac, Los Angeles Clippers
<ul>
<li>107 bets, 23 wins, net 73 units, 59% ROI</li>
<li>We bet on Zoobs a lot, especially on first basket exact methods two-pointer plays and first basket by team; like most other players on this list, which is why his ROI is markedly lower than others so far.</li>
</ul></li>
</ul>
<p>Most of those players netted us more by themselves than other services are netting in total. Fun fact though - none of the players in this list are represented in any of the top 10 single biggest wins from 2023-24. We’ll check those out next.</p>
<p>Thanks as always for reading, and please consider <a href="https://whop.com/slam-dunk-bets">subscribing</a> if you haven’t yet!</p>



 ]]></description>
  <category>nba</category>
  <category>first-basket</category>
  <category>roi-recap</category>
  <guid>https://slamdunk.bet/posts/2024-10/nba-202324-top-players.html</guid>
  <pubDate>Sat, 12 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/Kick_scooters_parking.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>2023-24 NBA ROI Recap: 1692 Units Net Profit</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/nba-202324-performance.html</link>
  <description><![CDATA[ 




<p>With the 2024-25 NBA season about to kickoff, we thought it would be prudent to remind everybody about our performance last year. Here’s a graph tracking our 1692 units of ROI over the course of the 2023-24 NBA season. This graph includes all of our prop markets, which you can check out in the FAQ.</p>
<p><img src="https://slamdunk.bet/images/posts/nba_roi_202324.png" class="img-fluid" alt="Line chart of cumulative units for the 2023-24 NBA season, rising from 0 to about 1,700 units across roughly 17,500 bets"></p>
<p>The horizontal axis is “bet number”, which is just the index of bets we’ve made - far left is the first bet we made of the season, far right is the last one. The vertical axis is “units returned” which just counts the NET units returned from the bet. When the line goes up, we’re winning, when it goes down, we’re losing.</p>
<p>Some things to call out:</p>
<ul>
<li><p>Obviously this line is not flat, which means that we had ups and downs.</p></li>
<li><p>The line ends a LOT higher than when it began! 1692 units higher, in fact.</p></li>
<li><p>We make a LOT of bets - this chart included 17,558 data points!</p></li>
<li><p>While we had some plays that made the line go straight up (we’ll write some separate posts on those, but bless Noah Clowney), the majority of the return is grinding away with incremental wins.</p></li>
</ul>
<p>This is the first of our recaps, but definitely not the last. Thanks a lot for reading, holler if you have any questions (<a href="https://x.com/jimtheflash">@jimtheflash</a> is the best way to find us), and please consider <a href="https://whop.com/slam-dunk-bets">subscribing</a> if you haven’t yet 🙏</p>
<p>(And if 1692 units of profit isn’t enough, well, idk what else we can say!)</p>



 ]]></description>
  <category>nba</category>
  <category>first-basket</category>
  <category>roi-recap</category>
  <guid>https://slamdunk.bet/posts/2024-10/nba-202324-performance.html</guid>
  <pubDate>Fri, 11 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/nba_roi_202324.png" medium="image" type="image/png" height="72" width="144"/>
</item>
<item>
  <title>Is There A Best Time Of Day To Bet First Baskets?</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/when-to-bet-first-baskets.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/Analog_timepiece.jpg" class="img-fluid" alt="Close-up of an analog wristwatch face" width="600"></p>
<p>We mentioned in our series on predicting first baskets that we’d look at how to time your first basket bets. There’s not a “perfect” strategy but here’s some strategies that sometimes seem to work:</p>
<ul>
<li><p>Player odds can be more favorable earlier in the day, before bettors have had a chance to jump in and pound the +EV lines. NBA and WNBA injury and practice reports are usually not available until later in the day, so there’s usually more uncertainty in the earlier odds as well. It is far more common for a player’s edge to start high and end lower, than the reverse, and the biggest hits we’ve had came from odds early in the day but not available later.</p></li>
<li><p>Odds can shift in very meaningful ways right before games tip off, usually due to final starting lineups being announced. This can result in very big edges for players who are typically non-starters. Pay attention to those late alerts!</p></li>
<li><p>Because odds shift through the day, it is definitely important to keep an eye out on alerts and update your wagers through the day if necessary This almost always means “add more to a bet you’ve wagered on” (there haven’t been any clear “cash this out” cases yet) because a player’s odds improved. We still recommend trying to get the early lines, but maximize your ROI by adding when odds improve.</p></li>
</ul>
<p>So to summarize: get early lines if you can, top ’em off if odds improve, and pay close attention to alerts around tipoff. Good luck! And if you haven’t yet, why not <a href="https://whop.com/slam-dunk-bets">subscribe</a>?</p>



 ]]></description>
  <category>nba</category>
  <category>wnba</category>
  <category>first-basket</category>
  <category>strategy</category>
  <guid>https://slamdunk.bet/posts/2024-10/when-to-bet-first-baskets.html</guid>
  <pubDate>Wed, 09 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/Analog_timepiece.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do You Predict First Baskets? Part 5 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/predict-first-baskets-5.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/Action-Max-Red-Light.jpg" class="img-fluid" alt="A red light on a black background" width="600"></p>
<p>I think this is gonna be the last part of the “How Do You Predict First Baskets?” series of posts! Woohoo, we made it! The last post is on the alerts themselves - how do we make the edges we identify actionable for our users?</p>
<p>We run our modeling pipeline every 30 minutes, where we both update our predictions, and update the odds from the sportsbooks. Why 30 minutes? Primarily to avoid pissing off the books and triggering security measures that could break our tools for getting the odds; 30 minutes seemed to capture the important movements that happen within the day; and 30 minute intervals captured the majority of the different tipoff times of NBA games.</p>
<p>So every 30 minutes we have a batch of edges, and we send those to our Discord server, broken down by game, sorted by player from biggest edge to smallest, and sorted within player by books the biggest edge to smallest (we only show the edges for players, nothing that isn’t positive expected value).</p>
<p>The alerts also factor in what we’ve alerted on already: some players we’ve alrady alerted on earlier in the day, some players we’ve already alerted on but the edges are bigger or smaller than before, and some players are brand new.</p>
<p>We indicate brand new players in a prop market (or teams for team-level props) with a 🚨 emoji, since these bets always require action from our users, i.e.&nbsp;placing new bets. Similarly, when a player we’ve already alerted on in the day has a new best edge for that day, we add a 🚀 to their entry; these are also cases where our users will likely want to take action and add more to their original bets.</p>
<p>When a player’s best edge is no longer at it’s daily peak, we add a ⬇️ to the alert. This doesn’t require action by the user, unless they missed the previous alerts or didn’t place a wager then. But we include this information so that users can get an idea of how lines are moving around and when they might peak for different props or players.</p>
<p>An engaged reader might ask, “are there peak times when lines are at their softest?” Great question! We’ll tackle that one in a followup, but the answer is “Yep”. More on that in a later post, so stay tuned.</p>
<p>We’re always trying to incrementally improve our alerts, by getting the odds faster (maybe someday the books will actually sell access to their odds APIs! nah jk they’re cowards), and calculating predictions in advance when we can.</p>
<p>And there it is. From data to alerts, we’ve covered the bases. Er, baskets. We’ve covered the baskets. Thanks for reading, and if you haven’t, please <a href="https://whop.com/slam-dunk-bets">subscribe</a>!</p>



 ]]></description>
  <category>nba</category>
  <category>wnba</category>
  <category>first-basket</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2024-10/predict-first-baskets-5.html</guid>
  <pubDate>Mon, 07 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/Action-Max-Red-Light.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do You Predict First Baskets? Part 4 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/predict-first-baskets-4.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/Razor_1_(PSF).png" class="img-fluid" alt="Line drawing of a straight razor" width="600"></p>
<p>Being able to estimate odds for first baskets is a nifty parlor trick that might give you something to talk about at a job interview or the bar or whatever, but unless we can find opportunities where our predictions can give us a betting edge, they’re not especially useful.</p>
<p>Fortunately, we can - and do - find edges <em>aplenty!</em> Here’s how.</p>
<p>First, and we’re sure this goes entirely without saying, we don’t EVER violate or advocate that others violate the terms and conditions of service of sportsbook apps or websites. That’d be morally wrong, and would put us at risk of having our accounts limited even further or shut down entirely (or worse!). You should never break those, or any rules. Ever. Got it? Good.</p>
<p>That out of the way, we built some tools to get semi-realtime odds from the most popular books available in North America. This is a pain in the ass, because sportsbooks don’t want people to be able to shop around easily, and instead of putting in modernized safeguards against bad actors, the books just use the jankiest sets of data models and practices that you might expect out of a dorm room startup, which is like a “security by stupidity” strategy. We have opinions here, but we digress.</p>
<p>Once we get the odds, we have to reconcile them with our data. Books are intentionally inconsistent with how they list player and team names, and you’d be shocked at how often they misspell things or list players on the wrong teams, so we have to do some lightweight NLP to map everything together.</p>
<p>After that, we built tools that identify cases where a book is offering odds that are at least 1% longer than what our model predicts. To explain: odds can be translated to probabilities; we compare the probabilities from our model to the odds offered by the books; if our model predicts a player has a 10% chance to score first in the game (translates exactly to +900), but a book offers that player at odds equivalent to 11.11% (+800), we see that 11.11% - 10% = 1.11% which is greater than our threshold.</p>
<p><em>Update 2024-12-10: We now use a 1.5% threshold for determining a playable edge!</em></p>
<p>We usually observe 1-6 edges <em>per game</em> at or beyond our threshold for first basket plays in both the NBA and WNBA. And that’s just for the first basket overall market - when you factor in the first basket by team and exact methods plays, we’re seeing <em>between one and two dozen</em> plays per game just on first basket markets.</p>
<p>I know right? Bananas.</p>
<p><strong>Edited to Add:</strong> Dang I forgot about the recommended unit size calculations when I first published this. Our unit recommendations are just <a href="https://en.wikipedia.org/wiki/Kelly_criterion">Kelly Criterion</a> with a twist! We use Fully Kelly, but then we adjust based on the average unit size recommendation within a prop market, so that the average recommended bet within each market is 1 unit. This makes it a lot easier to calibrate your outlay based on a market’s ROI, e.g.&nbsp;you can use a bigger unit for more profitable markets. (I bet people will have opinions about this.)</p>
<p>Anyways, the next part of this will be about the alerts themselves, which involves some conversation about AI! Check it out, and also subscribe to the <a href="https://whop.com/slam-dunk-bets">Discord</a> if you haven’t yet, it helps us make tools and content 🙏</p>



 ]]></description>
  <category>nba</category>
  <category>wnba</category>
  <category>first-basket</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2024-10/predict-first-baskets-4.html</guid>
  <pubDate>Sun, 06 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/Razor_1_(PSF).png" medium="image" type="image/png" height="59" width="144"/>
</item>
<item>
  <title>How Do You Predict First Baskets? Part 3 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/predict-first-baskets-3.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/catwalk.jpg" class="img-fluid" alt="Models walking a fashion runway" width="600"></p>
<p>In the <a href="../../posts/2024-10/predict-first-baskets-2.html">previous post</a> on predicting first baskets, we walked through the data we use for the models. Next we’ll talk through the models themselves. This will get kinda long and nerdy!</p>
<p>We build a LOT of models. For each modeling problem, we typically build three unique kinds of models (e.g.&nbsp;regression, decision trees, splines) and combine them via a technique called ensembling. Ensemble models build off the idea of the wisdom of the crowds, a phenomena where often times the average estimate of something, like the weight of a cow, from a big crowd of people, is a better predictor of that thing than the estimates of experts. In ensemble models, we replace the crowd of people with a bunch of predictions from models, and try to do some smart weighting of the different input models as we get evidence about which models are most reliable.</p>
<p>But there’s more! Sometimes, the inputs to a model aren’t always available for every player or team - for instance, we can’t use any statistics that reference a previous season for rookies, or a 20-game average of a metric for a player or team who hasn’t played 20 games. So we build sets of models, called reduced models, to handle these different cases, and then use a process called reconciliation to align the outputs, which is important in cases where we’re using different models for different players in the same games.</p>
<p>Supporting all these models present a challenge for orchestration, i.e.&nbsp;figuring out which models to use in different situations, but has so far given us far stronger results than other approaches to the problem of predictors not always being available for every case that needs a prediction (like imputation).</p>
<p>So, to the models! Here’s that diagram again: <img src="https://slamdunk.bet/images/posts/model_flowchart.jpg" class="img-fluid" alt="Flowchart of the first-basket model pipeline, repeated from part 1"></p>
<p>The first are the jump ball models, which predict the likelihood of a specific jumper to win the tip against another specific jumper, e.g.&nbsp;Anthony Davis to win the tip against Bam Adebayo or vice versa. A player’s win rate against a specific opponent is almost always the best predictor of the outcome here, but a number of other factors, like a player’s height, reach, vertical, and overall jump ball win rate are also useful pieces of information.</p>
<p>Once we’ve predicted the tipoff winner, we can predict which team will score first. These models use the output of the jump ball models, along with game lines and other team-level stats like offensive efficiency (adjusted for the expected lineup). One note, is that defensive factors rarely explain much variance in first team to score outcomes - there might be some lockdown defensive teams out there, but the majority of the time a team’s offensive production is most important. These are also the only models in our stack that use odds data from the books, because frankly the models are a lot better performing when we include them; in the future we’d prefer to remove the dependency on external odds estimates, but for now they work.</p>
<p>Independent from the jump ball and first team to score processes, we also model which player will score first for their team. This doesn’t require any knowledge of who will win the tipoff or which team scores first (we tested that). The most important features in our first team scorer models are focused on usage: players who have a lot of offensive touches early in the game tend to be more likely to score first, but this depends a great deal on who else is in the starting lineup that day and their expected usage.</p>
<p>This makes intuitive sense! For instance, if a player is typically a backup Center, they almost certainly have a low likelihood to score first in any given game; but if the starting Center is inactive and the backup moves into the starting lineup, the backup’s usage pattern has to be higher than what you’d expect in a “typical” game. Our data support that hypothesis and our models utilize it to a great advantage. (To be fair, the sportsbooks do this with their models too! We just do it better.)</p>
<p>At this point we have all the main ingredients for our player to score the first basket for the game models. The most important inputs for these models are, unsurprisingly, the output of the team to score first models and the output of the player to score first for their team models. Most of the other information about player and team performance is already baked into the previous modeling steps!</p>
<p>The last pieces to the modeling puzzle are the exact methods for first team to score, first team player, and first player overall, e.g.&nbsp;predicting which player or team will score first and also specifying that it will happen on a two pointer or a free throw or a dunk (different books have different methods available). The most important features of these models are their predecessor models, and shot type trends adjusted for different lineup combinations.</p>
<p>And there it is! We might do some more technical writeups on modeling tools and techniques later down the line, as well as some pieces about how we predict other first events in basketball games (like rebounds or steals). But the next post I’ll do is about how we find and quantify our edges to make play recommendations.</p>
<p>Thanks for reading all this, and if you haven’t yet, please subscribe to our <a href="https://whop.com/slam-dunk-bets">discord server</a>!</p>



 ]]></description>
  <category>nba</category>
  <category>wnba</category>
  <category>first-basket</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2024-10/predict-first-baskets-3.html</guid>
  <pubDate>Sat, 05 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/catwalk.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do You Predict First Baskets? Part 2 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/predict-first-baskets-2.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/posts/library.jpeg" class="img-fluid" alt="Rows of bookshelves in a library" width="600"></p>
<p>First two posts in this series were very high level, now we get into some specifics. What data are we using to predict first basket outcomes?</p>
<p>The vast majority of the information we need comes directly from the NBA’s play-by-play and boxscore records. Here’s an <a href="https://statsdmz.nba.com/pdfs/20231225/20231225_GSWDEN_book.pdf">example</a> of what the NBA generates and freely shares for every game. Outside of the play-by-play data, we can also grab some basic player information (height, weight, age, draft position) from the NBA’s player information portal.</p>
<p>There are a couple of important data elements we use that we get from outside the NBA’s records. The first is starting lineup information - it turns out, everybody and their cousin has a twitter account or website with the projected starting lineups for every game, so we use one of them (for free) for lineup info.</p>
<p>The second is game lines from sportsbooks. The spread, total, and moneyline for NBA games typically have a lot of information in them, because it is influenced by 1) bookmakers, who have models and good info in most cases and 2) bettors, who can move the betting lines by making more and bigger wagers on one side than another. We track game lines from several sportsbooks.</p>
<p>To be clear, we’re not manually downloading a bunch of pdf’s or clicking into sportsbook apps and recording the odds in a spreadsheet. We use data science tools to programmatically access data from APIs (there are dozens of them! try the <a href="https://pypi.org/project/nba_api/">nba_api</a> python library if that’s your jam), and add them to our data store. Most of the data we care about only update once a day, like play-by-play records from the previous day, but some of it is updated as often as every 30 minutes, like starting lineup information, and sportsbook lines.</p>
<p>Once we get the data, we have to do a bunch of additional work, including: validating that the data are sensible and not buggy or duplicated or other things that happen to data; label when jump balls and first baskets (and first other things) happen, and who does them, and the specific method it happened; engineer common and bespoke metrics, like efficiency, and first-basket-related usage rates, conditioned on specific lineups; aggregate statistics within games, and seasons, and players, and teams, and coaches, and different combinations of those levels, using lots of different operations; create rolling window functions so we can calculate metrics in specific windows of time or stretches of games; and then lots of recoding and normalizing to get things prepped for our modeling pipelines.</p>
<p>Whew! It sounds like a lot when its all written out like this, but most of our data pipelines run in way less than an hour.</p>
<p>Like most curious folks, we’re always on the lookout for additional data that can help our models perform better. I suspect that we’re getting as much information as we can out of the play-by-play data; we might benefit from adding additional coach-specific information into the models, if we think that there are coach-related patterns that might explain some variance in first basket/early game usage and success; or similar to coaching-related variance, there’s possibly some aspect of how a team is doing with respect to making the playoffs that could explain some variance as well.</p>
<p>The ultimate criteria for whether we use data in our models is, “does it make the model better?” Which at this point is a high bar to cross 😎</p>
<p>Next up is a deeper dive into the models themselves (not like a SUPER deep dive, but more than what was in the <a href="../../posts/2024-10/predict-first-baskets-1.html">last post</a> on this). Thanks for reading, and thanks even more if you subscribe!</p>



 ]]></description>
  <category>nba</category>
  <category>wnba</category>
  <category>first-basket</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2024-10/predict-first-baskets-2.html</guid>
  <pubDate>Fri, 04 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/library.jpeg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>How Do You Predict First Baskets? Part 1 of …</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/predict-first-baskets-1.html</link>
  <description><![CDATA[ 




<p>Our first post outlined why we bet on first baskets, but doesn’t say anything at all about how we do it. These next posts will give some more context on our approach for predicting first basket outcomes. This first post will be a super high-level run through the process. Heck, I can even make a little diagram!</p>
<p><img src="https://slamdunk.bet/images/posts/model_flowchart.jpg" class="img-fluid" alt="Flowchart of the first-basket model pipeline: raw data is cleaned into tidy data, which feeds win tipoff, first team to score, first team scorer and first player to score models, ending in exact method models" width="600"></p>
<p>I’ll walk through the boxes and arrows.</p>
<p>First, we get a bunch of data from different sources, most importantly play-by-play records from the NBA and WNBA.</p>
<p>We use those data to flag the winning player for every jump ball, and who they beat, as well as which players and teams score first and how it happened.</p>
<p>Once the data are labeled, we build models to predict the winner of a jump ball between players A and B. These models enable us to predict which team is going to possess the ball first, and knowing which team will possess the ball first is hugely predictive of which team will score first.</p>
<p>We could stop here, because “player to win the tipoff” and “team to score first” are popular prop markets in their own rights, but we keep going! Independent of first possession, we can also model which player will score first for their team given a specific lineup; this is also a very popular (and profitable) prop market. Even more, we model out the odds of a player scoring first for their team with a specific method, like a free throw or a three pointer.</p>
<p>Finally, we can use the outputs of the team to score first and player to score first for their team models, to estimate the odds of a player scoring first for the entire game (and the method they use). Tada!</p>
<p>Now that you’ve got the high level view, we can start looking more specifically at different parts of the process. We can start with the data!</p>



 ]]></description>
  <category>nba</category>
  <category>wnba</category>
  <category>first-basket</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2024-10/predict-first-baskets-1.html</guid>
  <pubDate>Thu, 03 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/posts/model_flowchart.jpg" medium="image" type="image/jpeg"/>
</item>
<item>
  <title>Why First Baskets?</title>
  <dc:creator>Slam Dunk Bets</dc:creator>
  <link>https://slamdunk.bet/posts/2024-10/why-first-baskets.html</link>
  <description><![CDATA[ 




<p><img src="https://slamdunk.bet/images/brand/logo-horizontal-dark.svg" class="img-fluid" alt="Slam Dunk Bets logo" width="600"></p>
<p>Hello, thanks for visiting - and if you’re a subscriber, thanks even more!</p>
<p>Slam Dunk Bets started predicting first baskets in 2020, mostly because sports betting was just becoming legal in Illinois, and one of the sports books was running consistent specials on the market.</p>
<p>We discovered that most of the available books were offering first basket props, and that the odds usually varied from book to book.</p>
<p>The play-by-play data for NBA games was freely available, and could be parsed effectively using data science tools. This enabled us to develop models using machine learning tools to predict the likelihood of players to score first in a game.</p>
<p>Once we refined our models, we learned that first baskets were relatively predictable. “Relatively” is doing a lot of work in that sentence, of course, but by nerdy machine learning model evaluation metrics, we felt pretty good.</p>
<p>In addition, we learned that popular players were typically overpriced compared to what our models expected, which we think makes sense: popular players typically get more action from bettors, so books can get away with setting their opening prices high.</p>
<p>The inverse was also true - less popular players were often very favorably priced compared to what our models expected, i.e.&nbsp;they were often positive expected value (+EV). And that’s what we wanted to find!</p>
<p>So to answer the question we raised rhetorically, we started out focusing on first basket markets because: the data were available to build models; the models we built were useful at predicting the thing we wanted to predict; our model predictions enabled us to find +EV bets to make.</p>



 ]]></description>
  <category>nba</category>
  <category>first-basket</category>
  <category>methodology</category>
  <guid>https://slamdunk.bet/posts/2024-10/why-first-baskets.html</guid>
  <pubDate>Wed, 02 Oct 2024 05:00:00 GMT</pubDate>
  <media:content url="https://slamdunk.bet/images/brand/og-default.png" medium="image" type="image/png" height="76" width="144"/>
</item>
</channel>
</rss>
