Liquidity Pools and Autocompounding at Adamant

Welcome to the first issue of Revolutionary Spaces! I’ll be using this spot to detail a number of lessons I’ve learned in the crypto space. This first one will be a how-to on creating a liquidity pool and autocompounding the rewards at Adamant Vaults.

In this lesson you’ll learn how-to:

  • Swap one token on Polygon for another (WMATIC for Omen and USDC)
  • Create a pool of liquidity (Omen/USDC)
  • Stake that pool in order to start autocompounding rewards (Adamant.finance)

Swapping one token for another

I’m assuming by now you’ve already got some tokens on the Polygon Mainnet, and that you’ll be using a browser-based wallet like Metamask. If you don’t know what those terms mean a quick search online will get you started. We’ll use Quickswap to swap one token for another to prepare for making a liquidity pool.

Okay, but what is Quickswap, a swap, and liquidity?

Quickswap is a permissionless automated market maker: that means folks contribute their tokens to the smart contracts there to provide liquidity. (The permissionless part means that the trade doesn’t require the provider to approve).

What’s liquidity? It’s what makes swapping one token from another possible. Users take their tokens and contribute them to a pool (most often in a ratio of 1:1). The pool is then used by others to swap one token for another. The swap protocol tries as hard as possible to trade the same token value (typically in USD).

For this example I want to make an Omen and USDC pool over at Augury Finance: I will need the same USD value of Omen and USDC to do so. Let’s head to Quickswap to do some swapping! (You can always use a site like 1Inch or Slingshot as well).

How to trade one token for another

Head to Quickswap and connect your wallet to the site. You’ll need to be on the “Swap” section. There you will see the swap section and can choose what token you have to swap, and what you’d like to trade for:

Quickswap’s Trade Dialogue

For this example, I’ll be trading some Wrapped MATIC and USDC. First I will select the Wrapped Matic token from dropdown on Quickswap. Then I will need to choose to trade for the Omen token. It’s not part of the Quickswap token list by default so we need to finds its address on the network and add it manually.

To find the address I went to Augury’s docs (don’t trust anyone other than the source of the token or you may end up adding a fake token). I click on “Select a token” then paste the contract address. I then can add the token if I’d like.

Quickswap’s liquidy pools require a 1:1 ratio of each token. I have 15.178753477433916737 Wrapped Matic so I divide that by two to get how much I want to swap for each token.

Quickswap Trade Confirmation

There’s a couple of things to note in the above screenshot:

  • My balance is shown for WMATIC
  • I know how much I am trading and receiving
  • I see the “Price Impact” or slippage
  • The fee for this trade is noted (swapping isn’t free: liquidity pool providers get a certain percentage of each trade to incentivize providing that liquidity)
  • The route my trade will take is there (many trades are not direct and require going through multiple liquidity pools)

After I hit “Swap” I am asked by Metamask to confirm the trade and pay my gas fee. Everytime you engage with a smart contract, other than signing a permission, you’ll pay a gas fee. Polygon is a beloved network because it’s so quick and gas fees are VERY cheap (fractions of a cent).

Once I’ve confirmed the swap proceeds and I trade some WMATIC for Omen and that ends up in my wallet. I trade around 7.5 WMATIC for 13.131 Omen, and then the same amount of WMATIC for 9.295 USDC. That gets me the liquidity ratio I need for a pool.

Confirming a Transaction with Metamask

What if I have issues with a transaction failing?

The above screenshot is my transaction confirmation as I trade. In the top right you can see my RPC name. An RPC is your connection to the network. If you are having issues with a transaction I recommend trying a different RPC. Occasionally an RPC can get congested with too many transactions.

You can see that my gas price and gas limit are noted. I often double or triple the gas price so get a trade done, which is still very reasonable since its only fractions of a cent each time. I suggest learning about gas prices and upping the price or limit when trades or other interactions are failing for you, just watch that you have enough MATIC to pay for the next transaction.

Creating a Liquidity Pool at Quickswap

In order to start autocompounding at Adamant Vaults, I need to create a liquidity pool and then stake my Liquidity Pool (LP) Tokens there.

Explaining Autocompounding and Rewarded Liquidity Pools

When you stake a liquidity pool at Adamant.finance you’re using the site to autocompound your rewards for the pool back into your liquidity pool.

Rewards for liquidity pool providers

Liquidity Pool Providers (that’s you!) are often rewarded another token to incentivize creating liquidity. This makes it easier for others to trade into both of the tokens in the pool. In this case Augury.finance rewards their users for providing liquidity at Quickswap for Omen/USDC by rewarding more Omen.

Using Adamant to autocompound your rewards

Adamant takes your LP tokens at Quickswap, uses them in the smart contract at Augury to gain more Omen, then autocompounds that hourly back into your LP by automatically swapping 50% of your Omen token for USDC then depositing the Omen and USDC you make back into the LP. (When Adamant does so it takes 30% of the profit as a performance fee from the LP fees and rewards that you make, then distributes that to ADDY stakers — don’t worry, by staking at Adamant you, in turn, get ADDY tokens you can stake and get rewarded with the performance fees from other stakes. More on that later.)

Let’s make that Liquidity Pool

Now that we’ve explained autocompounding and rewards lets make the Liquidity Pool we need.

Finding Omen/USDC at Adamant Vaults

I head to Adamant and then search for the Omen pool. I click on it to expand for options than click on “+/- Liquidity” to find the correct liquidity pool. (I can create a Liquidity Pool with Omen/USDC elsewhere like at Sushiswap but I can’t stake that at Adamant since that pool isn’t rewarded by Augury.)

Supplying Liquidity at Quickswap

I’ve already trade enough WMATIC for Omen and USDC to provide the necessary 1:1 ratio at Quickswap, so I enter the right inputs (in this case I just click the “Max” button on my Omen token since I want to provide all I have to the pool). Quickswap automatically selects how much USDC I need to provide as well, and when ready I click “Supply” to send that transaction.

Managing my Liquidity at Quickswap

Once the transaction is confirmed I can head back to Quickswap’s pool section to manage my pools. In the above screenshot you can see my Omen/USDC pool, the value of the tokens (this represents how much of the pool I own, not the USD value) and how much of each token is there. I can also use that section to add or remove liquidity, see my fees and analytics for the pool, or import other pools I have made.

Staking Liquidity Pool Tokens at Adamant

Now that I have Liquidity Pool Tokens I can stake that at Adamant Vaults and they will in turn use that at Augury to gain rewards and autocompound those back into my LP tokens. Profit!

First, I click “Stake” to do so. I haven’t approved Adamant yet to use my Omen/USDC LP tokens so I confirm that in Metamask. Once I’ve done so I can stake some or all of my LP tokens.

Time to stake some LP tokens!

What should I know about the vaults at Adamant?

You can see in the above screenshot a couple of important things about the Omen/USDC LP vault.

  • It’s rewards come from Augury
  • The number of my LP tokens available to stake is on the left under balance
  • The APY and APR are noted, and the vault is labelled as autocompounding (hover over the APY to learn about what that consists of — more on that in a second)
  • The vault tells me what I will earn by staking
  • If I had anything staked already it would appear here with the USD value
  • The total amount staked is shown
I can stake some or all LP tokens

Note: each Adamant Vault will assess you a 0.5% early withdrawal fee if you unstake your liquidity pool tokens within the first 3 days. (In the event of an emergency with that pool Adamant will remove the fee so you can remove without the fee.) The cool part? That fee for ALL vaults goes to folks that lock in the Addy token at Adamant.

Staking at Adamant

I want to stake all my Omen/USDC tokens so I click “STAKE ALL TOKENS”. I can also select to stake only some then choose the top option. I confirm the transaction in Metmask afterward. There are two transactions that appear in Metamask because I already have other LPs staked at Adamant. One transaction harvests my other rewards there and the other stakes my LP tokens.

How do rewards work at Adamant?

When you stake at Adamant you’re taking your Liquidity Pool Tokens for two (or more) tokens and providing them in a secured way to Adamant for autocompounding. Adamant then takes the LP tokens and uses them at the smart contract for the rewarded pool to get you reward tokens (in the above case for Omen/USDC more Omen) and autocompounds those back into the LP for you. You then gain more of the LP tokens (Omen and USDC in a 1:1 ratio) and Adamant’s native token: Addy!

The Addy token is the key to its reward structure. When you provide LP tokens to Adamant it takes a performance fee of 30% from your profits (not your original deposit) and distributes that in the form of WMATIC to Addy token stakers. As well, for each 450 ETH of profit that Adamant makes it emits one Addy token and rewards that to stakers like you!

You can use that emitted Addy to stake and gain the performance fees, withdraw it early (for a 50% penalty on the Addy — not your LP) to trade on the open market, or withdraw early then lock it at Adamant.

Claiming and vesting Addy

Once you’ve staked your LP token at Adamant you start autocompounding the reward token back into your LP (Adamant does it a couple of times an hour, and often you can manually compound from the vault as well) and rewarding you Addy as well. You have to claim and vest your Addy to start earning from it.

Note: this reward structure is pretty unique to Adamant. Most other sites do not share fees with its users, but they also don’t require you to claim and vest for the reward. The Adamant strategy for rewards is oriented toward more long terms and sustainable rewards. This keeps the site from rewarding users with a native token that will lose value as users leave the site and sell off a worthless token. Addy grants you part of a huge performance fee pool and passive income!

The Adamant site details more on how Addy vesting works

Once you claim Addy it will be automatically vested into the fee distribution contract and you’ll start sharing in the vault fees that Adamant takes. Use the Adamant site to see your vested, staked, and locked Addy. I want to claim my rewarded Addy so I click “Claim + Vest” and confirm the transaction in my Metamask. I can then see the amount I have claimed and vested at the Adamant site.

What options do I have with my Addy rewards?

You can view your addy rewards here. Once your Addy is claimed it starts vesting. After vesting for 3 months you can claim it without penalty and do what you want with it (stake it, lock it at Adamant, or trade it for another token at a place like Quickswap).

Vesting Addy

When you first Claim + Vest your Addy rewards it starts vesting for 3 months and earning you the corresponding amount of WMATIC performance fee dividends. See the staking section or the screenshot above to learn more on this. You can see that I have 0.0001 Addy vested right now from my Omen/USDC pool that I have claimed. It will remain there for 3 months vesting and earning me the performance fee dividends (for the percentage owed me based off the number of Addy I have vesting).

Withdrawing Addy

I can withdraw my Addy rewards early (before the 3-month vesting period ends) for a 50% fee. If I have 1 Addy vesting and claim it early then I will receive 0.5 Addy to my wallet. I can then stake that, lock it, or trade it for another token immediately. It’s also possible to wait 3-months for the vesting period to end and then withdraw Addy.

Stake Addy

If you already have some Addy in your wallet you can stake it at Adamant to earn the performance fee dividends. This won’t lock it up and you can withdraw it any time you like. You’ll see that option at the top of the page once your Addy has vested or if you’ve staked earlier.

Stake and Lock Addy

Long-term believers in Adamant are rewarded with the option to stake and lock Addy. When you do so you start receiving the performance fee rewards (in WMATIC), a percentage of the penalty fees accrued to others that claim their Addy early, and are rewarded with even more Addy to claim. Your staked and locked Addy isn’t available for withdrawal for 3-months, just like vesting Addy. After that period you can withdraw and do with it as you please. I like to withdraw early and lock all of my Addy rewards since I make the penalty fee back up within about 3-weeks. You should do what’s best for your investment strategy though!

There you have it. In this lesson we learned how to do the following:

  • Swap one token on Polygon for another
  • Create a pool of liquidity
  • Stake that pool in order to start autocompounding rewards

This lesson doesn’t just apply to a site like Adamant Vaults, but also places like Quickswap which offers its own rewards for liquidity pools (but won’t autocompound them for you) or one like Beefy Finance (which will autocompound the rewards for you). The Adamant Vaults reward structure is the biggest difference. All of the others steps should work similarly. Now get out there, start swapping and farming, and be safe!

Note: none of the above should be construed as financial advice. As well, the crypto world can be a dangerous place. Make sure to Do Your Own Research (DYOR) and only invest what you can afford to lose.

I swear to God if you tell me to “Slurp up that dipperino!” one more time…