Combinatorial Betting Rick Goldstein and John Lai Outline Prediction Markets vs Combinatorial Markets How does a combinatorial market maker work? Bayesian Networks + Price Updating Applications Discussion Complexity (if time permits) Simple Markets Small outcome space ◦ Binary or a small finite number Sports game (binary); Horse race (constant number) Easy to match orders and price trades Larger outcome space ◦ E.g.: State-by-state winners in an election ◦ One way: separate market for each state ◦ Weaknesses cannot express certain information “Candidate either wins both Florida and Ohio or neither” Need arbitrage to make markets consistent Combinatorial Betting Different approach for large outcome spaces Single market with large underlying outcome space Elections (n binary events) ◦ 50 states, two possible winners for each state, 250 outcomes Horse race (permutation betting) ◦ n horses, all possible orderings of finishing, n! outcomes Two types of markets Order matching ◦ Risklessly match buy and sell orders Market maker ◦ Price and accept any trade Thin markets problem with order matching Computational Difficulties Order matching ◦ Which orders to accept? ◦ Is there is a non-null subset of orders we can accept? ◦ Hard combinatorial optimization question ◦ Why is this easy in simple markets? Market maker ◦ How to price trades? ◦ How to keep track of current state? ◦ Can be computationally intractable for certain trades ◦ Why is this easy in simple markets? Order Matching Contracts costs $q, pays $1 if event occurs Sell orders: buy the negation of the event Horse race, three horses A, B, C ◦ Alice: (A wins, 0.6, 1 share) ◦ Bob: (B wins, 0.3 for each, 2 shares) ◦ Charlie: (C wins, 0.2 for each, 3 shares) Auctioneer does not want to assume any risk Should you accept the orders? ◦ Indivisible: no. Example: accept all orders, revenue = 1.8, but might have to pay out 2 or 3 if B or C wins respectively ◦ Divisible: yes. Example: accept 1 share of each order, revenue = 1.1, pay out 1 in any state of the world Order Matching: Details (𝑏𝑖 , 𝑞𝑖 , 𝐴𝑖 ): (bid, number of shares, event) Is there a non-trivial subset of orders we can risklessly accept? Let 𝐼𝑖 (𝑠) = 1 if 𝑠 ∈ 𝐴𝑖 𝑥𝑖 : fraction of order to accept Order Matching: Permutations Bet on orderings of n variables Chen et. al. (2007) Pair betting ◦ Bet that A beats B ◦ NP-hard for both divisible and indivisible orders Subset betting ◦ Bet that A,B,C finish in position k ◦ Bet that A finishes in positions j, k, l ◦ Tractable for divisible orders ◦ Solve the separation problem efficiently by reduction to maximum weight bipartite matching Order Matching: Binary Events n events, 2n outcomes Fortnow et. al. (2004) Divisible ◦ Polynomial time with O(log m) events ◦ co-NP complete for O(m) events Indivisible ◦ NP-complete for O(log m) events Market Maker Price securities efficiently Logarithmic scoring rule Market Maker Pricing trades under an unrestricted betting language is intractable Idea: reduction If we could price these securities, then we could also compute the number of satisfying assignments of some boolean formula, which we know is hard Market Maker Search for bets that admit tractable pricing Aside: Bayesian Networks ◦ Graphical way to capture the conditional independences in a probability distribution ◦ If distributions satisfy the structure given by a Bayesian network, then need much fewer parameters to actually specify the distribution Bayesian Networks NLCS ALCS World Series Any distribution: Bayes Net distribution: Bayesian Networks Directed Acyclic Graph over the variables in a joint distribution Decomposition of the joint distribution: Can read off independences and conditional independences from the graph Bayesian Networks Market Maker Idea: find trades whose implied probability distributions are simple Bayesian networks Exploit properties of Bayesian networks to price and update efficiently Paper Roadmap 1. 2. 3. 4. Basic lemmas for updating probabilities when shares are purchased on any event A Uniform distribution is represented by a Bayesian network (BN) For certain classes of trades, the implied distribution after trades will still be reflected by the BN (i.e. conditional independences still hold) Because of the BN structure that persists even after trades are made, we can characterize the distribution with a small number of parameters, compute prices, and update probabilities efficiently Basic Lemmas Network Structure 1 Theorem 3.1: Trades of the form team j wins game k preserves this Bayesian Network Theorem 3.2: Trades of the form team 𝑗1 wins game k and team 𝑗2 wins game m, where game k is the next round game for the winner of game m, preserves this Bayesian Network Network Structure I Implied joint distribution has some strange properties Winners of first round games are not independent Expect independence in true distribution; restricted language is not capturing true distribution Network Structure II Theorem 3.4: Trades of the form team i beats team j given that they meet preserves this Bayesian Network structure. Bets only change distribution at a given node Equal to maintaining 𝑛 2 separate, independent markets Tractable Pricing and Updates Only need to update conditional probability tables of ancestor nodes Number of parameters to specify the network is small (polynomial in n) Counting Exercise: how many parameters needed to specify network given by the tree structure? Sampling Based Methods Appendix discusses importance sampling Approximately compute P(A) for implied market distribution Cannot sample directly from P, so use importance sampling Sampling from a different distribution, but weight each sample according to P(𝑋𝑖 ) Applications Predictalot (Yahoo!) ◦ Combinatorial Market for NCAA basketball “March Madness” ◦ 64 teams, 63 single elimination games, 1 winner Predictalot allowed combinatorial bets ◦ ◦ ◦ ◦ Probability Duke beats UNC given they play Probability Duke wins more games than UNC Duke wins the entire tournament Duke wins their first game against Belmont Status points (no real money) = Predictalot! Predictalot allows for 263 bets About 9.2 quintillion possible states of the world 63 2 2 200,000 possible bets ◦ Too much space to store all data ◦ Rather Predictalot computes probabilities on the fly given past bets Randomly sample outcome space Emulate Hanson’s market maker Discussion Do you think these combinatorial markets are practical? Strengths Natural betting language Prediction markets fully elicit beliefs of participants Can bet on match-ups that might not be played to figure out information about relative strength between teams Conditionally betting Believe in “hot streaks”/non-independence then can bet at better rates that with prediction markets Correlations Good for insurance + risk calculations No thin market problem Trade bundles in 1 motion Criticism Do we really need such an expressive betting language? ◦ 263 markets ◦ 2263 different bets What’s wrong with using binary markets? Instead, why don’t we only bet on known games that are taking place? ◦ UCLA beats Miss.Valley State in round 1 ◦ Duke beats Belmont in round 1 After round 1 is over, we close old markets and open new markets ◦ Duke beats Arizona in round 2 More Criticism Even More Criticism 64 more markets for tourney winner ◦ Duke wins entire tourney ◦ UNC wins entire tourney ◦ Arizona State wins entire tourney Need 63+64 ~> 2n markets to allow for all bets that people actually make Perhaps add 20 or so interesting pairwise bets for rivalries? ◦ Duke outlasts UNC 50%? ◦ USC outlasts UCLA 5%? Don’t need 263 bets as in Predictalot Expressiveness v. Tractability Tradeoff between expressiveness and tractability Allow any trade on the 250 outcomes ◦ (Good): Theoretically can express any information ◦ (Bad): Traders may not exploit expressiveness ◦ (Bad): Impossible to keep track of all 250 states Restrict possible trades ◦ (Good): May be computationally tractable ◦ (Good): More natural betting languages ◦ (Bad): Cannot express some information ◦ (Bad): Inferred probability distribution not intuitive Tractable Pricing and Updates (optional) Complexity Result (optional) How does Predictalot Make Prices? (optional) Markov Chain Monte Carlo ◦ Try to construct Markov Chain with probabilities implied by past bets ◦ Correlated Monte Carlo Method Importance Sampling ◦ Estimating properties of a distribution with only samples from a different distribution ◦ Monte Carlo, but encourages important values Then corrects these biases