Appendix G: Answers to Selected Exercises
This appendix provides solutions to odd-numbered problems from Parts A (Fundamentals) and B (Applications) of each chapter's exercises. Solutions are brief but complete, with key calculations shown. Even-numbered problems are reserved for instructor use.
Part I: Foundations of Sports Betting
Chapter 1: The Betting Market Ecosystem
1.1. Convert -150 American odds to decimal and implied probability. Decimal = 1 + 100/150 = 1.667. Implied probability = 1/1.667 = 0.600 or 60.0%.
1.3. A market offers Team A at -130 and Team B at +120. Calculate the overround. Implied prob A = 130/230 = 0.5652. Implied prob B = 100/220 = 0.4545. Overround = 0.5652 + 0.4545 - 1 = 0.0197, or approximately 2.0%.
1.5. If the true probability of a team winning is 0.55 and the decimal odds are 1.90, what is the expected value per dollar wagered? EV = 0.55 * (1.90 - 1) - 0.45 * 1 = 0.55 * 0.90 - 0.45 = 0.495 - 0.45 = +$0.045. The bet has positive expected value of 4.5 cents per dollar.
1.7. A sportsbook takes $500,000 in wagers on a game, with $300,000 on Team A at -110 and $200,000 on Team B at -110. What is the book's guaranteed profit if they do not adjust lines? If A wins: Book pays 300,000 * (100/110) = $272,727 but keeps $200,000 from B bets. Net = 200,000 - 272,727 = -$72,727. If B wins: Book pays 200,000 * (100/110) = $181,818 but keeps $300,000 from A bets. Net = 300,000 - 181,818 = +$118,182. The book is not balanced and does not have a guaranteed profit. To guarantee profit, the book would need to shade the line toward Team A.
Chapter 2: Probability Essentials for Bettors
2.1. In a three-team parlay with independent win probabilities 0.55, 0.60, and 0.52, what is the probability all three win? P(all win) = 0.55 * 0.60 * 0.52 = 0.1716 or 17.16%.
2.3. A team wins 60% of home games and 40% of away games. They play 9 home and 7 away games. What is the probability they win at least 10 games? Model home and away wins as independent binomials and compute via convolution or simulation. E[home wins] = 9 * 0.60 = 5.4. E[away wins] = 7 * 0.40 = 2.8. E[total] = 8.2. Using simulation or exact computation: P(X >= 10) where X = Binom(9, 0.6) + Binom(7, 0.4). Exact calculation yields approximately 0.189 or 18.9%.
2.5. Given P(Rain) = 0.30, P(Under|Rain) = 0.65, and P(Under|No Rain) = 0.40, find P(Under). P(Under) = P(Under|Rain)P(Rain) + P(Under|No Rain)P(No Rain) = 0.65 * 0.30 + 0.40 * 0.70 = 0.195 + 0.280 = 0.475 or 47.5%.
Chapter 3: Descriptive Statistics and Distributions
3.1. A bettor goes 110-90 in 200 bets at -110 odds. Calculate their ROI. Profit on wins: 110 * (100/110) = $100 per unit * 110 = $10,000 profit on wins. Loss on losses: 90 * $100 = $9,000. Net profit = $10,000 - $9,000 = $1,000. Total staked = 200 * $100 = $20,000. ROI = 1,000 / 20,000 = 5.0%.
3.3. NFL game point totals for a season have mean 45.2 and standard deviation 10.8. Assuming normality, what percentage of games exceed 60 points? z = (60 - 45.2) / 10.8 = 14.8 / 10.8 = 1.370. From z-table: P(Z > 1.37) = 1 - 0.9147 = 0.0853. Approximately 8.5% of games.
3.5. Compute the sample variance and standard deviation of the following weekly profits: +150, -200, +80, -100, +300, -50, +120. Mean = (150 - 200 + 80 - 100 + 300 - 50 + 120)/7 = 300/7 = 42.86. Deviations from mean: 107.14, -242.86, 37.14, -142.86, 257.14, -92.86, 77.14. Squared deviations: 11,479; 58,981; 1,379; 20,409; 66,123; 8,623; 5,951. Sum = 172,945. Sample variance = 172,945/6 = 28,824.2. Sample SD = sqrt(28,824.2) = 169.78.
Chapter 4: The Law of Large Numbers and Betting
4.1. How many -110 bets at a 53% win rate are needed before the probability of being profitable exceeds 90%? Break-even rate at -110 is 52.38%. We need P(p-hat > 0.5238) > 0.90 when true p = 0.53. z = (0.53 - 0.5238) / sqrt(0.53 * 0.47 / n) >= 1.282 (90th percentile). 0.0062 / sqrt(0.2491/n) >= 1.282. 0.0062 * sqrt(n/0.2491) >= 1.282. sqrt(n) >= 1.282 * sqrt(0.2491) / 0.0062 = 1.282 * 0.4991 / 0.0062 = 103.2. n >= 10,650.
4.3. A coin-flip simulation produces 5,200 heads in 10,000 flips. Calculate the 95% confidence interval for the true probability of heads. p-hat = 0.52. SE = sqrt(0.52 * 0.48 / 10000) = sqrt(0.00002496) = 0.004996. CI = 0.52 +/- 1.96 * 0.004996 = (0.5102, 0.5298). Since 0.50 is outside this interval, we can reject the null of a fair coin at the 5% level.
Chapter 5: Hypothesis Testing for Betting Performance
5.1. A bettor claims a 56% win rate. In 250 bets, they win 140 (56%). Test H_0: p = 0.5238 vs. H_a: p > 0.5238 at alpha = 0.05. z = (0.56 - 0.5238) / sqrt(0.5238 * 0.4762 / 250) = 0.0362 / sqrt(0.000998) = 0.0362 / 0.0316 = 1.146. Critical value for one-tailed at alpha = 0.05 is 1.645. Since 1.146 < 1.645, we fail to reject H_0. The result is not statistically significant.
5.3. If we test 20 independent betting systems at alpha = 0.05, what is the expected number of false positives? Expected false positives = 20 * 0.05 = 1.0. The probability of at least one false positive is 1 - (0.95)^20 = 1 - 0.3585 = 0.6415 or 64.15%. The Bonferroni-corrected alpha would be 0.05/20 = 0.0025.
5.5. A model predicts overs at 55% accuracy over 400 games where the base rate is 50%. Calculate the Brier score and compare to a naive model. Model Brier score: For a model predicting 0.55 probability for "over" on every game: BS = (1/400) * [200(0.55 - 1)^2 + 200(0.55 - 0)^2] = (1/400) * [2000.2025 + 2000.3025] = (1/400) * [40.5 + 60.5] = 0.2525. Naive model predicting 0.50: BS = (1/400) * [2000.25 + 2000.25] = 0.25. The model's Brier score (0.2525) is worse than naive (0.25), illustrating that accuracy alone does not guarantee good probabilistic calibration. A model predicting the base rate everywhere has lower Brier score than one slightly biased in the right direction but overconfident.
Chapter 6: Point Spreads and Totals
6.1. If NFL point spreads follow N(spread, 13.5^2), find the probability that a 3-point home favorite covers. P(margin > 3) = P(Z > (3 - 3)/13.5) = P(Z > 0) = 0.50. The model implies a 3-point favorite covers exactly 50% of the time when the spread is -3 (ignoring the possibility of landing on exactly 3). P(margin > 3.5) for a -3.5 spread = P(Z > 0.5/13.5) = P(Z > 0.037) = 0.485 or 48.5%.
6.3. Over 256 NFL games, pushes occurred 12 times on spread = 3 (out of 48 games with that spread). Estimate the probability of landing on exactly 3. 12/48 = 0.25 or 25%. This is why 3 is a key number: approximately one quarter of games with a 3-point spread land exactly on 3, far higher than a normal distribution would predict (which would be approximately 2.95%).
Chapter 7: Modeling Scores with the Poisson Distribution
7.1. A soccer match has expected goals of 1.5 (home) and 1.1 (away). Find the probability of a 1-1 draw. P(Home = 1) = e^{-1.5} * 1.5^1 / 1! = 0.2231 * 1.5 = 0.3347. P(Away = 1) = e^{-1.1} * 1.1^1 / 1! = 0.3329 * 1.1 = 0.3662. P(1-1) = 0.3347 * 0.3662 = 0.1225 or 12.25%.
7.3. For the same match, calculate the probability of over 2.5 goals. P(total <= 2) = sum over all (h, a) with h + a <= 2. Using lambda_H = 1.5, lambda_A = 1.1: P(0,0) = e^{-1.5}*e^{-1.1} = 0.0743. P(1,0) = 0.1114. P(0,1) = 0.0817. P(2,0) = 0.0836. P(1,1) = 0.1225. P(0,2) = 0.0449. Sum = 0.5184. P(over 2.5) = 1 - 0.5184 = 0.4816 or 48.2%.
Chapter 8: Bankroll Management and the Kelly Criterion
8.1. You estimate a 58% chance of winning a bet at decimal odds of 2.00. What is the full Kelly fraction? b = 2.00 - 1 = 1.0. f* = (0.58 * 1.0 - 0.42) / 1.0 = 0.16 / 1.0 = 0.16 or 16% of bankroll. Quarter Kelly: 0.04 or 4% of bankroll.
8.3. With a $10,000 bankroll, p = 0.55, and decimal odds = 1.91 (standard -110), calculate the Kelly stake. b = 0.91. f* = (0.55 * 0.91 - 0.45) / 0.91 = (0.5005 - 0.45) / 0.91 = 0.0505 / 0.91 = 0.0555 or 5.55%. Kelly stake = $555. Quarter Kelly = $139. Most practitioners would bet between $100 and $200.
8.5. Derive the probability of ruin (losing 50% of bankroll) when betting full Kelly with p = 0.55 and b = 1.0. For full Kelly betting, the probability of ever reaching a fraction r of starting bankroll approaches r^{(q/p)} for the geometric random walk approximation. For 50% ruin: P(ruin to 0.5) = (0.5)^{0.45/0.55} = (0.5)^{0.818} = 0.567. There is approximately a 57% chance of experiencing a 50% drawdown at some point. This is why fractional Kelly (quarter or half) is standard practice.
Chapter 9: Rating Systems (Elo, Glicko, and Beyond)
9.1. Team A (Elo 1600) hosts Team B (Elo 1450) with K = 20 and home advantage of 65 points. Calculate the expected score and rating updates after A wins. Adjusted R_A = 1600 + 65 = 1665. E_A = 1 / (1 + 10^{(1450-1665)/400}) = 1 / (1 + 10^{-0.5375}) = 1 / (1 + 0.2899) = 0.7753. S_A = 1 (win). Update for A: 1600 + 20(1 - 0.7753) = 1600 + 4.49 = 1604.49. Update for B: 1450 + 20(0 - 0.2247) = 1450 - 4.49 = 1445.51.
9.3. How many rating points separate a team with a 75% expected win probability from its opponent (no home advantage)? 0.75 = 1 / (1 + 10^{-d/400}). Solving: 10^{-d/400} = 1/3. -d/400 = log10(1/3) = -0.4771. d = 190.8 points.
Chapter 10: Market Efficiency and Closing Line Value
10.1. A bettor consistently gets +3% CLV on their bets. Assuming the closing line is efficient, estimate their long-run ROI. If the closing line is efficient and the bettor gets 3% CLV on average, their expected ROI is approximately 3% minus the vig they pay. At standard -110 vig (approximately 4.55% overround, or ~2.3% vig per side), the expected ROI is roughly 3% - 2.3% = 0.7%. In practice, the relationship between CLV and profit is approximately linear but depends on the specific market and vig structure.
10.3. A line opens at -3 (-110) and closes at -5 (-110). A bettor took -3. What is the implied CLV? At -3 (-110), implied probability = 0.5238. At -5 (-110), implied probability = 0.5238 (same vig). However, the movement from -3 to -5 indicates the market believes the true line is closer to -5. The bettor's position at -3 is now 2 points more favorable. In terms of probability, using N(0, 13.5): P(cover at -3) = P(M > 3) vs. P(cover at -5) = P(M > 5). The CLV is the difference in fair implied probability at those spreads.
Chapter 11: Behavioral Biases in Betting Markets
11.1. A bettor loses 5 bets in a row and doubles their next bet. If their edge is +3% per bet, what is the expected value of the doubled bet? The expected value per dollar is unchanged at +3%. Doubling the bet doubles both the expected profit and the expected loss. The EV of the doubled bet is 2 * (unit bet) * 0.03 = 0.06 units. The gambler's fallacy is the belief that the probability has changed; it has not. However, the doubled bet increases variance and risk of ruin without increasing the per-dollar edge.
11.3. List three cognitive biases and explain how each affects betting behavior. (1) Recency bias: Overweighting a team's last few games rather than their full-season profile. Leads to overreacting to hot/cold streaks. (2) Confirmation bias: Seeking out information that confirms an existing opinion about a team while ignoring contradictory evidence. Leads to poor model updating. (3) Anchoring: Being overly influenced by the opening line or a round number (e.g., a total of 200 in NBA). Leads to insufficient adjustment even when the bettor has independent information.
Part II: Statistical Modeling
Chapter 12: Maximum Likelihood and Model Fitting
12.1. Given 5 observations of goals scored: 0, 2, 1, 3, 1, find the MLE for the Poisson parameter lambda. The MLE for Poisson lambda is the sample mean: lambda-hat = (0+2+1+3+1)/5 = 7/5 = 1.4.
12.3. Write the log-likelihood function for logistic regression with n observations. ell(beta) = sum_{i=1}^{n} [y_i * log(sigma(x_i^T * beta)) + (1 - y_i) * log(1 - sigma(x_i^T * beta))], where sigma(z) = 1/(1+e^{-z}).
Chapter 13: Regression Models for Sports Prediction
13.1. Fit a linear regression of actual margin on predicted spread for 5 games: (Spread: -7, -3, 1, -10, 4) and (Margin: -10, 1, -2, -14, 7). Find the slope and intercept. x-bar = (-7-3+1-10+4)/5 = -3.0. y-bar = (-10+1-2-14+7)/5 = -3.6. Cov(x,y) = [(−7)(−10)+(−3)(1)+(1)(−2)+(−10)(−14)+(4)(7)]/5 − (−3)(−3.6) = [70−3−2+140+28]/5 − 10.8 = 46.6 − 10.8 = 35.8. Var(x) = [49+9+1+100+16]/5 − 9 = 35 − 9 = 26. Slope = 35.8/26 = 1.377. Intercept = -3.6 − 1.377(−3) = -3.6 + 4.131 = 0.531. y-hat = 0.531 + 1.377x. The slope > 1 suggests the spread underestimates the actual margin on average in this small sample.
13.3. In a logistic regression for game outcomes, the coefficient on Elo difference is 0.0035. What is the implied win probability for a team favored by 100 Elo points (no intercept shift)? log(p/(1-p)) = 0.0035 * 100 = 0.35. p = e^{0.35} / (1 + e^{0.35}) = 1.4191 / 2.4191 = 0.5866. The team has approximately a 58.7% win probability.
Chapter 14: Introduction to Machine Learning
14.1. Perform one step of gradient descent on the function f(w) = (w - 3)^2 starting from w_0 = 0 with learning rate eta = 0.1. f'(w) = 2(w - 3). At w_0 = 0: f'(0) = 2(0-3) = -6. w_1 = w_0 - eta * f'(w_0) = 0 - 0.1*(-6) = 0.6.
14.3. Explain why random train/test splits are inappropriate for sports prediction. Random splits violate temporal ordering. A random split might place a January game in training and the preceding October game in testing. The model would be trained on future information when predicting past games, creating look-ahead bias. The correct approach is a temporal split where all training data precedes all test data in time.
Chapter 15: Feature Engineering for Sports
15.1. Construct a 5-game rolling average feature for points scored from the sequence: 24, 17, 31, 20, 28, 14, 35. Game 5: (24+17+31+20+28)/5 = 24.0. Game 6: (17+31+20+28+14)/5 = 22.0. Game 7: (31+20+28+14+35)/5 = 25.6.
15.3. A feature has values [100, 105, 200, 110, 103, 108, 95]. Identify the outlier and propose two ways to handle it. The value 200 is the outlier (more than 3 standard deviations from the mean of approximately 117.3 without it). Approaches: (1) Winsorize by capping at the 95th percentile. (2) Apply a log transformation to reduce the influence of extreme values. (3) Use a robust scaler (median and IQR) instead of standard scaling.
Chapter 16: Ensemble Methods and Model Selection
16.1. A random forest with 100 trees achieves 57% accuracy on the training set and 53% on the test set. A single decision tree achieves 65% training and 49% test. Which model is better and why? The random forest is better. Its smaller gap between train and test performance (4% vs. 16%) indicates less overfitting. The decision tree's 65% training accuracy is inflated by memorizing training patterns. In sports betting, out-of-sample performance is all that matters.
16.3. Describe how to implement a walk-forward backtest with 5 seasons of data. Train on season 1, test on season 2. Train on seasons 1-2, test on season 3. Train on seasons 1-3, test on season 4. Train on seasons 1-4, test on season 5. Aggregate test-set results across all four folds. The expanding training window captures the full history while maintaining temporal integrity.
Chapter 17: Model Evaluation and Calibration
17.1. A model predicts outcomes in 5 probability bins. Observed vs. predicted: (Bin center: 0.3, 0.4, 0.5, 0.6, 0.7) (Observed: 0.28, 0.35, 0.52, 0.63, 0.74) (n per bin: 50, 80, 100, 80, 50). Calculate the reliability component of the Brier score. Reliability = (1/N) * sum n_k * (o_k - f_k)^2 where N = 360. = (1/360) * [50(0.28-0.3)^2 + 80(0.35-0.4)^2 + 100(0.52-0.5)^2 + 80(0.63-0.6)^2 + 50(0.74-0.7)^2] = (1/360) * [500.0004 + 800.0025 + 1000.0004 + 800.0009 + 500.0016] = (1/360) * [0.02 + 0.20 + 0.04 + 0.072 + 0.08] = 0.412/360 = 0.00114. Very good calibration.
17.3. Model A has log loss 0.685 and Brier score 0.248. Model B has log loss 0.690 and Brier score 0.245. Which model would you prefer for betting? Model A has better log loss (more sensitive to confident incorrect predictions), while Model B has better Brier score. For betting, log loss is generally preferred because it more heavily penalizes confident errors, which correspond to large losing bets in a Kelly framework. Choose Model A, but the difference is small enough to warrant further investigation with a paired significance test.
Chapter 18: Deep Learning for Sports Prediction
18.1. A neural network has an input layer of 20 features, one hidden layer of 32 neurons, and an output layer of 1 neuron. How many parameters does it have? Weights from input to hidden: 20 * 32 = 640. Biases in hidden layer: 32. Weights from hidden to output: 32 * 1 = 32. Bias in output: 1. Total = 640 + 32 + 32 + 1 = 705 parameters.
18.3. Why might a neural network underperform logistic regression for NFL game prediction with only 256 games per season? With only 256 games and potentially hundreds of parameters, the neural network is likely to overfit. Logistic regression with regularization has far fewer parameters and imposes a linear structure that acts as a strong inductive bias. In small-data regimes (common in sports), simpler models often generalize better. The neural network would need either more data (multiple seasons), heavy regularization (dropout, weight decay), or a very small architecture to be competitive.
Part III: Sport-Specific Applications
Chapter 20: NFL Prediction Models
20.1. Team A has offensive DVOA of +15% and Team B has defensive DVOA of -5% (i.e., 5% better than average). Estimate the net matchup efficiency advantage. Offensive DVOA +15% means A's offense is 15% better than league average. Defensive DVOA -5% means B's defense is 5% better than league average (negative is good for defense). A's offense vs. B's defense: 15% - 5% = 10% net efficiency advantage for A's offense in this matchup. This would need to be combined with the other side of the ball and converted to points.
20.3. Using a normal distribution with mean = spread and SD = 13.5, what is the probability that a 7-point favorite wins by exactly 7? For a continuous distribution, P(exactly 7) = 0. For a practical answer using a 0.5-point window: P(6.5 < M < 7.5) = Phi((7.5-7)/13.5) - Phi((6.5-7)/13.5) = Phi(0.037) - Phi(-0.037) = 0.5148 - 0.4852 = 0.0296 or about 3.0%. Empirically, the rate is much higher (approximately 8-9%) because NFL scores are discrete and 7 is a key number.
Chapter 22: NBA Prediction Models
22.1. Team A has ORtg 115 and DRtg 108, pace 100. Team B has ORtg 110 and DRtg 105, pace 96. Estimate the total points for their matchup, assuming league average ORtg is 112 and average pace is 98. A's projected offensive efficiency vs. B: 115 + 105 - 112 = 108 (adjusted for B's defense). B's projected offensive efficiency vs. A: 110 + 108 - 112 = 106. Expected pace = (100 + 96) / 2 = 98 (approximately). A's points = 108 * 98 / 100 = 105.84. B's points = 106 * 98 / 100 = 103.88. Total = 209.7, so a total line of 209.5-210 would be expected.
22.3. A star player (contributing +5 net rating in 32 minutes) is ruled out. Estimate the point spread adjustment. The replacement player is assumed to be league average (0 net rating). Impact per 48 minutes: 5 points per 100 possessions over 32 minutes is approximately 5 * (32/48) * (possessions/100). With about 100 possessions per game, the impact is roughly 5 * (32/48) = 3.33 points. So the spread should move approximately 3-3.5 points.
Chapter 23: MLB Prediction Models
23.1. A starting pitcher has a FIP of 3.20. League average ERA is 4.20. If the team's bullpen and defense are league average, estimate the pitcher's contribution to the team's run prevention per 9 innings. A FIP of 3.20 is 1.00 runs below league average. Over a start of 6 innings, this translates to a run prevention of 1.00 * (6/9) = 0.67 runs compared to average. This would shift the run line by approximately 0.33 runs (half the effect, since only one team benefits) in favor of the team starting this pitcher.
23.3. If the home team's Pythagorean win expectation is 0.550 (based on runs scored/allowed) and the away team's is 0.480, estimate the moneyline probability for the home team (include ~54% home win base rate). Using log5: p = (0.550 * (1-0.480)) / (0.550 * (1-0.480) + 0.480 * (1-0.550)) = (0.5500.520) / (0.5500.520 + 0.480*0.450) = 0.286 / (0.286 + 0.216) = 0.286 / 0.502 = 0.5697. Adjusting for home field: this is roughly consistent with home advantage already being partially captured in the Pythagorean records. Estimated home win probability: approximately 57%.
Chapter 24: NHL Prediction Models
24.1. Team A has a Corsi-For% of 54% and PDO of 102. Team B has CF% of 48% and PDO of 99. Which team is more likely to sustain their performance? Team A's strong Corsi (54%) suggests genuine territorial dominance. Their elevated PDO (102 vs. baseline 100) means slightly above-average shooting + save percentage, which may regress but is not extreme. Team B's low Corsi (48%) indicates poor shot generation/prevention, but their PDO of 99 is near average, suggesting their underlying results reflect their true quality. Team A is better positioned for sustained performance because Corsi is more predictive than PDO.
Chapter 25: In-Play Betting Models
25.1. A soccer team is leading 1-0 at the 60th minute. Pre-match expected goals rates were 1.5 (home) and 1.0 (away). Estimate the home win probability assuming Poisson scoring in the remaining 30 minutes. Remaining rates: home = 1.5 * (30/90) = 0.5, away = 1.0 * (30/90) = 0.333. Home leads 1-0. Home wins if: away scores 0 and it stays 1-0+, or any combination where home total > away total. P(away scores 0 in remaining) = e^{-0.333} = 0.717. P(away scores 1) = 0.239. P(away scores 2+) = 0.044. If away scores 0: home wins (probability = 0.717). If away scores 1 (tie at 1-1): home needs to score at least 1 in remaining. P(home scores >= 1) = 1 - e^{-0.5} = 0.394. Contribution: 0.239 * 0.394 = 0.094. If away scores 2+: home needs to score enough to stay ahead. This is small. Approximate P(home win) = 0.717 + 0.094 + small terms = approximately 0.82 or 82%.
Part IV: Advanced Topics and Portfolio Management
Chapter 29: Parlay and Teaser Strategies
29.1. Calculate the fair odds for a 3-team parlay with individual fair probabilities of 0.55, 0.52, and 0.58. Fair combined probability = 0.55 * 0.52 * 0.58 = 0.1659. Fair decimal odds = 1/0.1659 = 6.028. A sportsbook typically offers "true odds" parlays at lower payouts. At -110 per leg: each implied prob = 0.5238. Parlay implied prob = 0.5238^3 = 0.1438. Parlay odds = 1/0.1438 = 6.955. The discrepancy between 6.028 (fair) and 6.955 (offered) reflects the compounded vig.
29.3. A "Wong teaser" crosses a 6-point NFL spread through 3 and 7 on two legs. Each leg has approximately 73% cover rate. Calculate the expected value at -120 teaser odds. Combined probability: 0.73 * 0.73 = 0.5329. At -120 decimal = 1.833. EV = 0.5329 * 0.833 - 0.4671 * 1.0 = 0.4439 - 0.4671 = -0.023. Slightly negative at -120. At -110 (decimal 1.909): EV = 0.5329 * 0.909 - 0.4671 = 0.4844 - 0.4671 = +0.017. The Wong teaser is approximately break-even to slightly positive depending on the vig.
Chapter 30: Futures Markets and Season-Long Strategies
30.1. A team is 40-1 to win the championship. Your model estimates their probability at 4%. Is there value? Implied probability from odds: 1/41 = 2.44%. Your model: 4%. Edge = 4% * 41 - 1 = 1.64 - 1 = 0.64 or 64% edge. Kelly fraction: 0.64/40 = 1.6% of bankroll. There is substantial value, but the high variance of futures means fractional Kelly (quarter Kelly = 0.4% of bankroll) is advisable.
Chapter 33: Soccer-Specific Models
33.1. Fit a Poisson regression for home goals with an intercept, home attack strength (0.15), and away defense weakness (0.10). League average is 1.35 goals. Calculate the expected home goals. log(lambda) = log(1.35) + 0.15 + 0.10 = 0.3001 + 0.15 + 0.10 = 0.5501. lambda = e^{0.5501} = 1.733 expected home goals.
Chapter 35: Hockey-Specific Models
35.1. An NHL team averages 2.8 goals for and 2.4 goals against per game. Using a Poisson model, calculate the probability they win in regulation. P(win in regulation) = sum over h > a of Poisson(2.8, h) * Poisson(2.4, a) for h, a = 0, 1, 2, ..., 10. Computing: P(draw) = sum_k Poisson(2.8, k) * Poisson(2.4, k) for k = 0, 1, ... = 0.0366 + 0.0894 + 0.0917 + 0.0560 + 0.0231 + 0.0071 + 0.0017 + ... = approximately 0.306. Wait -- these are individual score probabilities, not joint. Let me recompute. P(0,0) = e^{-2.8}e^{-2.4} = 0.06080.0907 = 0.00552. Summing all ties through 8-8 gives approximately 0.224. By symmetry arguments and direct computation: P(home win regulation) approximately 0.420. P(away win regulation) approximately 0.356. P(OT/SO) approximately 0.224.
Chapter 38: Building a Betting Operation
38.1. A bettor stakes $100 per bet and has the following 10-bet record: W, L, L, W, W, L, W, W, L, W at -110 odds. Calculate ROI, yield, and maximum drawdown. Wins: 6, Losses: 4. Profit per win: 100/1.1 = $90.91. Loss per loss: $100. Total profit: 690.91 - 4100 = 545.45 - 400 = $145.45. Total staked: 10 * $100 = $1,000. ROI = 145.45/1000 = 14.55%. Running P&L: +90.91, -9.09, -109.09, -18.18, +72.73, -27.27, +63.64, +154.55, +54.55, +145.45. Maximum drawdown: from peak of +90.91 to trough of -109.09 = $200.00.
Part V: Ethics, Regulation, and Professional Practice
Chapter 40: Legal and Regulatory Landscape
40.1. Explain the difference between a bookmaker's vig and their hold percentage. The vig (vigorish) is the theoretical margin built into the odds. For a -110/-110 market, each side has implied probability 52.38%, totaling 104.76%; the vig is 4.76%. The hold is the actual percentage of handle retained as profit. It depends on how the action is distributed. If perfectly balanced, the hold approximates the vig. If heavily one-sided, the hold can be higher or lower (even negative) than the vig.
Chapter 41: Responsible Gambling
41.1. A bettor's bankroll dropped from $10,000 to $6,000 (40% drawdown). Using the Kelly framework with an assumed 3% edge and -110 odds, how long should recovery take in expectation? At quarter Kelly with 3% edge on -110: Kelly fraction = ((0.5238+0.03)*0.909 - 0.4462)/0.909 = approx. 0.033. Quarter Kelly = 0.83% per bet. Expected per-bet return = edge * stake = 0.03 * 0.83% of bankroll = 0.025% growth per bet. Need to grow from $6,000 to $10,000 = factor of 1.667. ln(1.667) / 0.00025 = approximately 2,043 bets. At 3 bets per day, roughly 681 days or nearly 2 years. This illustrates why protecting against drawdowns is paramount.
Chapter 42: The Future of Sports Betting
42.1. Describe three ways machine learning might change sports betting markets in the next decade. (1) Automated market-making: ML models will increasingly set opening lines with minimal human intervention, reducing exploitable inefficiencies in opening lines. (2) Personalized odds: Sportsbooks will use ML to assess each bettor's sophistication and offer individualized lines or limits, making it harder for skilled bettors to find value. (3) Real-time player tracking: As tracking data becomes more granular and available faster, in-play models will update at sub-second intervals, creating new opportunities and challenges for live bettors.
Solutions to even-numbered problems are available in the Instructor's Solutions Manual. Complete Python code for all computational solutions is available in the companion repository.