内容
<div align="center">
<img src="assets/verumtrade.svg" alt="Verumtrade" width="300">
<p>
<a href="README.md">English</a>
·
<a href="README.zh-CN.md">简体中文</a>
</p>
<p><em>一个开源的多智能体AI交易框架,每个智能体分析师都遵循结构化的推理图,具有可见的推理轨迹和从证据到最终交易提案的决策轨迹。</em></p>
<p>
<a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="License"></a>
<img src="https://img.shields.io/badge/Python-≥3.10-green.svg" alt="Python">
<img src="https://img.shields.io/badge/Node.js-≥18-green.svg" alt="Node.js">
<img src="https://img.shields.io/badge/Framework-LangGraph-7c3aed.svg" alt="LangGraph">
<img src="https://img.shields.io/badge/Trading-Alpaca-f5a623.svg" alt="Alpaca">
</p>
<p>
<a href="#single-ticker-analysis">观看单 ticker 演示 ↓</a>
·
<a href="https://muye1202.github.io/VerumTrade/demos/example-reports/MU-2026-06-23.html">查看示例报告 ↗</a>
</p>
</div>
---
## 🔭 VerumTrade 是什么?
VerumTrade 是一个开源的多智能体交易研究框架,旨在两项任务:分析您已经关注的 ticker 和发现值得深入研究的新候选股票。它将市场数据、基本面、新闻、情绪、催化剂和风险背景转化为透明的交易 thesis,而不是黑盒“买入/卖出”信号。
名字的含义是将拉丁语 *verum*(“真相”)与 *trade*(交易)结合起来:目标是为每个决策提供可验证的、基于证据的路径 - 您可以阅读推理,检查证据,并审计每个建议的得出过程,而不是依赖不透明的评分。
每次运行都遵循审计路径:
1. **分析师** 收集市场、新闻、社交、基本面和催化剂证据。
2. **证据图** 将这些发现提炼成结构化的事实。
3. **多头/空头辩论** 从双方测试 thesis。
4. **交易计划** 将辩论转化为可行的提案。
5. **风险审查** 检查仓位、时机、集中度和下跌风险。
6. **决策** 记录最终的理由、轨迹和可选的交易指令。
> [!IMPORTANT]
> VerumTrade 是一个**研究和决策支持流程**,而不是独立的投资决策工具。请将输出视为结构化的第二意见:检查证据,挑战 thesis,先进行模拟交易,然后自己做出实际的资金决策。市场数据可能不完整或延迟,LLM 输出可能错误,交易涉及损失风险。
---
## 🧭 选择您的路径
直接跳转到您需要的内容:
| 如果您... | 从这里开始 |
|:--|:--|
| ⚡ **只是想运行它** | [快速开始 - 网页应用](#-quick-start--web-app) → 几分钟内打开浏览器 UI |
| 💻 **终端优先** | [快速开始 - CLI](#-quick-start--cli) → 有指导,无需编辑配置文件 |
| 🎯 **评估单个 ticker** | [单个 ticker 分析](#single-ticker-analysis) → 检查一个名称的完整智能体流程 |
| 🔎 **寻找候选股票** | [股票发现模式](#stock-discovery-mode) → 筛选市场,然后分析最有潜力的想法 |
| 🐍 **在其基础上构建** | [Python API](#-python-api-programmatic) → 将 VerumTrade 嵌入您自己的脚本中 |
| 🔬 **研究多智能体 LLMs** | [核心工作流程](#-core-workflows) · [推理和决策轨迹](#-reasoning--decision-traces) · [架构](#%EF%B8%8F-architecture) |
| 💼 **交易(模拟或实时)** | [CLI](#-quick-start--cli) · [交易执行配置](#%EF%B8%8F-configuration) · [故障排除](#-troubleshooting--faq) |
| 🛠️ **贡献** | [`CONTRIBUTING.md`](CONTRIBUTING.md) |
---
## ✨ VerumTrade 提供什么
VerumTrade 建立在 [Tauric Research 的 TradingAgents](https://github.com/tauricresearch/tradingagents)(参见 [致谢](#-credits--acknowledgments))基础上,并将其扩展为一个透明的、风险感知的系统。
| 功能 | 它为您提供什么 |
|:--|:--|
| 🔎 **可见的推理和决策轨迹** | 命名功能 - 从原始证据到最终提案的每一步都已捕获并在 web UI 中呈现。 [详情 ↓](#-reasoning--decision-traces) |
| 🔗 **证据图** | 分析师的发现被提炼成一个结构化的事实图,它为下游智能体提供了基础,减少了模糊的推理。 |
| 🧩 **结构化的智能体流程** | 专门的分析师 → 多头/空头辩论 → 交易计划 → 风险审查 → 执行,连接为 [LangGraph](https://github.com/langchain-ai/langgraph) 工作流程。 |
| 🗞️ **催化剂和事件风险感知** | 一个专门的分析师会发现影响股价的盈利、FDA 和宏观催化剂。 |
| 🛡️ **拥挤和宏观回调感知** | **(新)** 一个制度背景总线 + 每个 ticker 的 **回调脆弱性评分** + 同行/行业联动警告,当一个拥挤的扩展名称很脆弱时。 [详情 ↓](#%EF%B8%8F-crowding--macro-pullback-awareness) |
| 🛰️ **AI 股票发现** | 一个多阶段的筛选器找到有前景的 ticker,然后对最佳候选股票运行完整的流程。 |
| 🔌 **自带模型和数据** | 9 个 LLM 提供商(包括本地 Ollama)和 6+ 个市场数据供应商,具有自动故障转移。使用 Yahoo Finance 和一个 LLM 密钥即可免费开始。 |
| 💸 **模拟或实时执行** | 可选的 Alpaca 集成,具有仓位规模和集中度护栏以及 5 种订单类型。 |
<details>
<summary><b>📊 完整比较 - VerumTrade 在原 TradingAgents 之上添加了什么</b></summary>
<br>
| 领域 | VerumTrade 新增功能 |
|:--|:--|
| **透明度** | 推理和决策 **轨迹** 以及一个 React UI 来检查它们([详情](#-reasoning--decision-traces)) |
| **基础** | **证据图** 合成层,连接分析师和研究人员 |
| **新分析师** | **催化剂/事件风险分析师** (盈利、FDA、宏观催化剂) |
| **风险感知** | **宏观制度背景总线**,每个 ticker 的 **回调脆弱性评分**,以及具有专用风险裁判的同行/行业联动 |
| **发现** | 多阶段 **股票发现** 流程 + 宏观 **主题引擎** |
| **决策严谨性** | 结构化的 **决策模式** + 执行前 **决策守卫** 验证 |
| **执行** | 实时/模拟 **Alpaca** 执行,具有集中度和仓位规模护栏以及 5 种订单类型 |
| **范围** | 9 个 LLM 提供商(OpenAI、Azure Foundry、Anthropic、Google、DeepSeek、Qwen、GLM、OpenRouter、Ollama)和具有故障转移的多供应商数据层 |
| **工程** | 一个 **上下文预算** 管理器,用于令牌控制,以及完整的 FastAPI + React + Typer/Rich 应用程序 |
</details>
---
## 🧭 核心工作流程
VerumTrade 有两个主要入口:分析您已经关注的 ticker,或先发现候选股票,然后将最有潜力的想法送入相同的多智能体审查流程。
### 单个 ticker 分析
当您已经有了一个股票,并希望获得一个可审计的投资或交易 thesis 时,请使用此功能。VerumTrade 运行所选的分析师团队对一个 ticker 进行分析,构建一个结构化的证据图,组织多头/空头研究辩论,要求交易员制定计划,并将结果通过风险审查后生成最终决策。

> 📹 更喜欢高质量的视频?[下载 MU 单 ticker 演示(MP4)](https://github.com/muye1202/VerumTrade/raw/main/demos/MU_single_ticker_demo_720p_6x.mp4)。
您将获得一份完整的报告,包括推理轨迹、决策轨迹、分析师证据、风险备注和可选的模拟/实时 Alpaca 订单(如果启用了执行)。从 web 应用中输入一个 ticker 开始分析,或使用 CLI 中的 `python -m cli.main analyze` 并选择单 ticker 分析作为第一个提示。
想在运行自己的分析之前检查输出质量?打开交互式 [MU 示例报告](https://muye1202.github.io/VerumTrade/demos/example-reports/MU-2026-06-23.html),它由完整的 VerumTrade 运行生成,并呈现类似应用程序的导航、搜索和可折叠的报告面板。源工件位于
[`demos/example-reports/MU-2026-06-23.html`](demos/example-reports/MU-2026-06-23.html)。
### 股票发现模式
当您希望 VerumTrade 帮助您找到值得研究的股票,而不是从已知的 ticker 开始时,请使用此功能。发现模式通过催化剂、主题、丰富、拐点、注意力差距和评分阶段筛选市场宇宙,然后将最有潜力的候选股票推入更深入的 VerumTrade 分析。
您将获得排名靠前的候选股票、证据包、两层发现分数、thesis 卡和所选股票的完整报告。从 web 应用切换到发现模式开始,或使用 CLI 中的 `python -m cli.main analyze` 并选择 **股票发现(AI 发现有前景的股票)** 作为第一个提示。
<!-- TODO: 在此处嵌入股票发现模式演示视频。 -->
---
## 🚀 快速开始 - 网页应用
网页界面是开始使用最简单的方式。它启动了一个 **React + Vite** 前端和一个 **FastAPI** 后端。
**先决条件**
| 工具 | 版本 | 检查 |
|:--|:--|:--|
| Python | ≥ 3.10 | `python --version` |
| Node.js | ≥ 18 | `node --version` |
| npm | ≥ 9 | `npm --version` |
**1 — 克隆和安装**
```bash
git clone https://github.com/muye1202/VerumTrade.git
cd VerumTrade
pip install -e . # 或,如果您有 uv: uv sync
```
**2 — 配置 API 密钥**
```bash
cp .env.example .env # Linux / macOS
copy .env.example .env # Windows
```
打开 `.env` 并粘贴至少一个 LLM 提供商密钥(OpenAI、Azure Foundry、Anthropic、Google、DeepSeek 等)。这就是您需要的所有内容 - 默认情况下,Yahoo Finance 的市场数据无需密钥即可使用。
> [!TIP]
> 查看 [`.env.example`](.env.example) 以获取所有支持的密钥及其功能。
**支持的数据源**
VerumTrade 从一个不需要密钥的 Yahoo Finance 路径开始用于基本股票数据,然后使用可选的提供商密钥进行更全面的覆盖、备份、文件、新闻、基本面和执行数据:
| 源 | 设置 | 用于 |
|:--|:--|:--|
| Yahoo Finance / `yfinance` | 无密钥 | 默认备用股票价格、指标、财务报表和内部交易 |
| Alpaca | `APCA_API_KEY_ID`、`APCA_API_SECRET_KEY` | 券商市场数据和可选的模拟/实时执行 |
| Alpha Vantage | `ALPHA_VANTAGE_API_KEY` | 股票价格、指标、基本面、财务报表、内部数据和新闻 |
| Twelve Data | `TWELVE_DATA_API_KEY` | 技术指标备用 |
| Finnhub | `FINNHUB_API_KEY` | 公司/全球新闻、新闻情绪、盈利日历和内部数据 |
| SEC EDGAR | 无密钥 | 最近的公司文件 |
| 本地缓存数据 | `VERUMTRADE_DATA_DIR` 可选 | 离线/缓存备份数据 |
| LLM 支持的新闻 | 现有 LLM 密钥 | 配置时作为新闻合成备用 |
运行时可以将每个数据类别路由到首选供应商,并在提供商不可用时自动切换到备用。有关 `data_vendors` 类别,请参见 [配置](#%EF%B8%8F-configuration)。
**3 — 安装前端依赖项**
```bash
cd frontend && npm install && cd ..
```
**4 — 启动** - 从项目根目录打开 **两个终端**:
```bash
# 终端 1 — 后端(FastAPI)
uvicorn api.main:app --reload
# 终端 2 — 前端(Vite)
cd frontend && npm run dev
```
打开 [http://localhost:5173](http://localhost:5173)。前端与后端在 `http://localhost:8000` 进行通信,已完成的分析结果保存在 **历史记录** 视图中。
> [!NOTE]
> `python run.py` 在单个终端中启动后端和前端。单独使用终端可以更好地查看日志。
<details>
<summary><b>💡 预期 - 成本和时间</b></summary>
<br>
VerumTrade 每次分析都会运行许多 LLM 调用,因此每次运行都需要时间和产生 API 成本:
| 设置 | 大约时间 | 大约 LLM 成本\* |
|:--|:--|:--|
| **浅** 深度,小模型(例如 `gpt-4o-mini`,`gemini-2.0-flash`) | ~1–3 分钟 | 几美分 |
| **深** 深度,更大推理模型 | 几分钟 | ~$0.50–$2+ |
| **本地** Ollama 模型 | 取决于硬件 | 免费(您的计算) |
<sub>* 近似值,取决于提供商 - 不是报价。请在提供商仪表板上查看实际使用情况。</sub>
**第一次运行?** 从 **浅** 深度和小快速/深入模型开始确认一切正常,然后再进行更深入的分析。
</details>
---
## 💻 快速开始 - CLI
交互式 CLI 引导您逐步完成每个设置步骤 - 无需编辑配置文件。它需要与上述相同的先决条件以及可编辑的安装(`pip install -e .`)。
```bash
python -m cli.main analyze # 或,如果已编辑安装: verumtrade analyze
```
`analyze` 首先询问您是希望进行 **单个 ticker 分析**、**投资组合分析** 还是 **AI 股票发现**,然后引导您完成:
| 提示 | 它执行什么 |
|:--|:--|
| **Ticker** | 要分析的股票符号(例如 `NVDA`,`AAPL`) |
| **日期` | `YYYY-MM-DD` 格式的分析日期 |
| **分析师** | 包括哪些专家 - 催化剂/事件风险、市场、社交、新闻、基本面 |
| **研究深度** | 辩论轮数:**浅**(快速) · **中等** · **深**(彻底) |
| **时间范围** | 目标持有期(1-2 周至 2-3 个月) |
| **LLM 提供商** | OpenAI、Azure Foundry、Google、Anthropic、DeepSeek、Qwen、GLM、OpenRouter 或 Ollama |
| **模型** | 快速思考模型(分析师)和深思熟虑模型(裁判) |
| **执行** | 仅分析,或也通过 Alpaca 进行模拟交易 |
实时终端仪表流实时显示代理进度、工具调用和不断增长的报告。结果保存到 `results/stocks/{date}/{ticker}/`。
<details>
<summary><b>投资组合分析和股票发现命令</b></summary>
<br>
**投资组合分析** - `verumtrade analyze-portfolio`
拉取您的 Alpaca 仓位,运行一个 **分诊步骤** 以确定哪些股票最需要关注,然后对这些股票进行完整的智能体分析。剩余的股票获得一个轻微的“HOLD”条目。
**股票发现** - 从主 `analyze` 命令运行从主 `analyze` 命令开始;选择 **“股票发现(AI 发现有前景的股票)”** 作为第一个提示。该系统使用多因素评分筛选有前景的股票,然后对最佳候选股票进行深入的智能体分析。您可以启动新的发现运行或从以前保存的候选股票列表中恢复。参见
[股票发现模式](#stock-discovery-mode) 以获取工作流程概述。
<!-- TODO: 将股票发现模式演示视频嵌入此处。 -->
</details>
> [!TIP]
> 运行 `verumtrade --help`(或 `python -m cli.main --help`)查看所有命令和选项。
---
## 🐍 Python API(编程)
对于脚本编写或集成,请完全跳过 UI:
```python
from verumtrade.graph.verumtrade_graph import VerumtradeGraph
from verumtrade.default_config import DEFAULT_CONFIG
from dotenv import load_dotenv
load_dotenv()
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "google" # 或 "openai", "azure-foundry", "anthropic", "deepseek" 等
config["deep_think_llm"] = "gemini-2.5-flash"
config["quick_think_llm"] = "gemini-2.0-flash"
ta = VerumtradeGraph(config=config)
# 返回完整状态和结构化交易决策
state, decision = ta.propagate("NVDA", "2024-05-10")
print(decision)
```
---
## 🔬 推理和决策轨迹
VerumTrade 的存在理由是透明度。每次分析都会发出两种类型的轨迹,在 web UI 中都可以查看:
- **推理轨迹** - 对于每个代理,*它看到了什么以及它如何得出结论*。由
[`graph/reasoning_trace.py`](verumtrade/graph/reasoning_trace.py) 构建并在 **交易员推理** 和 **证据图** 面板中显示。
- **决策轨迹** - 从证据 → 研究辩论 → 交易计划 → 风险审查 → 最终结构化决策的链条,在 **决策轨迹** 面板中呈现。最终决策本身是一个结构化对象,根据 [`graph/decision_schema.py`](verumtrade/graph/decision_schema.py) 进行验证,并由 [`graph/signal_processing.py`](verumtrade/graph/signal_processing.py) 提取。
概念上,轨迹让你回答在每个层面上 "*为什么进行此交易?*"
```text
证据图 → “Q3 收入同比增长 18%;RSI 71(超买);上周内部人士抛售”
↓
研究辩论 → 多头:可持续需求 · 空头:估值过高 → 经理:谨慎买入
↓
交易计划 → 买入,限价 X 美元,仓位为购买力 10%
↓
风险审查 → 保守的仓位调整;风险裁判批准,设定集中度上限
↓
最终决策 → { 操作:买入,订单类型:限价,数量:...,理由:... }
```
<sub>说明性 - 实际字段来自上面的决策模式和证据图代码。</sub>
Web UI 通过专用 React 面板渲染这些(`DecisionTracePanel`、`TraderReasoningPanel`、`EvidenceGraphPanel` 在 `frontend/src/` 下),因此您可以展开任何代理的贡献,而不是信任单个不透明的裁决。
---
## 🏗️ 架构
VerumTrade 建立在 **LangGraph** 之上 - 每个代理都是有向工作流程图中的一个节点。下面是完整的流程:

### 🧠 两层 LLM
每个代理都使用两个模型槽之一 - 您在单个位置设置两者(`deep_think_llm`、`quick_think_llm`),系统会自动路由它们:
| 层级 | 使用方 | 为什么 |
|:--|:--|:--|
| **快速思考** | 催化剂 / 市场 / 社交 / 新闻 / 基本面分析师,牛/空头研究员,交易员,风险辩论者 | 速度和成本 - 这些代理运行多次,不需要太重的推理 |
| **深度思考** | 研究经理,风险裁判,投资组合分诊代理 | 关键决策点,准确性最重要;更强的模型会带来回报 |
🔗 证据图
分析师完成后,Trade 不会简单地报告连接起来。它将炼成一个**结构化证据图**([`agents_runtime/evidence_graph.py`](verumtrade/agents/utilsevidence_graph.py))——一组紧凑的分类事实(催化剂、指标、风险、情绪),每个下游代理都会引用它。这使得多头/辩论和交易者具体的证据,而不是浮动的文字,这也是用户界面中证据的驱动力。
<detailssummary><b> 数据层 — 路由、备用和每位分析师</b></summary>
所有市场数据工具调用单个路由层([`dataflows/interface.py`](verumflows/interface.py))。配置文件中为每个类别选供应商;如果该供应商不可用,系统会自动尝试每位分析师都可以精选的数据工具:
| | 关键工具--|:--|
| **催化剂事件** | 催化、公司新闻窗口、SEC 文件、内部交易、价格走势 |
| **市场 股票数据、指标、VWAP、期权流量池交易量、空 |
| **社交**闻、公司新闻窗口情绪 |
| **新闻 新闻、公司新闻窗口、全球新闻、新闻情绪、SEC 文件 |
| **基本 | 基本面、资产流、损、内部情绪和交易 [!TIP]
> 当 `enable_bundle_tools` 开启)时,每位分析获得一个一次性“”工具,该工具通过单个调用获取所有关键数据,减少 LLM 轮次和延迟。
</details>
<details>
<summary>📁 投资和 🔎 股票</b></summary>
<br>
**投资组合模式** — 额外的 **分诊代理** 首先运行。它扫描您的所有仓位,并挑选当前最需要关注的仓位 — 基于突发新闻、异常价格走势、集中风险等。只有这些股票才会经过完整的多个代理管道;其他所有股票都获得快速的“HOLD”推荐。
**股票发现模式** — 股票发现管道独立于主分析图运行:
1. **阶段 0 — 催化剂预过滤**:到来的盈利、和宏观催化剂
2. **阶段 1 — 多因素丰富**:技术动量、相对强度、整个宇宙分析
3. **2 — 候选人评分**:具有可配置放松规则的综合排名
**深入分析**:顶级候选人被输入完整的 VerGraph 进行多代理分析
支持三个轨道:**Enricher** (摇摆交易)、**Anomaly Scan** (日内/隔日)和 **Dual-Track** (合并)。一个互补的 **主题引擎** ([`agents/discovery/theme_engine/`](verumtrade/agents/discovery/theme_engine/))扫描活跃的宏观主题,并评估每个候选人对它们的风险敞口,以便通过市场驱动因素来指导发现。
</details>
---
## 🛡️ 人气和宏观回调意识
单一股票管道往往对一类风险视而不见:一个**拥挤的、延伸的、与行业相关的** 名字被一个**软/二次催化剂** (同行的指导语气、政策新闻) 在一个**恶化的宏观行情** (利率上升、油价飙升、风险规避)中击中。那些触发器都不是离散的、带日期的、公司特定的事件 — 正是新闻/催化剂分析师被构建为忽略的象限。
VerumTrade 现在从它已经获取的数据中计算这种脆弱将其输入到每个决策中:
| 层 | 功能 | 默认值 | 配置标志 |
|:--|:--|:--|:--|
| **宏观/制度背景总线** (`macro_regime`) | 一次跨资产和定位的快照 — 风险规避标志、利率脉冲、石油/VIX、行业热图、动-SPY — 、催化剂和风险节点。 | 开启 | `enable_macro_regime_context` |
回调脆弱性评分** | 每股、易于解释的 **0–100** 评级(低 / 中 / 高 / 极高)融合价格 **延伸** (距离 50/200-DMA 的距离,年初至今的走势)、 **拥挤度** 、 **行情脆弱性** 和 **估值丰富度** 。 | 开启 | `enable_pullback_vulnerability` |
| **同行和行业读取** | 将同行的盈利日期拉入股票的日历中作为_catalyst` 事件股票的行业是否是抛物线形的(篮子贝塔)— 因此,明天报告的行业领袖成为一个可见的、带日期的风险。 | 开启(盈利 + 篮子贝塔);同行 **新闻** 获取关闭 | `enable_peer_read_through` |
| **风险判断覆盖** | 在高/极高评级上,风险判断被引导至降低规模、更严格的失效或新暴露时的等待触发 — 一个与催化剂风险门控相镜像的第二条覆盖路径。 | 开启 | — |
> [!NOTE]
> 此功能基于对 2026 年两个实际行业回调(5 月的记忆体冲击和 6 月的 AI 基础设施卸载)的事后分析。设计笔记和回测: [`docs/macro_pullback_capability_upgrade.md`](docs/macro_pullback_capability_upgrade.md).
---
## ⚙️ 配置
所有默认值都在 [`verumtrade/default_config.py`](verumtrade/default_config.py) 中。您最常用的配置:
| 键 | 控制内容 / 默认值 |
|:--|:--|:--|
llm_provider` | 使用哪个 LLM 后端 | `openai` · `azure-foundry` · `anthropic` · `google` · `deepseek` · `openrouter` · `qwen3-cn` · `glm` · `ollama` |
| `deep_think_llm` | 用于判断和管理者的模型 | `"o4-mini"` · `"gemini-2.5-flash"` · `"claude-sonnet-4-20250514"` |
| `quick_think_llm` | 用于分析师和研究人员的模型 | `"gpt-4o-mini"` · `"gemini-2.0-flash"` |
| `max_debate_rounds` | 多头 ↔ 空头辩论轮次 | `1` (默认),上限为 `3` |
<details>
<summary><b>数据供应商和自动备用</b></summary>
<br>
在 `data_vendors` 字典中按类别配置:
| 类别 | 可用来源 | 默认值 |
|:--|:--|:--|
| `core_stock_apis` | `alpaca` · `yfinance` · `alpha_vantage` · `twelve_data` · `local` | `alpaca` |
| `technical_indicators` | `alpaca` · `yfinance` · `alpha_vantage` · `twelve_data` · `local` | `alpaca` |
| `fundamental | `alpha_vantage` · `openai` ·` | `alpha_vantage` |
| `news_data` | `alpha_vantage` · `open · `google` · `local` | `alpha` |
> [!TIP]
> 如果供应商在用,系统会自动回退到下一个选项 — 不会发生任何崩溃。(Fin 和 SEC EDGAR 支持特定的工具,例如内部交易/文件数据,而不是上述四个可。)
</details>
<detailssummary><b>交易执行和订单类型(Alpaca)</b<br>
| 键 | 控制内容 | 默认--|:--|:--|
| `alpaca_execution | 开启/关闭交易 | `false` `alpaca_execution.paper_trading` | vs. 真实交易 | `true` |
|aca_execution.position_size_pct` | 默认仓位大小 | `0.10` (10%)|
| `alpaca_execution.max_concentration_pct` | 最大单股票集中度 | `0.20` (20%)|
| 订单类型 | 描述 |
|:--|:--|
| `MARKET` | 按当前市场价格立即执行 |
| `LIMIT` | 仅按指定价格或更好执行 |
| `STOP` | 当股票达到止损价格时,触发市场订单 |
| `STOP_LIMIT` | 当股票损价格时,触发限价订单 |
|RAILING_STOP` | 随着股票价格变动的止损,锁定收益 |
</details<summary>风险意识开关(宏观回调能力)</b<br>
默认全部开启;设置环境变量为 以禁用。人气和宏观回调意识](#%EF%B8%8F-crowding--macro-pullback-awareness)。
| 环境变量 | 控制内容 |
|:--|:--|
| `VERUMTRADE_REGIME_CONTEXT 构建并注入跨资产/制度的 `macro_regime` 上下文总线 |
| `VERUMTRADE_ENABLE_PULLBACK_VULNERABILITY` | 计算每股的回调脆弱性评分 + 风险判断覆盖 |
| `enable_peer_read_through` / `enable_sector_parabola` | 同行盈利 → `peer_catalyst` 事件 + 行业抛物线 / 篮子贝挤信号 |
| `peer_read_through.fetch_peer_news` | 选择性同获取(默认关闭 — 需要额外供应商调用)details>
<details>
<summary><b>上下文避免小上下文窗口的 HTTP 400 错误)</b></summary>
<br>
控制如何压缩提示以适应模型上下文窗口:
| | 行为 |
|:--|
|` (默认) | 限制提示部分并应用软代币预算 |
| `compact` | 为更严格的上下文窗口进行更强的压缩 |
| `off` | 无限制 — ⚠️ 严格限制的模型上导致 400 错误 `.env` 设置:
```env
VERUMTRADE_CONTEXT_BUDGET_MODE
```
</details## 🧰排除和常见问题 症状 | 可能原因和解决方法 |
|:--|:--|
| `No API key` / 认证商密钥丢失或错误,位于 `.env`。您需要 **一个** LLM 密钥;市场数据 无需密钥。 |
| **400 — 上长度超出** | 模型的上下文窗口对于太小。保持UMTRADEUDGET_MODE=adaptive` (默认)或将其设置为 `compact`;避免在严格的 `off`。 **HTTP 速率限制** |正在限制您的请求小/更快的降低研究深度或延迟旋钮(`VERUMTRADE_RESEARCH_MANAGER_MIN_DELAY_S` , `VERUMTRADE_RISK_MANAGER_MIN_DELAY_S` 前端加载失败 | 后端未运行或位于不同端口uvicorn:app --reload` (默认 `http://localhost:8000`)。 |
npm run dev` 失败 | 检查 Node ≥ 18 `frontend/` 内运行 `npm install`| ChromaDB / 原生构建错误安装时 | 确保您位于虚拟环境中使用 Python ≥ 3.10;升级 `pip` 然后运行 `pip install -e .`。 |
| 分析速度慢 / 成本高 | 使用 **浅** 深度和小 quick/deep 模型(参见 [成本和时间](#-quick-start--web-app)),或使用 Ollama 运行本地模型。 |
运行 `verumtrade --help`每个命令和---
## 🤝 欢迎贡献 — 研究想法和工程修复。参见 [`CONTRIBUTING.md`](CONTRIBUTING.md) 了解开发设置、项目布局和 PR 流程,以及 [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) 了解社区指南。
---
## 📚 引用
如果您在学术工作中使用了 VerumTrade,请引用此(参见 [`CITff`](CITATION)**和所基于的 Trading框架:
```
@software{,
title = {VerumTrade:可见推理和的多智能体框架},
author = {Muye Jia},
= {2026},
url =://github.com/m2/VerumTrade}
}
@misc{tradingagents,
title = {TradingAgents: 多智能体 LLM 金融交易框架},
author = {Tauric Research},
howpublished = {\url{https://github.com/tauricresearch/tradingagents}}
}
```
---
## 🤝 鸣谢和致谢
该项目建立在开源Agents](https://github.com/tauricresearch/tr 框架之上,由 Tauric Research 开发。我们作者对多智能体 LLM 金融分析和交易系统的开创性工作。
---
## ⚠️ 免责声明
VerumTrade 是一个**研究和教育决策支持工具**。它不是财务建议,也不是独立的投资决策工具。始终要自己检查证据,首先进行模拟交易,并在使用真实资金之前了解风险。作者对使用该软件造成的任何财务损失不承担责任。
---
## 📄 许可证
[Apache License 2.0](LICENSE) — 参见 [LICENSE](LICENSE) 文件了解详情。
连接信息
猜你喜欢
暂无推荐服务器