A double auction is a process of buying and selling goods with multiple sellers and multiple buyers.[1] Potential buyers submit their bids and potential sellers submit their ask prices to the market institution, and then the market institution chooses some price p that clears the market: all the sellers who asked less than p sell and all buyers who bid more than p buy at this price p. Buyers and sellers that bid or ask for exactly p are also included. A common example of a double auction is stock exchange.
As well as their direct interest, double auctions are reminiscent of Walrasian auction and have been used as a tool to study the determination of prices in ordinary markets. A double auction is also possible without any exchange of currency in barter trade. A barter double auction is an auction where every participant has a demand and an offer consisting of multiple attributes and no money is involved.[2] For the mathematical modelling of satisfaction level Euclidean distance is used, where the offer and demand are treated as vectors.
A simple example of a double auction is a bilateral trade scenario, in which there is a single seller who values his product as S (e.g. the cost of producing the product), and a single buyer who values that product as B.
From an economist's perspective, the interesting problem is to find a competitive equilibrium - a situation in which the supply equals the demand.
In the simple bilateral trade scenario, if B≥S then any price in the range [''S'',''B''] is an equilibrium price, since both the supply and the demand equal 1. Any price below S is not an equilibrium price since there is an excess demand, and any price above B is not an equilibrium price since there is an excess supply. When B<S, any price in the range (B,S) is an equilibrium price, since both the supply and the demand equal 0 (the price is too high for the buyer and too low for the seller).
In a more general double auction, in which there are many sellers each of whom holds a single unit and many buyers each of whom wants a single unit, an equilibrium price can be found using the natural ordering of the buyers and sellers:
Every price in the range [max(''s<sub>k</sub>'',''b<sub>k+1</sub>''),min(''b<sub>k</sub>'',''s<sub>k+1</sub>'')] is an equilibrium price, since both demand and supply are k. It is easier to see this by considering the range of equilibrium prices in each of the 4 possible cases (note that by definition of k, bk+1 < sk+1):
sk+1 > bk | sk+1 ≤ bk | ||
bk+1 < sk | [''s<sub>k</sub>'',''b<sub>k</sub>''] | [''s<sub>k</sub>'',''s<sub>k+1</sub>''] | |
bk+1 ≥ sk | [''b<sub>k+1</sub>'',''b<sub>k</sub>''] | [''b<sub>k+1</sub>'',''s<sub>k+1</sub>''] |
A double auction can be analyzed as a game. Players are buyers and sellers. Their strategies are bids for buyers and ask prices for sellers (that depend on the valuations of buyers and sellers). Payoffs depend on the price of the transaction (determined by the auctioneer) and the valuation of a player. The interesting problem is to find a Nash equilibrium - a situation in which no trader has an incentive to unilaterally change their bid/ask price.
Consider the bilateral trade scenario, in which the buyer submits a bid of b and the seller submits s.
Suppose an auctioneer sets the price in the following way:
The utility of the buyer is:
The utility of the seller is:
In a complete information case when the valuations are common knowledge to both parties, it can be shown that the continuum of pure strategy efficient Nash equilibriums exists with
b=s=p\in[B,S].
In an incomplete information (asymmetric information) case a buyer and a seller know only their own valuations. Suppose that these valuations are uniformly distributed over the same interval. Then it can be shown that such a game has a Bayesian Nash equilibrium with linear strategies. That is, there is an equilibrium when both players' bids are some linear functions of their valuations. It is also brings higher expected gains for the players than any other Bayesian Nash equilibrium (see Myerson–Satterthwaite theorem).
How should the auctioneer determine the trading price? An ideal mechanism would satisfy the following properties:
1. Individual Rationality (IR): no person should lose from joining the auction. In particular, for every trading buyer: p ≤ B, and for every trading seller: p ≥ S.
2. Balanced Budget (BB) comes in two flavors:
3. Incentive compatibility (IC) also called truthfulness or strategy-proofness: also comes in two flavors (when unqualified IC generally means the stronger version):
4. Economic efficiency (EE): the total social welfare (the sum of the values of all players) should be the best possible. In particular, this means that, after all trading has completed, the items should be in the hands of those that value them the most.
Unfortunately, it is not possible to achieve all these requirements in the same mechanism (see Myerson–Satterthwaite theorem). But there are mechanisms that satisfy some of them.
The mechanism described in the previous section can be generalized to n players in the following way.
This mechanism is:
A VCG mechanism is a generic mechanism which optimizes the social welfare while achieving truthfulness. It does so by making each agent pay for the "damage" that his desires cause to society.
In the simple bilateral trade setting, this translates to the following mechanism:
This mechanism is:
In the general double auction setting, the mechanism orders the buyers and sellers in the Natural ordering and finds the breakeven index k. Then the first k sellers give the item to the first k buyers. Each buyer pays the lowest equilibrium price max(sk,bk+1), and each seller receives the highest equilibrium price min(bk,sk+1), as in the following table:
sk+1 > bk | sk+1 ≤ bk | ||
bk+1 < sk | Each buyer pays sk and each seller gets bk | Each buyer pays sk and each seller gets sk+1 | |
bk+1 ≥ sk | Each buyer pays bk+1 and each seller gets bk | Each buyer pays bk+1 and each seller gets sk+1 |
Similar to the bilateral trade scenario, the mechanism is IR, IC and EE (optimizes the social welfare), but it is not BB - the auctioneer subsidizes the trade.
The uniqueness-of-prices theorem[3] implies that this subsidy problem is inevitable - any truthful mechanism that optimizes the social welfare will have the same prices (up to a function independent of the ask/bid prices of each trader). If we want to keep the mechanism truthful while not having to subsidize the trade, we must compromise on efficiency and implement a less-than-optimal social welfare function.
The following mechanism gives up a single deal in order to maintain truthfulness:[4]
This mechanism is:
If we tried to make this mechanism efficient by letting the kth buyer and seller trade, this would make it untruthful because then they will have an incentive to change their prices.
Although the social welfare is not optimal, it is near-optimal, since the forbidden deal is the least favorable deal. Hence the gain-from-trade is at least
1-1/k
Note that in the bilateral trade setting, k=1 and we give up the only efficient deal, so there is no trade at all and the gain-from-trade is 0. This is in accordance with the Myerson-Satterthwaite theorem.
Babaioff, Nisan and Pavlov[5] generalised the trade reduction mechanism to a market that is spatially-distributed, i.e. the buyers and sellers are in several different locations, and some units of the good may have to be transported between these locations. The cost of transport is thus added to the cost of production of the sellers.
Mcafee[4] presented the following variation on the trade-reduction mechanism:
Similarly to the trade-reduction mechanism, this mechanism is IR, IC, WBB but not SBB (in the second case) and not EE (in the second case). Assuming that the values of the buyers and sellers are all bounded above zero, McAfee proves that the loss of trade efficiency is bounded by 1/min(num-of-buyers,num-of-sellers).[4]
Given a p∈[0,1], after the bids are submitted, use the Trade reduction mechanism with probability p and the VCG mechanism with probability 1-p.[6] This mechanism inherits all the properties of its parents, i.e. it is IR and IC. The parameter p controls the tradeoff between EE and BB:
In a variant of this mechanism,[6] after the bids are submitted, the k-1 cheap sellers trade with the k-1 expensive buyers; each of them receives/pays the expected payment of the original mechanism, i.e. each buyer pays
pbk+(1-p)max{(bk+1,sk)}
psk+(1-p)min{(sk+1,bk)}
max{(bk+1,sk)}
min{(sk+1,bk)}
Segal-Halevi, Hassidim and Aumann[7] present a trade-reduction mechanism that is SBB, in addition to being IR and IC and attains (1-1/k) of the optimal GFT.
Babaioff and Nisan[6] provide both a theoretic comparison and an empirical comparison of the various mechanisms.
Dütting, Roughgarden and Talgam-Cohen[8] proposed a modular approach to the design of double auctions. Their framework views double auctions as being composed of ranking algorithms for each side of the market and a composition rule, and can be applied to complex markets. An immediate consequence of this framework is that classic double auction mechanisms such as the trade reduction mechanism are not only strategyproof but also weakly group-strategyproof (meaning that no group of buyers and sellers can benefit by a joint misreport of their preferences).
The basic double auction model involves two categories of traders: buyers and sellers. Babaioff and Nisan extended it to handle a supply chain - a chain of markets, in which the buyers in one market become sellers in the next market. E.g., farmers sell fruits in the fruit market; juice makers buy fruits in the fruit market, make juice and sell it in the juice market to consumers. Babaioff and Walsh[9] extended it to handle markets in an arbitrary directed acyclic graph.
Gilor, Gonen and Segal-Halevi[10] study a multilateral market, with a set G of agent categories. he market is characterized by an integer vector r of size |G|, called the recipe of the market. Each trade in the market involves rg agents of category g, for each g in G. The standard double auction market is a special case in which there are two categories (buyers and sellers), and the recipe is r=(1,1). They present algorithms that are SBB, IC, IR and attain (1-1/k) of the optimal GFT. One algorithm is a direct revelation mechanism based on trade-reduction, and the other is an ascending-price mechanism that is not only IC but also obviously IC.
Gilor, Gonen and Segal-Halevi[11] study a more general multilateral market, in which there are multiple different recipes, arranged as a forest, where each recipe is a path from a root to a leaf. They present randomized ascending-price mechanisms that are universally IR, obviously-IC, SBB, and attain an asymptotically-optimal GFT.