一个 AI-native 的个人投资研究底座:为 AI 提供数据基础与决策框架,把宏观判断、策略纪律、Agent 能力和执行工作流放进同一个系统里。
免责声明
本项目仅用于个人研究与系统实验,不代表任何机构的投资观点,不构成任何投资建议。
AgomTradePro 和大多数“量化工具 / AI 投研 demo / 股票分析面板”的差异,不在于多几个图表,而在于它从一开始就是按“构建自己的 AI 研究底座”来设计的。
- AI-native,不是后贴 AI:原生 MCP、Terminal CLI、Agent Runtime、Capability Catalog 都是系统内建能力
- 不是单页工具,而是一套研究与决策底座:宏观、政策、信号、审批、执行、审计在一个闭环里
- 适合继续长自己的能力:你可以把它 Fork 成自己的宏观研究台、Agent 投研平台、策略实验底座
- 作者工作流本身就是 AI-assisted:这个项目的大量构建与迭代,直接使用了 Claude Code / Codex 这样的 agentic coding workflow 去推进
如果你关心的不是“再看一个 dashboard”,而是“怎么搭一个属于自己的 AI 研究基础设施”,这个项目会更对路。
这个项目已经可以运行、可以演示、可以继续扩展,但仍处于积极开发中。
当前仓库的前端呈现和部分操作逻辑仍在持续修改。
现阶段更准确的理解方式是:它正在逐步形成一个给 AI 使用的数据基础和决策框架,而不是已经完全冻结的成品 SaaS;公开仓库后续也会继续更新界面、交互流、监控能力和相关文档。
- 核心宏观准入链路已可用:Regime / Policy / Signal / 审批 / 执行 / 审计
- AI 原生能力已成型:原生 MCP、Terminal CLI、Agent Runtime、Capability Catalog
- 仍在持续完善:定时任务监控、更多 public demo 场景、README/文档国际化与部署体验
如果你想交流这个项目的思路或后续演进,可以通过微信联系:Uncleliou
后续会在小红书持续更新这个项目的开发日记,欢迎关注:
小红书号:agomliou
小红书日更开发日记
最近金融市场波动很大。很多时候,真正让人难受的不是单次涨跌,而是你明明在持续看信息、持续思考,却还是越来越困惑。
这个项目最早不是从“我要做个平台”开始的,而是从一个更直接的问题开始的:
如果我是那个被宏观、政策、情绪、噪音反复扰动的人,我能不能先给自己造一套解释系统?
大部分散户亏钱,不是因为选股差,而是因为在错误的时间出手。
- 你买了好股票 —— 但正值滞胀周期
- 你执行了好策略 —— 但政策正在收紧
- 你看到了明确信号 —— 但脚下的宏观地基正在移动
结果是什么? 逻辑正确,世界不对。亏钱。
AgomTradePro 只相信一个原则:
"不要在错误的宏观世界里,用正确的逻辑下注。"
它是一个宏观守门员 —— 在你每一笔投资决策执行之前,先用 Regime(增长 × 通胀象限)和 Policy(政策档位)过滤一遍。它不预测价格,它阻止错误。
如果你在找的不是一个“又一个股票分析页面”,而是一套能继续长出策略、Agent、执行工作流的底座,这个项目值得你点开、Fork,甚至长期跟。
- 它不是 demo 站,而是一套可运行的投资系统骨架:登录、配置、分析、决策、审批、执行、审计已经串起来了
- 它不是 AI wrapper,而是 AI-native:原生 MCP、Terminal CLI、Agent Runtime、Capability Catalog 都在系统内部,不靠外面硬接
- 它不是单点脚本,而是可扩展架构:34 个业务模块、DDD 四层、明确边界,适合继续长功能
- 它不是“只能作者自己维护”的代码:模块拆分清楚,文档量够大,适合二开、Fork、做私有策略内核
- 它有明显的产品感:Setup Wizard、Dashboard、CLI、MCP 管理台都已经能展示“这是个系统”,而不是一堆脚本拼盘
如果这些方向和你一致,这个仓库最适合的使用方式通常是:
- 先
Star,持续关注功能演进 - 再
Fork,把它改造成你自己的宏观/策略/Agent 基础设施 - 最后按你的交易逻辑或研究框架,把模块继续长出来
PMI 发布了、CPI 出来了、M2 又变了、政策又吹风了…… 你淹没在噪音里。AgomTradePro 从多个数据源采集宏观数据,标准化处理,用 Kalman/HP 滤波提取趋势,最终浓缩成一个清晰的答案:我们现在处于哪个 Regime?
| Regime | 增长 | 通胀 | 应对策略 |
|---|---|---|---|
| 复苏 Recovery | ↑ | ↓ | 进攻,加仓权益 |
| 过热 Overheat | ↑ | ↑ | 精选,注意通胀风险 |
| 滞胀 Stagflation | ↓ | ↑ | 防御,减仓观望 |
| 通缩 Deflation | ↓ | ↓ | 等待,保留现金 |
不用猜了。不用听各路大V互相矛盾。一个宏观状态,用真实数据计算。
每一笔交易在执行前都必须过关:
你的想法 → Regime 闸门 → Policy 闸门 → 信号验证 → 审批 → 执行
↓ ↓ ↓
"宏观环境 "政策面 "这个信号有
支持吗?" 配合吗?" 证伪条件吗?"
- 没有证伪逻辑的信号不能创建 —— 你必须在入场前定义"什么情况下我是错的"
- 敌对 Regime 下不能交易 —— 系统会物理阻止你
- 决策频率约束 —— 防止过度交易和 FOMO
- 完整审计链 —— 每一个决策都有记录,事后可复盘
这不是建议,这是纪律的执行基础设施。
不是后期加个 API 就叫 AI。AgomTradePro 从底层为 AI Agent 时代而设计:
- Python SDK — 32 个模块的完整编程接口
- MCP Server(65+ 工具) — 直接接入 Claude、Cursor 或任何支持 MCP 的 AI
- Terminal CLI — 终端风格的 AI 交互界面
- Agent Runtime — 任务编排,支持 提案 → 审批 → 执行 全生命周期
你的 AI Agent 可以检查宏观环境、评估信号、提出交易建议 —— 但执行仍需要人类审批。AI 的速度,人类的判断。
| 模块 | 做什么 |
|---|---|
| Regime 引擎 | 从增长/通胀指标计算当前宏观象限,Z-score 标准化 |
| Policy 闸门 | 追踪财政/货币政策事件,评估对风险偏好的影响 |
| 信号管理器 | 创建、验证、追踪投资信号,强制要求证伪逻辑 |
| 决策工作流 | 预检 → 审批 → 执行流水线,带频率约束 |
| 回测引擎 | 历史验证,支持 Brinson 归因分析 |
| 审计系统 | 事后复盘,完整决策链路追踪和绩效归因 |
| 模块 | 做什么 |
|---|---|
| 模拟交易 | 模拟盘交易,保证金追踪,每日巡检 |
| 实时监控 | 价格预警、涨跌排行、市场监控 |
| 策略系统 | 数据库驱动的仓位规则,按组合绑定策略 |
| 板块轮动 | 基于 Regime 的板块配置建议 |
| 模块 | 做什么 |
|---|---|
| Alpha 评分 | AI 选股评分,4 层降级(Qlib → 缓存 → 简单 → ETF) |
| 因子管理 | 因子计算、IC/ICIR 评估 |
| 对冲策略 | 期货对冲计算和组合保护 |
| 舆情闸门 | 新闻/舆情分析作为额外风险过滤 |
| 数据源 | 覆盖范围 |
|---|---|
| Tushare Pro | A 股行情、SHIBOR、指数数据 |
| AKShare | 宏观指标(PMI、CPI、M2、GDP 等) |
| 自动容灾 | 主备切换,1% 容差验证 |
AgomTradePro 不是把几个页面和几个 API 拼在一起,而是按“投资操作系统”的思路来设计:
数据源 → 宏观判定 → 政策过滤 → 信号生成 → 决策约束 → 审批执行 → 审计复盘
↓ ↓ ↓ ↓
Regime Policy Signal Workflow / Audit
这意味着你 Fork 之后,不必推翻重写,只需要沿着现有边界继续加能力。
- 宏观层:
macro、regime、policy负责回答“现在是什么环境” - 决策层:
signal、beta_gate、alpha_trigger、decision_rhythm负责回答“现在该不该做” - 执行层:
strategy、simulated_trading、realtime负责回答“怎么执行、怎么跟踪” - 分析层:
backtest、audit、factor、rotation、hedge负责回答“为什么有效、哪里错了” - AI 层:
terminal、agent_runtime、ai_capability、prompt、ai_provider负责回答“怎么让 Agent 真正接进来”
核心业务严格按照四层拆分,不把金融规则塞进视图、模型或脚本里:
┌─────────────────────────────────────────────────────────┐
│ Interface 层 │ REST API、Admin UI、序列化 │
├─────────────────────┼───────────────────────────────────┤
│ Application 层 │ 用例编排、Celery 任务、DTO │
├─────────────────────┼───────────────────────────────────┤
│ Infrastructure 层 │ Django ORM、API 适配器、仓储 │
├─────────────────────┼───────────────────────────────────┤
│ Domain 层 │ 实体、规则、服务 │
│ (纯 Python) │ 禁止 Django、Pandas、NumPy │
└─────────────────────────────────────────────────────────┘
为什么这对 Fork 很重要:
- 你可以只替换数据源,不动领域规则
- 你可以只换前端/UI,不动策略内核
- 你可以只接入自己的 Agent,不动审批与审计链
- 你可以把某个模块单独拿出去复用,而不是连根拔整个项目
- MCP Server 直接暴露系统能力给 Claude、Cursor、Codex 这一类 Agent
- Terminal CLI 提供面向操作的 AI 交互界面,而不是单纯聊天窗
- Capability Catalog 统一管理路由、工具、Schema、开关
- Agent Runtime 把“提案 → 预检 → 审批 → 执行”这条链真正系统化
这部分是整个仓库最适合 public 展示、也最容易让人想 Fork 的地方,因为它天然适合二次开发。
- 核心结构已稳定:足够支撑继续加模块
- 产品表面已成型:足够让别人一眼看懂这不是 toy project
- 细节仍在迭代:所以现在正是适合关注、参与、Fork 的阶段
from agomtradepro import AgomTradeProClient
client = AgomTradeProClient(
base_url="http://localhost:8000",
api_token="your_token"
)
# 现在是什么宏观 Regime?
regime = client.regime.get_current()
print(f"当前 Regime: {regime.dominant_regime}") # 比如 "Recovery"
# 这个标的现在能交易吗?
check = client.signal.check_eligibility(
asset_code="000001.SH",
logic_desc="PMI 连续回升,经济复苏"
)
# 创建信号(必须包含证伪条件)
if check["is_eligible"]:
signal = client.signal.create(
asset_code="000001.SH",
logic_desc="PMI 连续回升,经济复苏",
invalidation_logic="PMI 跌破 50 且连续 2 月低于前值",
invalidation_threshold=49.5
)把 AgomTradePro 接入 Claude Code、Cursor 或任何支持 MCP 的 AI:
{
"mcpServers": {
"agomtradepro": {
"command": "python",
"args": ["-m", "agomtradepro_mcp.server"],
"env": {
"AGOMTRADEPRO_BASE_URL": "http://localhost:8000",
"AGOMTRADEPRO_API_TOKEN": "your_token"
}
}
}
}然后直接跟 AI 对话:
你: "现在宏观环境怎么样?我能加仓权益吗?"
Claude: [调用 get_current_regime] → 滞胀(增长 ↓,通胀 ↑)
[调用 get_policy_status] → 货币政策偏紧
"当前处于滞胀 Regime,货币政策偏紧。这是防御性环境,
加仓权益与 Regime 信号相悖。建议等待 Regime 转换,
或者考虑对冲仓位。"
65+ MCP 工具不是只覆盖几个查询接口,而是横跨宏观、政策、信号、回测、账户、组合、交易、AI 能力目录、终端命令、运行时编排、系统配置等多个系统面向。
AI Agent 提出交易建议
↓
系统自动预检(Regime 闸门 → Policy 闸门 → 频率检查)
↓
生成提案,包含完整上下文
↓
人类审核,批准或驳回
↓
受保护的执行,全程审计
AI 负责分析速度。人类负责执行判断。全链路可追溯。
- Python 3.11+
- Redis(Celery 任务队列需要)
# 克隆
git clone https://github.com/guiyinan/agomTradePro.git
cd agomTradePro
# 复制环境变量模板
copy .env.example .env # Windows
# cp .env.example .env # Linux/Mac
# 创建虚拟环境
python -m venv agomtradepro
source agomtradepro/bin/activate # Linux/Mac
# 或: agomtradepro\Scripts\activate # Windows
# 安装依赖
pip install -r requirements.txt
# 数据库初始化
python manage.py migrate
# 启动开发服务器
python manage.py runserver
# 访问 http://localhost:8000/setup/ 完成安装向导安装向导会引导你完成:
- 创建管理员账户
- 配置 AI 服务商(可选)
- 配置数据源(可选)
开发环境虽然有默认值,但你最好在 .env 里显式设置自己的 SECRET_KEY:
SECRET_KEY=your-own-django-secret-key生产环境必须设置,且不能使用默认占位值。
这个非常容易忽略。
如果不设置,系统仍然能启动,但新的 AI Provider API Key 将无法写入。
生成方式:
python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"然后写入 .env:
AGOMTRADEPRO_ENCRYPTION_KEY=your-generated-fernet-key.env.example 里默认给的是 PostgreSQL 示例连接。
如果你只是本地快速体验,可以直接留空或删掉 DATABASE_URL,项目会默认使用根目录下的 SQLite。
Redis 不是本地首次体验的强制依赖。
- 本地没有配置
REDIS_URL时,Celery 会退化为同步执行模式 - 如果你要体验完整异步任务、worker、beat,再去配置 Redis
如果你只是想先把系统启动并打开页面,最少建议确认这几项:
SECRET_KEY=your-own-django-secret-key
AGOMTRADEPRO_ENCRYPTION_KEY=your-generated-fernet-key
DEBUG=True
ALLOWED_HOSTS=localhost,127.0.0.1cd sdk
pip install -e ".[dev]"pytest tests/ -v --cov=apps| 层级 | 技术选型 |
|---|---|
| 后端 | Python 3.11+、Django 5.x、DRF |
| 数据库 | SQLite(开发)/ PostgreSQL(生产) |
| 任务队列 | Celery + Redis |
| 数据处理 | Pandas、NumPy、Statsmodels |
| 可视化 | Streamlit、Plotly |
| 前端 | Django Templates + HTMX |
| AI 集成 | MCP Server、Python SDK |
| 测试 | Pytest(1,600+ 用例)、Playwright(E2E) |
34 业务模块(每个都有完整 DDD 四层实现)
65+ MCP 工具(供 AI Agent 调用)
100+ REST API 端点
1,600+ 自动化测试用例
230+ 文档文件
| 文档 | 说明 |
|---|---|
| 上手手册 | 从零到跑模拟盘的操作指南 |
| 系统规格书 | 完整技术 + 功能规格 |
| SDK 参考 | Python SDK 和 MCP Server 指南 |
| 架构设计 | DDD 设计、模块依赖关系 |
| 文档索引 | 全部文档导航 |
- 个人投资者 —— 想用系统化纪律替代情绪化操作
- 量化开发者 —— 需要一个生产级的宏观叠加层来增强策略
- AI/LLM 爱好者 —— 想构建有护栏的投资 Agent,而不是裸奔的 GPT wrapper
- 金融学生 —— 用真实代码学习宏观驱动的投资框架
欢迎贡献!提交 PR 前请阅读开发规范。
# 格式化
black . && isort . && ruff check .
# 类型检查
mypy apps/ --strict
# 测试(Domain 层覆盖率 ≥ 90%)
pytest tests/ -v --cov=appsApache License 2.0 —— 详见 LICENSE。
如果这个项目帮你少亏了一次钱,请给个 Star 吧
源于太多次"逻辑没错、时机全错"的惨痛教训。




