Entities

Entities define the schema of the subgraph, and represent the data that can be queried. Within each entity are sets of fields that store useful information related to the entity. Below is a list of the available entities within the PYESwap Subgraph, and descriptions for the available fields.

To see an interactive sandbox of all entities see the Graph Explorer.

Each entity is defined with a value type, which will always be a base AssemblyScript type, or a custom type provided by The Graph's custom TypeScript library. For more information on value types see here.

PYESwap Factory

The PYESwap Factory entity is responsible for storing aggregate information across all PYESwap pairs. It can be used to view stats about total liquidity, volume, amount of pairs and more. There is only one PYESwapFactory entity in the subgraph.

Token

Stores aggregated information for a specific token across all pairs that token is included in.

Pair

Information about a pair. Includes references to each token within the pair, volume information, liquidity information, and more. The pair entity mirrors the pair smart contract, and also contains aggregated information about use.

User

A user entity is created for any address that provides liquidity to a pool on PYESwap. This entity can be used to track open positions for users. LiquidyPosition entities can be referenced to get specific data about each position.

LiquidityPositiion

This entity is used to store data about a user's liquidity position. This information, along with information from the pair itself can be used to provide position sizes, token deposits, and more.

Transaction

Transaction entities are created for each Binance Smartchain transaction that contains an interaction within PYESwap contracts. This subgraph tracks Mint, Burn, and Swap events on the PYESwap core contracts. Each transaction contains 3 arrays, and at least one of these arrays has a length of 1.

Mint

Mint entities are created for every emitted Mint event on the PYESwap core contracts. The Mint entity stores key data about the event like token amounts, who sent the transaction, who received the liquidity, and more. This entity can be used to track liquidity provisions on pairs.

Burn

Burn entities are created for every emitted Burn event on the PYESwap core contracts. The Burn entity stores key data about the event like token amounts, who burned LP tokens, who received tokens, and more. This entity can be used to track liquidity removals on pairs.

Swap

Swap entities are created for each token swap within a pair. The Swap entity can be used to get things like swap size (in tokens and USD), sender, recipient and more. See the Swap overview page for more information on amounts.

Bundle

The Bundle is used as a global store of derived BNB price in USD. Because there is no guaranteed common base token across pairs, a global reference of USD price is useful for deriving other USD values. The Bundle entity stores an updated weighted average of BNB<->Stablecoin pair prices. This provides a strong estimate for the USD price of BNB that can be used in other places in the subgraph.

Historical Entities

The subgraph tracks aggregated information grouped by days to provide insights to daily activity on PYESwap. While time travel queries can be used for direct comparison against values in the past, it is much more expensive to query grouped data. For this reason the subgraph tracks information grouped in daily buckets, using timestamps provided by contract events. These entities can be used to query things like total volume on a given day, price of a token on a given day, etc.

For each DayData type, a new entity is created each day.

PYESwapDayData

Tracks data across all pairs aggregated into a daily bucket.

Pair Day Data

Tracks pair data across each day.

TokenDayData

Tracks token data aggregated across all pairs that include token.

Last updated