client.user(address), not from the package root. If the indexer is down, you get an empty list. Trading still works off the chain.
Do not mix the three lists. Remaining Yes and No: share positions. Pool shares: LP positions.
market and limit. Swap fees live in the indexer hook_fee table, not on the trade row.