XTBApiServer

XTBApiServer

site icon
2025.03.28 0
TypeScript金融交易自动化交易数据分析金融服务
XTBApiServer 是一个基于 MCP(Model Context Protocol)协议的服务器,通过 `@sharplygroup/xtb-api-js` 库暴露 XTB API 的功能。它允许用户通过 MCP 协议与 XTB 交易账户进行交互,支持账户操作、市场数据获取、交易执行等多种功能。
View on GitHub

Overview

基本能力

产品定位

XTBApiServer 是一个金融交易服务工具,主要用于与 XTB 交易平台进行交互,提供账户管理、市场数据查询、交易执行等功能。

核心功能

  1. 账户操作:获取账户信息、保证金水平等。
  2. 计算操作:计算佣金、预期利润和保证金。
  3. 市场数据操作:获取日历事件、图表数据、实时报价等。
  4. 新闻操作:获取指定时间段内的新闻。
  5. 服务器操作:获取服务器时间、API 版本等。
  6. 符号操作:获取所有交易符号或特定符号的信息。
  7. 交易操作:执行交易、获取交易记录和历史交易数据。
  8. 命令执行:支持通过 MCP 协议执行自定义命令。

适用场景

  1. 自动化交易:通过 MCP 协议实现自动化交易策略。
  2. 数据分析:获取市场数据进行分析和可视化。
  3. 账户监控:实时监控账户状态和交易记录。
  4. 交易模拟:使用模拟账户进行交易测试。

工具列表

  1. Account Operations
  2. getCurrentUserData:返回账户货币和杠杆信息。
  3. getMarginLevel:返回账户指标。
  4. Calculation Operations
  5. getCommissionDef:计算佣金和汇率。
  6. getMarginTrade:计算预期保证金。
  7. getProfitCalculation:计算预期利润。
  8. Market Data Operations
  9. getCalendar:返回市场事件日历。
  10. getChartLastRequest:返回图表数据。
  11. getChartRangeRequest:返回指定时间范围的图表数据。
  12. getTickPrices:返回指定符号的实时报价。
  13. getTradingHours:返回交易时间。
  14. News Operations
  15. getNews:返回指定时间段的新闻。
  16. Server Operations
  17. getServerTime:返回服务器时间。
  18. getVersion:返回 API 版本。
  19. ping:刷新系统内部状态。
  20. Symbol Operations
  21. getAllSymbols:返回所有可用交易符号。
  22. getSymbol:返回指定符号的信息。
  23. Trade Operations
  24. getTrades:返回用户的交易记录。
  25. getTradeRecords:返回指定订单的交易记录。
  26. getTradesHistory:返回指定时间段的已关闭交易记录。
  27. getTradeStatus:返回交易状态。
  28. Trading Operations
  29. tradeTransaction:执行交易。
  30. tradeTransactionStatus:返回交易状态。
  31. Command Execution
  32. executeCommand:执行自定义命令。

常见问题解答

  1. 如何配置 XTB API 凭证?
  2. 在项目目录中创建 .env 文件,并填写 USER_IDPASSWORD
  3. 如何区分模拟账户和真实账户?
  4. .env 文件中设置 DEMO_ACCOUNT=truefalse
  5. 如何连接 MCP 客户端?
  6. 使用 MCP Inspector 工具,选择 stdio 作为传输类型。

使用教程

使用依赖

  1. 安装 Node.js(版本 16 或更高)。
  2. 安装 npm。
  3. 拥有一个 XTB 交易账户。

安装教程

  1. 克隆仓库: bash git clone [repository_url]
  2. 进入项目目录: bash cd xtb-mcp-server
  3. 安装依赖: bash npm install

配置

  1. 在项目目录中创建 .env 文件,并填写以下内容: DEMO_ACCOUNT=true USER_ID=your_user_id PASSWORD=your_password
  2. 替换 your_user_idyour_password 为你的 XTB API 凭证。
  3. 如果是真实账户,设置 DEMO_ACCOUNT=false

运行服务器

  1. 构建 TypeScript 代码: bash npm run build
  2. 运行服务器: bash node build/index.js

调试方式

  1. 安装 MCP Inspector: bash npm install -g @modelcontextprotocol/inspector
  2. 运行 MCP Inspector: bash npx @modelcontextprotocol/inspector node build/index.js
  3. 在 MCP Inspector UI 中选择 stdio 作为传输类型并点击 "Connect"。

许可证

None