Product · Portfolio

Every position, every wallet, one source of truth

A unified portfolio engine that fuses spot holdings, perpetual positions, pending limit orders, and historical fills into a single, real-time view — with cost basis, realized PnL, and on-chain receipts you can audit down to the signature.

Real-time
Position updates
Multi-wallet
Aggregated view
FIFO + WAC
Cost basis methods
Solscan
Receipt-level audit
Why this matters

Solana traders bleed money on the metrics they cannot see

Most Solana memecoin traders cannot tell you their true PnL. They can tell you their wallet balance, and they can scroll Dexscreener to see whether a given token is up or down — but the connecting fabric, the actual net realized and unrealized PnL across every fill, every wallet, every airdrop, and every fee, is invisible to them. That blindness is expensive. It is the reason traders re-enter losers thinking they are "up", size into winners they have already partially exited, and fail to understand which strategies are actually profitable after gas, MEV tax, and slippage.

Axiom's Portfolio module exists to end that. It is a real-time, multi-wallet, multi-venue position and PnL engine purpose-built for the speed of Solana — and for the hybrid spot + perpetual workflows that define modern on-chain trading. It ingests every fill the moment the slot finalizes, normalizes it against canonical price feeds, attributes cost basis using your chosen accounting method, and surfaces the numbers that actually drive decisions: realized PnL by token, unrealized exposure by venue, fee drag by route, and risk concentration across the entire book.

Core capabilities

What the portfolio engine tracks for you

Multi-wallet aggregation

Connect or watch unlimited wallets. Holdings, fills, and PnL roll up into a single view; drill into any wallet for isolated metrics.

Spot + Perp together

SPL token bags and Hyperliquid perpetual positions share one schema, so a delta-neutral basis trade reads as one position, not two screens.

Live PnL streaming

Unrealized PnL updates every tick from canonical AMM prices and perpetual mid; no manual refresh, no stale snapshots.

Cost basis attribution

FIFO or weighted-average cost basis, applied per token and per venue, with full edit history so corrections are auditable.

Full fill ledger

Every swap, every limit fill, every funding payment — timestamped, priced, and linked to its on-chain signature for receipt-level audit.

Solscan deep links

One click takes you from any row to the canonical Solana explorer view, so you can verify transactions in seconds.

Allocation analytics

See concentration by token, sector, venue, and wallet — and watch how exposure shifts as you trade in real time.

Equity curve & drawdown

Account-level equity charted from your first recorded fill, with maximum drawdown, recovery time, and rolling Sharpe.

Risk dashboard

Margin usage, liquidation distance, funding-rate exposure, and per-position VaR rolled into one risk panel for the perpetuals book.

Architecture

How the data actually gets there

The portfolio engine is built on three layers: an ingestion layer that watches every wallet you have linked, a normalization layer that turns heterogeneous on-chain events into a uniform fill schema, and a presentation layer that lets you slice that schema by any axis you care about. Each layer is designed to keep working when Solana is at its worst — during congestion spikes, leader-schedule disruption, or RPC node degradation.

1. Ingestion

Axiom runs its own indexer cluster against Solana's mainnet beta. The indexer subscribes to program logs for every venue we support — Raydium, Meteora, Orca, Pump.fun bonding curves, Jupiter aggregator transactions, Hyperliquid perpetual fills via the cross-chain bridge, and the major Solana lending markets. For each new transaction touching a watched wallet, the indexer extracts the relevant token transfers, applies decimals, and writes a raw event into a per-wallet queue with sub-second median latency. There is no polling, no "refresh button" — your portfolio is current to the last finalized slot.

2. Normalization

Raw events from Pump.fun look nothing like raw events from Raydium CLMM or from a Hyperliquid funding payment. Normalization rewrites them into a single canonical fill schema: side, baseToken, quoteToken,baseQty, quoteQty, price, fees,venue, signature. Every fill is then priced against a USD reference using a time-weighted feed sourced from the deepest available pool, so PnL is comparable across venues even when each venue quotes against a different asset.

3. PnL attribution

For each token, your selected cost-basis method (FIFO by default, weighted-average cost as an opt-in) builds an inventory queue. Every buy adds a layer; every sell consumes layers and emits a realized PnL row. Unrealized PnL is computed continuously by marking the remaining inventory against the current canonical mid price. For perpetuals, realized PnL includes funding payments and the entry-vs-exit price differential, weighted by position size and time held. Every number on the portfolio page is reconstructible from the fill ledger — there are no opaque aggregates.

4. Presentation

The UI is built around two surfaces: an overview that answers "how is my account doing right now?" and a detail view per token that answers "why does that number look the way it does?". Both update live. Both can be filtered by wallet, by venue, by date range, by token sector, and by tag. The same data drives the CSV export and the JSON API, so external tax tooling and personal dashboards consume the exact same numbers you see.

Workflows

What this unlocks on a normal trading day

Morning review. Open the overview, scan equity curve, drawdown, and 24-hour PnL. Spot a token whose unrealized PnL has flipped overnight — drill in, see the price chart with your fill markers overlaid, decide whether to add, hold, or trim.

Live trading. Execute a swap from Discover or Pulse; watch the position appear in the portfolio in under a second with the new average cost, the realized PnL on any partial close, and the updated allocation pie. No reconciliation, no waiting.

Risk check. Switch to the perpetual sub-view: see consolidated margin usage across all open Hyperliquid positions, liquidation distance per leg, and the funding rate you are paying or receiving. If margin usage crosses a threshold you set, the panel highlights the at-risk legs and links straight into the trading screen.

End of week. Filter the fill ledger to the last seven days, group by strategy tag, export as CSV. Now you know exactly which of your strategies made money after fees and which lost.

Tax season. Export the full fill ledger in CSV or JSON, complete with cost-basis lots, realized PnL per disposition, and Solscan signature links. Hand it to your accountant or upload it to any major crypto tax tool.

Privacy & control

Your keys, your data, your choice

You can use Portfolio in two modes. Watch-only mode requires nothing more than a public wallet address; we never request a signature and never have access to your private key. Connected mode pairs the wallet with Axiom's trading interface so you can execute directly from a position row, but execution still requires signature on every transaction — Axiom never custodies your assets. Wallet labels, strategy tags, cost-basis overrides, and CSV exports are scoped to your account and encrypted at rest. We do not sell aggregated trade data, and we publish what we collect.

For traders who run multiple personas — a public alpha wallet and a private size wallet, for instance — you can group wallets into segregated portfolios so that consolidated views never leak between contexts. Each portfolio has its own equity curve, drawdown, and allocation views.

Performance

Built for the speed of Solana

Solana blocks finalize roughly every 400 milliseconds, and the busiest wallets on the network see hundreds of fills an hour during peak narratives. Portfolio is engineered for that volume. The indexer cluster ingests, normalizes, and writes new fills to your account in under 800 ms median, end to end, including the propagation time from validator to RPC. The UI uses a streaming WebSocket so updates are pushed, not polled. Even on a thousand-position book across a dozen wallets, the overview renders in under a second and remains interactive while live updates flow in.

When you trade through Axiom, fills are written optimistically to the portfolio the moment the signature is broadcast, then reconciled when finalization confirms — so your position view is never blocked by network finality. If a transaction fails, the optimistic row is removed automatically and an error toast explains why.

FAQ

Common questions

Does Portfolio work with wallets I don't trade through Axiom?

Yes. Add any Solana wallet address in watch-only mode and the indexer will reconstruct its entire history from the chain. You get the same PnL, cost basis, equity curve, and allocation analytics with no execution coupling.

Can I track airdrops, claims, and LP rewards?

Yes. Token transfers with no corresponding buy event are tagged as inflows with zero cost basis by default; you can override the cost basis manually if you want to model an implied price (for example, a Jupiter airdrop you would have otherwise had to buy at market). Overrides are versioned and auditable.

How are losses on rug-pulled tokens handled?

If a token's pool is fully drained and liquidity goes to zero, the unrealized PnL marks against the residual reference price. You can manually mark a position as "written off" to lock in the realized loss for tax purposes; the action is recorded on your fill ledger.

Is there an API?

Yes. The same data that powers the UI is available via authenticated JSON endpoints — positions, fills, PnL, equity curve, allocation. Bring your own dashboard, your own tax tool, or your own back-tester.

Ready to trade smarter?

Open Axiom Trade and put institutional-grade tooling to work in seconds.