Human quotes in a CDA versus a machine-run constant-product AMM.
Private values pin down the efficient allocation.
Findings:
Summary thoughts:
or: how one might want to frame the paper
A → B: buy q units
\(p(q)=\dfrac{xy}{(x-q)^2}\)
\(C(q)=\int_0^q p(z)\,dz=\dfrac{yq}{x-q}\)
In this experiment:
or: I get the big picture, but some nuances matter and looking after them would strengthen the interpretation of the findings
A simplified setting
\[\overline{W} = \sum_{i=1}^{N} (v_i - c_i) = \sum_{i=1}^{N} (v_i - P^*) + \sum_{i=1}^{N} (P^* - c_i).\]
Example 1: One buyer \(v\), one seller \(c\), with \(v - P^* > P^* - c\) and \(v>P^*>c\)
\(\to\) in an AMM there can be fewer than \(N\) who trade because of their private values
\(\to\) that can't happen in a CDA
Example 2: two buyers \(v_1 > v_2 > P^*\), two sellers \(c_1 < c_2 < P^*\).
\(\to\) for each session, should specify whether it could achieve full efficiency based on value draw
Prices
Four trades, two buys and two sells but six price paths. \[A = \overline{\pi}_{0}, ~A' = \overline{\pi}_{1}, ~B = \underline{\pi}_{0},~ B' = \underline{\pi}_{-1}\]
| order | imbalance path | prices | average |
|---|---|---|---|
| SSBB | \(0,-1,-2,-1,0\) | \(B,\ B',\ B',\ B\) | \(\tfrac{1}{2}(B+B')\) |
| SBSB | \(0,-1,0,-1,0\) | \(B,\ B,\ B,\ B\) | \(B\) |
| SBBS | \(0,-1,0,1,0\) | \(B,\ B,\ A,\ A\) | \(\tfrac{1}{2}(A+B)\) |
| BSSB | \(0,1,0,-1,0\) | \(A,\ A,\ B,\ B\) | \(\tfrac{1}{2}(A+B)\) |
| BSBS | \(0,1,0,1,0\) | \(A,\ A,\ A,\ A\) | \(A\) |
| BBSS | \(0,1,2,1,0\) | \(A,\ A',\ A',\ A\) | \(\tfrac{1}{2}(A+A')\) |
Ranking: \[ \tfrac{1}{2}(B+B') < B < P^\ast < \tfrac{1}{2}(A+B) < A < \tfrac{1}{2}(A+A'). \]
Four trades, two buys and two sells, but six price paths.
Illustration: default pool depth \(a=17.39\), \(P^\ast=100\), no fees. \[ A=\overline{\pi}_0=106.10,\quad A'=\overline{\pi}_1=119.89,\quad B=\underline{\pi}_0=94.56,\quad B'=\underline{\pi}_{-1}=84.81. \]
| order | imbalance path | prices | average | GD | GAD |
|---|---|---|---|---|---|
| SSBB | \(0,-1,-2,-1,0\) | \(B,\ B',\ B',\ B\) | \(\tfrac12(B+B')\) | −10.45% | 11.67% |
| SBSB | \(0,-1,0,-1,0\) | \(B,\ B,\ B,\ B\) | \(B\) | −5.44% | 5.75% |
| SBBS | \(0,-1,0,1,0\) | \(B,\ B,\ A,\ A\) | \(\tfrac12(A+B)\) | +0.17% | 5.93% |
| BSSB | \(0,1,0,-1,0\) | \(A,\ A,\ B,\ B\) | \(\tfrac12(A+B)\) | +0.17% | 5.93% |
| BSBS | \(0,1,0,1,0\) | \(A,\ A,\ A,\ A\) | \(A\) | +6.10% | 6.10% |
| BBSS | \(0,1,2,1,0\) | \(A,\ A',\ A',\ A\) | \(\tfrac12(A+A')\) | +12.79% | 12.79% |
GD = geometric signed deviation; GAD = geometric absolute deviation from \(P^\ast\), using the paper’s definitions. Calculated from unrounded prices.
Ranking of arithmetic averages: \[ \tfrac12(B+B') < B < P^\ast < \tfrac12(A+B) < A < \tfrac12(A+A'). \]
it's fine to discuss fees but a bit more background is needed
buy & hold
AMM LP: concave relative to buy & hold
Asset price change
Portfolio value change
Fees compensate LPs for mechanical liquidity provision and trading losses.
Impermanent loss measures underperformance versus holding after a price move.
Fees and depth interact through liquidity supply.
Here, pool size is exogenous.
A partial-equilibrium fee experiment.
Rule of Thumb: with competitive liquidity provision & adverse selection the trading fee is \(2\times\) price impact (e.g., Malinova & Park ("Learning from DeFi" 2024)