Ликвидность на примере Pump.fun
Что такое ликвидность?
Ликвидность — это способность актива быть быстро проданным или купленным на рынке без значительного изменения его цены. В контексте криптовалют ликвидность часто измеряется объёмом средств, заблокированных в пулах ликвидности на децентрализованных биржах (DEX).
Ликвидность рассчитывается как суммарная стоимость всех токенов в пуле:
Ликвидность = Количество токенов A * Цена токена A + Количество токенов B * Цена токена B
Пример Pump.fun
На примере токена, созданного на платформе Pump.fun, рассмотрим, как рассчитывается ликвидность.
Исходные данные
При создании токена на Pump.fun устанавливаются следующие параметры:
- Количество токенов в резерве (
vTokensInBondingCurve
): 1,073,000,000 штук - Количество SOL в резерве (
vSolInBondingCurve
): 30 SOL - Общее количество токенов в пуле (
Current Supply
): 1,000,000,000
Шаг 1: Инициализация токена
При создании токена VDOG
пользователь не вносит SOL (initialBuy = 0
). В этом случае:
vTokensInBondingCurve
= 1,073,000,000vSolInBondingCurve
= 30 SOL
Используя модель CLMM (Concentrated Liquidity Market Maker), начальная цена токена рассчитывается как:
Цена токена = vSolInBondingCurve / vTokensInBondingCurve
Цена токена = 30 / 1,073,000,000 = 0.00000002795899347623485 SOL
Шаг 2: Расчёт ликвидности
Ликвидность пула рассчитывается как суммарная стоимость токенов и SOL в пуле:
Ликвидность = (vTokensInBondingCurve * Цена токена) + (vSolInBondingCurve * Цена SOL)
Liquidity = (vTokensInBondingCurve * tokenPriceSol) + (vSolInBondingCurve * priceOfSOL)
Подставляем значения:
- Ликвидность в токенах:
1,073,000,000 * 0.00000002795899347623485 = 30 SOL
- Ликвидность в SOL:
30 SOL * 1 = 30 SOL
Итого, начальная ликвидность пула составляет 60 SOL.
Шаг 3: Покупка токенов
Пользователь покупает токены на 3 SOL. В результате:
vTokensInBondingCurve
уменьшается на количество купленных токенов.vSolInBondingCurve
увеличивается на 3 SOL.
Новые значения:
vTokensInBondingCurve
= 975,454,545.457502vSolInBondingCurve
= 33 SOL
Цена токена после покупки:
tokenPriceSol = vSolInBondingCurve / vTokensInBondingCurve
Цена токена = 33 / 975,454,545.457502 = 0.00000003383038 SOL
Ликвидность после покупки:
Ликвидность = (vTokensInBondingCurve * tokenPriceSol) + (vSolInBondingCurve * priceOfSOL)
Liquidity = (975,454,545.457502 * 0.00000003383038) + (33 * 1)
Liquidity = 33 SOL
Итого, ликвидность пула после покупки составляет 66 SOL.
Шаг 4: Продажа токенов
Пользователь продаёт токены на 0.099 SOL. В результате:
vTokensInBondingCurve
увеличивается на количество проданных токенов.vSolInBondingCurve
уменьшается на 0.099 SOL.
Новые значения:
vTokensInBondingCurve
= 972,536,934.653542vSolInBondingCurve
= 33.099 SOL
Цена токена после продажи: [ Цена токена} = \frac33.099934.653542 = 0.000000034033668 SOL} ]
Ликвидность после продажи:
- Ликвидность в токенах: (972,536,934.653542 \times 0.000000034033668 = 33.099 SOL})
- Ликвидность в SOL: (33.099 SOL} \times 1 = 33.099 SOL})
Итого, ликвидность пула после продажи составляет 66.198 SOL.
Заключение
Ликвидность пула напрямую зависит от количества токенов и SOL в резерве, а также от текущей цены токена. Каждая операция покупки или продажи влияет на ликвидность, изменяя баланс токенов и SOL в пуле.