A SOFTWARE ARCHITECTURE FOR CONTINUOUS
DOUBLE AUCTIONS
Jarrod Trevathan and Wayne Read
School of Mathematics, Physics and Information Technology, James Cook University
North Queensland, Australia
ABSTRACT
A Continuous Double Auction (CDA) is a powerful auction mechanism used in online share trading. A CDA has many
buyers and sellers continually exchanging items. Implementing an online CDA in software is more complicated than a
regular online auction (such as eBay). This paper describes our experiences with implementing an online CDA. We
present the model as an abstraction of the online share trading process, and discuss implementation specific details. We
describe the major software components, address web site navigation and object-oriented software design. An online
CDA database schema is presented along with a discussion regarding timing issues. We show how bids are cleared and
contrast differing matching strategies. We also investigate CDA software bidding agents, present an agent application
programming interface, and a description of different bidding agent strategies. Online CDA privacy and security
considerations are also discussed. The auction model is simple/concise, and presented as a general guide on how to
basically implement an online CDA system.
KEYWORDS
Online share trading, object-oriented design, database, timing, market clearing, security
1. INTRODUCTION
Online share trading is a popular means by which small investors access the World's share markets (e.g.,
NYSE, FTSE, ASX, etc.). A share market uses a form of auction referred to as a Continuous Double Auction
(CDA). A CDA has many buyers and many sellers continuously trading a commodity. Unlike a regular
online auction (such as those offered by eBay), a CDA never ceases, and continues to match and clear new
bids as they arrive. This entails more complicated bidding and winner determination procedures.
Furthermore, bidders must submit their bids via an intermediary (i.e., a Broker). The additional parties
involved in the auctioning process make it difficult to define an online CDA's software requirements.
Existing literature on auction software tends to be complicated. Proposed designs aspire to perform too
many auction types. An auction's architecture is referred to as generic if it can execute many auction types
(see Kumar and Feldman (1998), Wellman et al (2001)). We have previously documented an online English
auction software model in Trevathan and Read (2006a). The architecture is simple and concise, as it is not
weighed down by extraneous details pertinent to multiple auction types. In this paper, we shift our attention
to CDA software requirements and the mechanics of online share trading. We designed our own CDA for use
in online auction research. Our research focuses on market clearing algorithms, bidding agents and auction
security. The paper is motivated by the limited amount of software literature specific to CDAs.
This paper describes our experiences with implementing an online CDA. We present the software model
used, and describe implementation specific details. Our system is an abstraction of the share trading process.
This allows the CDA system to be modeled in a simple manner. The paper shows how to construct the server
using presently available software components. Bidders interact with the CDA via a web interface (similar to
an online Broker). A concise CDA database schema is presented and auction-timing issues are addressed.
We show how to match and clear bids using techniques from practice and research. We also present an
application programming interface for automated bidding agents, and provide an overview of CDA bidding
ISBN: 978-972-8924-30-0 © 2007 IADIS
328