Agent Trading Journal

io.github.smizxe由 GitHub 账号 smizxe 发布v0.1.0更新于 Oct 24, 2026

AI trading journal: your agent logs trades from chart screenshots and checks your own rules.

概览

AI 生成的概览

让 AI 助手从图表截图中记录交易到本地 SQLite 交易日志,按你自己的规则检查,并查看统计。

可以做什么
提供 MCP 工具,通过引导式访谈把你的策略转成自定义字段和逐笔通过/不通过的规则清单,然后记录、修改、查询和删除交易与会话,并附上截图。它计算以 R 为单位的统计、规则遵守情况对比、经验教训和 Markdown 复盘导出,可导入多家平台的经纪商对账单,并能启动本地仪表盘(端口 3777)。还提供针对自营交易公司式限制的风险检查,如单日亏损、最大回撤、每日交易次数和连亏次数。
适用场景
适合交易外汇、期货、股票或加密货币,并希望由助手从截图或对账单完成繁琐记录、检验自己写下的规则是否真正有效的人。可用于回测、前向测试和实盘会话,也支持自营交易公司挑战的跟踪。
运行要求
通过 npx 以 stdio 本地进程运行,需要 Node.js 22 或更高版本,以及桌面版 MCP 客户端(如 Claude Code、Codex CLI、Claude Desktop、Cursor 或 Windsurf)。无需账号或 LLM API 密钥。数据保存在本地 SQLite 文件和截图文件夹中,可用 JOURNAL_DATA_DIR、JOURNAL_DB、JOURNAL_SCREENSHOTS、JOURNAL_PORT、JOURNAL_WEB 和 JOURNAL_LOCALES_DIR 配置。
安装前请注意
它只做记录和分析,不执行交易、不连接经纪商下单,也不提供建议;助手读取图表可能出错,因此记录值和规则检查结果应人工核对和修改。交易、截图和策略数据会写入本地数据目录,应做好备份并视为敏感信息。仪表盘仅绑定 127.0.0.1。杠杆交易风险很高。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Agent Trading Journal,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Agent Trading Journal: an AI trading journal (MCP server) for Claude Code and Codex

[npm] [test] [License: MIT] [MCP] [Node]

Works with: Claude Code · Codex CLI · Claude Desktop · Cursor · Windsurf · any MCP client — Markets: forex, futures, stocks, crypto — Imports: MetaTrader 4/5, TradingView, IBKR, NinjaTrader, Tradovate and more

A trading journal your AI agent writes for you. Paste a chart screenshot into Claude Code, Codex or any MCP client. The agent reads it, fills in your strategy's fields, checks the trade against your rules, logs it, and attaches the image. A local dashboard shows what's working.

No forms, no LLM API key, no account. Everything stays on your machine in one SQLite file.

[Dashboard with synthetic demo data] Dashboard with generated demo data (npx agent-trading-journal demo). Not a real account.

Why this exists

Most "AI trading journals" are a web form plus a chatbot that reads your numbers afterwards. Two problems follow:

  1. Logging is the bottleneck. People stop journaling because entering trades by hand is tedious.
  2. Generic fields measure nothing specific. "Setup: A/B/C" doesn't tell you whether your rules work.

Here the agent is the data-entry clerk, and the journal is shaped by an onboarding interview about how you trade:

Typical AI journalAgent Trading Journal
Who enters tradesYou, in a formYour agent, from screenshots (or a broker statement)
How AI connectsThe app calls an LLM with your API keyMCP: your agent (Claude Code / Codex / …) is the AI
What is measuredFixed fields + free tagsFields and a rule checklist defined for your strategy
RulesNotesEach rule is pass/fail per trade → "E[R] when followed vs broken"
Skipped setupsNot trackedLogged and reviewed (was staying out right?)
Risk limitsRarelyProp-firm style guard: daily loss, max drawdown, trades/day, loss streak

Quick start

1. Connect it to your agent. Requires Node.js 22+.

Claude Code:

bash
claude mcp add journal -- npx -y agent-trading-journal

Codex CLI (~/.codex/config.toml):

toml
[mcp_servers.journal]command = "npx"args = ["-y", "agent-trading-journal"]

Claude Desktop, Cursor, or any other MCP client: add a stdio server with command npx and args ["-y", "agent-trading-journal"]. Run npx agent-trading-journal setup to print all the snippets.

2. Tell your agent: "Set up my trading journal."

It interviews you in your language: markets, risk rules, how you find bias, setups, entries, stops and targets, and when you don't trade. From your answers it proposes fields (what to measure on every trade) and rules (your entry checklist). You confirm, and it saves them. See docs/ONBOARDING.md for the full script.

3. Trade or backtest as usual. Paste screenshots and say "log this". Ask for "weekly review" or "pre-session check". Say "open the dashboard" to see it at http://localhost:3777.

Just looking? npx agent-trading-journal demo fills a separate demo journal and opens the dashboard.

What the agent can do (MCP tools)

AreaTools
Setupget_setup_status, get_onboarding_guide, set_profile, list_presets, import_preset, upsert_strategy, get_strategy, list_strategies, export_strategy
Accounts & riskupsert_account, list_accounts, check_risk
Journalstart_session, list_sessions, log_trade, update_trade, delete_trade, query_trades, get_trade, add_screenshot
Lessonsadd_lesson, update_lesson, delete_lesson, list_lessons
Analysisget_stats, run_sql_readonly, export_review (Markdown, Obsidian-friendly)
Importimport_statement: MetaTrader 4/5, TradingView, IBKR, ThinkorSwim, NinjaTrader, Tradovate, TopstepX, Webull, DAS, TradeZella, Tradervue, generic CSV
Dashboardstart_dashboard, stop_dashboard, dashboard_status

MCP prompts (slash commands in clients that support them): onboarding, log_trade_from_screenshot, weekly_review, pre_session_check. The same workflows are available through the get_workflow tool for clients without prompt support.

Concepts

  • Strategy: your plan (bias, setup, entry, stop, targets, management, no-trade conditions), plus:
    • Fields: per-trade variables you want to analyse (enum, bool, number, text). Every non-text field gets its own breakdown chart.
    • Rules: your checklist, each must or should. Rule adherence compares expectancy when all must-rules were followed against when at least one was broken.
    • Versions: when fields or rules change, the version bumps. Old trades keep the version they were logged under, and removed fields are archived, not deleted.
  • Session: a backtest, forward-test or live block on one symbol, optionally tied to an account.
  • R: result in multiples of planned risk. Stats are R-based, so they compare across instruments and account sizes.
  • Presets: presets/ has a starter template (for traders without a written strategy), a trend pullback and an opening-range breakout. They're starting points to edit, not recommendations.
  • Edge Score: an open 0–100 composite (docs/edge-score.md), withheld under 5 trades.

Data and configuration

Env varDefaultPurpose
JOURNAL_DATA_DIR~/.agent-trading-journalfolder with journal.db + screenshots/
JOURNAL_DB, JOURNAL_SCREENSHOTSinside the data diroverride either path
JOURNAL_PORT3777dashboard port (binds to 127.0.0.1 only)
JOURNAL_WEBunset1 = start the dashboard together with the MCP server
JOURNAL_LOCALES_DIR<data dir>/localesextra dashboard languages as <code>.json (docs/locales.md)

Back up by copying the data dir. run_sql_readonly and the SQLite file are yours to query.

CLI

text
agent-trading-journal [mcp]            MCP server on stdio (what MCP clients run)agent-trading-journal dashboard        dashboard at http://localhost:3777agent-trading-journal demo             demo data in a separate dir + dashboardagent-trading-journal import <file> --account <name> [--strategy <slug>] [--dry-run]agent-trading-journal setup            config snippets for Claude Code / Claude Desktop / Codex

Safety

This is a journaling and analysis tool. It does not place trades, connect to brokers for execution, or give financial advice. Leveraged trading is high-risk. The agent's chart reading can be wrong: every logged value is visible and editable, and rule checks show which ones failed and why.

FAQ

Do I need an OpenAI or Anthropic API key?

No. The journal is an MCP server; the AI is the agent you already use (Claude Code, Codex, Claude Desktop, Cursor…). The journal itself never calls an LLM.

Where is my data stored? Is anything sent online?

Everything is in one local SQLite file plus a screenshots folder (~/.agent-trading-journal by default). The dashboard binds to 127.0.0.1. Nothing is uploaded anywhere by the journal.

Can I use my own trading strategy?

That's the point. The onboarding interview turns your plan into custom fields and a rule checklist. Presets are only starting points. SMC/ICT, price action, supply & demand, indicators, options: anything you can describe works.

Can I import trades from MetaTrader 5 or TradingView?

Yes: import_statement (or agent-trading-journal import <file> --account <name>) reads MT4/MT5 statements, TradingView paper/strategy exports, IBKR, ThinkorSwim, NinjaTrader, Tradovate, TopstepX, Webull, DAS, TradeZella and Tradervue exports. Your agent can then add screenshots and rule checks to the imported trades.

Does it work for backtesting (TradingView Replay) and prop firm challenges?

Yes. Sessions are backtest, forward or live. Accounts can carry prop-firm limits (daily loss, max drawdown, trades per day, loss streak), and check_risk warns before you hit them.

Does it place trades or give signals?

No. It only records and analyses. You make every trading decision.

Credits and license

MIT © 2026 smizxe.

Statement parsing and round-trip reconstruction use @luxalgo/journal-importers and @luxalgo/journal-core (MIT) from LuxAlgo's Trade Journal. The Edge Score is adapted from their open formula. This project is not affiliated with or endorsed by LuxAlgo.

来源:README.md,提交 4947dae

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 24, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分