rwa_multichain.perp_trades is the cross-venue fill table for RWA perpetual futures — synthetic exposure to a real-world asset with no tokenized share involved. Grain: one taker-leg fill per row, keyed on (blockchain, block_month, block_date, unique_key). Today it carries Hyperliquid HIP-3 markets; the schema is venue-agnostic so other perp venues can be unioned in without a breaking change.
Taker leg only
Every trade has a buyer and a seller, and the source data emits a fill for each. This table keeps only the taker leg, wherecrossed = true.
That is a deliberate choice: it means SUM(notional_usd) matches the volume Hyperliquid itself reports for a market, rather than double-counting both sides. If you sum an exchange feed that includes both legs, you get twice the real number.
The trade-off is that maker-side analysis is not possible from this table. You cannot measure market-maker fill rates or maker inventory. closed_pnl is also deliberately absent, since it is only meaningful per-account with the full position history.
Table schema
fill_type matters for volume
Liquidations and auto-deleveraging are forced fills, not discretionary trading. In a typical weekorder fills dominate (~13.8M), followed by twap (~1.2M), liquidation (~42K), and adl (~500). Exclude the forced types when measuring genuine trading demand:
twap_id rather than rows if you want order-level counts.
Getting asset class
This table has noasset_class. Join rwa_hyperliquid.markets for classification, issuer, and leverage:
Example query
For pre-aggregated volume, open interest, and funding rather than raw fills, use
perp_metrics_hourly or perp_metrics_daily.