Protocols
Project X swaps and concentrated liquidity on Hyperliquid
rotki decodes Project X activity on Hyperliquid: swaps through its router, and concentrated liquidity positions - liquidity added, liquidity removed, and fees collected on your position NFTs.
Supported features
- Swaps through the Project X router decoded as paired spend/receive trades.
- Concentrated liquidity positions decoded from the Project X NFT manager: increases, decreases, and collections against a specific position id.
- Fee collections separated from liquidity withdrawals, so earned fees are recorded as income rather than as a return of your own capital.
- Position tokens and amounts resolved from the position NFT when they cannot be inferred from the transfers in the transaction.
Limitations
- Project X is tracked on Hyperliquid (HyperEVM). You need a Hyperliquid address added in rotki for its activity to be decoded.
- The value of an open concentrated liquidity position is not queried as a Project X protocol balance; the events on the position are decoded, but the live position is not priced as a separate balance entry.
Setup
- 1In rotki, open Blockchain Balances → Hyperliquid → Add address.
- 2Open History and let the transaction sync run. Project X swaps and liquidity events are decoded automatically.
Frequently asked questions
Are the fees I collect treated as income?
Yes. rotki separates a fee collection from a liquidity withdrawal, so collected fees are recorded as earned rather than as your own principal coming back.
Why does a liquidity event reference a number?
That is the position id of the Project X NFT the event belongs to. Concentrated liquidity positions are NFTs, so each event is tied to the position it changed.
Where do the Hyperliquid queries go?
rotki runs locally and talks directly to the Hyperliquid RPC endpoint you configure - the public default, a third-party provider, or your own node. Nothing passes through a rotki-operated server.