Swap token
A ํ ํฐ์ B ํ ํฐ์ผ๋ก Swapํ๊ฒ ๋๋ฉด, A ํ ํฐ์ fromToken์ด, B ํ ํฐ์ toToken์ด ๋ฉ๋๋ค.
setSlippage
ํจ์ ์ด๋ฆ
setSlippage()
Slippage๋ฅผ ์ ์ฉํฉ๋๋ค. ๋จ์๋ 0.01% ๋จ์์ด๋ฉฐ 100์ ์ ๋ ฅํ๋ฉด slippage๊ฐ 1%๋ก ์ค์ ๋ฉ๋๋ค.
ํจ์ ์คํ ์ธ์๊ฐ
Parameter | Type | Description |
---|---|---|
slippage | integer | 0.01% ๋จ์๋ก slippage ์ค์ |
ํจ์ ๋ฐํ๊ฐ
undefined
ํจ์ ์์
/* slippage ์ค์ N%, ์ ์๋ง ๋ฉ๋๋ค. */x2easy.swap.setSlippage(10); // slippage๊ฐ 0.1%๋ก ์ค์ ๋ฉ๋๋ค.
estimationDestinationPrice
estimationDestinationPrice()
๋ก ๋ฐ๊ฒ ๋ ์์ Token ์๋ ๊ฐ์ ์ ๋ฌ๋ฐ์ต๋๋ค.
ํจ์ ์ด๋ฆ
estimationDestinationPrice()
Swap ๊ฒฐ๊ณผ ๊ฐ๊ฒฉ์ ๊ตฌํด์ต๋๋ค. (slippage ์ ์ฉ๋ ๊ณ์ฐ์)
ํจ์ ์คํ ์ธ์๊ฐ
Parameter | Type | Description |
---|---|---|
amount | number | swapํ ์๋ |
isBaseFromAmount | boolean | true์ด๋ฉด fromToken๊ธฐ์ค์ผ๋ก ๊ณ์ฐ๋ฉ๋๋ค.(๊ธฐ๋ณธ๊ฐ: true) |
reverse | boolean | fromToken๊ณผ toToken์ด ๋ค์ง์ด์ก๋์ง ์ฌ๋ถ(๊ธฐ๋ณธ๊ฐ: false) |
fromTokenAddress | string | fromTokenAddress๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. (์ ํ์ฌํญ) |
toTokenAddress | string | toTokenAddress๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. (์ ํ์ฌํญ) |
ํจ์ ๋ฐํ๊ฐ
Result
Type | Description |
---|---|
number | ๊ณ์ฐ๋ ๊ฐ๊ฒฉ |
ํจ์ ์์
/* fromToken์ toToken์ผ๋ก Swapํ๋๋ฐ, 0.05 fromToken์ ๋ฃ์์ ๋ toToken์ ์์๊ฐ๊ฒฉ์ ๋ถ๋ฌ์ค๋ ์ฝ๋ */const price = await x2easy.swap.estimationDestinationPrice( 0.05, // amount true, // isBaseFromAmount (default: true) false, // reverse (default: false) fromTokenAddress, // fromTokenAddress (default: '') toTokenAddress // toTokenAddress (default: new X2Easy(contractAddress) ํ ๋ ๋ฃ์๋ ํ๋ผ๋ฏธํฐ ๊ฐ.));console.log(price); // 500
estimationGas
ํจ์ ์ด๋ฆ
estimationGas()
swapTransaction ํจ์์ ๋๊ฐ์ Parameter๋ฅผ ๊ฐ์ง๋๋ค.
ํด๋น Parameter ๊ทธ๋๋ก swapTransaction๋ฅผ ๋ถ๋ฌ์ฌ ๋ ๋ฐ์ํ ๊ฐ์ค๋น๋ฅผ ๊ณ์ฐํฉ๋๋ค.
ํจ์ ์คํ ์ธ์๊ฐ
Parameter | Type | Description |
---|---|---|
amount | number | swapํ ์๋ |
password | string | ๋น๋ฐ๋ฒํธ |
isBaseFromAmount | boolean | true์ด๋ฉด fromToken๊ธฐ์ค์ผ๋ก ๊ณ์ฐ๋ฉ๋๋ค.(๊ธฐ๋ณธ๊ฐ: true) |
reverse | boolean | fromToken๊ณผ toToken์ด ๋ค์ง์ด์ก๋์ง ์ฌ๋ถ(๊ธฐ๋ณธ๊ฐ: false) |
fromTokenAddress | string | fromTokenAddress๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. (์ ํ์ฌํญ) |
toTokenAddress | string | toTokenAddress๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. (์ ํ์ฌํญ) |
ํจ์ ๋ฐํ๊ฐ
Object item reuslt | Description |
---|---|
gasUsed | ์์ธก๋๋ ๊ฐ์ค ์ฌ์ฉ๋ |
gasPrice | ์์ธก๋๋ ๊ฐ์ค ๊ฐ๊ฒฉ (gwei ๋จ์) |
paidGas | ์ง๋ถํ ์ด ๊ฐ์ค๋น |
paidGasToEther | ์ง๋ถํ ์ด ๊ฐ์ค๋น (ether ๋จ์) |
ํจ์ ์์
const gasFee = await x2easy.swap.estimationGas( 500, // amount '123456', // password false, // isBaseFromAmount (default: true) true, // reverse (default: false) fromTokenAddress, // fromTokenAddress (default: '') toTokenAddress, // toTokenAddress (default: new X2Easy(contractAddress) ํ ๋ ๋ฃ์๋ ํ๋ผ๋ฏธํฐ ๊ฐ.));console.log(gasFee);/*{ "gasUsed": "195730" // ๊ฐ์ค ์ฌ์ฉ๋ "gasPrice": "64238640917" // ๊ฐ์ค ๊ฐ๊ฒฉ (gwei ๋จ์) "paidGas": " "12573429186684410" // ์ด ์ง๋ถ ๊ฐ์ค๋ (gasUsed * gasPrice) "paidGasToEther": "0.01257342918668441" // ์ด ์ง๋ถ ๊ฐ์ค๋ (ether ๋จ์)}*/
swapTransaction
ํจ์ ์ด๋ฆ
swapTransaction()
Swap์ ์งํํฉ๋๋ค. ๋ฐํ๊ฐ์ผ๋ก ์ฌ๋ฌ ๊ฐ๋ค์ด ๋์ค๋๋ฐ, ๋ฌธ์์ ์ ํ ํธ๋์ญ์ ํด์ ๊ฐ ์ธ์๋ ์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
ํจ์ ์คํ ์ธ์๊ฐ
Parameter | Type | Description |
---|---|---|
amount | number | swapํ ์๋ |
password | string | ๋น๋ฐ๋ฒํธ |
isBaseFromAmount | boolean | true์ด๋ฉด fromToken๊ธฐ์ค์ผ๋ก ๊ณ์ฐ๋ฉ๋๋ค.(๊ธฐ๋ณธ๊ฐ: true) |
reverse | boolean | fromToken๊ณผ toToken์ด ๋ค์ง์ด์ก๋์ง ์ฌ๋ถ(๊ธฐ๋ณธ๊ฐ: false) |
fromTokenAddress | string | fromTokenAddress๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. (์ ํ์ฌํญ) |
toTokenAddress | string | toTokenAddress๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. (์ ํ์ฌํญ) |
const txResult = await x2easy.swap.swapTransaction( 500, // amount '123456', // password false, // isBaseFromAmount (default: true) true, // reverse (default: false) fromTokenAddress, // fromTokenAddress (default: '') toTokenAddress, // toTokenAddress (default: new X2Easy(contractAddress) ํ ๋ ๋ฃ์๋ ํ๋ผ๋ฏธํฐ ๊ฐ.));console.log(txResult);/*{ more data... // ์๋ต "hash": "0x0fb7ff39d9acd1e8528b09e58fd853965471044cbb539ea55b81ab72085b0c00", // ํธ๋์ญ์
ํด์ "from": "0x92029B49f67785FFFF41a5E36B1A9afB4AC2497d", // ๋ณด๋ธ์ฌ๋ ... more data // ์๋ต}*/
ํจ์ ๋ฐํ๊ฐ
Object item reuslt | Description |
---|---|
hash | Swap Transaction Hash |
์์ฉ ์์
estimationDestinationPrice์ swapTrnasaction๋ฅผ ์ฌ์ฉํด์ ์์ธก๊ฐ์ ๋ฃ์ต๋๋ค.
(์ค์ ๋ก ์ด๋ ๊ฒ ์ฌ์ฉํ๋ฉด ์๋ฉ๋๋ค. ์๋ฅผ ๋ค๊ธฐ ์ํด ๋ณด์ฌ์ค ์ฝ๋์ ๋๋ค.)
/*์๋ ์ฝ๋ ์ค๋ช
(์กฐ๊ฑด๋ค)1. fromToken -> toToken ์ผ๋ก reverse๊ฐ ์์ด ์ ๋ฐฉํฅ์ผ๋ก swapํจ.2. price๋ toToken ๊ธฐ์ค์ price์ด๋ค.์๋ ์ฝ๋๋ fromToken(0.05) -> toToken(๊ณ์ฐํด์ผํจ) ์ผ๋ก swap์ ์งํํ๋ ์ฝ๋์
๋๋ค.swapํจ์ ํ๋๋ง ์ฌ์ฉํด๋ ๋๋๋ฐ, estimationDestinationPrice ํจ์์ ์ฌ์ฉ ์๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํจ์
๋๋ค.*/const price = await x2easy.swap.estimationDestinationPrice( 0.05, // amount true, // isBaseFromAmount (default: true) false // reverse (default: false));// ํธ๋์ญ์
์คํ์ํด, ๋ฐํ๊ฐ์ผ๋ก ์คํ๋ ํธ๋์ญ์
ํด์ ๋ฐํconst txResult = await x2easy.swap.swapTransaction( price, // amount '123456', // password false, // fromToken๋ก ๊ณ์ฐ๋ toToken์ price๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฑฐ๋๊น swap ๊ธฐ์ค๊ฐ์ด toToken์ด ๋๋ค. false // reverse (default: false));