a tractable combinatorial market maker using constraint generation

67
A tractable combinatorial market maker using constraint generation MIROSLAV DUDÍK, SEBASTIEN LAHAIE, DAVID M. PENNOCK Microsoft Research Thanks: David Rothschild, Dan Osherson, Arvid Wang, Jake Abernethy, Rafael Frongillo, Rob Schapire

Upload: adanne

Post on 24-Feb-2016

41 views

Category:

Documents


0 download

DESCRIPTION

A tractable combinatorial market maker using constraint generation. MIROSLAV DUDÍK, SEBASTIEN LAHAIE, DAVID M. PENNOCK Microsoft Research. Thanks: David Rothschild, Dan Osherson , Arvid Wang, Jake Abernethy, Rafael Frongillo , Rob Schapire. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A tractable combinatorial market maker using constraint generation

A tractable combinatorial market maker using constraint generation

MIROSLAV DUDÍK, SEBASTIEN LAHAIE,DAVID M. PENNOCKMicrosoft Research

Thanks: David Rothschild, Dan Osherson, Arvid Wang, Jake Abernethy, Rafael Frongillo, Rob Schapire

Page 2: A tractable combinatorial market maker using constraint generation

A combinatorial question:How pivotal was Ohio?

• Day before the election:• 83.1% chance that whoever wins Ohio will win

the election• If Obama wins Ohio, 93.9% chance he’ll win

the election• If Romney wins Ohio, 53.2% chance he’ll win

the election

Page 3: A tractable combinatorial market maker using constraint generation

More fun election-eve estimates

• 22% chance Romney will win in Iowa but Obama will win the national election

• 75.7% chance the same party will win both Michigan and Ohio

• 48.3% chance Obama gets 300 or more Electoral College votes

• 12.3% chance Obama will win between 6 and 8 states that begin with the letter M

Page 4: A tractable combinatorial market maker using constraint generation

More fun election-eve estimates

• 22% chance Romney will win in Iowa but Obama will win the national election

• 75.7% chance the same party will win both Michigan and Ohio

• 48.3% chance Obama gets 300 or more Electoral College votes

• 12.3% chance Obama will win between 6 and 8 states that begin with the letter M

Page 5: A tractable combinatorial market maker using constraint generation

Where did you get these numbers?

• A: We crowdsourced them• http://PredictWiseQ.com• A fully working beta example of our technical

paper in ACM EC’12

Page 6: A tractable combinatorial market maker using constraint generation

The wisdom of crowds

Page 7: A tractable combinatorial market maker using constraint generation

The wisdom of crowds

More:http://blog.oddhead.com/2007/01/04/the-wisdom-of-the-probabilitysports-crowd/http://www.overcomingbias.com/2007/02/how_and_when_to.html

Ignore crowd:if you’re in the99.7th percentile

Page 8: A tractable combinatorial market maker using constraint generation

Can we do better?

• model it - baseline• model it - baseline++• poll a crowd - mTurk• pay a crowd - probSports contest• pay a crowd - Vegas market• pay a crowd - TradeSports market

• guess

“Prediction market”

Page 9: A tractable combinatorial market maker using constraint generation

An ExamplePrediction

• A random variable, e.g.

Will US go into recession in 2013?(Y/N)

Page 10: A tractable combinatorial market maker using constraint generation

An ExamplePrediction Market

• A random variable, e.g.

• Turned into a financial instrument payoff = realized value of variable

$1 if $0 ifI am entitled to:

Will US go into recession in 2013?(Y/N)

Recessionin 2013

No Recessionin 2013

Page 11: A tractable combinatorial market maker using constraint generation

2012

Nov

embe

r 28

5:49

a.m

. ET

Page 12: A tractable combinatorial market maker using constraint generation

2012

Nov

embe

r 28

5:49

a.m

. ET

Between 17.3% and 20.7% chance

Page 13: A tractable combinatorial market maker using constraint generation
Page 14: A tractable combinatorial market maker using constraint generation

http://www.predictwise.com/maps/2012president

11-05-2012 10:09AM

Page 15: A tractable combinatorial market maker using constraint generation

Design for Prediction

• Goals for trade– Efficiency (gains)– Inidiv. rationality– Budget balance– Revenue– Comp. complexity

• Equilibrium– General, Nash, ...

Page 16: A tractable combinatorial market maker using constraint generation

Design for Prediction

• Goals for trade– Efficiency (gains)– Inidiv. rationality– Budget balance– Revenue– Comp. complexity

• Equilibrium– General, Nash, ...

• Goals for prediction– Info aggregation– 1. Liquidity– 2. Expressiveness– Bounded budget– Indiv. rationality– Comp. complexity

• Equilibrium– Rational expectations

Competes with:experts, scoring rules, opinion pools, ML/stats, polls, Delphi

Page 17: A tractable combinatorial market maker using constraint generation

Design for Prediction

• Goals for trade– Efficiency (gains)– Inidiv. rationality– Budget balance– Revenue– Comp. complexity

• Equilibrium– General, Nash, ...

• Goals for prediction– Info aggregation– 1. Liquidity– 2. Expressiveness– Bounded budget– Indiv. rationality– Comp. complexity

• Equilibrium– Rational expectations

Competes with:experts, scoring rules, opinion pools, ML/stats, polls, Delphi

Page 18: A tractable combinatorial market maker using constraint generation

Why Liquidity?

Page 19: A tractable combinatorial market maker using constraint generation

Why Liquidity?

Low liquidity takes the prediction out of marketshttp://blog.oddhead.com/2010/07/08/why-automated-market-makers/

Between 0.2% and 99.8% chance

Page 20: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

Page 21: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

Page 22: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

Page 23: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

Page 24: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

Page 25: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

• Call option and put options are redundant• Range bets require four trades

(“butterfly spread”)• Bid to buy call option @strike 15 can’t match

with ask to sell @strike 10• Can’t set own strike• Bottom line: Lacks expressiveness

Page 26: A tractable combinatorial market maker using constraint generation

Why Expressiveness?

• Dem Pres, Dem Senate, Dem HouseDem Pres, Dem Senate, GOP HouseDem Pres, GOP Senate, Dem HouseDem Pres, GOP Senate, GOP House...

• Dem PresDem HouseDem wins >=270 electoral votesDem wins >=280 electoral votes...

Page 27: A tractable combinatorial market maker using constraint generation

Industry Standard

• Ignore relationships:Treat them as independent markets

• Las Vegas sports bettingKentucky horseracingWall Street stock optionsHigh Street spread betting

Page 28: A tractable combinatorial market maker using constraint generation

NYSE 1926

http://online.wsj.com/article/SB10001424052748704858404576134372454343538.html

Page 29: A tractable combinatorial market maker using constraint generation

NYSE 1987

http://online.wsj.com/article/SB10001424052748704858404576134372454343538.html

Page 30: A tractable combinatorial market maker using constraint generation

NYSE 2006-2011

•2011 Deutsche Börse AG

•2007 Euronext

•2006 Archipelago, ipo

Page 31: A tractable combinatorial market maker using constraint generation

NYSE 7pm Sep 10, 2012

Page 32: A tractable combinatorial market maker using constraint generation

New Markets – Same CDA

Page 33: A tractable combinatorial market maker using constraint generation

A Better Way(Or,... Bringing trading into digital age)

• Expressiveness– Linear programming– Bossaerts, Fine, Ledyard: Combined Value Trading

Fortnow et al.: Betting Boolean Style– http://bit.ly/multipm

• Expressiveness + Liquidity– Automated market maker– Always quote a price on anything– Downside: requires subsidy/risk

Page 34: A tractable combinatorial market maker using constraint generation

Getting Greedy

• Design a marketfor information on exponentially many things

• “Combinatorial prediction market”

Page 35: A tractable combinatorial market maker using constraint generation

Combinatorial securities:More information, more fun

• Payoff is function of common variables,e.g. 50 states elect Dem or Rep

Page 36: A tractable combinatorial market maker using constraint generation

Combinatorial securities:More information, more fun

• Dem will win California

Page 37: A tractable combinatorial market maker using constraint generation

Combinatorial securities:More information, more fun

• Dem will lose FL but win election• Dem will win >8 of 10 Northeastern states• Same party will win OH & PA

OH

PA

Page 38: A tractable combinatorial market maker using constraint generation

Combinatorial securities:More information, more fun

• There will be a path of blue from Canada to Mexico

OR

WA

Page 39: A tractable combinatorial market maker using constraint generation

Some Counting

• 54 “states”: 48 + DC + Maine (2), Nebraska (3)• 254 = 18 quadrillion possible outcomes• 2254 1018008915383333485 distinct predictions

More than a googol, less than a googolplex• NOT independent

Page 40: A tractable combinatorial market maker using constraint generation

Overview:Complexity results

Permutations Boolean Taxonomy

General Pair Subset General 2-clause RestrictTourney

General Tree

Auction-eer

NP-hardEC’07

NP-hardEC’07

PolyEC’07

NP-hardDSS’05

co-NP-completeDSS’05

? ? ?

Market Maker(LMSR)

#P-hardEC’08

#P-hardEC’08

#P-hardEC’08

#P-hardEC’08ApproxSTOC’08EC’12

#P-hardEC’08

PolySTOC’08

#P-hardAAMAS‘09

PolyAAMAS‘09

Page 41: A tractable combinatorial market maker using constraint generation

A research methodology

Design Build Analyze

HSXNFTSWSEXFXPS

Page 42: A tractable combinatorial market maker using constraint generation

Examples

Design

• Prediction markets– Dynamic parimutuel– Combinatorial bids– Combinatorial

outcomes– Shared scoring rules– Linear programming

backbone• Ad auctions• Spam incentives

Build Analyze

• Computational complexity

• Does money matter?

• Equilibrium analysis

• Wisdom of crowds: Combining experts

• Practical lessons

• Predictalot• Yoopick• Y!/O Buzz• Centmail• Pictcha• Yootles

Page 43: A tractable combinatorial market maker using constraint generation

http://PredictWiseQ.com

Page 44: A tractable combinatorial market maker using constraint generation

http://PredictWiseQ.com

Page 45: A tractable combinatorial market maker using constraint generation

Automated Market MakerExchange Market Maker

Independent TractableNo riskNo info propagationIndustry standard

TractableExponential loss boundNo info propagation

Combinatorial NP-hardNo riskFull info propagationMajor liquidity problem

#P-hardLinear/Const loss boundFull info propagation

• Info propagation Reward traders for information, not computational power

Page 46: A tractable combinatorial market maker using constraint generation

Automated Market MakerExchange Market Maker

Independent TractableNo riskNo info propagationIndustry standard

TractableExponential loss boundNo info propagation

Our approach TractableGood loss boundSome info propagation

Combinatorial NP-hardNo riskFull info propagationMajor liquidity problem

#P-hardLinear/Const loss boundFull info propagation

• Info propagation Reward traders for information, not computational power

Page 47: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

A&B’&C

A&B&C

Independent markets

Page 48: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

A&B’&C

A&B&C

Independent markets

Prices p

Page 49: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

A&B’&C

A&B&C

Independent markets

Page 50: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

A&B’&C

A&B&C B = 0.6

A = 0.8C = 0.9

Independent markets

Page 51: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

0.6 B = 0.6

0.8 A = 0.8

A&B’&C

A&B&C

0.9 C = 0.9

Page 52: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

0.6 B = 0.6

0.4

0.8 A = 0.8

0.8A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 53: A tractable combinatorial market maker using constraint generation

Consistent pricing

0

1

0 1

0.6 B = 0.6

0.4

0.8 A = 0.8

0.8A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 54: A tractable combinatorial market maker using constraint generation

Approximate pricing

0

1

0 1

0.6 B = 0.6

0.4

0.8 A = 0.8

0.8A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 55: A tractable combinatorial market maker using constraint generation

Approximate pricing

0

1

0 1

0.6 B = 0.6

0.4

Prices p0.8 A = 0.8

0.8A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 56: A tractable combinatorial market maker using constraint generation

Approximate pricing

0

1

0 1

0.5 B = 0.5

0.5

Buy NotBPrices p0.8 A = 0.8

0.8A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 57: A tractable combinatorial market maker using constraint generation

Approximate pricing

0

1

0 1

0.5 B = 0.5

0.5

Prices p0.8 A = 0.8

0.8A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 58: A tractable combinatorial market maker using constraint generation

Approximate pricing

0

1

0 1

0.8

0.5

A = 0.8

B = 0.55

0.5 0.8

Prices p

A&B’&C

A&B&C

0.9 C = 0.9

0.9

Page 59: A tractable combinatorial market maker using constraint generation

For Election

• Create 50 states – initialize with prior• Create all groups of 2 – init as indep• For conjunctions of 3 or more, group with it

opposite disjunction:A&B&C, A’|B’|C’

• Each group is indep MM – fast• In parallel:

Generate, find, and fix constraints

Page 60: A tractable combinatorial market maker using constraint generation

Microsoft Research, New York City

Arbitrage and Constraints

• Possibility of risk-free profit:

• Execute trades:– Buy x shares of A– Buy x shares of B– Sell x shares of A B

Prob[A] + Prob[B] ≥ Prob[A B]

Price[A] + Price[B] − Price[A B] ≤ 0

September 26, 2012

Page 61: A tractable combinatorial market maker using constraint generation

Constraints

• Clique lower boundP(L1|...|Lm) ≥ΣC P(Li) –ΣC P(Li&Lj)

• Spanning tree upper boundP(L1|...|Lm) ≤Σ P(Li) –ΣT P(Li&Lj)

• Threshold constraints TBA• Choosing constraints is key!

– Depends on bets (unlike Monte Carlo)– An art

Page 62: A tractable combinatorial market maker using constraint generation

Does it work?

Tested on over 300K complex predictions from Princeton study

Budget

10 States

Page 63: A tractable combinatorial market maker using constraint generation

Does it work?

Tested on over 300K complex predictions from Princeton study

Budget

Log Score

50 States

Page 64: A tractable combinatorial market maker using constraint generation

Does it work?

Tested on over 300K complex predictions from Princeton study

Revenue

Page 65: A tractable combinatorial market maker using constraint generation

No really, does it work?

• http://PredictWiseQ.com

Page 66: A tractable combinatorial market maker using constraint generation

Predictalot alpha

Page 67: A tractable combinatorial market maker using constraint generation

Further reading

Blog post on PredictWiseQhttp://blog.oddhead.com/2012/10/06/predictwiseq/

Gory details: What is (and what good is) a combinatorialprediction market?http://bit.ly/combopm

Guest post on Freakonomicshttp://bit.ly/combopmfreak

Our paper in ACM EC’12http://research.microsoft.com/apps/pubs/default.aspx?id=167977