Record every trade. See what actually works.

The open-source trade journal: broker sync, deep analytics, a P&L calendar, daily journaling with voice dictation, and AI reflection. Free inside LuxAlgo, where your AI can read and write it over MCP, or on your own machine.

Use it free in LuxAlgo
MCP server live
Star on GitHub
dashboard · P&L calendar · Edge Score
MonTueWedThuFriWeek
23t
+$240
32t
-$120
41t
+$85
5·
64t
+$310
wk 1+$515
92t
-$260
103t
+$145
115t
+$420
121t
-$95
132t
-$180
wk 2+$30
162t
+$95
173t
+$230
184t
-$340
192t
+$120
201t
+$65
wk 3+$170
233t
-$150
242t
+$280
251t
+$75
265t
-$420
272t
+$190
wk 4-$25

Edge Score

v2 · open formula

Win rateProfit factorAvg W/LDrawdownRecoveryConsistency

Net P&L

+$0

Day win rate

0%

Sample data, drawn in HTML. The real dashboard renders your own fills, plus equity curve, gauges, and time-of-day heatmaps, with every chart drawn by Vela™, our open-source charting engine built for speed in the agentic era.

Live on mcp.luxalgo.com · sign in

Ask your journal from any AI.

Connect the LuxAlgo MCP in Claude, ChatGPT, Cursor or any MCP client, and thirteen journal_* tools read and write the journal inside LuxAlgo, as you. Ask for your worst weekday and the trades behind it, have the agent tag them and write the day note, or log a trade by hand. The first protected call asks you to sign in with your LuxAlgo account; the app owns the rules and validates every change.

Running the server locally instead? Sign in once with npx -y @luxalgo/mcp login and the same tools follow.

journal_list_accounts

Your journal accounts and timezone: the first call, since every account filter takes these ids.

journal_overview

The dashboard for a window: metrics, Edge Score, per-day P&L, equity curve, open positions. Compare adds the previous window.

journal_calendar

One month of the P&L calendar: day cells, weekly and monthly totals, trading and winning days.

journal_breakdown

Closed trades grouped by weekday, time of day, hold time, symbol, side, size, tag, rating and asset class.

journal_list_trades

Trade summaries, paginated: filter by account, day window, symbol, direction, status and tag; sort either way.

journal_get_trade

One trade in full: fills, per-exit P&L, every annotation.

journal_get_day

A single day’s stats, trades and notes.

journal_list_tags

Your tags, mistakes and playbooks with usage counts, so new annotations reuse your words.

journal_search_notes

Day notes and trade notes as one newest-first stream, with text, day, symbol and account filters.

journal_add_trade

Log a trade by hand: its fills into a manual or import account.

journal_update_trade

Annotate a trade: notes, tags, mistakes, playbook, rating, stop, target, reviewed.

journal_write_note

Add a note to a day.

journal_update_note

Replace a day note’s text or move it to another day.

Your fills find their own way in.

Read-only broker sync through the open Broker SDK (Alpaca, Binance, Kraken, IBKR Flex, Topstep, and more), with credentials AES-256-GCM encrypted next to your database. Or drop a statement on the import page: twelve formats auto-detect, re-imports dedupe themselves, and a column mapper covers any other CSV.

Self-hosted. Free, forever.

LuxAlgo Trade JournalDashboard7D 30D 90D YTD All☷ Filters
▦ Layouts ⌄ 16 of 16 cards☷ Customize
+$0.006 closed trades
0%
0.00gross profit ÷ gross loss
0%
4 trading days
0.00
Win % Profit factor Avg W/L Drawdown Recovery Consistency
Four trading days ·
$10k opening balance
Wins and losses by trading day
SunMonTueWedThuFriSatWeek
Recent tradesOpen positions

Round trips, not rows

Flat-to-flat position cycles rebuilt from raw fills: partial fills, scale-ins, flips, futures multipliers.

Your accounting, per account

FIFO, LIFO, or weighted average per account. Switch it and the engine rebuilds every cycle.

Notes that survive

Ratings, tags, mistakes, and journal notes are keyed to the trade, so they survive every rebuild.

Analytics on top: net and gross P&L, win and day-win rates, profit factor, expectancy, R multiples, streaks, drawdown and recovery, profit concentration, and per-symbol, tag, mistake, and playbook breakdowns.

A score that shows its formula.

The Edge Score is a 0 to 100 composite of six components with published weights, versioned in the repo and withheld entirely below five closed trades. No black box: the same radar the dashboard draws is the table below.

Win rate

weight 15

Profit factor

weight 25

Avg win / avg loss

weight 20

Drawdown

weight 15

Recovery factor

weight 10

Consistency

weight 15

Score = Σ(componentᵢ × weightᵢ) / Σ weights · EDGE_SCORE_VERSION = 2

Write the day down. Or just say it.

Every trading day gets a page: day stats, the intraday P&L curve, and autosaving notes. Type them or dictate them with browser speech recognition, zero keys, zero cost. Folders, search, and tagged notebooks hold the longer thinking; playbooks turn setups into rule checklists that Reports scores.

Reflection, with your own key.

Bring an Anthropic API key and the journal reflects back: session recaps, per-trade critiques, and ask-your-journal answers grounded in your own aggregates. The key is encrypted at rest, and requests go from your server to the model, nowhere else. Want your own agent to do the journaling? The hosted LuxAlgo MCP above reads and writes the journal inside LuxAlgo, as you.

Running before your coffee is.

Node 22+ and pnpm, or just Docker. First run creates the SQLite database by itself; a password and at-rest encryption are one env var each when you want them. Early release: APIs and schema may still move before 1.0.

terminal

Your trades. Your journal. Your story.

Free inside LuxAlgo, or self-hosted. Free, forever.

MIT-licensed, with no telemetry, ever. The free journal inside LuxAlgo runs on this same open engine, and the repo stands alone: LuxAlgo integrations are optional bridges, never dependencies.

MIT © LuxAlgo Global, LLC · free in LuxAlgo or self-hosted · no telemetry, ever · contribute

Trade Journal reports and analyzes what your broker reports. Nothing it computes or generates (including generated recaps, critiques, and answers) is investment advice, and no metric predicts future results. Verify important numbers against your broker’s own statements.