# Своп токенов
WX Network предоставляет инструмент для свопа на основе публичного смарт-контракта (opens new window), который позволяет пользователям мгновенно обменивать токены в различных направлениях без ограничений по сумме. Ликвидность свопов обеспечивается пулами ликвидности.
Подробнее про Своп токенов (opens new window).
# Как произвести своп токенов
Откройте приложение WX Network (opens new window), войдите в свою учетную запись и на вкладке Торговля выберите одно из доступных направлений свопа, например USDT/WX (opens new window).
В поле Я отправляю укажите сумму для свопа. В поле Я получаю будет отображаться предполагаемая сумма токена, которую вы получите. Текущие курсы спота и свопа будут отображаться в полях ниже.
Выберите желаемое значение Проскальзывания цены и токен Комиссии сети, затем нажмите Своп USDT на WX.
# Как произвести своп токенов через dApp
Обменять токены можно не только через интерфейс WX Network, но и через Waves dApp. Этот функционал может быть полезен для разработчиков ботов и любых продвинутых пользователей.
В следующем примере рассмотрим своп 1 USDT на XTN с Проскальзыванием цены 5%.
Swap dApp работает с точными числами, поэтому, прежде всего, вам нужно будет определить сумму, которую вы хотите свопнуть, исходя из текущего курса обмена.
Для этого перейдите в swagger-интерфейс ноды Waves POST /utils/script/evaluate/{address} (opens new window):
Простыми словами, вам нужно попросить контракт оценить, сколько XTN будет получено за своп 1 USDT.
Пример запроса:
{
"expr": "swapCalculateREADONLY(1000000,\"34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ\",\"DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p\")"
}
Где:
3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93 это адрес Swap dApp.
1000000 это сумма отправляемого токена (1 USDT).
34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ это ID отправляемого токена (USDT).
DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p это ID получаемого токена (XTN).
Пример ответа:
{
"result": {
"type": "Tuple",
"value": {
"_1": {
"type": "Array",
"value": []
},
"_2": {
"type": "Int",
"value": 4192129
}
}
},
"complexity": 3569,
"expr": "swapCalculateREADONLY(1000000,\"34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ\",\"DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p\")",
"address": "3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93"
}
Где:
4192129 это значение, которое вам нужно. Оно говорит о том, что по курсу обмена в настоящий момент 1 USDT можно обменять на 4,192129 XTN. Сервисная комиссия уже вычтена из этой суммы.
Перед осуществлением свопа, посчитайте и вычтете сумму проскальзывания.
Например, умножьте сумму на 0.95, чтобы быстро вычесть из неё 5% проскальзывания:
4192129x0.95=3982522
Теперь, когда вы знаете точную сумму на основе текущей ставки свопа и проскальзывания 5%, перейдите на страницу dApp (opens new window), войдите в свою учетную запись и введите адрес Swap контракта (3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93).
В поле amountOutMin введите сумму 3982522.
В поле assetOut введите ID токена XTN (DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p).
В поле addressTo введите адрес получателя XTN.
Нажмите Attach payment.
Выберите USDT из списка токенов и задайте сумму 1.000000.
Нажмите Invoke.
В открывшемся окне подтвердите транзакцию.
See more articles in the Token Management chapter.
If you have difficulties with WX Network, please create a support (opens new window) ticket or write a question on our forum (opens new window).