Tradovate交易协议服务器

用于与Tradovate API交互的模型上下文协议服务器,提供合约管理、仓位管理、订单管理和账户管理的工具。

  • by alexanimal
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 alexanimal/tradovate-mcp-server

使用说明

Tradovate MCP服务器

用于与Tradovote API交互的模型上下文协议(MCP)服务器。此服务器提供用于管理Tradovate中的合同、头寸、订单和账户的工具。

特性

  • 通过Tradovate API进行认证
  • 使用缓存进行实时数据获取
  • 用于合同详细信息、职位管理、订单下达等的工具
  • 当API不可用时,回退到模拟数据

安装

  1. 克隆存储库
  2. 安装依赖项:
npm install
  1. 创建一个 .env 提交您的Tradovate凭据:
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

用法

启动服务器:

npm start

或与MCP检查员一起使用:

npm run inspector

发展

项目结构

  • src/index.ts -主服务器入口点
  • src/auth.ts -身份验证功能
  • src/data.ts -数据获取和缓存
  • src/tools.ts -MCP工具处理程序
  • src/types.ts -TypeScript类型定义
  • tests/ -测试文件

建筑

npm run build

测试

运行测试:

npm test

运行覆盖率测试:

npm run test:coverage

生成覆盖徽章:

npm run coverage:badge

可用工具

服务器提供以下工具:

  1. get_contract_details -按符号获取特定合同的详细信息
  2. list_positions -列出帐户的职位
  3. place_order -下新订单
  4. modify_order -修改现有订单
  5. cancel_order -取消现有订单
  6. liquidate_position -清算头寸
  7. get_account_summary -获取帐户摘要信息
  8. get_market_data -获取市场数据(报价、DOM、图表)

API终点

服务器与以下Tradovate API端点交互:

认证

  • /auth/accessTokenRequest -获取访问令牌
  • /auth/renewAccessToken -续订访问令牌

合同

  • /contract/list -列出所有合同
  • /contract/find -查找特定合同

职位

  • /position/list -列出所有职位

订单

  • /order/list -列出所有订单
  • /order/placeOrder -下新订单
  • /order/modifyOrder -修改现有订单
  • /order/cancelOrder -取消现有订单
  • /order/liquidatePosition -清算头寸

账户

  • /account/list -列出所有帐户
  • /account/find -查找特定帐户
  • /cashBalance/getCashBalanceSnapshot -获取账户的现金余额

市场数据

  • /md/getQuote -获取报价数据
  • /md/getDOM -深入了解市场数据
  • /md/getChart -获取图表数据

许可证

MIT许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。