Exercises: Weather Effects
Exercise 1: Temperature Adjustment
Calculate the total points adjustment for games played at the following temperatures:
a) 65°F (mild September game) b) 42°F (late November) c) 28°F (December cold snap) d) 15°F (January playoff game) e) 5°F (extreme cold)
Use the formula: Adjustment = -0.12 × max(0, 55 - Temperature)
Exercise 2: Wind Impact
Calculate the total points adjustment for the following wind conditions:
a) 8 mph (light breeze) b) 14 mph (breezy) c) 22 mph (windy) d) 30 mph (very windy) e) 40 mph (extreme - rare)
Use the formula: Adjustment = -0.25 × max(0, Wind - 10)
Exercise 3: Combined Weather Index
Calculate the weather index for the following game conditions:
| Game | Temp | Wind | Precipitation |
|---|---|---|---|
| A | 55°F | 8 mph | None |
| B | 38°F | 15 mph | Light rain |
| C | 22°F | 25 mph | Light snow |
| D | 90°F | 5 mph | None (70% humidity) |
For each, determine the expected total adjustment and classify the weather severity.
Exercise 4: Indoor vs Outdoor Analysis
A dome team (Las Vegas Raiders) visits Green Bay in Week 17. Conditions forecast:
- Temperature: 12°F
- Wind: 18 mph
- Light snow expected
a) Calculate the base weather adjustment (total and spread) b) Estimate the additional home field advantage due to weather mismatch c) If the base spread is GB -3, what is your weather-adjusted spread? d) If the base total is 45, what is your weather-adjusted total?
Exercise 5: Precipitation Impact
Analyze the following precipitation scenarios:
a) Light drizzle throughout the game b) Heavy rain in the second half only c) Moderate snow accumulating 2 inches d) Game starts clear, heavy rain in 4th quarter
For each, estimate the total adjustment and discuss how the timing might affect your analysis.
Exercise 6: Wind Direction Analysis
A stadium runs north-south. Wind is 22 mph from the north.
a) How does wind direction affect gameplay? b) Which team benefits when possessing in which direction? c) How should coaches adjust strategy? d) Does wind direction affect your total adjustment? e) Should wind direction affect the spread? Why or why not?
Exercise 7: Altitude Adjustment
Analyze games at Denver's Mile High Stadium:
a) A sea-level team (Seattle) visits Denver. What adjustments apply? b) A high-altitude acclimated team (Denver itself) hosts. What's their advantage? c) Calculate expected field goal range adjustment d) If Vegas total opens at 48, is that already altitude-adjusted?
Exercise 8: Historical Weather Game Analysis
The following historical games occurred:
| Game | Conditions | Combined Score |
|---|---|---|
| A | 5°F, 15 mph wind | 34 |
| B | 72°F, calm | 58 |
| C | 30°F, heavy snow | 22 |
| D | 45°F, 25 mph wind | 31 |
a) Calculate expected total adjustment for each b) Compare actual vs expected c) Identify which games outperformed/underperformed expectations d) What might explain the variances?
Exercise 9: Retractable Roof Decision
NRG Stadium (Houston) has a retractable roof. The forecast shows:
- Temperature: 62°F
- Wind: 8 mph
- 40% chance of rain
a) Should the roof be open or closed? Why? b) How does roof uncertainty affect your prediction? c) If you model "roof open" and it closes, what's the impact? d) How do you incorporate roof decision uncertainty?
Exercise 10: Week-by-Week Weather Tracking
Design a system to track weather impacts across an NFL season:
a) What data would you collect for each game? b) How would you store indoor vs outdoor games? c) What metrics would you track to validate your weather model? d) Create a sample tracking spreadsheet structure
Exercise 11: Pass-Heavy vs Run-Heavy in Weather
Team A is pass-heavy (65% pass rate). Team B is balanced (50% pass rate).
Conditions: 25°F, 20 mph wind, no precipitation
a) Calculate base weather adjustment (same for both) b) Estimate relative impact on each team c) How should this affect the spread between them? d) How would your analysis change with 15 mph wind instead?
Exercise 12: Weather Forecast Accuracy
You collected weather forecasts and actual conditions:
| Game | Forecast Temp | Actual Temp | Forecast Wind | Actual Wind |
|---|---|---|---|---|
| 1 | 35°F | 32°F | 15 mph | 18 mph |
| 2 | 50°F | 55°F | 10 mph | 8 mph |
| 3 | 28°F | 30°F | 22 mph | 25 mph |
| 4 | 42°F | 38°F | 12 mph | 20 mph |
a) Calculate forecast error for each b) How much would your adjustments have differed? c) What's the value of updating forecasts before game time? d) How should you model forecast uncertainty?
Exercise 13: Market Movement Analysis
A game's total moved after weather became known:
- Wednesday open: 48.5
- Thursday (forecast: 28°F, 15 mph): 46.5
- Friday (forecast unchanged): 46
- Saturday (updated: 22°F, 22 mph): 44
a) Calculate the total market movement b) Estimate the weather-driven portion c) Calculate your model's weather adjustment d) Did the market over- or under-adjust?
Exercise 14: Early Season Heat Analysis
A September game in Miami:
- Temperature: 92°F
- Humidity: 85%
- Heat index: ~105°F
- Visiting team from Seattle (cool climate)
a) Calculate heat-related adjustment b) Estimate home team advantage from acclimation c) How does this compare to cold weather advantages? d) Are heat effects under-analyzed compared to cold?
Exercise 15: Weather-Adjusted Model Validation
You have predictions with and without weather adjustments:
| Game | Base Total | Weather Adj | Final Pred | Actual |
|---|---|---|---|---|
| 1 | 46 | -3 | 43 | 40 |
| 2 | 48 | 0 | 48 | 52 |
| 3 | 44 | -5 | 39 | 36 |
| 4 | 50 | -2 | 48 | 45 |
| 5 | 45 | -4 | 41 | 38 |
a) Calculate MAE for base predictions b) Calculate MAE for weather-adjusted predictions c) Did weather adjustments improve accuracy? d) Calculate the improvement percentage
Exercise 16: Building a Weather API Integration
Write pseudocode for a weather data integration:
a) Define the API endpoint and parameters b) Parse the response for relevant fields c) Handle missing data and errors d) Cache results to avoid repeated calls e) Update forecasts as game time approaches
Exercise 17: Snow Game Variance
Snow games have high variance. Given:
- Average total in snow games: 38 points
- Standard deviation in snow games: 18 points (vs 13.5 normally)
a) What's the 90% confidence interval for a snow game total? b) Compare to normal conditions c) How should increased variance affect your confidence? d) Should you adjust bet sizing for snow games?
Exercise 18: Multi-Factor Weather Scenario
Design the complete weather analysis for this game:
Game: Buffalo @ New England, Week 16 Forecast: 18°F, 28 mph wind, moderate snow Base prediction: NE -2.5, Total 43
a) Calculate temperature adjustment b) Calculate wind adjustment c) Calculate precipitation adjustment d) Calculate combined total adjustment e) Analyze spread implications (both cold-weather teams) f) Provide final adjusted predictions with confidence levels
Exercise 19: Weather Edge Identification
Your model gives these weather adjustments vs market movement:
| Game | Model Adj | Market Adj | Difference |
|---|---|---|---|
| A | -4.5 | -3.0 | -1.5 |
| B | -2.0 | -2.5 | +0.5 |
| C | -6.0 | -4.0 | -2.0 |
| D | -1.5 | -1.5 | 0 |
a) Which games show potential value? b) What's your threshold for actionable disagreement? c) Track these games and analyze results d) What patterns suggest your model is better/worse than market?
Exercise 20: Complete Weather Model Implementation
Build a complete weather adjustment function:
Requirements: 1. Accept temperature, wind, precipitation, humidity 2. Return total and spread adjustments 3. Handle indoor venues (no adjustment) 4. Account for altitude (Denver) 5. Include team climate/dome status for asymmetric adjustments
Provide pseudocode or Python implementation with tests.
Challenge Exercise: Real-Time Weather Integration
Design a production weather system:
Requirements: 1. Fetch forecasts for all weekly games 2. Update forecasts every 6 hours 3. Store historical forecasts for validation 4. Calculate adjustments automatically 5. Alert when conditions change significantly 6. Compare to market movements
Deliverables: - System architecture diagram - Database schema - Key algorithms - Monitoring and alerting strategy
Submission Guidelines
For each exercise: 1. Show all calculations step-by-step 2. State formulas and assumptions used 3. Interpret results in practical context 4. Note sources of uncertainty 5. For code exercises, include commented implementations