返回市场
极量套件AI

极量套件AI

作者:dfkai104 星标更新:2025-03-17

项目介绍

xtquantai

xtquantai 是基于模型上下文协议(MCP)的服务器,它集成了xtquant量化交易平台与AI助手的功能,使AI能够直接访问和操作量化交易数据和功能。

Python 版本 许可证

功能

XTQuantAI 提供以下核心功能(持续更新,欢迎提交新想法):

基础数据查询

  • 获取交易日期 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容get_trading_dates) - 获取指定市场的交易日期
  • 获取板块股票列表 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容get_stock_list) - 获取特定板块的股票列表
  • 获取股票详情 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容get_instrument_detail) - 获取股票的详细信息

市场数据

  • 获取历史市场数据 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容get_history_market_data) - 获取股票的历史市场数据
  • 获取最新市场数据 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容get_latest_market_data) - 获取股票的最新市场数据
  • 获取完整的市场数据 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容get_full_market_data) - 获取股票的完整市场数据

图表和可视化

  • 创建表面面板 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容create_chart_panel) - 创建支持各种技术指标的股票图表表面面板
  • 创建自定义布局 根据上述信息,执行以下指令:您是负责将中文内容翻译成英文的专业翻译人员。请帮我翻译原始内容create_custom_layout) - 创建自定义图表布局,允许指定指标名称、参数名称和参数值

安装

⚠️ 注意事项

  1. QMT生态系统目前仅支持Windows,因此以下是在Windows环境中实现的
  2. 当前在Windows环境中实现MCP有许多需要注意的细节

先决条件

  • Python 3.11或更高版本
  • Xuntou QMT或投资研究终端
  • uv 包管理工具(推荐)

安装uv及注意事项

uv是后续用来启动包的工具,所以我们需要先安装它。请注意,你需要在将要运行xtquantai的环境中安装这个包,这是第一个潜在的问题点。如果不确定,请全部安装。

pip install uv

第二个需要注意的是uv会被缓存,这就是为什么我有clear_cache_and_run.py 文件,如果操作过程中出现错误,不删除缓存是不会更新的。记得运行并删除缓存。

现在下载

git clone https://github.com/dfkai/xtquantai.git

或者直接下载压缩包。你可以将其保存到任何文件夹中,只要最终能定位到xtquantai的具体地址即可。最好直接从文件夹复制地址。

使用说明

与Cursor集成

Windows(QMT/投资研究目前仅支持Windows,并且需要Windows环境)

在Cursor中配置MCP服务器:

方法1:

在当前建立的.cursor文件夹下,创建mcp.json文件,然后Cursor编辑器会自动添加mcp工具

{
  "mcpServers": {
    "xtquantai": {
      "command": "cmd /c uvx",
      "args": [
        "path:\\to\\xtquantai"
      ]
    }
  }
}

⚠️ 注意:在Windows中,命令必须以cmd /c开头,否则命令窗口会在执行后立即关闭。

方法2:

直接在设置-MCP-添加新的 MCP Server中命名xtquantai命令为:cmd /c uvx path:\to\xtquantai,根据上述信息调整为启用

这里要注意path to指的是你在本地机器上的地址,并注意手动填写单个斜杠,但在JSON文件中需要两个斜杠以防止转义。

工具使用示例

获取交易日期

# 获取上海证券市场的交易日期
dates = get_trading_dates(market="SH")

获取股票列表

# 获取沪深A股板块的股票列表
stocks = get_stock_list(sector="沪深A股")

创建表面面板

# 创建包含MA指标的图表面板
result = create_chart_panel(
    codes="000001.SZ,600519.SH",
    period="1d",
    indicator_name="MA",
    param_names="period",
    param_values="5"
)

开发

直接启动服务器

# 使用 Python 直接运行
python -m xtquantai

# 或使用已安装的命令行工具
xtquantai

使用MCP Inspector进行调试(仅限开发期间)

你需要安装Node环境。

npx @modelcontextprotocol/inspector uv run xtquantai

构建和发布

准备发布包:

  1. 同步依赖项并更新锁文件:
uv sync
  1. 构建包分发:
uv build
  1. 发布到PyPI:
uv publish

调试

由于MCP服务器通过标准输入/输出运行,调试可能会比较困难。我们强烈建议使用MCP Inspector进行调试。

项目结构

xtquantai/
├── src/
│   └── xtquantai/
│       ├── __init__.py    # 包初始化文件
│       └── server.py      # MCP 服务器实现
├── main.py                # 启动脚本
├── server_direct.py       # 直接 HTTP 服务器实现
├── pyproject.toml         # 项目配置
└── README.md              # 项目文档

许可证

本项目采用MIT许可证 - 查看详细信息 LICENSE 文件。

贡献

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

致谢