# akshare_test **Repository Path**: cutecuteyu/akshare_test ## Basic Information - **Project Name**: akshare_test - **Description**: 股票web应用 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-02 - **Last Updated**: 2026-02-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Stock K-line Web 一个基于 Flask 的股票 K 线图 Web 应用,支持获取和展示中国 A 股市场股票及主要指数的 K 线图表。 ## 功能特性 - 支持 A 股个股和主要指数(上证指数、深证成指、创业板指)的数据查询 - 可自定义查询时间周期(一周、一个月、一年) - 精美的 K 线图渲染,包含移动平均线 - 优雅的配色方案(涨绿跌红) - RESTful API 接口设计 ## 技术栈 - **后端框架**: Flask 3.1+ - **数据源**: AkShare(中国 A 股金融数据接口库) - **图表库**: mplfinance(K 线图专业库)、Plotly - **Python 版本**: 3.13+ ## 项目结构 ``` stock-kline-web/ ├── app.py # Flask 应用主入口 ├── routes.py # 路由处理 ├── stock_service.py # 股票数据获取服务 ├── chart_service.py # 图表生成服务 ├── config.py # 配置文件 ├── static/ # 静态资源目录 │ ├── css/ │ └── js/ ├── templates/ # HTML 模板目录 │ └── index.html ├── pyproject.toml # 项目依赖配置 └── uv.lock # 依赖锁定文件 ``` ## 安装运行 ### 前置要求 - Python 3.13 或更高版本 - [uv](https://github.com/astral-sh/uv) 包管理器 ### 安装步骤 1. 克隆或下载项目到本地 2. 安装依赖: ```bash uv sync ``` 3. 运行应用: ```bash uv run python app.py ``` 4. 在浏览器中访问:`http://localhost:5000` ## API 接口 ### 获取股票 K 线图 **请求** ``` GET /api/stock?code={股票代码}&days={天数} ``` **参数** | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | code | string | 否 | 股票代码,默认为 `sh000001`(上证指数) | | days | int | 否 | 查询天数,可选 7/30/365,默认为 365 | **股票代码格式** - 上证指数: `sh000001` 或 `000001` - 深证成指: `sz399001` 或 `399001` - 创业板指: `sz399006` 或 `399006` - 个股: 六位代码,如 `000001`(平安银行) **响应** ```json { "chart": "data:image/png;base64,...", "data": { "code": "sh000001", "latest_price": 3245.67, "change": 12.34, "high": 3300.00, "low": 3100.00, "volume": 123456789 } } ``` ## 配置说明 在 `config.py` 中可以自定义以下配置: - **图表颜色**: K 线涨跌颜色、移动平均线颜色 - **背景颜色**: 图表和整体背景色 - **字体配置**: 中文字体和文本颜色 - **时间周期**: 预设的时间周期选项 - **API 默认值**: 默认股票代码和查询天数 ## 数据来源 本项目使用 [AkShare](https://akshare.akfamily.xyz/) 获取中国 A 股市场数据,数据来源于公开市场接口。 ## 许可证 MIT License