Buttonwood
  • Buttonwood Basics
    • Introduction to Buttonwood
    • First Principles
    • FAQ
    • DeFi for Beginners
  • Learn
    • Glossary
    • Elastic Supply Assets
      • ButtonToken
      • UnbuttonToken
    • Tranche
      • Deposit Flow
      • Redemption Flow
    • ButtonZero
      • System Design
      • Lending
      • Borrowing
    • ButtonAuctions
    • ButtonSwap
      • Core Concepts
      • Pool Interactions
  • User Guides
    • ButtonSwap User Guide
      • Create a Pool
      • Swap
      • Add Liquidity
      • Remove Liquidity
    • ButtonZero User Guide
      • Primer
      • Borrow (Sell & Ask)
      • Lend (Buy & Bid)
      • Redemption
    • ButtonAuctions User Guide
      • Join an Auction
        • Redemptions
      • Create an Auction
      • Settle an Auction
      • Note on Rebasing Assets
    • Provide Liquidity on Uniswap
    • Mint Tranches
      • Mint Tranches via Contract
        • Minting AMPL Tranches
        • Minting ETH Tranches
        • Minting WBTC Tranches
        • Bond List
  • Developers
    • Deployed Contracts
      • Ethereum Mainnet
      • Görli Testnet
      • Kovan Testnet
      • Avalanche C-Chain
      • Base Mainnet
      • Arbitrum
      • Optimism
    • Tranche
      • Tranche
      • TrancheFactory
      • Bond
      • BondFactory
      • UniV3LoanRouter
    • Button Wrappers
      • ButtonToken
      • UnbuttonToken
      • ButtonTokenFactory
      • UnbuttonTokenFactory
    • Audits
    • Bug Bounty
  • Additional Resources
    • Apps
    • Github
    • Discord
    • Twitter
    • Website
    • ButtonZero
    • Zero Whitepaper
Powered by GitBook
On this page

Was this helpful?

  1. User Guides

Provide Liquidity on Uniswap

PreviousNote on Rebasing AssetsNextMint Tranches

Last updated 2 years ago

Was this helpful?

The liquidity pools for Buttonwood Zero are on Uniswap. LP's can market make for a specific tranche token for a specific bond. A list of bonds and their relevant tokens are available .

To supply liquidity you will need a web3 wallet (ex: MetaMask). You will also need Tranche-A and/or Tranche-B tokens and Tether (USDT).

See our guide on Minting Tranche tokens via Contract if you need to acquire Tranche tokens.

Instructions

1. Go to and select the "Pool" tab.

2. Select "+ New Position".

3. Under "Select Pair", the first selection should be the Tranche token for the bond you desire to supply liquidity for.

4. The second selection should be Tether (USDT).

5. The Fee Tier should be set to 1%. Please do not change this.

6. Edit the Price Range to desired range.

When setting your price range, you should consider how actively you plan on managing this position and to what degree you think prices will change over the course of holding this position. The price you enter may change or snap to the nearest tick. It is normal for your numbers to not be round numbers.

7. Enter the deposit amounts for the assets.

With a pair, fee tier, and price range selected, you can decide how much to contribute to this new position. Entering a value in one of the "Deposit Amounts" fields will automatically populate the corresponding amount in the other. The ratio of these fields is based on the position of your price range around the market price.

You can adjust your ratio by editing the price range. Some strategies may target specific ratios. If you select a price range that doesn't include the current market price, then you'll only need to provide a single asset instead of both.

8. Submit your transaction.

If you haven't used an asset on Uniswap before then you will have to approve their use by the Uniswap v3 router contract. This will incur a transaction cost. This is only necessary the first time you provide liquidity with a token.

9. A successful transaction will present an NFT in your wallet that represents your share of the pool. The Pool UI on Uniswap will have also updated to represent your new position.

Resources

How to provide liquidity on Uniswap v3
Concentrated Liquidity
Do I need to hold both tokens on provide liquidity?
here
Uniswap