Collection.xyz Documentation
Collection.xyz
  • What is Collection.xyz?
  • Collection Concepts
    • Liquidity Pool
      • Advanced Pool
      • Basic Pool
    • Bonding Curve and Delta
    • Fee
    • Buy / Sell
    • APR
    • The Collection Whitepaper
    • Collection 1.00: Patch Notes
  • User Guides
    • Create a Trade Pool
    • Create a Buy Pool
    • Create a Sell Pool
    • Buy & Sell NFTs instantly
    • LP Strategy Guide
  • Technical Reference
    • NFT AMM
      • What Is A CollectionPool?
      • Differences Between Individual And Communal Liquidity Pool Model
      • How do I determine if a pool has sufficient liquidity to fulfil an order?
    • Fee Structure
      • Overview of the Fee Structure in NFT AMMs
      • Calculation and Collection of Fees
    • Royalties
      • How are royalties implemented?
      • Relation between Royalties and Fees in the AMMs
      • All Possible Royalty Scenarios
    • Airdrop Compatibility
      • Can Collection.xyz handle airdrops?
    • Pool Types
      • Definition of Pool Types In NFT AMMs
      • Comparison of Different Pool Types
    • Bonding Curves
      • Parameters of the bonding curves
      • Type of bonding curves
        • Linear Curve
        • Exponential Curve
        • Sigmoid Curve
      • How are the parameters used in each of the bonding curves?
      • Customizable spread curves
    • Github Repos & Addresses
    • Audit Reports
    • Technical User Flows
      • Technical Architecture
      • Create Pool
      • Swapping and Trading: User Buying NFT
      • Swapping and Trading: User Selling NFT
      • Bonding Curves and Pricing
Powered by GitBook
LogoLogo

Collection.xyz

  • Main Website
  • NFT DEX Testnet

Connect with us

  • Discord
  • Twitter
  • Blog

© 2023 Collection. All rights reserved

On this page
  1. Technical Reference
  2. NFT AMM

Differences Between Individual And Communal Liquidity Pool Model

There are at least two different major variants and implementations of Liquidity Pools, communal and individual. An example of a communal Liquidity Pool protocol is Uniswap - individual users cede control of the prices they buy or sell at (which are defined by Ticks, and join a common liquidity pool, though they may be able to specify the amount of liquidity they wish to contribute at each Tick.There is also a more complex problem for communal pooling to solve - namely, that while depositing non-fungible tokens into a pool may be unproblematic, deciding which of a set of non-fungible tokens to withdraw when the original owner wants it is non-trivial. There is nothing tying the original depositor to the original NFTs that they deposited - but this we feel is a poor experience. Users are not indifferent to what is withdrawn from the pool, barring any commercial activity, they would like the same NFT to be given to them.

The notion of Liquidity Pool Collection subscribes to is not a communal pool, but an individual one. Here, users create a contract per Liquidity Pool that they fully control. Since there is no communal pooling of assets, withdrawal corresponds to whatever is deposited (barring any commercial activity). Individual pools can be thought of as price-ladders where users put buy or sell orders. But how then is liquidity aggregated across markets? The work of price discovery is deferred to backend indexing processes which can surface the best price at any given moment. This is a standard paradigm for NFT smart contract marketplaces that give up a global best bid/ask liquidity view in order to better capture the spirit of non-fungible finance (namely, granular access controls and apportioning of ownership, and individual control of price setting by token owners)

Individual (Collection.xyz)
Communal (Uniswap style)

Withdrawal of NFTs

Straightforward - every pool is controlled by owner so you withdraw either what you put in, or whatever NFT was sold into the pool

Have to resolve communal ownership of a group of NFTs

Control of Prices

Total

Cannot specify actual levels to buy or sell, only liquidity levels at each pre-defined price level - Levels are pre-defined by communal pool owner

How to get best bids/asks for tokens

Rely on indexing of on-chain events

Can be gotten directly from smart contract

Fees

Rely on indexing of on-chain events

Fees are spread amongst all liquidity providers

PreviousWhat Is A CollectionPool?NextHow do I determine if a pool has sufficient liquidity to fulfil an order?

Last updated 2 years ago