# Trading MCP Server：为AI代理提供安全交易能力的本地MCP服务

> Trading MCP Server是一个基于Model Context Protocol的本地服务器，为Claude Code、Copilot CLI等AI代理提供安全的交易工具集，包括市场数据、技术指标、风险管理、模拟交易、回测和受保护的实盘交易接口，采用多层安全防护机制确保交易安全。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-06-13T10:35:03.000Z
- 最近活动: 2026-06-13T10:51:01.244Z
- 热度: 161.7
- 关键词: MCP, Model Context Protocol, AI代理, 量化交易, 模拟交易, 风险管理, Angel One, SmartAPI, 金融科技
- 页面链接: https://www.zingnex.cn/forum/thread/trading-mcp-server-aimcp
- Canonical: https://www.zingnex.cn/forum/thread/trading-mcp-server-aimcp
- Markdown 来源: ingested_event

---

## 原作者与来源

- **原作者/维护者**: mukul8896
- **来源平台**: GitHub
- **原始标题**: trading-mcp-server
- **原始链接**: https://github.com/mukul8896/trading-mcp-server
- **发布时间**: 2026年6月
- **许可证**: MIT

## 背景：AI代理与金融交易的结合挑战

随着大型语言模型能力的提升，AI代理正在逐步进入各种专业领域。在金融交易领域，AI可以辅助分析市场数据、识别交易机会、计算风险参数。然而，将AI与真实交易环境连接涉及巨大的安全和合规风险——一个错误的指令可能导致真实的资金损失。

Model Context Protocol (MCP) 是Anthropic提出的一种开放协议，旨在标准化AI模型与外部工具和数据源的交互方式。通过MCP，AI代理可以安全地调用外部功能，而无需直接处理敏感凭证或执行高风险操作。

Trading MCP Server正是基于MCP协议构建的专用交易工具服务器。它的设计理念是"AI负责推理，服务器负责执行"——AI代理进行市场分析和决策建议，而服务器提供标准化的工具接口，并在执行层实施严格的安全控制。

## 核心设计理念：安全至上

Trading MCP Server从设计之初就将安全性作为非 negotiable 的核心原则。这种安全理念体现在多个层面：

### 模拟交易优先

系统默认工作在模拟交易(Paper Trading)模式。在这种模式下，所有交易操作都在虚拟环境中执行，不会影响真实账户资金。用户可以在零风险的环境中测试策略、验证AI的建议、熟悉工具接口。

### 实盘交易的多重保护

即使切换到实盘模式，系统也实施了多重安全机制：

- **环境变量控制**：实盘交易权限`ALLOW_LIVE_TRADING`只能通过人工编辑`.env`文件设置，没有任何工具可以远程启用实盘交易
- **模式双重确认**：实盘交易需要同时设置`TRADING_MODE=live`和`ALLOW_LIVE_TRADING=true`
- **人工审批流程**：实盘订单采用"准备→人工审批→执行"的令牌流程，确保每笔交易都经过人类确认
- **完整验证清单**：每笔订单必须通过风险检查清单，包括止损设置、风险收益比、仓位限制、日内亏损上限、市场时间检查等
- **交割卖出阻断**：系统完全阻断交割(CNC)卖出订单，仅记录建议，防止意外平仓

### 审计与可追溯性

每个决策和操作都被追加到审计日志(`storage/trade_logs.jsonl`)中，形成完整的操作记录。这种设计不仅满足合规要求，也为事后分析和策略优化提供了数据基础。

## 功能架构：全面的交易工具集

Trading MCP Server提供了覆盖交易全流程的工具集，按功能类别组织：

### 配置管理

- `get_trading_config` / `update_trading_config`：读取和更新交易配置
- `get_current_trading_mode`：获取当前交易模式
- `switch_to_paper_mode` / `switch_to_live_mode`：切换交易模式
- `validate_trading_permissions`：验证交易权限

### 市场数据

- `fetch_live_price`：获取实时价格
- `fetch_historical_data`：获取历史数据
- `fetch_market_status`：获取市场状态
- `fetch_symbol_metadata`：获取标的元数据
- `fetch_watchlist`：获取自选股列表

### 技术分析指标

系统内置了丰富的技术分析工具：

- 趋势指标：`calculate_sma`、`calculate_ema`、移动平均线交叉策略
- 动量指标：`calculate_rsi`、`calculate_macd`
- 波动率指标：`calculate_bollinger_bands`、`calculate_atr`
- 成交量分析：`volume_analysis`
- 形态识别：`detect_support_resistance`、`detect_trend`
- 综合快照：`get_indicator_snapshot`

### 新闻与情绪分析

- `fetch_latest_news` / `fetch_market_news`：获取最新新闻和市场新闻
- `analyze_news_sentiment`：分析新闻情绪

### 投资组合管理

- `fetch_portfolio`：获取投资组合
- `fetch_order_history`：获取订单历史
- `calculate_portfolio_exposure`：计算组合敞口
- `calculate_unrealized_pnl`：计算未实现盈亏

### 风险管理

- `calculate_position_size`：计算建议仓位大小
- `calculate_stop_loss` / `calculate_target_price`：计算止损和目标价
- `check_max_daily_loss`：检查日内最大亏损限制
- `check_portfolio_concentration`：检查组合集中度
- `validate_trade_against_risk_rules`：验证交易是否符合风险规则

### 策略与回测

- `evaluate_intraday_trade_setup` / `evaluate_swing_trade_setup`：评估日内/波段交易设置
- `compare_multiple_symbols`：多标的对比分析
- `scan_watchlist_for_intraday_opportunities` / `scan_watchlist_for_swing_opportunities`：扫描交易机会
- `run_strategy_backtest`：运行策略回测

内置策略包括：均线交叉(`ma_crossover`)、RSI反转(`rsi_reversal`)、MACD趋势(`macd_trend`)、突破放量(`breakout_volume`)。

### 模拟交易引擎

- `place_paper_order` / `close_paper_position`：模拟下单和平仓
- `fetch_paper_trades` / `fetch_paper_portfolio`：查询模拟交易记录和持仓
- `calculate_paper_trading_performance`：计算模拟交易绩效
- `generate_paper_trading_report`：生成模拟交易报告
- `reset_paper_account`：重置模拟账户

### 实盘交易接口（受保护）

- `prepare_order` / `validate_order_before_execution`：订单准备和验证
- `execute_intraday_order_after_validation`：执行日内交易
- `execute_delivery_buy_after_validation`：执行交割买入
- `block_delivery_sell_order`：阻断交割卖出
- `list_pending_live_orders` / `cancel_pending_live_order`：管理待执行订单
- `fetch_broker_funds/positions/holdings/order_status`：查询账户信息

## 技术实现与架构设计

Trading MCP Server采用Python实现，基于FastMCP框架构建MCP服务。项目结构清晰，模块化程度高：

```
src/trading_mcp_server/
├── server.py          # FastMCP入口点
├── config.py          # 基于.env的配置管理
├── tools/             # MCP工具模块（按类别组织）
├── resources/         # MCP资源
├── prompts/           # MCP提示模板
├── services/          # 数据提供者、指标计算、风险管理等核心服务
├── broker/            # SmartAPI经纪商适配器（唯一与真实经纪商通信的模块）
├── backtest/          # 回测引擎和内置策略
└── utils/             # 日志/审计、市场时间、工具查找等工具函数
```

### 配置与环境管理

服务器从`TRADING_MCP_HOME`环境变量指定的目录读取配置。在该目录下：
- `.env`文件包含交易模式、权限设置、风险限制、经纪商凭证等配置
- `storage/`目录用于存储模拟交易状态、待处理订单和审计日志

这种设计使服务器与具体项目路径解耦，用户可以通过设置`TRADING_MCP_HOME`指向不同的交易项目目录。

### 客户端集成

对于Claude Code等MCP客户端，可以通过`.mcp.json`配置文件注册该服务器：

```json
{
  "mcpServers": {
    "trading-agent": {
      "command": "trading-mcp-server",
      "env": { "TRADING_MCP_HOME": "C:\\path\\to\\your\\trading-repo" }
    }
  }
}
```

## 券商集成与数据支持

Trading MCP Server目前集成了Angel One SmartAPI作为实盘交易接口，支持印度国家证券交易所(NSE)的交易。数据层面，系统可以获取实时行情、历史数据、市场新闻等信息。

对于需要扫描功能的用户，系统还支持Chartink watchlist集成，可以获取预定义的股票池进行批量分析。

## 开发与测试

项目提供了完整的开发和测试支持：

```bash
# 安装开发依赖
pip install -e ".[dev]"

# 运行测试套件（无需网络或经纪商连接）
python -m pytest tests -q

# 从源码运行服务器
python -m trading_mcp_server.server
```

测试覆盖配置管理、安全机制、模拟交易引擎、技术指标计算、回测引擎等核心模块，确保系统的稳定性和可靠性。

## 配置参考

关键的配置参数包括：

- `TRADING_MODE`：交易模式（paper/live）
- `ALLOW_LIVE_TRADING`：是否允许实盘交易（仅可通过手动编辑.env设置）
- `REQUIRE_MANUAL_APPROVAL_FOR_LIVE_ORDERS`：实盘订单是否需要人工审批
- `ALLOW_INTRADAY_BUY/SELL`：是否允许日内买卖
- `ALLOW_DELIVERY_BUY`：是否允许交割买入
- `ALLOW_DELIVERY_SELL`：是否允许交割卖出（建议保持false）
- `MAX_RISK_PER_TRADE_PERCENT`：单笔交易最大风险百分比
- `MAX_DAILY_LOSS_PERCENT`：日内最大亏损百分比
- `MAX_OPEN_POSITIONS`：最大持仓数量
- `MIN_RISK_REWARD_RATIO`：最小风险收益比
- `PAPER_STARTING_CAPITAL`：模拟交易初始资金

## 应用前景与意义

Trading MCP Server展示了AI代理在金融领域应用的一种可行模式。它既不是完全依赖AI进行自动化交易（风险过高），也不是完全排斥AI的辅助作用（效率过低），而是在两者之间找到了平衡点：AI负责其擅长的分析、推理和策略生成，而系统负责执行层面的安全控制和标准化接口。

这种模式具有广泛的适用性。对于个人投资者，它可以作为学习和测试交易策略的零风险环境；对于专业交易员，它可以作为快速验证想法、执行标准化分析流程的效率工具；对于开发者，它提供了一个可扩展的框架，可以集成更多数据源、券商接口和分析工具。

随着MCP生态的发展，我们可以期待看到更多类似的专业领域MCP服务器出现，将AI代理的能力安全地扩展到更多实际应用场景中。
