返回市场
交易接口管理器

交易接口管理器

作者:lazy-dinosaur64 星标更新:2025-04-07

项目介绍

CCXT MCP Server

npm 版本 npm 下载量 GitHub Stars 许可证: MIT

한국어 버전(Korean version)

CCXT MCP Server 是一个允许AI模型通过 Model Context Protocol (MCP) 与加密货币交易所API交互的服务器。该服务器使用 CCXT库 提供对超过100个加密货币交易所及其交易能力的访问。

🚀 快速开始

# 全局安装包
npm install -g @lazydino/ccxt-mcp

# 使用默认设置运行
ccxt-mcp

# 或者不安装直接运行
npx @lazydino/ccxt-mcp

安装和使用

全局安装

# 全局安装包
npm install -g @lazydino/ccxt-mcp

使用 npx 运行

你可以直接不安装运行:

# 使用默认设置
npx @lazydino/ccxt-mcp

# 使用自定义配置文件
npx @lazydino/ccxt-mcp --config /path/to/config.json

查看帮助:

npx @lazydino/ccxt-mcp --help

配置

在 Claude Desktop 中注册 MCP 服务器

  1. 打开 Claude Desktop 设置

    • 转到 Claude Desktop 应用中的设置菜单
    • 找到“MCP 服务器”部分
  2. 添加新的 MCP 服务器

    • 点击“添加服务器”按钮
    • 服务器名称:ccxt-mcp
    • 命令:npx @lazydino/ccxt-mcp
    • 额外参数(可选):--config /path/to/config.json
  3. 保存并测试服务器

    • 保存设置
    • 使用“测试连接”按钮测试连接

配置方法 - 两种选项

选项 1:直接在 Claude Desktop 设置中包含账户信息(基本方法)

此方法直接在 Claude Desktop 设置文件(claude_desktop_config.json)中包含 CCXT 账户信息:

{
  "mcpServers": {
    "ccxt-mcp": {
      "command": "npx",
      "args": ["-y", "@lazydino/ccxt-mcp"],
      "accounts": [
        {
          "name": "bybit_main",
          "exchangeId": "bybit",
          "apiKey": "YOUR_API_KEY",
          "secret": "YOUR_SECRET_KEY",
          "defaultType": "spot"
        },
        {
          "name": "bybit_futures",
          "exchangeId": "bybit",
          "apiKey": "YOUR_API_KEY",
          "secret": "YOUR_SECRET_KEY",
          "defaultType": "swap"
        }
      ]
    }
  }
}

使用这种方法,你不需要单独的配置文件。所有设置都集成到了 Claude Desktop 配置文件中。

选项 2:使用单独的配置文件(高级方法)

为了将账户信息分离到单独的配置文件中,请按以下方式设置:

  1. 创建单独的配置文件(例如,ccxt-accounts.json):
{
  "accounts": [
    {
      "name": "bybit_main",
      "exchangeId": "bybit",
      "apiKey": "YOUR_API_KEY",
      "secret": "YOUR_SECRET_KEY",
      "defaultType": "spot"
    },
    {
      "name": "bybit_futures",
      "exchangeId": "bybit",
      "apiKey": "YOUR_API_KEY",
      "secret": "YOUR_SECRET_KEY",
      "defaultType": "swap"
    }
  ]
}

重要:配置文件必须在根级别包含一个 accounts 数组,如上所示。

  1. 在 Claude Desktop 设置中指定配置文件路径
{
  "mcpServers": {
    "ccxt-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@lazydino/ccxt-mcp",
        "--config",
        "/path/to/ccxt-accounts.json"
      ]
    }
  }
}

注意:当使用带有 --config 选项的单独配置文件时,服务器会直接在 JSON 文件的根目录查找 accounts 数组,而不是在 mcpServers.ccxt-mcp.accounts 路径下查找。

  1. 从命令行使用外部配置文件运行
# 使用自定义配置文件
npx @lazydino/ccxt-mcp --config /path/to/ccxt-accounts.json

你可以在仓库的 examples/config-example.json 中找到示例配置文件。

使用单独配置文件的原因

  • 避免递归引用问题
  • 分离敏感信息,如 API 密钥
  • 更容易进行多环境配置(开发、测试、生产)
  • 改善配置文件版本控制

主要功能

  • 市场信息检索

    • 列出交易所
    • 查看交易所的市场信息
    • 获取特定符号的价格信息
    • 查看特定符号的订单簿信息
    • 搜索历史 OHLCV 数据
  • 交易功能

    • 创建市价/限价订单
    • 取消订单并检查状态
    • 查看账户余额
    • 检查交易历史
  • 交易分析

    • 日/周/月度绩效分析
    • 计算胜率(最近7天、30天、全部时间)
    • 平均盈亏比(R倍数)
    • 最大连续亏损/盈利系列分析
    • 资产变化追踪
    • 综合绩效指标
    • 交易模式识别
    • 基于周期的回报计算
  • 仓位管理

    • 资本比例交易(例如,以账户资本的5%进入)
    • 期货市场杠杆设置(1-100倍)
    • 动态仓位调整(基于波动性)
    • 实现分割买卖策略
  • 风险管理

    • 基于技术指标的止损设置(例如,在5分钟图表上的10根蜡烛中最低点)
    • 基于波动性的止损/止盈(ATR倍数)
    • 最大允许损失限额(每日/每周)
    • 动态止盈设置(跟踪利润)

工作原理

用户 <--> AI 模型(Claude/GPT) <--> MCP 协议 <--> CCXT MCP 服务器 <--> 加密货币交易所 API
  1. 用户:请求如“告诉我比特币的价格”或“在我的币安账户上购买以太坊”
  2. AI 模型:理解用户请求并确定要使用的 MCP 工具/资源
  3. MCP 协议:AI 和 CCXT MCP 服务器之间的标准化通信
  4. CCXT MCP 服务器:使用 CCXT 库与加密货币交易所 API 通信
  5. 交易所 API:提供实际数据并执行交易订单

与 AI 模型一起使用

当注册到 Claude Desktop 后,你可以向 AI 模型提出以下类型的请求:

注意事项和推荐提示

使用 AI 模型时,请考虑以下注意事项,并使用以下提示进行有效交易:

你的目标是尽可能多地使用 ccxt 工具执行交易
注意事项:
- 在进行交易前准确识别是否是期货市场还是现货市场
- 如果没有关于资本百分比或金额的指示,始终计算并使用全部可用资本进行交易

注释

  • AI 模型有时会混淆期货交易与现货交易。
  • 没有明确的交易资本规模指导,AI 可能会感到困惑。
  • 使用上述提示有助于清晰地传达你的交易意图。

基本查询示例

检查并比较币安和 Coinbase 上当前的比特币价格。

高级交易查询示例

仓位管理

在我 Bybit 账户(bybit_futures)的 BTC/USDT 期货市场上,使用我账户资本的5%,10倍杠杆开立多头仓位。
根据移动平均线交叉策略入场,并在最近12根5分钟蜡烛中的最低点设置止损。

绩效分析

分析我 Binance 账户(bybit_main)过去7天的交易记录,并显示胜率、平均利润和最大连续亏损。

详细交易分析

分析我在 bybit_futures 账户上过去30天的 BTC/USDT 交易表现。计算胜率、利润因子,并识别我的获胜交易中的任何模式。
展示我 bybit_main 账户过去90天的每月回报,并识别我最好的和最差的交易月份。
分析我在 bybit_futures 账户上的连续赢利和亏损,并告诉我是否有任何心理模式影响我在亏损后的交易。

开发

从源代码构建

# 克隆仓库
git clone https://github.com/lazy-dinosaur/ccxt-mcp.git

# 导航到项目目录
cd ccxt-mcp

# 安装依赖
npm install

# 构建
npm run build

🤝 贡献

欢迎贡献!请随时提交拉取请求。

📄 许可证

根据 MIT 许可证分发。更多信息请参阅 LICENSE 文件。

❤️ 支持

如果你发现这个项目有用,请考虑在 GitHub 上给它一个 ⭐️!