关于 Rule Trade - Japanese equity verification layer
Rule Trade 是面向日本股票研究的 MCP 服务,将已发布的验证数据整理为统计结果,供研究者和分析客户端查询。它读取现有流程生成的 JSON,不运行自己的分析引擎,也不提供交易建议。
主要功能
- 01查询市场状态与三轴评分
- 02查看 50 项市场异常统计
- 03检索烛形与技术指标验证结果
- 04分析事件反应和 ETF 衰减
- 05提供市场信号及更新指南
适用场景
- 01比较不同市场异常的验证统计
- 02查看技术指标在不同条件下的表现
- 03研究事件、市场状态或杠杆 ETF 衰减
MCP 相关
通过 `https://ruletrade.jp/mcp` 向 MCP 客户端提供无状态 HTTP 工具。结果附带免责声明,且不包含原始价格序列、交易建议或完整匹配股票列表。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://ruletrade.jp/mcpclaude mcp add --transport http jp-ruletrade https://ruletrade.jp/mcp{"mcpServers":{"jp-ruletrade":{"type":"http","url":"https://ruletrade.jp/mcp"}}}在 Cursor 中打开{"servers":{"jp-ruletrade":{"type":"http","url":"https://ruletrade.jp/mcp"}}}在 VS Code 中打开{"mcpServers":{"jp-ruletrade":{"type":"http","url":"https://ruletrade.jp/mcp"}}}{"mcpServers":{"jp-ruletrade":{"serverUrl":"https://ruletrade.jp/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
8| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| strategy | enum | 否 | 规则名称。目前仅支持 bnf(25日线偏离率的反向交易规则)bnf |
详细介绍
Rule Trade MCP / 规则交易 MCP
Endpoint: https://ruletrade.jp/mcp
(llms.txt: https://ruletrade.jp/mcp/llms.txt · OpenAPI: https://ruletrade.jp/mcp/openapi.json · health: https://ruletrade.jp/mcp/health)
English
面向日本股票、通过 MCP 提供的验证层。
大多数日本股票 MCP 服务覆盖的是基础数据层——申报文件、价格和订单执行。 本服务覆盖的是缺失的部分:发布的机械规则实际应用后发生了什么。 本服务不运行自己的引擎;它读取现有流水线每日发布的 JSON 并重新整理。 零依赖,无需 API 密钥,无需注册。
可以获取的内容
| 工具 | 返回内容 |
|---|---|
get_daily_signals | 符合已发布均值回归规则(25 日移动平均线偏离度 ≤ -15%)的一只股票,延迟一个交易日。返回匹配数量;不分发完整匹配列表。 |
get_market_regime | 机器分类的市场状态(BULLISH / NEUTRAL / BEARISH / PANIC)、熔断状态、VIX、日经 225 指数、每日历史数据,以及三轴评分(趋势、短期风险、供需),并附上各轴评分的依据。不含股票名称。 |
get_anomaly_summary | 在 61 年数据上测试的 50 种日本市场异常现象——结论、胜率、平均收益、样本量、p 值和对照组。可按 name 筛选。此外还有五项崩盘前兆指标,以及一项经过 26 年数据验证的七标志点火指标。 |
get_candlestick_verdict | 在 1,550 只 TSE Prime 股票的 10.5 年数据上测试的全部 12 种经典日本蜡烛图形态——交易次数、胜率、盈利因子、超额收益、p 值、亏损年份,以及每种形态未通过的五项采纳标准。**没有一种达到标准。**盈利因子最高(3.04)的形态,在样本前半段和后半段的结果方向相反。 |
get_event_reaction | 三项独立研究揭示的事件后续影响——27 种事件类型(地震、利率决策、关税、疫情),约 26,000 份公告的财报后漂移,以及指数成分股的纳入和剔除。三项研究的结论一致:事件尘埃落定前,走势已经发生。刻意排除了个股行数据和行业组合。 |
get_indicator_verdict | 按照教科书所述方式交易的 26 种技术指标——TOPIX500、10 年数据、约 500,000 笔交易。统计两种退出方式下的胜率、期望收益、盈利因子和相对于随机入场的超额收益。九种指标在所有市场状态下均达到标准;十三种未达到,而这十三种大多是初学者最先学到的指标。 |
get_etf_decay | 杠杆和反向 ETF 十二年来的衰减测量数据——逐年理论值与实际值对比、按持有期统计的胜率、按市场状况统计的盈利因子,以及 305 次持仓等待回本的尝试(99.3% 回本;未回本的尝试亏损 32.5%)。 |
list_tools_guide | 更新时间(JST)、延迟、刻意不返回的内容、免责声明和路线图。请先调用此工具。 |
按设计无法获取的内容
- 原始价格序列、OHLCV 或财务报表数值
- 仓位规模、入场价/出场价、止损位或止盈位
- 运营方自有系统使用的生产阈值
- 任何建议、评级或买入/卖出信号
每个响应都包含一个 disclaimer 键。向用户转述结果时,请勿删除该键。
输出描述的是机械规则是否匹配。它不是投资建议,不构成招揽,也不保证未来收益。
如何连接
# Claude Code
claude mcp add --transport http ruletrade https://ruletrade.jp/mcp
- claude.ai:设置 → 连接器 → 添加自定义连接器 →
https://ruletrade.jp/mcp - 任何 MCP 客户端:向
https://ruletrade.jp/mcp发送 JSON-RPC 2.0 POST 请求(Streamable HTTP,无状态)
研究数据的来源
规则和验证数据由运营者以书籍形式出版(日语,Kindle): Silent Investor BNF、Crashes Decay 和 All 50 Japanese Market Anomalies Tested Over 61 Years。 异常数据集是该书出版时(2026-08)固定的快照,不会每日更新。
请注意
- 数据会在日本交易所的交易日更新。具体时间见
list_tools_guide。 - 目前未实施速率限制,请合理使用。
- 统计值经过四舍五入;p 值保留 3 位有效数字,让非常小的数值也易于阅读。
日本語
kaburadar.jp / ruletrade.jp 每日发布经过验证的 JSON(docs/*.json),
本项目是一个 转换层,让 AI Agent(Claude / Cursor / ChatGPT 等)可以通过 MCP 读取这些数据。
不包含引擎,只读取并整理 GitHub raw 中的 JSON。零依赖包。
规范 URL 为 https://ruletrade.jp/mcp。实际服务由 Cloudflare Workers 提供,
但由于 ruletrade.jp(Vercel)的 vercel.json 设置了 rewrite,即使服务地址变更,使用者侧的 URL 也不会改变。
| 工具 | 读取的 JSON | 内容 |
|---|---|---|
get_daily_signals | free_scanner.json | 符合 BNF 25 日均线偏离规则的股票(延迟 1 个交易日)。仅返回 1 条,并返回数量 |
get_market_regime | radar.json / market_jiai.json / radar_history.json / score3.json | 市场环境 BULLISH〜PANIC、HALT、VIX、日经、历史记录 + 3 轴评分(趋势/短期风险/供需・5 个等级・各轴的依据) |
get_anomaly_summary | anomaly_results.json / gauge.json / crash.json | 50 条投资格言的验证结果(61 年・判定/胜率/p 值。可用 name 筛选)+《暴跌会逐渐衰减》中的 5 个前兆 + 点火仪表(26 年验证) |
get_candlestick_verdict | candlestick_verdict.json | 酒田五法 12 种形态的验证结果(东证 Prime・10 年半)。12 种全部不采用・未达到的标准・不采用的原因。可用 pattern 筛选(日英别名均可) |
get_event_reaction | event_reaction.json / earnings_drift.json / supply_demand_events.json | 通过 3 项验证,了解事件发生后出现了什么情况。①27 种事件(地震・加息・关税等)②财报后的漂移 ③指数调整。可用 event 筛选(地震 / 财报 / TOPIX 等) |
get_indicator_verdict | indicator_verdict.json | 26 种技术指标的验证结果(TOPIX500・10 年・约 50 万次)。可用 9 种 / 有条件使用 4 种 / 应舍弃 13 种・未达到标准的 8 个分类。可用 name 筛选(日英别名均可) |
get_etf_decay | etf_decay.json | 杠杆及反向 ETF 的损耗(12 年实测)。按年份、持有天数、条件分类,以及 305 次“等待回本”的结果。每个小节都必须附上“解读时应注意的事项” |
list_tools_guide | (静态) | 用法・更新时间・延迟・免责声明・未来计划 |
法律合规边界与面向用户的网站相同:
- 仅返回 1 只股票(2026-09-17 起由最多 3 只缩减至 1 只)。不提供所有符合条件股票的列表。会返回数量
- 输出中会将推荐类用语(推荐/建议/应该买/能赚钱等
src/legal.js中的NG_WORDS)替换为遮蔽文字 - 所有响应中均会固定包含
disclaimer键 - 不提供价格、股数、止盈/止损线、实盘调整后的阈值(这些内容在生成 free_scanner.json 时就已删除)
- 投资格言验证仅提供判定结果和统计值(胜率・平均值・样本数・p 值)。格言正文(
saying)包含推荐类用语,因此不予输出 - 书籍中的验证也仅提供统计值。不返回股票名称、股票代码或股票组合。原始数据中同时存在的明细(相关性的
baskets.csv499 行・财报的events_raw.csv・回购的buyback_*.csv5,523 行)在生成端也不会打开 - 从书籍中导入的文本会由
mcp/tools/legal_check.py在写出 JSON 前进行检查。遮蔽(scrub)是最后一道防线,依赖它会导致句子含义被破坏,例如“日经平均每个[表达调整]点” - 仅返回 ETF 代码(如 1357)。它是用于标示验证对象的标识符,与点名个股不同
数据的来源
docs/*.json 由现有的生成端(Python)每日写出。MCP 只读取数据,不会以任何方式触碰生成端。
以下 7 个文件:
docs/anomaly_results.json / docs/candlestick_verdict.json / docs/event_reaction.json /
docs/indicator_verdict.json / docs/etf_decay.json / docs/earnings_drift.json /
docs/supply_demand_events.json
不是每日更新的数据,而是书籍出版时的固定数据。后两个文件通过 mcp/tools/build_*.py 从验证原始输出中自动转换,
并由 mcp/tools/verify_*.py 逐一与源 CSV 核对(不手动抄写)。
只有 docs/anomaly_results.json 不是每日数据,而是书籍出版时(2026-08)的固定数据。
源文件为 株式投資開発/jinx_verification/results/results.json(位于此仓库之外),
这里只是将不兼容 JSON 的 NaN 替换为 null 后生成的副本。更新时按相同步骤重新复制即可。
端点
| 路径 | 内容 |
|---|---|
POST /mcp | MCP Streamable HTTP(JSON-RPC・无状态) |
GET /health | 检查能否读取 5 个 JSON 文件 |
GET /llms.txt | 面向 Agent 的说明(以英语为主,日语为辅) |
GET /openapi.json | OpenAPI 3.1。将 JSON-RPC 描述为 1 个端点 |
GET / | 概要 |
部署(任选一种即可・可在手机浏览器中完成)
A. Cloudflare Workers(推荐:日志保留时间长・免费额度为每天 10 万次请求)
- 打开 Cloudflare 控制面板 → Workers & Pages → Create → Import a repository
- 选择仓库
stock-trading-→ 在 Root directory 中填写mcp - Build command 留空,Deploy command 为
npx wrangler deploy(保持默认设置) - 点击 Deploy → Worker 的实际地址为
https://ruletrade-mcp.<account>.workers.dev/mcp。 向用户提供规范 URLhttps://ruletrade.jp/mcp(ruletrade.jp的site/vercel.json会进行重写)。 如果 Worker 的 URL 发生变化,请修改site/vercel.json中的两行以及src/tools.js中的CANONICAL_* - 日志:Worker → Logs(已通过
wrangler.toml中的 observability 启用)。筛选event:"tool_call"可查看调用次数
B. Vercel
- 打开 vercel.com → Add New Project → Import 仓库
stock-trading- - 将 Root Directory 改为
mcp,Framework Preset 设为 Other - 点击 Deploy →
https://<project>.vercel.app/mcp即为端点 - 日志:Project → Logs(Hobby 版仅保留 1 小时,因此如需汇总,请使用下方的
LOG_WEBHOOK)
确认运行(部署后只需在浏览器中打开)
https://ruletrade.jp/mcp/health→ 如果返回"ok": true,则表示完成- 直接访问 Worker 的
https://ruletrade-mcp.<account>.workers.dev/health也能看到相同内容(用于排查问题)
连接(请使用规范 URL。不要提供 *.workers.dev)
- Claude(claude.ai):设置 → 连接器 → 添加自定义连接器 → 在 URL 中填写
https://ruletrade.jp/mcp - Claude Code:
claude mcp add --transport http ruletrade https://ruletrade.jp/mcp initialize的 instructions 中会提示先调用list_tools_guide
环境变量(均为可选)
| 变量 | 用途 |
|---|---|
DATA_BASE | JSON 的获取来源(默认:GitHub raw 的 docs/)。仓库设为私有时可替换 |
ANOMALY_URL | 将验证 JSON 放在其他分发位置时指定。该值会原样填入 get_anomaly_summary 的 jinx_verification_external(通常不需要。默认使用 docs/anomaly_results.json) |
LOG_WEBHOOK | POST 调用日志(单行 JSON)的目标地址。如需通过 GAS/Slack/Sheets 等进行汇总,可使用此项 |
CACHE_TTL_MS | 实例内缓存(默认 60000) |
调用日志格式:{"ts","event":"tool_call","tool","args","ok","ms","scrubbed","client"}
(initialize 时也会记录 clientInfo。这些数据可用于查看实际使用情况)
本地
cd mcp
npm test # 実際の docs/*.json をフィクスチャに35テスト(推奨語ゼロ・銘柄コードゼロの検査を含む)
node dev.js # http://localhost:8787/mcp
curl -s localhost:8787/health
curl -s -X POST localhost:8787/mcp -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_market_regime","arguments":{"history_days":5}}}'
后续计划
run_rule_backtest将在验证基础设施(backtest_grid)完成后再考虑。不重复构建引擎- Week 1 仅限“只读”。不添加写入、下单或个性化建议等功能
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。