0/70 completed
Market Analysis Interactive

Game Theory

Strategic interaction between competitors. Understanding Nash equilibrium and best responses for pricing decisions in competitive markets.

๐Ÿ”’ The Prisoner's Dilemma

Competitor CooperatesCompetitor Defects
You Cooperate
3, 3
Both win
0, 5
You lose
You Defect
5, 0
You win
1, 1
Nash Eq

In Pricing Terms

  • Cooperate: Keep hold rates reasonable
  • Defect: Slash hold to steal market share

Insight: Both firms are better off with moderate hold (3,3), but each has incentive to cut prices, leading to (1,1).

Pricing Decisions

Your Hold Rate (%) 5
2 10
Competitor Hold (%) 5
2 10

๐Ÿ“Š Best Response

Competitor's Hold 5%
Your Best Response 7.5%
Expected Profit 2.81

Market Outcome

You

Hold Rate 5%
Market Share 50%
Profit Score 2.50

Competitor

Hold Rate 5%
Market Share 50%
Profit Score 2.50

Matched pricing: Equal share, competing on other dimensions.

Common Game Structures

Prisoner's Dilemma

Both better off cooperating, but each has incentive to defect

Price wars: both cut prices, both lose margin

Defect-Defect (suboptimal)

Chicken

Worst outcome if both stay aggressive

Promotional spending: who backs down first?

One aggressive, one passive

Coordination

Both benefit from choosing same strategy

Market standards, feature matching

Multiple equilibria exist

โ™Ÿ๏ธ Strategic Considerations

Competitive Dynamics

  • โ†’ Monitor competitor pricing in real-time
  • โ†’ Consider long-term reputation effects
  • โ†’ Repeated games allow for cooperation
  • โ†’ Differentiation can escape price wars

Signaling & Commitment

  • โ†’ Price matching guarantees signal commitment
  • โ†’ Public pricing = credible commitment
  • โ†’ Promotional "shots across the bow"
  • โ†’ Tit-for-tat builds cooperation

R Code Equivalent

# Game theory payoff analysis
calculate_payoff <- function(my_hold, their_hold) { 
  hold_diff <- their_hold - my_hold
  base_share <- 50
  share_gain <- hold_diff * 5  # 5% share per 1% hold diff
  my_share <- pmax(10, pmin(90, base_share + share_gain))
  profit <- my_share * my_hold / 100
  return(list(share = my_share, profit = profit))
}

# Find best response
best_response <- function(their_hold) { 
  holds <- seq(2, 10, by = 0.5)
  profits <- sapply(holds, function(h) calculate_payoff(h, their_hold)$profit)
  best_idx <- which.max(profits)
  return(list(hold = holds[best_idx], profit = profits[best_idx]))
}

# Nash equilibrium search
find_nash <- function() { 
  for (h1 in seq(2, 10, by = 0.5)) { 
    for (h2 in seq(2, 10, by = 0.5)) { 
      br1 <- best_response(h2)$hold
      br2 <- best_response(h1)$hold
      if (h1 == br1 && h2 == br2) return(c(h1, h2))
    }
  }
}

โœ… Key Takeaways

  • โ€ข Nash equilibrium: no one benefits from changing
  • โ€ข Price wars often lead to lose-lose outcomes
  • โ€ข Best response depends on competitor actions
  • โ€ข Differentiation can escape price competition
  • โ€ข Repeated games allow cooperation to emerge
  • โ€ข Signaling and commitment matter

Pricing Models & Frameworks Tutorial

Built for mastery ยท Interactive learning