Sharp Books, Soft Books: Inside the Sportsbook Ecosystem

Today I’m going to tackle a topic that is somewhat controversial. Myths, misconceptions and disinformation are everywhere, there is passionate debate from all directions, and there is a lot of complex stuff going on. Let’s talk about the different ways that a centralized* sportsbook can be run; specifically, how they set their odds and howContinue reading “Sharp Books, Soft Books: Inside the Sportsbook Ecosystem”

How Winners Win: A Framework for Breaking Down Expected Value

Diversity is one of the most important keys to good scientific inquiry. I’m not talking about diversity of race, gender, sexual orientation, etc. – those are fine but they’re superficial. I’m talking about intellectual diversity – different ways of thinking about things and different ways of doing things. Gambling Twitter is a great source ofContinue reading “How Winners Win: A Framework for Breaking Down Expected Value”

DIY Linear (and Nonlinear!) Regression using Maximum Likelihood

Around the house, I am far from a handyman. I can change a light bulb, but anything more difficult than that and I’m gladly paying someone else to do it. Put me in cyberspace though and I become a regular Al Borland. There are plenty of plug & play software tools for building regression-type modelsContinue reading “DIY Linear (and Nonlinear!) Regression using Maximum Likelihood”

Building a Bayesian Model: Part 5

In Part 4, we took our simple ballast model and re-derived it as a Bayesian model complete with priors, posteriors, hyperparameters, loglikelihoods…the whole shebang. We ended with an interpretation of the prior alpha parameter as a measure of both the signal to noise ratio in the emerging data and the quality of our prior. OfContinue reading “Building a Bayesian Model: Part 5”

Building a Bayesian Model: Part 4

We ended Part 3 with the Shyamalan-eque twist that the simple ballast model we’ve been building has been a Bayesian model all along. Time to take a step back and look at the same model through a Bayesian lens. I mentioned way back in Part 1 that we’d be gradually building this thing up, andContinue reading “Building a Bayesian Model: Part 4”

Building a Bayesian Model: Part 3

In Part 2, we introduced the concept of a “ballast model” and applied it to our NBA defensive shooting percentage data. Just one problem though…we selected our ballast values judgmentally (read: made them up randomly). Now, we’re going to approach the selection with a bit more rigor. There were 1230 games played in the 2018-19Continue reading “Building a Bayesian Model: Part 3”

Building a Bayesian Model: Part 2

In Part 1, we built a very simple model for NBA shooting percentage defense that didn’t work very well. The underlying hypothesis was that all team-to-team variance in opponent shooting percentages is completely random. While overall we can say that hypothesis is busted, our back-test did suggest that it might be partially true, especially earlyContinue reading “Building a Bayesian Model: Part 2”

Building a Bayesian Model: Part 1

All of the data and models described in this series of articles can be downloaded here: In this series of articles, I’m going to show you how to build a Bayesian model to solve a “small data” problem. We’re going to start very simple, so simple that you’ll be doing Bayesian analysis without even realizingContinue reading “Building a Bayesian Model: Part 1”

Create your website with
Get started