0/70 completed
Risk Management Interactive

Concentration Risk

Measure and manage exposure to single events, sports, or correlated outcomes. Diversification reduces variance without sacrificing expected return.

๐Ÿ“Š Herfindahl-Hirschman Index (HHI)

HHI = ฮฃ (share_i)ยฒ
  • share_i = Percentage exposure to segment i
  • < 1500 = Low concentration
  • 1500-2500 = Moderate
  • > 2500 = High concentration

Interpretation

  • โ€ข 10000: All exposure in one segment
  • โ€ข 2000: 5 equal segments
  • โ€ข 1000: 10 equal segments
  • โ€ข Lower HHI = better diversification

Exposure by Sport

NFL (%) 35
0 60
NBA (%) 25
0 60
MLB (%) 15
0 60
NHL (%) 10
0 60
Soccer (%) 10
0 60
Other (%) 5
0 60
Total 100%

๐Ÿ“Š Concentration Analysis

2300
HHI Score
4.3
Effective # Segments
Moderate Concentration
Risk Level: Medium
0 (Diversified) 10000 (All in one)

Exposure Distribution

โš ๏ธ Single Event Risk

Largest Single Event ($K) 5
1 20
Total Book Liability ($K) 100
50 500

Single Event Concentration

5.0%
of total liability

โœ“ Acceptable Well-diversified event exposure.

๐ŸŽฏ Types of Concentration Risk

NFL

High correlation on Sundays, 1PM slate exposure

NBA

Back-to-back games, load management uncertainty

Parlay

Correlated legs (same game, same team)

Player

Injury exposure, single star dependence

๐Ÿ›ก๏ธ Mitigation Strategies

Limits & Controls

  • โ†’ Max % of book on single event
  • โ†’ Max exposure per sport/league
  • โ†’ Parlay leg correlation caps
  • โ†’ Time-based concentration limits (Sunday slate)

Active Management

  • โ†’ Move lines to balance exposure
  • โ†’ Hedge at other books
  • โ†’ Reduce limits on concentrated outcomes
  • โ†’ Real-time exposure monitoring

R Code Equivalent

# Calculate Herfindahl-Hirschman Index
calculate_hhi <- function(exposures) { 
  shares <- exposures / sum(exposures) * 100
  hhi <- sum(shares^2)
  return(hhi)
}

# Effective number of segments
effective_n <- function(hhi) { 
  10000 / hhi
}

# Classify concentration
classify_concentration <- function(hhi) { 
  if (hhi >= 2500) return("High")
  if (hhi >= 1500) return("Moderate")
  return("Low")
}

# Example
exposures <- c(35, 25, 15, 10, 10, 5)
hhi <- calculate_hhi(exposures)
cat(sprintf("HHI: %.0f - %s concentration\n", hhi, classify_concentration(hhi)))
cat(sprintf("Effective # segments: %.1f\n", effective_n(hhi)))

โœ… Key Takeaways

  • โ€ข HHI measures portfolio concentration (lower = better)
  • โ€ข <1500 = diverse, >2500 = concentrated
  • โ€ข Single event risk should be capped
  • โ€ข Diversification reduces variance, not EV
  • โ€ข Watch for hidden correlations (same game parlays)
  • โ€ข Active management: move lines, hedge, limit

Pricing Models & Frameworks Tutorial

Built for mastery ยท Interactive learning