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
  • Prerequisite knowledge from Tranche
  • How are loans created?

Was this helpful?

  1. Learn
  2. ButtonZero

System Design

How does the Button Zero system work?

PreviousButtonZeroNextLending

Last updated 2 years ago

Was this helpful?

ButtonZero is a composition of the protocol and an automated market maker (AMM). The ButtonZero "router" smart-contract takes a user's collateral and carries out the transactions necessary to create a loan--it will mint tranches, swap them in the AMM, and return the loan and collateral claim back to the user.

Prerequisite knowledge from

Due to this, A- and B-Tranche tokens should generally trade for $1 or less on an exchange. If less, the difference accounts for some risk that the value of the collateral drops so far as to dig into the redeemable value of the tranche tokens. B-Tranche tokens lose value before A-Tranche tokens, and thus generally are expected to trade at a steeper discount.

How are loans created?

Borrowers can initiate a loan by tranching their collateral, and then selling their safe tranches to lenders for cash. The result of this operation is as follows:

  • Borrowers hold Z-Tranche (equity) tokens. These represent all of the price upside of their original collateral.

  • Borrowers hold cash (or stablecoins) in return for the safe part of their collateral.

  • Lenders hold A- and B-Tranche tokens. These are safe and likely to be worth $1 each.

  • Lenders gave away some cash (or stablecoins) for a likely return on the safe tranche tokens

Learn more about the lender flow here

Learn more about the borrower flow here

A- and B-Tranche tokens represent on $1 worth of the collateral token.

Z-Tranche tokens represent on the collateral token. They receive all of the upside exposure.

This emulates a traditional loan where lenders hold , and borrowers hold .

Lending
Borrowing
Tranche
Tranche
senior future claims
junior future claims
senior debt
junior debt