Trading of Complex Commodities

Exchange Market
for Combinatorial Orders
Jenny Y. Hu
Committee:
Eugene Fink
Dmitry B. Goldgof
Sudeep Sarkar
Motivation
• Build an automated
exchange for trading
goods and services
Motivation
• Build an automated
exchange for trading
goods and services
• Combine the speed
and liquidity of the
stock exchange
Motivation
• Build an automated
exchange for trading
goods and services
• Combine the speed
and liquidity of the
stock exchange with
the flexibility of eBay
+
Outline
• Previous work
Outline
• Previous work
• Complex exchange
• Data structures
Outline
• Previous work
• Complex exchange
• Data structures
 Josh
Outline
• Previous work
• Complex exchange
• Data structures
 Josh
• Price and quality functions
• Combinatorial orders
Outline
• Previous work
Josh

• Data structures
• Price and quality functions
Jenny

• Combinatorial orders
• Complex exchange
Outline
• Previous work
Josh

• Data structures
• Price and quality functions
Jenny

• Combinatorial orders
• Complex exchange
Previous Work
• Combinatorial auctions
• Standardized exchanges
Combinatorial Auctions
• Complex commodities
• Asymmetry between
buyers and sellers
• Illiquid
Examples:
OptiBid, SBIDS, eMediator
Standardized Exchanges
• Simple commodities
• Symmetry between
buyers and sellers
• Liquid
Examples:
Stocks, Futures
Outline
• Previous work
• Complex exchange
• Data structures
• Price and quality functions
• Combinatorial orders
Complex Exchange
• Market
• Orders
• Fills
Market
All items that can be
traded form a market.
Example:
All conceivable vehicles
compose a car market.
Orders
An order is a subset of the market
along with a price limit.
Example:
Any Mustang or Corvette,
made after 1998,
for $36,000.
Buy and Sell Orders
Price
Price
Buy order
Sell order
Buy and Sell Orders
Sell order
Price
Buy order
Fills
Buy order:
Any Color
Sports Car
$36,000
Sell order:
Silver Limo $50,000
or Red Mustang $32,000
Fill:
Red Mustang
$34,000
Implemented Exchange System
Specific sell orders.
Good:
Sell a red Mustang,
made in 1999.
Bad:
Sell any color Mustang,
made before 1999.
Implemented Exchange System
Price
Price
Buy order
Sell order
Implemented Exchange System
Sell order
Price
Buy order
Outline
• Previous work
• Complex exchange
• Data structures
• Price and quality functions
• Combinatorial orders
Main Structures
• Tree of sell orders
• List of buy orders
Tree of Sell Orders
Model
Mustang
Corvette
Tree of Sell Orders
Model
Mustang
Color
Red
Black
Corvette
Color
Red White Grey
Tree of Sell Orders
Model
Mustang
Corvette
Color
Red
Black
Year
Year
1996
Red Mustang
made in 1996
Color
Red White Grey
Year
Year
Year
Tree of Sell Orders
Model
Mustang
Color
Camry
Corvette
Color
Red
Black
Red
Silver
Year
Year
Year
Year
1992
2000
1996
Red Mustang
made in 1996
Red Camry
made in 1992
Color
White Grey
Year
Year
1998
Silver Camry Grey Corvette
made in 2000 made in 1998
Trading Cycle
Process all
new orders
Re-match all
old orders
No
Stop
trading?
Yes
Outline
• Previous work
• Complex exchange
• Data structures
• Price and quality functions
• Combinatorial orders
Price Functions
The price may depend on an item.
Price
Market
Price Functions
The price may depend on an item.
Price function: I  Price.
Price
I
Market
Price Functions
The price may depend on an item.
Price function: I  Price.
Price
I
Market
Example:
Buy Toyota Tercel,
made after 1998.
Price function:
$10,000  $0.1miles.
Price Functions
The price may depend on an item.
Price
Price
I
Buy order
Sell order
Price Functions
The price may depend on an item.
Sell order
Price
Buy order
Quality Functions
The transaction quality may depend
on an item and its price.
Quality Functions
The transaction quality may depend
on an item and its price.
Price
I
Market
Quality Functions
The transaction quality may depend
on an item and its price.
Quality
Price
I
Market
Quality Functions
The transaction quality may depend
on an item and its price.
Quality
Quality function:
I  Price  Quality.
Price
I
Market
Quality Functions
The transaction quality may depend
on an item and its price.
Quality
Quality function:
I  Price  Quality.
Price
I
Market
Example:
Camry for $16,000
is better than
Tercel for $10,000.
Search for Matches
Price
Buy order
Search for Matches
• Find sell orders with
matching items
Price
Buy order
Search for Matches
• Find sell orders with
matching items
• Select orders with
matching prices
Price
Buy order
Search for Matches
Price
2
1
3
Buy order
• Find sell orders with
matching items
• Select orders with
matching prices
• Compute their quality
Search for Matches
Price
3
Buy order
• Find sell orders with
matching items
• Select orders with
matching prices
• Compute their quality
• Trade with best match
Outline
• Previous work
• Complex exchange
• Data structures
• Price and quality functions
• Combinatorial orders
Combinatorial Orders
• Disjunctions
• Conjunctions
• Chains
• Nested orders
Disjunctive Orders
Executing one of several
alternative transactions.
Disjunctive Orders
Executing one of several
alternative transactions.
or
Buy:
4Runner,
$35,000
Buy:
Sequoia,
$32,000
removed
removed
Sell:
Trailer,
$2,000
Buy:
Trailer,
$1,800
Fill:
Trailer,
$1,900
Disjunctive Orders
Executing one of several
alternative transactions.
or
Buy:
4Runner,
$35,000
Buy:
Sequoia,
$32,000
removed
removed
Sell:
Trailer,
$2,000
Buy:
Trailer,
$1,800
Fill:
Trailer,
$1,900
Disjunctive Orders
Executing one of several
alternative transactions.
or
Buy:
4Runner,
$35,000
Buy:
Sequoia,
$32,000
removed
removed
Sell:
Trailer,
$2,000
Buy:
Trailer,
$1,800
Fill:
Trailer,
$1,900
Disjunctive Orders
Executing one of several
alternative transactions.
or
Buy:
4Runner,
$35,000
Buy:
Sequoia,
$32,000
removed
removed
Sell:
Trailer,
$2,000
Buy:
Trailer,
$1,800
Fill:
Trailer,
$1,900
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• Find matches for each element
• Compute their quality
Price
5
1
3
2
Market
4
Search for Matches
• Trade with best match
Price
5
Market
Search for Matches
• Trade with best match
• Remove all elements
Price
5
Market
Search for Matches
• Trade with best match
• Remove all elements
Price
Market
Conjunctive Orders
Executing several transactions together.
and
Sell:
1 Tercel,
$9,000
Buy:
1 Echo,
$12,000
Conjunctive Orders
Executing several transactions together.
and
Buy:
1 Tercel,
$10,000
Sell:
1 Tercel,
$9,000
Buy:
1 Echo,
$12,000
Sell:
1 Echo,
$11,000
Conjunctive Orders
Executing several transactions together.
and
Buy:
1 Tercel,
$10,000
Sell:
1 Tercel,
$9,000
Fill:
1 Tercel,
$9,500
Buy:
1 Echo,
$12,000
Sell:
1 Echo,
$11,000
Fill:
1 Echo,
$11,500
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• Find matches for each element
Price
Market
Search for Matches
• If some elements have no
matches, do not trade
Price
Market
Search for Matches
• Compute the quality of matches
Price
2
1
2
1
Market
3
Search for Matches
• Compute the quality of matches
• Find the best match for each element
Price
2
3
Market
Search for Matches
• Trade with the best matches
Price
2
3
Market
Search for Matches
• Trade with the best matches
• Remove all elements
Price
Market
Chain Orders
Executing several orders in a sequence.
Buy:
Tercel,
$10,000
Sell:
Tercel,
$9,000
Buy:
Sequoia,
$30,000
Sell:
Echo,
$8,000
Fill:
Tercel,
$9,500
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Tercel,
$10,000
Sell:
Tercel,
$9,000
Buy:
Sequoia,
$30,000
Sell:
Echo,
$8,000
Fill:
Tercel,
$9,500
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Tercel,
$10,000
Sell:
Tercel,
$9,000
Buy:
Sequoia,
$30,000
Sell:
Echo,
$8,000
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Tercel,
$10,000
Sell:
Tercel,
$9,000
Fill:
Tercel,
$9,500
Sell:
Echo,
$8,000
Buy:
Sequoia,
$30,000
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Sequoia,
$30,000
Sell:
Echo,
$8,000
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Sequoia,
$30,000
Buy:
Echo,
$9,000
Sell:
Echo,
$8,000
Fill:
Echo,
$8,500
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Sequoia,
$30,000
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Sell:
Sequoia,
$28,000
Buy:
Sequoia,
$30,000
Fill:
Sequoia,
$29,000
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Buy:
Trailer,
$2,000
Chain Orders
Executing several orders in a sequence.
Sell:
Trailer,
$2,000
Buy:
Trailer,
$2,000
Fill:
Trailer,
$2,000
Nested Orders
We can nest disjunctions.
or
Buy:
Sequoia,
$30,000
Buy:
Explorer,
$27,000
Nested Orders
We can nest disjunctions,
conjunctions.
and
or
Buy:
Sequoia,
$30,000
Buy:
Explorer,
$27,000
Buy:
Trailer,
$2,000
Nested Orders
We can nest disjunctions,
conjunctions.
or
and
or
Buy:
Sequoia,
$30,000
and
Buy:
Explorer,
$27,000
Buy:
Trailer,
$2,000
Buy:
Sienna,
$25,000
Buy:
Tent,
$500
Nested Orders
We can nest disjunctions,
conjunctions, and chains.
or
Sell:
Tercel,
$9,000
Sell:
Echo,
$8,000
and
or
Buy:
Sequoia,
$30,000
and
Buy:
Explorer,
$27,000
Buy:
Trailer,
$2,000
Buy:
Sienna,
$25,000
Buy:
Tent,
$500
Main Results
• Extensions to the formal model
of complex markets
Main Results
• Extensions to the formal model
of complex markets
• Semantics of combinatorial orders
Main Results
• Extensions to the formal model
of complex markets
• Semantics of combinatorial orders
• Exchange system with price
functions, quality functions,
and combinatorial orders
Future Work
Short-term (M.S.)
• Fast search for optimal matches (Jianli)
• Live order editing
Future Work
Short-term (M.S.)
• Fast search for optimal matches (Jianli)
• Live order editing
Long-term (Ph.D.)
• Extended sell orders
• Integration with combinatorial auctions
• Distributed broker agents