> For the complete documentation index, see [llms.txt](https://docs.artinals.com/artinals-protocol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.artinals.com/artinals-protocol/trade-module/data-structures/collectionpool.md).

# CollectionPool

**CollectionPool** tracks all TradingPools associated with a single ART20 collection, along with aggregated collection-level trading metrics.

**Key Fields**:

* `id`: Unique identifier of the CollectionPool.
* `collection_id`: Which ART20 collection it represents.
* `pool_id`: Optionally stores a reference if there’s a single primary pool.
* `active_pools`: A table mapping pool IDs to their corresponding TradingPools.
* `total_volume`: How much volume (token value) the collection has generated over time.
* `total_nfts`: Number of NFTs locked in all pools of this collection.
* `floor_price`: The lowest known price in recent trades.
* `last_trade_price`: The last recorded trade price across all pools.
* `trades_24h`: Count of trades in the last 24 hours.
* `price_history`: A record of past trades for computing 24h averages and other historical metrics.

**Role**:

* Serves as a hub for all pools and trading activities related to a single collection.
* Provides aggregated insights—volume, floor price, and more—that indexers and front-ends can query.
* Helps determine the health, popularity, and liquidity state of a given NFT collection’s markets.

***

The TRADE module’s data structures combine to create a dynamic, DeFi-like environment for NFT trading. By leveraging these structures, the Artinals ecosystem can scale beyond fixed-price sales and into continuous, market-driven price discovery—offering a richer and more engaging experience for collectors, traders, and liquidity providers.
