From Walras’ auctioneer to continuous time double auctions: A general dynamic theory of supply and demand

One of the most time-worn statement of economic science is that “prices are such that supply matches demand”. In order to explain how this really comes about, one usually invokes a Walras auctioneer, who attempts to measure the supply and demand curves \(S(p)\) and \(D(p)\), that give the total amount of supply/demand for a given good (or asset), would the price be set to \(p\). The equilibrium price \(p^*\) is then such that \(D(p^*) = S(p^*)\), which maximizes the amount of good exchanged among agents, given the set of preferences corresponding to the current supply and demand curves(Walras 1954). In reality, the full knowledge of \(S(p)\) and \(D(p)\) is problematic, and Walras envisioned his famous *tâtonnement* process as a mean to observe the supply/demand curves. However, there is a whole aspect of the dynamics of markets that is totally absent in Walras’ framework. While it describes how a pre-existing supply and demand would result in a clearing price, it does not tell us anything about what happens *after* the transaction has taken place. In this sense, the Walrasian price is of very limited scope, since the theory ceases to apply as soon as the price is discovered.

A practical solution to match supply and demand is the so-called “order book”harris 1990(Harris 1990, Glosten 1994), where each agent posts the quantities s/he is willing to buy or sell as a function of the price \(p\). \(S(p)\) (resp. \(D(p)\)) is then the sum of all sell (buy) quantities posted at or above (below) price \(p\). At each time step, the auctioneer can then clear the market by finding the (unique) price such that \(D(p^*) = S(p^*)\). This is in fact how most financial markets worked before the advent of electronic matching engines, when market makers played the role of “active” Walrasian auctioneers, in the sense that they would themselves contribute to the order book as to insure orderly trading and stable prices (Glosten 1985, Madhavan 2000).

Although close to Walras’ idealization, order book based auctions are still confronted with a fundamental problem: agents do not necessarily reveal their intentions by placing visible orders, for fear of giving away information to the rest of the market – among other reasons (Handa 1996, Bongiovanni 2006). It is plausible that only agents with the most urgent need to buy or to sell reveal their intentions. Only close to the transaction price is the order book expected to reveal the true underlying supply and demand curves \(S(p)\) and \(D(p)\), where they however get intertwined with the orders of market makers/high frequency traders who play strategic “hide and seek” games (Handa 2003, Roşu 2006, Foucault 2013, Bouchaud 2008). The visible order book is a sort of *Potemkin village* that reveals only very little about the true underlying supply and demand^{1} and whose features strongly depend to the precise design of the market (time priority, pro-rata matching, small or large tick, presence of hidden orders, etc. – see e.g. (Kockelkoren 2010)). A direct empirical observations of the dynamics of the full supply and demand curves \(S(p)\) and \(D(p)\) is therefore difficult (except in particular markets such as Bitcoin, see below and (Donier 2015a)). But since the dynamics of prices is essentially governed by that of supply and demand, we need a plausible theoretical framework to model the (unobservable) evolution of the time dependent curves \(S(p,t)\) and \(D(p,t)\), where \(t\) is time, to account for the (observable) evolution of prices. This would allow one to construct a “Walrasian” description of market dynamics, offering a much deeper level of understanding than simply postulating ad-hoc stochastic models for prices, such as the standard (geometric) Brownian motion (Bachelier 1900, Black 1973).

There are indeed many questions, some of utmost fundamental and practical importance, which cannot be addressed within these stochastic models and require the knowledge of the underlying supply and demand structure and dynamics. One of them is *price impact* (Bouchaud 2010), i.e. how much does an additional unconditional buy/sell quantity \(Q\) move the price up/down? This is important both for practitioners who want to estimate the costs associated to the impact of their trading strategies (Almgren 2001), and for regulators who want to understand the stability of markets and the price sensitivity to large “freak” orders (see e.g. (Donier 2015a)). It is also of interest for the general understanding of price discovery and market efficiency: how much noise do “noise traders” (Kyle 1985) introduce in markets through their impact on prices? How relevant is marked to market accounting? (Amihud 1986, Caccioli 2012), etc.

In a Walrasian context, the impact \({\cal I}\) of a small buy quantity \(Q\) is easily shown to be linear in \(Q\), simply because the slopes of the supply and demand curves around the price \(p^*\) (that would prevail for \(Q=0\)) are generically non zero. More precisely, writing that \(S(p_Q) = D(p_Q) + Q\) and Taylor expanding \(S(p)\) and \(D(p)\) around \(p^*\) to first order in \(Q\), one readily obtains:^{2} \[\label{Kyle-lambda1}
S(p^*) + (p_Q - p^*)\partial_p S(p^*) = D(p^*) + (p_Q - p^*)\partial_p D(p^*) + Q \qquad \Rightarrow \qquad {\cal I}(Q)\equiv p_Q - p^* = \lambda Q\] with \(\lambda^{-1} = \partial_p S(p^*) - \partial_p D(p^*) > 0\), since one expects \(S(p)\) to be a strictly increasing function of \(p\) and \(D(p)\) a strictly decreasing function of \(p\) (see Figure 1). Whenever the derivatives of the supply and demand curves do not simultaneously vanish at \(p^*\), the price response to a perturbation must be *linear*. This intuitive result can also be justified using much more elaborate arguments, such as provided by the Kyle model (Kyle 1985), where noise traders, market makers and an informed trader interact in the market place. As shown by Kyle, the optimal strategy of market makers is to shift the price linearly in the market imbalance, with the coefficient \(\lambda\) (“Kyle’s lambda”) proportional to the volatility of the asset \(\sigma\) and inversely proportional to the typical volume \(V\) traded by the whole market.

The overwhelming activity market makers/HFT in the visible order book is a distraction from our story here: since their position quickly mean-reverts around zero, they chiefly act as intermediaries (as they should) and only weakly contribute to the supply and demand curves. See the detailed discussion in (Donier 2015) and below.↩

The notation \(\partial_p\) means that one takes the derivative with respect to the price \(p\). More generally, \(\partial_x\) means the derivative with respect to any variable \(x\).↩