Charles Schwab trade journal: auto-sync your options and stock trades
How to turn your Charles Schwab account into a full trading journal — read-only OAuth sync, a 10-year backfill, per-contract fees, and automatic round-trip P&L.
Schwab gives you order history, but it does not give you a journal. The web platform shows fills, not round-trips; it does not compute your win rate, it does not chart P&L by symbol or hour, and exporting it to a spreadsheet means re-doing the fee math by hand every week. A dedicated Schwab trade journal closes that gap by reading your order history and reconstructing it into something you can actually learn from.
How the Schwab connection works
MyTradeLens connects to Charles Schwab through read-only OAuth. You authorize the connection on Schwab’s own login screen — MyTradeLens never sees or stores your password — and from then on it can read the order history you approved and nothing else. It cannot place trades, move money, or withdraw. You can revoke the connection from Schwab or from MyTradeLens at any time.
- Read-only — the connection can read order history, never trade or transfer.
- No password storage — authentication happens on Schwab’s side via OAuth.
- 10-year backfill — your history imports, not just trades from today forward.
- Per-contract fees applied — options P&L reflects what you actually netted.
From fills to round-trips, automatically
The moment your Schwab data lands, every fill is grouped into round-trip trades — entries, adds, rolls, and closes collapsed into one position with a true entry, exit, hold time, and net P&L. This is the step that makes the numbers trustworthy: your win rate counts trades you actually made, not order tickets, and your average win and loss reflect fees instead of ignoring them.
What you get on top of the raw data
Once the trades are reconstructed, the analytics come for free:
- A profit calendar and trade blotter for your full Schwab history.
- Win rate, expectancy, and average win/loss across any date range.
- P&L broken down by symbol, day of week, and hour of day.
- Goal tracking with breach alerts, so you can hold yourself to a plan.
Keeping it in sync
Schwab data refreshes on a schedule and on demand, so your journal stays current without manual exports. New fills group themselves into your existing round-trips, and repeat refreshes are deduplicated so nothing double-counts. The result is a Schwab trade journal that is always up to date the next time you sit down to review.
Interactive Brokers (via Flex Query) and Moomoo (via CSV import) connect the same way, so a multi-broker options trader gets one unified journal instead of a folder of spreadsheets.