公式
首先,在执行第 n-1 区块的交易后,我们假设此时 AMM 的 xreserve 和 yreserve 值分别为 xn-1 和 yn-1。
接下来执行第 n 区块的交易,X-Pool 和 Y-Pool 分别向 AMM 输入 xrate 和 yrate,命:
因为 xrate 和 yrate 非常微小,且区块的交易 AMM 遵循恒定乘积做市商,我们可以得到,
化简,
在得到 xout,n 和 yout,n 的值后,我们进一步可以获得 n 区块的交易后 AMM 的 xreserve 和 yreserve 值 xn 和 yn,
通过观察,我们发现 xn*yn=xn-1*yn-1,这正好符合 AMM 的循恒定乘积做市的前提要求。
令, xn*yn=xn-1*yn-1=…= x1*y1=x0*y0=k,这是一个常数。
分式线性递归
先对 xn 求得一般公式,并获得 xammEnd=xN 的值,yn 同理。
yn 的分式线性递归表达式如下:
解
首先,若 yin 等于 0,xin 不等于 0,则
而
计算得到,
而,
xin 等于 0,yin 不等于 0 时,讨论同上。
若 xin 和 yin 都不等于 0,对于一般的分式线性递归,我们可以采用不动点的方法求解。
进一步计算,
极限
TWAMM 的基本假设是将长期大额订单分解为无限多个无限小的虚拟订单,也即是 N 可以取无穷大,这时候可以获得 xN 的极限值。
其中,
相似的,
最后,经过简单的验证 xammEnd*yammEnd=xammStart*yammStart=k, 依然满足 AMM 的恒定乘积。
至此,我们完成了 TWAMM 的数学原理严格的论证和解释,并得到了与 「时间加权做市商 TWAMM」 一文完全相同的结论。