| Metric | ⭐ Core | 📈 Trading | 📋 Options | 📈+📋 Trading+Options | Total |
|---|
| ⭐₿ | Symbol▲ | Side▲ | Shares▲ | Avg Price▲ | Live Price▲ | Day P&L▲ | Day %▲ | Cost Basis▲ | Market Value▲ | Unrealized P&L▲ | YTD P&L▲ | Break Even▲ | Entry Date▲ |
|---|
| Symbol▲ | Side▲ | Qty▲ | Avg Entry▲ | Exit Price▲ | Realized P&L▲ | P&L %▲ | Entry Date▲ | Exit Date▲ |
|---|
| Date▲ | Symbol▲ | Side▲ | Qty▲ | Price▲ | Total▲ | Bucket | Actions |
|---|
| Symbol▲ | Trades▲ | Realized P&L▲ | Unrealized P&L▲ | Combined P&L▲ | Win Rate▲ |
|---|
| Contract▲ | Description | Trades▲ | Contracts | Avg Cost▲ | Mark | Realized P&L▲ | Unrealized P&L▲ | Combined P&L▲ |
|---|
Switch to a specific crypto account to view its blockchain staging queue.
Add wallet addresses for this account. The chain (BTC/ETH/SOL) is auto-detected from the address format. All wallets are fetched together when you click ⟳ Fetch in the Staging tab.
No wallet addresses added yet.
Paste text or a screenshot of your trades. Screenshots are parsed automatically using AI (requires Claude API key in Settings).
Enter one per line: SYMBOL PRICE
For options, use the mark (mid) price, not last price.
Upload one or more Schwab monthly brokerage statement PDFs. AI will extract trades and cash events (advisory fees, margin interest, dividends) and compare against your dashboard. Statements are processed sequentially — duplicate periods are flagged automatically. Requires Claude API key in Settings.
Customize bucket names and manage which tickers default to ⭐ Core for this account.
Free with your Schwab account. Register an app to get your Client ID & Secret. Set Redirect URI to https://127.0.0.1 in your app settings.
Map each Schwab account to a portfolio tab, then sync trade history directly. Accounts not mapped will be skipped.
Fallback: Twelve Data free API key (800 calls/day) used when Schwab is not connected.
Free keys for auto-fetching on-chain transactions. BTC (Blockstream) requires no key.
Sync your portfolio data across devices. Create a secret Gist (any filename), then generate a token with gist scope.