Table of Links
Abstract and Introduction
1 The concave pro-rata game
1.1 Symmetric pure strict equilibrium
1.2 Uniqueness of equilibrium
1.3 Equilibrium payoff
2 Batched decentralized exchanges
2.1 Arbitrage
3 Conclusion and References
A Numerics
B Additional Numerics
C Relaxing strict concavity
D Rosen condition
2 Batched decentralized exchanges
In this section, we will show some basic applications of the above properties to a batched decentralized exchange, which we describe below.
Decentralized exchanges. A decentralized exchange (or DEX, for short) is a type of exchange that exists on a blockchain. Such exchanges enable any agent to trade currencies without the need for a centralized intermediary. In many cases, these exchanges are organized as constant function market makers (see, e.g., [1] for a general introduction to this type of exchange), a special type of automated market maker that uses a specific function to price assets.
Batched DEXs. A batched decentralized exchange is a DEX where the trades are batched before they are executed. Specifically, the trades are aggregated in some way (depending on the type of batching performed) and then traded ‘all together’ through the DEX, before being disaggregated and passed back to the users. Though the idea of a batched exchange has been proposed many times in different contexts (see, e.g., [4] and [13]), presently, almost all major decentralized exchanges are not batched. Recent work has suggested that batching is useful for privacy [5] and Penumbra [9] has proposed a design for a fully-private decentralized exchange which makes use of batching as a method for avoiding certain information leakage [2]. We describe a very simplified version of this proposal below, which will suffice for our discussion.
2.1 Arbitrage
A common way of analyzing markets is through the lens of arbitrage: the ability to exploit price differences in order to make essentially risk-free profit. From before, we will write g for the forward exchange function of a constant function market maker, used by the batching design presented above.
Existence. Assuming g is differentiable at 0, we can interpret g 0 (0) as the marginal amount of asset B that one would receive for a marginal amount of A. (The function g is often not differentiable at 0, but is one-sided differentiable at 0+, which suffices.) If g 0 (0) is larger than the price of an external market, say c > 0, then anyone who can directly trade with g can make risk-free profit by trading some (potentially small) amount, t > 0 of asset A for g(t) of asset B, and then sell this amount of asset B to get g(t)/c − t > 0 of profit. (One simple way to see this is true is to use the definition of a derivative on g(t)/c and send t ↓ 0.)
Optimal arbitrage. Since an agent can make risk-free profit in these cases, it is reasonable to ask: what is the maximum amount of profit an agent can make with this strategy? This is known as the optimal arbitrage problem, written:
maximize g(t) − ct
subject to t ≥ 0,
The (aggregated) arbitrage game. In the batched exchange above, arbitrageurs cannot directly trade with the constant function market maker, but must instead go through the batching process. Assuming there are n arbitrageurs competing to maximize their profit, the next question is: what are the properties of this game? Defining
f(t) = g(t) − ct,
then this game is a concave pro-rata game with function f, since the payoff (1) for player i is
Note that this is exactly the amount received from the DEX with forward exchange function g, minus the cost of trading xi with the external market, for player i. This game inherits all of the properties derived in §1. We show some numerical simulations of iterated behavior for some utility functions of this form in Appendices A and B.