@currie0612/swap-sdk
TypeScript icon, indicating that this package has built-in type declarations

2.0.12 • Public • Published

Install:

npm i @cremafinance/crema-sdk

Build:

npm run build

Instructions:

import { TokenSwap } from '@cremafinance/crema-sdk'
const swap = await new TokenSwap(conn, swapProgramId, swapKey, null).load()
const amountOut: any = await swap.preSwapA(amountIn) // a->b
const amountOut: any = await swap.preSwapB(amountIn) // b->a

Parameters Description:

amountIn: Decimal (using decimal.js repo)

Liquidity Calculation Formula

Assuming the current price is $P_{c}$,the price range that users add liquidity in is $[P_{a},P_{b}]$

$ \LARGE L = \begin {cases} ¦ {Δx} \over {1 \over {\sqrt{P_{a}}}} - {1 \over {\sqrt{P_{b}}}} &, \text P_{c} < P_{a} \
¦ {Δy} \over {\sqrt{P_{b}} - \sqrt{P_{a}}} &, \text P_{c} > P_{b}\ ¦ {{Δx} \over {1 \over {\sqrt{P_{c}}}} - {1 \over {\sqrt{P_{b}}}}} = {{Δy} \over {\sqrt{P_{c}} - \sqrt{P_{a}}}} &, \text P_{c} \in [P_{a},P_{b}] \
\end {cases} $

/@currie0612/swap-sdk/

    Package Sidebar

    Install

    npm i @currie0612/swap-sdk

    Weekly Downloads

    0

    Version

    2.0.12

    License

    MIT

    Unpacked Size

    1.04 MB

    Total Files

    258

    Last publish

    Collaborators

    • currie0612