Swap
toJSONString
You can use this function to convert market object into string.
const sdk = await SDK.initialize(endpoint);
const res = await sdk.models.getAllMarkets();
res.forEach((market) => console.log(market.toJSONString()));
getSpotPrice
You can use this function to get spot price in the specified block.
const price = await pool.getSpotPrice(AssetIn, AssetOut, blockHash);
Arguments
Name | Type | Introduction |
---|---|---|
inAsset | string/Asset | |
outAsset | string/Asset | |
blockHash | any | not necessarily. The unique identifier for the block to fetch asset spot prices. |
assetSpotPricesInZtg
You can use this function to fetch spot prices of all assets in this market. Can be used to find prices at a particular block using unique identifier.
const res = market.assetSpotPricesInZtg(blockHash);
Arguments
Name | Type | Introduction |
---|---|---|
blockHash | any | not necessarily. The unique identifier for the block to fetch asset spot prices. |
fetchPoolSpotPrices
You can use this function to fetch spot prices of specified blocks.
const prices = await pool.fetchPoolSpotPrices(
assetIn,
assetOut,
blocksAsNumArray
);
Arguments
Name | Type | Introduction |
---|---|---|
inAsset | string/Asset | |
outAsset | string/Asset | |
blockNumbers | number[] | The block numbers you want to check |
sharesId
You can use this function to fetch all shares' ids.
const sharesId = await pool.sharesId();
accountId
You can use this function to fetch account id in this pool.
const account = await pool.accountId();
joinPool
You can use this function to join pool.
const res = await pool.joinPool(signer, poolAmountOut, maxAmountsIn, false);
Arguments
Name | Type | Introduction |
---|---|---|
signer | KeyringPairOrExtSigner | The actual signer provider to sign the transaction. |
poolAmountOut | string | The amount of LP shares for this pool that should be minted to the provider. |
maxAmountsIn | string[] | List of asset upper bounds. The values are maximum limit for the assets. |
callbackOrPaymentInfo | boolean | "true" to get txn fee estimation otherwise callback to capture transaction result. |
poolJoinWithExactAssetAmount
You can use this function to join exact asset amount to the pool.
const res = await pool.poolJoinWithExactAssetAmount(
signer,
JSON.parse(assetIn),
assetAmount,
minPoolAmount,
false
);
Arguments
Name | Type | Introduction |
---|---|---|
signer | KeyringPairOrExtSigner | The actual signer provider to sign the transaction. |
assetIn | any | Asset entering the pool. |
assetAmount | any | Asset amount that is entering the pool. |
minPoolAmount | any | The calculated amount for the pool must be equal or greater than the given value. |
callbackOrPaymentInfo | any | "true" to get txn fee estimation otherwise callback to capture transaction result. |
joinPoolMultifunc
You can use this function to join pool. Three substrate join_pool_xxx functions in one
const res = await pool.joinPoolMultifunc(
signer,
{
bounds: trimmedBounds as any,
},
false
);
Arguments
Name | Type | Introduction |
---|---|---|
signer | KeyringPairOrExtSigner | The actual signer provider to sign the transaction. |
opts | poolJoinOpts | To be provided with asset , bounds.assetAmount , bounds.poolMin for MinPool and with asset , bounds.poolAmount , bounds.AssetMin for MaxAsset and with bounds.poolAmount , bounds.AssetMin for sdk.models.swaps.joinPool . |
callbackOrPaymentInfo | boolean | "true" to get txn fee estimation otherwise callback to capture transaction result. |
exitPool
You can use this function to retrieve a given set of assets from pool to the signer.
const res = await pool.exitPool(signer, poolAmountOut, maxAmountsIn, false);
Arguments
Name | Type | Introduction |
---|---|---|
signer | KeyringPairOrExtSigner | The actual signer provider to sign the transaction. |
poolAmountIn | string | The amount of LP shares of this pool being burned based on the retrieved assets. |
minPoolAmount | string[] | List of asset lower bounds. The values are minimum limit for the assets. |
callbackOrPaymentInfo | boolean | "true" to get txn fee estimation otherwise callback to capture transaction result. |
swapExactAmountIn
You can use this function to swap a given assetAmountIn
of the
assetIn/assetOut
pair to pool.
const res = await pool.swapExactAmountIn(
signer,
assetIn,
assetAmountIn,
assetOut,
minAmountOut,
maxPrice,
false
);
Arguments
Name | Type | Introduction |
---|---|---|
signer | KeyringPairOrExtSigner | The actual signer provider to sign the transaction. |
assetIn | string | Asset entering the pool. |
assetAmountIn | string | Amount that will be transferred from the provider to the pool. |
assetOut | boolean | Asset leaving the pool. |
minAmountOut | string | Minimum asset amount that can leave the pool. |
maxPrice | string | Market price must be equal or less than the provided value. |
callbackOrPaymentInfo | boolean | "true" to get txn fee estimation otherwise callback to capture transaction result. |
swapExactAmountOut
You can use this function to swap a given assetAmountOut
of the
assetIn/assetOut
pair to pool.
const res = await pool.swapExactAmountOut(
signer,
assetIn,
assetAmountIn,
assetOut,
minAmountOut,
maxPrice,
false
);
Arguments
Name | Type | Introduction |
---|---|---|
signer | KeyringPairOrExtSigner | The actual signer provider to sign the transaction. |
assetIn | string | Asset entering the pool. |
assetAmountIn | string | Amount that will be transferred from the provider to the pool. |
assetOut | boolean | Asset leaving the pool. |
minAmountOut | string | Minimum asset amount that can leave the pool. |
maxPrice | string | Market price must be equal or less than the provided value. |
callbackOrPaymentInfo | boolean | "true" to get txn fee estimation otherwise callback to capture transaction result. |