| TRADE_ID | NUMBER | Unique trade identifier assigned by the Hyperliquid L1 matching engine. |
| BLOCK_NUMBER | NUMBER | L1 block number containing this event. |
| BLOCK_TIMESTAMP | TIMESTAMP_NTZ | Block production timestamp on the Hyperliquid L1. This is the canonical time for ordering blockchain events. |
| COIN | TEXT | Raw asset identifier. Perps use plain ticker (e.g. BTC), spot uses @token_index format (e.g. @2), prelaunch uses xyz:name prefix. |
| SYMBOL | TEXT | Human-readable trading symbol. Resolved from token metadata for spot tokens; same as coin for perps. |
| TOKEN_ID | TEXT | Unique identifier (hex address) for the spot token. |
| TOKEN_NAME | TEXT | Ticker symbol for the spot token. |
| FULL_NAME | TEXT | Full descriptive name of the spot token. |
| IS_CANONICAL | BOOLEAN | Boolean indicating whether this is the canonical version of the token. |
| TRADE_TIMESTAMP | TIMESTAMP_NTZ | Exact fill timestamp from the matching engine, may differ slightly from block_timestamp. |
| TX_HASH | TEXT | L1 transaction hash uniquely identifying the on-chain transaction. |
| PRICE | FLOAT | Execution price in USD for this trade. |
| TRADE_SIZE | FLOAT | Size of the trade in base asset units. |
| TRADE_NOTIONAL | FLOAT | USD notional value of the trade (price x size), rounded to 2 decimal places. |
| BUYER_ADDRESS | TEXT | HyperCore address of the buyer in this trade. |
| SELLER_ADDRESS | TEXT | HyperCore address of the seller in this trade. |
| BUYER_ORDER_ID | NUMBER | Order ID for the buyer’s order that was filled in this trade. |
| SELLER_ORDER_ID | NUMBER | Order ID for the seller’s order that was filled in this trade. |
| BUYER_DIR | TEXT | Buyer’s trade direction (e.g. Open Long, Close Short). |
| SELLER_DIR | TEXT | Seller’s trade direction (e.g. Open Short, Close Long). |
| BUYER_CROSSED | BOOLEAN | Whether the buyer’s order crossed the spread (was a taker). |
| SELLER_CROSSED | BOOLEAN | Whether the seller’s order crossed the spread (was a taker). |
| BUYER_FEE | FLOAT | Fee charged to the buyer. Negative values indicate a maker rebate. |
| SELLER_FEE | FLOAT | Fee charged to the seller. Negative values indicate a maker rebate. |
| FEE_TOKEN | TEXT | Token in which trading fees are denominated. |
| BUYER_CLOSED_PNL | FLOAT | Realized profit/loss for the buyer if this trade closes or reduces an existing position. |
| SELLER_CLOSED_PNL | FLOAT | Realized profit/loss for the seller if this trade closes or reduces an existing position. |
| BUYER_START_POSITION | FLOAT | Buyer’s position size before this trade was executed. |
| SELLER_START_POSITION | FLOAT | Seller’s position size before this trade was executed. |
| BUILDER_ADDRESS | TEXT | Address of the block builder (MEV/builder infrastructure). NULL for most trades. |
| TOTAL_BUILDER_FEE | FLOAT | Combined builder fee from both buyer and seller sides. |
| BUYER_TWAP_ID | NUMBER | TWAP order ID for the buyer. NULL if not a TWAP order. |
| SELLER_TWAP_ID | NUMBER | TWAP order ID for the seller. NULL if not a TWAP order. |
| BUYER_CLIENT_ORDER_ID | TEXT | Client-assigned order ID for the buyer’s order. |
| SELLER_CLIENT_ORDER_ID | TEXT | Client-assigned order ID for the seller’s order. |
| INSERTED_TIMESTAMP | TIMESTAMP_NTZ | Timestamp when the record was inserted into this table (Snowflake SYSDATE). |
| MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | Timestamp when the record was last modified in this table (Snowflake SYSDATE). |
| EZ_SPOT_TRADES_ID | TEXT | Surrogate key (same as fact_trades_id) |
| _INVOCATION_ID | TEXT | dbt invocation identifier for tracking which run produced this record. |