How to USDC on


This article by Inal Kardanov, Waves development advocate, will help you make sense of a new token on, USDC, and start earning on it.

Recently, a second stablecoin pair after USDT/USDN has become available on — USDC/USDN.

I think many of the readers are already familiar with USDN, a stablecoin on the Neutrino protocol available in many pairs on Just like USDN, USDC has a 1:1 peg to USD. But, unlike USDN, this token, issued on the Ethereum blockchain by Circle and Coinbase, is centralized.

USDC is available in the Waves network thanks to Waves.Exchangegateways. Therefore, if you have USDC tokens in the Ethereum network, you can transfer them to the Waves ecosystem using the Waves.Exchangeinterface:

Image for post

Features of the USDC/USDN pool

Most pools are based on the Constant Product Market Maker (CPMM) formula used by the Uniswap project and many other automatic market makers (AMM). According to that formula, the product of swapped token amounts remains constant:

Image for post


x — token X amount,

y — token Y amount,

k — a constant.

The CPMM formula is not ideally suited for a pair of tokens whose prices don’t differ much from each other. For small swaps, the price should be maximally close to the constant price calculated by this formula:

Image for post developed its own formula, Flat, a combination of formulas (1) and (2). Previously, Flat was applied only to the USDT/USDN pair and now it is also applied to the USDC/USDN pair. The formula is:

Image for post

It helps to reduce slippage and offer a swap price that diverges less from 1. The price curve looks like this:
Image for post

A detailed explanation of how this formula works can be found in this article: pricing

Swap fees

Another major difference of the USDC/USDN pool from most others is the reduced swap fee. While for all other pairs it is 0.3%, for the stablecoin pairs USDT/USDN and USDC/USDN, it is only 0.05%.

Liquidity provision

One of the new pair’s features is an option for providing liquidity in just one stablecoin rather than both of the pair’s stablecoins.

To provide liquidity, go to the “Pool” section (1), select the USDC/USDN pair (2) and click on “Add liquidity” (3):

Image for post

Please, take a note that when you provide liquidity in both tokens, the smart contract could request their unequal amounts (1).

Image for post

The reason is that the smart contract already has uneven amounts of the two tokens, and the exact amount of tokens to be provided depends on the amounts of tokens locked in the smart contract. You can view detailed token statistics on the pool page, in the section Information →Pools information or by following this link:

One more factor to pay attention to is that if you want to provide liquidity in just one token (see step 2 in the screenshot above), sending the token whose amount in the smart contract is currently smaller is more lucrative. For instance, at the time of writing, provision of USDN was more lucrative:

Image for post

Upon providing tokens to liquidity pools, a user receives so-called share tokens that could be exchanged back for the originally provided coins.

SWOP farming

Go to the tab Investments→Farming. You will see your share tokens. Click on “Stake.” Select “Max” to stake all of your share tokens. On the farming page, you’ll be able to see your rewards in SWOP grow.

Image for post

Pool profitability

In the tab Information→Pools information, you can see the pool’s profitability, based on data for 24 hours or 7 days. At the time of writing, the annual profitability is over 70%, while in this pool, there is no risk of losses as the tokens’ price is stable.

The income of liquidity providers in the USDC/USDN pool consists of three components:

  • A farming reward in the SWOP token
  • an income from Neutrino staking, as the pool automatically stakes part of its USDN liquidity
  • Swap fees, 60% of which stays in the pool.

You may also like