Skip to main content
The dex.trades_enriched table contains every row of dex.trades, with the same columns, plus usd_amount_adjusted, is_flagged and flagged_details from dex.trades_flagged. Nothing is removed: flagged trades keep their original usd_amount, and usd_amount_adjusted is null on them, so sum(usd_amount_adjusted) gives volume without wash and other inorganic trades.

Flagged Trades

is_flagged is true when the trade is in dex.trades_flagged. A trade is flagged by the flag registry, or by rules that find bad tokens (supply_shock_v1, self_issued_v1) and same-pool round trips (same_pool_roundtrip_v1). For how each rule works, with examples, see How Trades Are Flagged.
  • Volume without flagged trades: sum(usd_amount_adjusted).
  • Flagged volume: sum(usd_amount) - sum(usd_amount_adjusted).
  • One rule only: array_contains('same_pool_roundtrip_v1'::variant, flagged_details:reasons).

Table Columns

_str columns are numeric fields cast to varchar to retain precision. Unique Key: transaction_hash, unique_id