使用说明
项目简介
Tradovate MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在为 LLM 客户端提供与 Tradovate 交易 API 交互的工具。通过此服务器,LLM 客户端可以获取市场数据、管理交易仓位和订单。
主要功能点
- Tradovate API 集成: 连接 Tradovate 交易平台,提供实盘和模拟交易环境的数据访问和交易功能。
- 实时数据缓存: 缓存来自 Tradovate API 的数据,减少API请求频率,提高响应速度。
- 丰富的交易工具: 提供一系列工具,包括:
- 获取合约详情 (get_contract_details)
- 列出交易仓位 (list_positions)
- 下单 (place_order)
- 修改订单 (modify_order)
- 撤销订单 (cancel_order)
- 平仓 (liquidate_position)
- 获取账户摘要 (get_account_summary)
- 获取市场数据 (get_market_data,包括报价、深度和图表数据)
- 模拟数据回退: 在 Tradovate API 不可用时,提供模拟数据作为后备方案,保证服务可用性。
安装步骤
-
克隆仓库
git clone https://github.com/alexanimal/tradovate-mcp-server.git cd tradovate-mcp-server -
安装依赖
确保已安装 Node.js 和 npm,然后运行:
npm install -
配置环境变量
创建 '.env' 文件,并根据您的 Tradovate 账户信息进行配置。您需要从 Tradovate 平台获取 'TRADOVATE_USERNAME', 'TRADOVATE_PASSWORD', 'TRADOVATE_CID', 'TRADOVATE_SEC' 等信息。'TRADOVATE_API_ENVIRONMENT' 可以设置为 'demo' (模拟环境) 或 'live' (实盘环境)。
TRADOVATE_API_ENVIRONMENT=demo TRADOVATE_USERNAME=your_username TRADOVATE_PASSWORD=your_password TRADOVATE_APP_ID=Sample App TRADOVATE_APP_VERSION=1.0 TRADOVATE_CID=your_cid TRADOVATE_SEC=your_sec
服务器配置 (MCP 客户端)
以下 JSON 配置信息可用于 MCP 客户端连接 Tradovate MCP Server。请注意根据实际情况调整 'args' 中的路径。
{ "serverName": "TradovateMCP", "command": "node", "args": [ "path/to/tradovate-mcp-server/dist/index.js" ], "transport": "stdio" }
参数注释:
- 'serverName': MCP 服务器的名称,可以自定义。
- 'command': 启动服务器的命令,这里使用 'node' 执行 JavaScript 代码。
- 'args': 传递给 'node' 命令的参数,
- '"path/to/tradovate-mcp-server/dist/index.js"': 需要替换为 'tradovate-mcp-server' 项目 'dist/index.js' 文件的实际路径。 这是服务器启动的入口文件。
- 'transport': 指定 MCP 客户端与服务器通信的传输协议,这里使用 'stdio' (标准输入输出)。
基本使用方法
-
启动服务器
在项目根目录下运行以下命令启动 Tradovate MCP Server:
npm start或者使用 MCP Inspector 启动:
npm run inspector -
连接 MCP 客户端
在您的 MCP 客户端 (如 Smithery Inspector) 中,配置上述 '服务器配置 (MCP 客户端)' 中的 JSON 信息,客户端将通过 'stdio' 协议与 Tradovate MCP Server 建立连接。
-
使用工具和资源
连接成功后,您可以在 MCP 客户端中使用 Tradovate MCP Server 提供的工具 (Tools) 和资源 (Resources),例如:
- 使用 'get_contract_details' 工具查询合约详情。
- 使用 'list_positions' 工具查看当前仓位。
- 使用 'place_order' 工具进行下单交易。
- 通过资源浏览器查看合约 (tradovate://contract/) 和仓位 (tradovate://position/) 信息。
信息
分类
商业系统