Market Madness: Implementing a 9.2 quintillion outcome prediction market David Pennock
Research A (2-outcome) prediction market A random variable, e.g. Turned into a financial instrument payoff = realized value of variable $1 if$0 if I am entitled to: 2010 the warmest year on record? (Y/N) 2010 the warmest not the warmest
Research
AAAI’04 July 2004MP1-4 Another example: Options Options prices (partially) encode a probability distribution over their underlying stocks stock price s call 20 = max[0,s-20] payoff call 30 = max[0,s-30] call 40 = max[0,s-40]
AAAI’04 July 2004MP1-5 Another example: Options Options prices (partially) encode a probability distribution over their underlying stocks stock price s call 20 payoff - 2*call 30 + call 40 “butterfly spread”
AAAI’04 July 2004MP1-6 Another example: Options Options prices (partially) encode a probability distribution over their underlying stocks stock price s call 30 payoff - 2*call 40 + call 50
AAAI’04 July 2004MP1-7 Another example: Options call call 20 + call 30 = $2.13 relative call call 30 + call 40 = $5.73 likelihood of falling call call 40 + call 50 = $3.54 near center stock price s payoff $2.13$5.73$3.54
Reinventing the wheel Put prices: CDF ( PDF) of stock price Butterfly spreads: discrete approx of PDF PDF of stocks are ~lognormal
Reinventing the wheel lognormal (u=3.67, =.205) Bid,ask,mid of butterfly spreads Put prices Best fit lognormal
The outrage What about call prices? ENTIRELY REDUNDANT! I know that, you say: put-call parity From an information standpoint, they are useless From a trading standpoint, they might be useful, but only because markets are poorly designed
The outrage II Range bets require four trades –Four commisions, four bid-ask spreads –Execution risk stock price s call 20 payoff - 2*call 30 + call 40 “butterfly spread”
AAAI’04 July 2004MP1-12 Example: Options YHOO stock price s payoff
AAAI’04 July 2004MP1-13 Example: Options YHOO stock price s payoff
AAAI’04 July 2004MP1-14 Example: Options
The thesis In a well designed (derivative) market information is everything information is the only thing Contrapositive: redundancy = poor design
Continuous double auction Uber-hammer of the financial world Used everywhere –Stocks, options, futures, derivatives –Gambling: BetFair, InTrade Related bets? Just use two CDAs –Max[YHOO-10], Max[YHOO-20] –Horse wins, Horse finishes 1st or 2nd –“Power set” instruments: Mutual funds, ETFs, butterfly spreads, “Western Conference wins” –Treats everything like apples and oranges, even ‘fish’ and ‘fish and chips’
Continuous double auction Uber-hammer of the financial world CDA was invented when auctioneers were people Had to be dead simple Today, auctioneers are computers......Yet CDA remains the standard
Example:
Example: Bet365
Research Example: Y! Predictalot
Research 9.2 quintillion outcomes Example: Y! Predictalot
Research The pitch (to gamers) Predict any property possible in theory [gogol,gogolplex] Duke wins >3 games Duke wins more than UNC, less than NCST Sum (seeds of ACC teams in final8) is prime We’ll instantly quote odds for any of them Effects related predictions automatically Predict Duke wins tournament Odds Duke wins rnd 1 goes up
Research The pitch (to economists) Information is everything Traders (people) focus on information Provide it in whatever form they like Mechanism (computer) handles logical & Bayesian propagation - what it’s good at No redundancy, no exec risk, everything is 1 trade
Overview: Complexity Results PermutationsBooleanTaxonomy GeneralPairSubsetGeneral2-clauseRestrict Tourney GeneralTree Auction- eer NP-hard EC’07 NP-hard EC’07 Poly EC’07 NP-hard DSS’05 co-NP- complete DSS’05 ??? Market Maker (LMSR) #P-hard EC’08 #P-hard EC’08 #P-hard EC’08 #P-hard EC’08 Approx STOC’08 #P-hard EC’08 Poly STOC’08 #P-hard AAMAS ‘09 Poly AAMAS ‘09
LMSR market maker Robin Hanson: Logarithmic market scoring rule market maker Event = E = e.g. Duke wins > 3 Outcome = o = complete unfolding of tourn o E e q o /b o TRUE e q o /b Price of E =
LMSR market maker o E e q o /b o TRUE e q o /b Impossible: Store 2 63 numbers Complex: Sum over 2 63 numbers Doable: Approx sum over 2 63 nums *tricks required to do it well/fast
Main loop Input: event E for 1 to NUM_SAMPLES sample o foreach bet (F,q F ) q o +=q F if o F numer += e q o /b /p(o) if o E denom += e q o /b /p(o) return numer/denom
Other market maker functions Point price is all we need! From price we can compute –Total cost of any number of shares q E –Number of shares purchasable for any dollar amount (inverse cost) –New price after purchasing q E shares
Sampling Sampling is accurate when outcomes are chosen proportional to e q/b Can’t be done (#P-hard) Can sample proportion to q, if size of event is known For now, we sample according to seed- based prior fit to historical data Next: Metropolis-Hastings
Sampling No guarantees Erratic convergence e 10 dwarfs e 8 Linear scan of all bets in inner loop! Now getting serious about improving sampling: 1) fast, 2) stable, 3) accurate
Eval If E is a snippet of code, then testing o E requires an ‘eval’ of the code Slow in interpreted languages + can be gamed + serious security risk Proceeded in phases: 1) Mathematica, 2) PHP, 3) Now implemented a mini language parser in Java: much faster
Demo With Mani Abrol, Janet George, Tom Gulik, Mridul Muralidharan, Sudar Muthu, Navneet Nair, Abe Othman, David Pennock, Daniel Reeves, and Pras Sarkar Yahoo! Application Platform –Takes care of login/auth, friends, sharing –Easy to create; good sample code; Google open social –Small view on my.yahoo, yahoo.com (330M) –Activity stream can appear across Y! (e.g., mail, sports, finance, profiles)
The modal dialog opens with a screen to select a prediction type Example: Y! Predictalot
On selecting the template for prediction type the other controls are displayed progressively Example: Y! Predictalot
Here the user then sets the prediction parameters, but note that the ‘make prediction’ button is disabled till all parameters are set Example: Y! Predictalot
Odds are calculated only after the user finalizes on the prediction Example: Y! Predictalot
Finally once investments are placed the ‘Make prediction’ button gets enabled. Example: Y! Predictalot
What’s next Road to March: Built it, now we hope you come! (+ promo from Y!Sports) Road to June: World Cup Then IPL, NFL?, Oscars?, Politics? Sampling tricks: art and science MM to revenue positive: proof of concept Flexible market maker: Abe Othman Other price functions; dynamic parimutuel Open puzzles: integrating limit and market orders, interval bets on real line
More What is (and what good is) a combinatorial prediction market? /12/22/what-is-and-what- good-is-a-combinatorial- prediction-market/
Research A research agenda: Chance Tech Technology to Manage chance: prediction, finance Mitigate chance: insurance Manufacture chance: gambling In: Wisdom of crowds, prediction markets, stock picking, money management, online betting exchanges, computer poker, custom insurance, adversarial ML Out: Roulette, human poker, chess
A research methodology DesignBuildAnalyze HSX NF TS WSEX FX PS
Examples Design Prediction markets –Dynamic parimutuel –Combinatorial bids –Combinatorial outcomes –Shared scoring rules –Linear programming backbone Ad auctions Spam incentives BuildAnalyze Computational complexity Does money matter? Equilibrium analysis Wisdom of crowds: Combining experts Practical lessons Predictalot Yoopick Y!/O Buzz Centmail Pictcha Yootles
The evolution of markets Phase 0: Invention, manual execution Auctions Finance WALL STREET Advertising bookstores, banks, grocery stores,...
The evolution of markets Phase 1: Computers mimic it (Cheaper, faster) Auctions Finance ECN Advertising Amazon, ATMs, auto checkout,...
The evolution of markets Phase 2: Computers improve it (Cheaper, faster, better) Auctions Finance Advertising Source: Sandholm, T. “Expressive Commerce and Its Application to Sourcing: How We Conducted $35 Billion of Generalized Combinatorial Auctions.” AI Magazine, 28(3): 45-58, 2007 Expressive auctions for chemicals, packaging, ingredients, technology, services, medical, transport, materials,... custom Amazon, e-banking, RFID,...
Research Phase 0 Mechanism (Rules) e.g. Auction, Exchange,...
Research Phase 1 Mechanism (Rules) e.g. Auction, Exchange,...
Research Phase 1.5 Mechanism (Rules) e.g. Auction, Exchange,... Stats/ML/Opt Engine
Research Phase 2 Mechanism (Rules) e.g. Auction, Exchange,... Stats/ML/Opt Engine
Research Phase 2 Mechanism (Rules) e.g. Auction, Exchange,... Stats/ML/Opt Engine Advertising, Finance,...