给AI使用的金融分析工具
Project description
QuantAll(全A解析)
A股全市场向量化并行计算引擎。支持 5000+ 股票的全市场因子计算、策略回测、因子 IC 分析及 GPU 多维可视化。
核心价值:为 AI 配置本地计算引擎,让 AI 从「数据搬运工」升级为「数据分析师」—— 不再只是查询信息,而是用代码算出客观结果。
安装
pip install quantall
安装后,包内自带以下内置资源:
| 内置资源 | 说明 |
|---|---|
ai_prompts.toml |
AI 提示词配置,用于 MCP 工具语义理解 |
Test.duckdb |
测试数据库(沪深300近两年行情),开箱即用 |
注意:仅支持 Windows 平台(依赖 PySide6 GUI 和 PyOpenGL GPU 渲染)。
快速开始
第一步:创建启动脚本
在项目目录下创建 Start_QuantAll.py:
"""
QuantAll 启动入口
说明:
- Start_main() 需要传入项目路径
- 项目路径下会自动查找 DB_setting.json、数据库文件、data/ 目录
- 如果需要修改数据库路径,编辑 DB_setting.json 中的 db_path 字段
- 注意:文件名不要用 "QuantAll.py",可能与包名冲突
"""
import os
from QuantAll import Start_main
print("全A解析启动中...")
# 将 os.path.dirname(__file__) 替换为你的项目路径
# Start_main("C:/your/project/path")
Start_main(os.path.dirname(__file__))
第二步:配置数据库连接
在启动脚本同级目录创建 DB_setting.json:
{
"db_path": "你的数据库路径/data.duckdb",
"days": 730,
"ex_do": true,
"stock_index": "stock_index",
"map_stock_index": {
"trade_date": "trade_date", "symbol": "symbol",
"open": "open", "high": "high", "low": "low",
"close": "close", "pre_close": "pre_close",
"vol": "vol", "voe": "voe"
},
"stock": "stock",
"map_stock": {
"trade_date": "trade_date", "symbol": "symbol",
"open": "open", "high": "high", "low": "low",
"close": "close", "pre_close": "pre_close",
"vol": "vol", "voe": "voe"
},
"stock_basic": "stock_basic",
"map_stock_basic": {
"symbol": "symbol", "name": "name",
"check": ["industry", "business_scope", "main_business",
"province", "city", "act_ent_type", "concept"]
},
"stock_factor": "stock_factor",
"map_stock_factor": {"symbol": "symbol", "trade_date": "trade_date"},
"stock_forecast": "stock_forecast",
"map_stock_forecast": {"symbol": "symbol", "ann_date": "ann_date"},
"stock_dividend": "stock_dividend",
"map_stock_dividend": {"symbol": "symbol", "ann_date": "ann_date", "ex_date": "ex_date"},
"stock_report": "stock_report",
"map_stock_report": {"symbol": "symbol", "ann_date": "ann_date"},
"_": "_",
"map__": {}
}
| 关键参数 | 类型 | 说明 |
|---|---|---|
db_path |
string | DuckDB 数据库文件的绝对路径(必改项) |
days |
int | 加载交易天数,默认 730(约2年) |
ex_do |
bool | 是否启用除权除息处理 |
map_* |
object | 各表字段名映射,可将自定义数据库字段映射到标准名 |
测试体验:若只是想快速体验,将
db_path指向包内自带的Test.duckdb(安装后在site-packages/QuantAll/Test.duckdb),内含沪深300近两年基础行情数据。
第三步:启动服务
python Start_QuantAll.py
启动后,QuantAll 在 http://127.0.0.1:8686/mcp 提供 HTTP MCP 服务。
功能概览
QuantAll 提供 11 个 MCP 工具,覆盖量化研究的完整工作流:
| 工具 | 类型 | 功能说明 |
|---|---|---|
strategy_backtest |
回测 | 全市场策略回测,输出收益率、夏普比率、最大回撤、胜率等指标 |
factor_analysis |
因子 | 因子 IC 分析,支持 summary/daily/scatter 三种模式,输出 IC均值、IR、多空收益差 |
new_layer_from_code |
图层 | 自定义散点图层,支持 shift 平移分析标记日前后的数据分布 |
move_by_code |
统计 | 坐标轴平移,按因子/特征给散点着色生成热力图 |
weight_by_code |
统计 | 权重赋值,对选中集合做加权分布统计 |
select_by_code |
集合 | 集合操作(交/并/差/补等 6 种模式),筛选股票 |
heat_map |
矩阵 | 多维热力图统计,支持 x_y / x / y 三种模式 |
get_user_selection |
交互 | 获取 GUI 可视化界面中用户框选的股票列表 |
available_data |
数据 | 查看当前数据库及图层中可用字段列表 |
ping |
系统 | 健康检查,确认服务正常 |
MCP_Close |
系统 | 关闭 QuantAll 服务 |
数据准备
QuantAll 依赖本地 DuckDB 数据库运行,需要包含以下数据表:
| 表名 | 内容 |
|---|---|
stock / stock_index |
日线行情(OHLCV) |
stock_basic |
股票基本信息(名称、行业、省份、概念等) |
stock_factor |
日频因子(换手率、PE、PB、市值等) |
stock_forecast |
业绩预告 |
stock_dividend |
分红送转 |
stock_report |
财务报表(153个指标) |
获取数据有两种方式:
方式一:通过 UpdateStock 自动管理(推荐)
搭配 [UpdateStock] AI技能,可通过 AI 助手一键建库、全量/增量更新:
- 全量更新:需 tushare 2000+ 积分,覆盖所有历史数据
- 增量更新:需 tushare 200 积分,仅更新最近数据(免费注册即可获得)
tushare 注册地址:https://tushare.pro
方式二:自行准备数据库
按 DB_setting.json 配置的表结构和字段映射,自行准备 DuckDB 数据库。字段名可通过 map_* 配置灵活映射,无需严格匹配默认字段名。
AI 助手集成
QuantAll 是一个 MCP(Model Context Protocol)服务,可接入 WorkBuddy、Claude Desktop 等支持 MCP 的 AI 助手。
WorkBuddy 配置
在 ~/.workbuddy/mcp.json 中添加:
{
"mcpServers": {
"全A解析": {
"url": "http://127.0.0.1:8686/mcp",
"disabled": false
}
}
}
其他 MCP 客户端
任何支持 HTTP MCP 协议的客户端均可通过 http://127.0.0.1:8686/mcp 连接。
代码执行环境
QuantAll 内置 Python 向量化计算环境,AI 可直接编写策略代码执行。环境提供:
d:dict[str, DataFrame],所有可用数据(字段名 -> 全市场 DataFrame)col_attrs:dict[str, Series],各字段属性(分组、分类信息等)np、pd:numpy、pandas 直接可用
约束:代码必须向量化(禁止 for 循环、
df.apply()、lambda),最后一行用out = ...输出结果。
激活
QuantAll 目前不激活可以正常使用。启动需要同意用户协议,激活代表永久同意,后续启动不再弹出用户协议弹窗。
依赖
核心依赖(pip install quantall 时自动安装):
mcp>=1.26.0 # MCP 协议
pandas>=2.3.3 # 数据计算
numpy>=1.24.0 # 数值运算
duckdb>=1.5.2 # 数据库引擎
PySide6>=6.10.1 # GUI 可视化
PyOpenGL>=3.1.9 # GPU 渲染
cryptography>=46.0.3 # 安全与激活
openpyxl>=3.1.5 # Excel 导出
pywin32>=311 # Windows 系统集成
Python 版本要求:3.10+,测试通过版本:3.12、3.13。
许可
QuantAll(全A解析)为商业软件,使用需获得授权许可。
联系方式
- PyPI: https://pypi.org/project/quantall/
- 问题反馈:请在对应平台提交 Issue
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quantall-1.0.1-py3-none-any.whl.
File metadata
- Download URL: quantall-1.0.1-py3-none-any.whl
- Upload date:
- Size: 12.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75b22e05746c7d5e21964842ee7f366da3e929ee3ba36d6953ac7366141f4d0b
|
|
| MD5 |
ce3aa860f6987622633ec12da1420d9e
|
|
| BLAKE2b-256 |
7f787421c94ab9b068ccbde5a55c264832e173dae26d8d0541863207ba34bf96
|