1 / 43

Trading of Complex Commodities

Trading of Complex Commodities. Josh Johnson. Committee: Eugene Fink Lawrence Hall Srinivas Katkoori. Introduction. Motivation Build an automated exchange for trading goods and services. Introduction. Motivation Build an automated exchange for trading

Télécharger la présentation

Trading of Complex Commodities

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Trading of Complex Commodities Josh Johnson Committee: Eugene Fink Lawrence Hall Srinivas Katkoori

  2. Introduction • Motivation • Build an automated • exchange for trading • goods and services

  3. Introduction • Motivation • Build an automated • exchange for trading • goods and services • Combine the speed • and liquidity of the • stock exchange

  4. Introduction • Motivation • Build an automated • exchange for trading • goods and services • Combine the speed • and liquidity of the • stock exchange with • the flexibility of eBay +

  5. Outline • Main concepts • Previous work • Data structures • Performance

  6. Concepts • Market • Orders • Matches • Fills

  7. Market All items that can be traded form amarket. Example: All conceivable vehicles compose a car market.

  8. Order example: Any Mustang or Corvette; Mustang for $38,000 or Corvette for $40,000 . Orders An order is asubsetof the market along with aprice function. , -$1 for every ten miles.

  9. Buy and Sell Orders Price Price Buy order Sell order

  10. Matching A buy order matches a sell order if: item buy-region  sell-region, buy-price(item) sell-price(item).

  11. Matching Orders Sell order Price Buy order

  12. Fill: Red Mustang $34,000 Fills Buy order: Any Color Sports Car $36,000 Sell order: Silver Limo $50,000 or Red Mustang $32,000

  13. Implemented Exchange System Specific sell orders Good: Sell a red Mustang made in 1999. Bad: Sell any color Mustang made before 1999.

  14. Outline • Main concepts • Previous work • Data structures • Performance

  15. Previous Work • Auctions • Exchanges

  16. Auctions • Complex commodities • Asymmetry between • buyers and sellers • Illiquid • Examples: • eBay, FreeMarkets, eMediator

  17. Exchanges • Simple commodities • Symmetry between • buyers and sellers • Liquid • Examples: • Stocks, Futures

  18. Outline • Main concepts • Previous work • Data structures • Performance

  19. Main Structures • Tree of sell orders • List of buy orders

  20. Tree of Sell Orders Model Mustang Corvette

  21. Tree of Sell Orders Model Mustang Corvette Color Color Red Black Red White Grey

  22. Tree of Sell Orders Model Mustang Corvette Color Color Red Black Red White Grey Year Year Year Year Year 1996 Red Mustang made in 1996

  23. Camry Color Red Silver Grey Year Year Year 1992 2000 1998 Red Camry made in 1992 Silver Camry made in 2000 Grey Corvette made in 1998 Tree of Sell Orders Model Mustang Corvette Color Color Red Black White Year Year Year 1996 Red Mustang made in 1996

  24. Node in the Tree Each node contains a red-black tree foroneattribute. If there arekvalues for an attribute, search within the node takes O(lg k).

  25. Matching a Buy Order LetSbe the number of sell orders andmbe the number of matches. Best case:Time = O(m + lg S) Worse case:Time = O(m lg S) Worst case: Time = O(S)

  26. Trading Cycle Process all new orders Re-match all old orders Stop trading? No Yes

  27. Processing Steps Process Re-match Stop? For every new order: If it is a buy order, then search for matches; if not filled, add it to the list. If it is a sell order, then insert it into the tree.

  28. Processing Time Process Re-match LetPbe the number of old orders, Nbe the number of new orders, and mbe the number of matches per order. Best case:Time = O(N (m +lg P)) Worse case:Time = O(N m lg P)) Stop?

  29. Re-Matching Steps Process Re-match Stop? For each buy order, search for matches amongnewsell orders.

  30. Re-Matching Time Process Re-match Let Pbe the number of old orders, Nbe the number of new orders, and m be the number of matches per order. Best case: Time = O(P (m +lg N)) Worse case: Time = O(P m lg N)) Stop?

  31. Outline • Main concepts • Previous work • Data structures • Performance

  32. Performance Extensive empirical evaluation: • 400 MHz CPU • 1,024 Mbyte memory • 100 MHz bus

  33. Control Variables • Number of old orders • Number of new orders • Length of item description

  34. Measurements • Processing time • Re-matching time • Response time • Throughput

  35. Process Processing Time Re-match Stop? Logarithmic Scale Linear Scale 80 70 60 50 40 30 20 10 0 100 10 time (sec) 1 0.1 0.01 1 10 100 1000 10000 100000 50K 100K 150K 200K 250K number of old orders number of old orders 256,8,192, and 262,144 new orders

  36. Process Re-Matching Time Re-match Stop? Logarithmic Scale Linear Scale 80 70 60 50 40 30 20 10 0 100 10 time (sec) 1 0.1 0.01 1 10 100 1000 10000 100000 50K 100K 150K 200K 250K number of old orders number of old orders 256,8,192, and 262,144 new orders

  37. Process Total Time Re-match Stop? Logarithmic Scale Linear Scale 80 70 60 50 40 30 20 10 0 100 10 time (sec) 1 0.1 0.01 1 10 100 1000 10000 100000 50K 100K 150K 200K 250K number of old orders number of old orders 256,8,192, and 262,144 new orders

  38. Response Time: Buy Orders Logarithmic Scale Linear Scale 80 70 60 50 40 30 20 10 0 100 10 time (sec) 1 0.1 0.01 1 10 100 1000 10000 100000 50K 100K 150K 200K 250K number of old orders number of old orders 256,8,192, and 262,144 new orders

  39. Response Time: Sell Orders Logarithmic Scale Linear Scale 80 70 60 50 40 30 20 10 0 100 10 time (sec) 1 0.1 0.01 1 10 100 1000 10000 100000 50K 100K 150K 200K 250K number of old orders number of old orders 256,8,192, and 262,144 new orders

  40. Throughput Market with ten attributes: 5,600 new orders per second.

  41. Throughput Market with ten attributes: 5,600 new orders per second. 100000 10000 1000 100 10 orders per second 1 3 10 30 100 number of attributes

  42. Main Results • Formal model of complex markets • Exchange system for limited order • semantics • Evaluation of its performance

  43. Future Work • Short-term • Reducing response time • Improving data structures • Long-term • Extend order semantics • Search for optimal matches • Use multiple CPUs

More Related