我感觉主要是gas 优化的考虑, 这个值也是足够大,足以支持很大的流动性
但是 Uniswap v3 需要确保每个tick 上都可以放下很大的流动性, 而所有的流动性 是用一个uint128 保存的。
每个 tick 的最大流动性 是 uint128 的最大值 除 numTicks 。
这里的问题很low,也许是你表达的不准确。
我用uint128存一个数,如果溢出就出问题了,所以加了一个记号做限制,就是maxLiquidityPerTick。
v3的核心逻辑就是tick,因此用tickmap设计了一个记录tick和流动性的结构,在这个结构上,需要按照fee进行逐tick运算。
为了保证池子正常运行,最好是有一段连续的tick上有流动性。不然整个池子的价格计算容易到边界。
如果流动池的流动性是离散且距离很远的,对于用户来说简直是灾难,从一个有流动性的tick到下一个有流动性的tick的gas消耗是天量的。