如何在 Uniswap V3 中计算增加流动性的存款金额
How to calculate Deposit Amounts for Adding Liquidity within Uniswap V3
在为 Uniswap V3 中的新池添加流动性的同时,我正在尝试计算任何给定货币对的 'Deposit Amounts' 的公式。
例如,我们取 ETH/USDC
对
现价:2172.05
设置价格范围 -20% & +20%
最低价格:1747.7
最高价:2612.4
以太坊:0.394064 ($854.888)
USDC:1000(1000 美元)
ETH美元金额是如何计算的,公式是什么? (Uniswap 是如何让 ETH 达到 854.888 美元的???)
ps:我看过 Uniswap V3 白皮书 https://uniswap.org/whitepaper-v3.pdf,但需要外行一步步解释。干杯!
额外
我一直在阅读以下文章,答案就在下面的公式中:
资料来源:uniswap-deep-dive-into-v3-technical-white-paper
这个问题对于 SO 来说可能有点跑题,但我相信它无论如何都会对人们有用。这是我的答案...
Uniswap 使用预言机价格为您提供了您输入的 ETH 金额的美元价值,只是为了方便起见。不是本次存款操作的参数。
这里只有3个参数:
- 资产A金额
- 资产B金额
- 价格范围
资产 A(在您的实例中为 ETH)与资产 B(在您的实例中为 USDC)的比率决定了平衡点。例如,如果你存入 1 Ether 和 1000 USDC,那么平衡点将是 ETH = 1000 USDC
。最后,您定义价格范围以指定您希望您的存款发挥作用的范围。通过限制存款的价格范围,您可以在给定范围内提高资金(存款)的效率。这涉及到相当多的数学来解释,但让我试着简单地解释一下:基本上,自动做市商使用这个等式:
a * b = k
。这意味着当 a
变为无穷大时 b
变为零,反之亦然。因此 'liquidity' 从 0 到无穷大均匀分布。当您改为设置价格范围时,您 'concentrate' 范围内的流动性,以牺牲范围外的流动性为代价。从而提高资本效率。
完整的解决方案已添加到 excel sheet 中:
在为 Uniswap V3 中的新池添加流动性的同时,我正在尝试计算任何给定货币对的 'Deposit Amounts' 的公式。
例如,我们取 ETH/USDC
对现价:2172.05 设置价格范围 -20% & +20%
最低价格:1747.7 最高价:2612.4
以太坊:0.394064 ($854.888) USDC:1000(1000 美元)
ETH美元金额是如何计算的,公式是什么? (Uniswap 是如何让 ETH 达到 854.888 美元的???)
ps:我看过 Uniswap V3 白皮书 https://uniswap.org/whitepaper-v3.pdf,但需要外行一步步解释。干杯!
额外
我一直在阅读以下文章,答案就在下面的公式中:
这个问题对于 SO 来说可能有点跑题,但我相信它无论如何都会对人们有用。这是我的答案...
Uniswap 使用预言机价格为您提供了您输入的 ETH 金额的美元价值,只是为了方便起见。不是本次存款操作的参数。
这里只有3个参数:
- 资产A金额
- 资产B金额
- 价格范围
资产 A(在您的实例中为 ETH)与资产 B(在您的实例中为 USDC)的比率决定了平衡点。例如,如果你存入 1 Ether 和 1000 USDC,那么平衡点将是 ETH = 1000 USDC
。最后,您定义价格范围以指定您希望您的存款发挥作用的范围。通过限制存款的价格范围,您可以在给定范围内提高资金(存款)的效率。这涉及到相当多的数学来解释,但让我试着简单地解释一下:基本上,自动做市商使用这个等式:
a * b = k
。这意味着当 a
变为无穷大时 b
变为零,反之亦然。因此 'liquidity' 从 0 到无穷大均匀分布。当您改为设置价格范围时,您 'concentrate' 范围内的流动性,以牺牲范围外的流动性为代价。从而提高资本效率。
完整的解决方案已添加到 excel sheet 中: