- 版本号: v1.3.0
- 发布日期: 2026-05-05
- 发布类型: 功能增强版
- 发布状态: 生产就绪
- 11种选股策略 - 覆盖底部反转、趋势加速、形态突破等多个维度
- 底部趋势拐点
- 涨停回马枪策略
- 涨停横盘策略
- 启明星策略
- 多金叉共振
- 多方炮策略
- 阻力位突破策略
- 强势洗盘弱转强
- 趋势加速拐点
- 仙人指路策略(新增)
- W底策略
- 技术面评分(权重35%)- 策略命中情况,权重累加
- 资金面评分(权重35%)- 资金流向分析,最重要指标
- 基本面评分(权重10%)- 财务指标分析,排雷为主
- 板块强度评分(权重10%)- 所属板块表现,顺势而为
- 事件驱动评分(权重10%)- 重大事件催化,短期机会
- 多维度评分的股票筛选
- 支撑位计算和买点判断
- 股票追踪管理
- 评分排名和历史查询
- 支持单策略和多策略回测
- 详细的回测结果分析
- 收益曲线展示
- 交易记录查看
- 系统概览和数据管理
- 股票列表和搜索
- 选股执行和结果展示
- 策略配置和参数调整
- 策略回测和结果分析
- 狩猎场和股票追踪
- 行业和板块分析
- 缩量回调策略:已从系统中移除,不再参与选股和评分计算
- 多方炮策略:回溯天数从8天调整为3天
- 强势洗盘弱转强策略:大阳线回溯天数默认值从10天调整为6天
- 启明星策略:新增底部反转形态选股策略,识别三根K线组成的启明星形态(长阴线、小实体K线、长阳线)
- 5000+只A股数据 - 覆盖全市场股票
- 三年历史数据 - 支持最多三年历史数据回溯
- 智能数据更新 - 自动判断更新时机,避免不必要的网络请求
- 多层降级机制 - 确保数据获取的稳定性和可用性
- 自动排除ST股、退市股
- 自动排除市值过低股票
- 自动排除近期涨幅过高股票
- 自动排除停牌股票
- 基本面否决:ST股、退市风险、破产清算
- 资金面否决:融资余额异常高企、主力大幅减持
- 技术面否决:股价创历史新低、技术面极度恶化
- 风险否决:市值过低、涨幅过高、停牌
- BIAS阈值调整:BIAS(5)过滤阈值从7%调整为12%,放宽短期乖离率过滤条件
- 过滤规则:保留近N日涨幅、相对最低价涨幅、BIAS(5)、近期跌停四项过滤
- 排名阈值调整:板块涨幅排名加分阈值从前10名调整为前20名,扩大板块评分范围
- 板块过滤:获取个股板块信息时自动排除"融资融券"板块,确保评分准确性
- 策略名称映射:完善策略类名到中文名称的映射,解决策略名称匹配失败问题
- 评分计算优化:修复技术面评分始终为0的问题,现在能正确从选股记录中获取策略命中情况
- 非交易日处理:资金面评分计算自动跳过非交易日,避免无效数据影响评分
- 一票否决机制:保留主力净流入一票否决功能,确保资金流向异常的股票被正确识别
- 计算逻辑修正:最高价计算从选入日期的下一日开始,确保不包含选入日当天的价格
- 实时数据整合:结合历史K线数据和当天实时数据进行最高价计算
- 新增"📈 股票评分系统"完整章节
- 详细说明五维度评分体系
- 清晰的评分计算过程和公式
- 完整的评分等级定义
- 各维度的详细解释和应用场景
- 一票否决条件说明
- 狩猎场使用流程
- 评分配置和数据查询方法
- 完整的发布文件清单(RELEASE_FILES.md)
- 详细的前端文件列表
- 后端功能验证清单
- 文档完整性检查
- 任务10完成报告(TASK_10_COMPLETION_REPORT.md)
- README增强总结(README_ENHANCEMENT_SUMMARY.md)
- 热门行业/板块弹窗:点击首页热门行业或板块的数字,展示相关股票列表模态窗口
- 股票详情展示:优化股票详情显示,确保K线图表正确显示和隐藏
- 数据加载状态:改进前端数据加载处理,当API返回空数据时显示"暂无数据"而非"加载中..."
- 策略名称中文显示:选股结果中的命中策略统一显示为中文名称
- 分组显示优化:选股结果按命中策略分组显示,便于用户理解策略分布
- 过滤信息透明:选股结果页面显示过滤统计信息,包括过滤前后的数量和原因
- 评分等级标记:评分结果使用彩色标记显示等级,便于快速识别
- 数据更新失败提示:数据更新失败时显示具体失败原因,便于问题排查
- 持仓明细显示:修复持仓明细在切换账户后无法正确显示的问题
- API错误处理:完善API错误处理和重试机制
- Python 3.8+ - 核心语言
- Flask - Web框架
- SQLite - 数据存储
- pandas/numpy - 数据处理
- akshare - A股数据获取
- Tushare - 财务数据获取
- HTML5/CSS3 - 页面结构和样式
- JavaScript - 交互逻辑
- Bootstrap - UI框架
- Chart.js - 图表展示
- Matplotlib - K线图生成
- 27个数据表 - 完整的数据结构
- 规范化设计 - 确保数据一致性
- 索引优化 - 提高查询性能
- 事务支持 - 保证数据完整性
- 交易日判断:新增交易日工具模块,正确识别交易日(排除周末)
- 板块数据缓存:板块强度评分器实现内存缓存,减少重复API调用
- 数据验证:完整的数据验证机制,确保数据质量
- 评分记录管理:优化排名生成逻辑,确保所有股票正确计算并保存评分
- 选股结果保存:策略名称统一保存为中文,便于后续分析和展示
- 数据库架构:完整的数据库架构设计,包含27个数据表
- API调用优化:实现带重试机制的Tushare API调用,提高数据获取稳定性
- 数据缓存机制:板块名称映射等频繁使用的数据实现缓存,避免重复查询
- 并行处理:支持批量评分的并行计算,提高处理效率
- 前端优化:改进前端数据加载和错误处理,提升用户体验
- ✅ 11个选股策略实现
- ✅ 5个维度评分器实现
- ✅ 评分计算引擎
- ✅ 回测引擎(支持VectorBT)
- ✅ 狩猎场功能模块
- ✅ Web服务器和API
- ✅ 数据获取和处理工具
- ✅ 主配置文件(config.yaml)
- ✅ 策略参数配置(strategy_params.yaml)
- ✅ 策略顺序配置(strategy_order.yaml)
- ✅ 策略权重配置(strategy_weights.json)
- ✅ 数据源配置(data_sources.json)
- ✅ HTML模板(index.html)
- ✅ CSS样式表(2个文件)
- ✅ JavaScript模块(18个模块)
- ✅ 根级JavaScript文件(9个文件)
- ✅ 图片资源(Logo、Favicon等)
- ✅ 数据库架构脚本(DataSql.sql)
- ✅ 初始化数据脚本(InitData.sql)
- ✅ 27个数据表完整定义
- ✅ README.md - 项目说明和功能介绍
- ✅ RELEASE_NOTES.md - 版本发布说明
- ✅ RELEASE_FILES.md - 发布文件清单
- ✅ LICENSE - MIT许可证
- ✅ CODE_OF_CONDUCT.md - 行为准则
- ✅ CONTRIBUTING.md - 贡献指南
- ✅ SECURITY.md - 安全说明
- 首次正式发布 - 生产就绪版本
- 核心功能完整 - 包含选股、评分、排名、回测、狩猎场等所有功能
- 文档完善 - 详细的README和发布文件清单
- 质量保证 - 完整的数据库架构和前端功能验证
- 用户体验 - 改进的前端数据加载和错误处理
- CPU: 双核或以上
- 内存: 4GB或以上
- 磁盘: 2GB可用空间(用于数据库和缓存)
- 网络: 稳定的互联网连接
- 操作系统: Windows/Linux/macOS
- Python: 3.8或以上
- 数据库: SQLite 3.0或以上(已内置)
- Tushare API Token: 用于获取财务数据(可选,免费数据源可用)
- 网络代理: 如需要访问国外数据源
# 1. 克隆项目
git clone https://github.com/ling-0729/KHunter.git
cd KHunter
# 2. 安装依赖
pip install -r requirements.txt
# 3. 启动Web界面
python main.py web- 直接双击根目录下的
start.bat文件启动Web服务
- 初始化数据 - 执行数据初始化
- 数据更新 - 执行数据更新获取最新K线
- 执行选股 - 运行选股策略
- 排名评分 - 对选股结果进行五维评分
- 查看狩猎场 - 查看符合条件的优质股票
- 访问
http://localhost:5001使用Web界面
- 数据时效性:板块数据在收盘后15:00-17:00更新,建议17:00后进行评分计算
- Tushare积分要求:部分接口需要6000积分才能调用
- 交易日判断:当前仅排除周末,后续可扩展为包含法定节假日
- 评分权重:综合评分权重可参考config/strategy_weights.json配置文件
- 免费数据源:策略选股功能可稳定使用,但评分等功能依赖的资金面、基本面等数据可能存在获取不稳定的情况
- 数据库文件:首次运行会自动创建stock_selection.db数据库文件
- 日志文件:系统日志保存在logs目录,遇到问题可查看日志排查
-
Q: 为什么选股结果为空?
- A: 检查是否已执行数据初始化和更新,确保有足够的历史数据
-
Q: 评分为什么显示-100?
- A: 这表示股票触发了一票否决条件,被自动淘汰
-
Q: 如何更新数据?
- A: 在Web界面的"数据管理"页面执行数据更新
-
Q: 如何调整策略参数?
- A: 在Web界面的"策略配置"页面在线修改参数
-
Q: 如何调整评分权重?
- A: 修改config/strategy_weights.json文件中的权重配置
-
Q: 如何导出选股结果?
- A: 在选股结果页面可以查看详细信息,支持复制和保存
-
Q: 如何查看系统日志?
- A: 日志文件保存在logs目录,可查看具体错误信息
-
Q: 如何重置数据库?
- A: 删除stock_selection.db文件,重新启动系统会自动创建
-
Q: 如何配置Tushare API?
- A: 在config/tushare_config.json中配置API token
如遇到问题,请按以下步骤排查:
- 检查日志文件 - 查看logs目录中的错误信息
- 验证数据库 - 确保stock_selection.db文件完整
- 检查网络 - 确保网络连接正常,能访问数据源
- 验证配置 - 检查config目录中的配置文件是否正确
- 查看文档 - 参考README.md和各策略说明书
- 提交Issue - 在GitHub上提交问题报告
- "table backtest_result has no column" - 数据库架构不匹配,需要重新初始化
- "API调用失败" - 检查网络连接和Tushare API配置
- "选股结果为空" - 检查数据是否已更新,策略参数是否合理
- "评分计算失败" - 检查是否有必要的数据源配置
本项目基于 MIT 许可证 开源,详见 LICENSE 文件。
- 感谢原项目 a-share-quant-selector 的作者 Dzy-HW-XD,本项目在其优秀的基础架构上扩展开发
- 感谢 akshare 提供的A股数据获取库
- 感谢 pandas 和 numpy 提供的数据处理能力
- 感谢 Flask 提供的Web框架支持
- 本项目仅供学习和研究使用,不构成任何投资建议
- 筛选结果仅为技术指标计算结果,不代表对任何股票的推荐或预测
- 过往表现不代表未来收益,股市有风险,投资需谨慎
- 使用者应基于独立判断进行投资决策,因使用本项目产生的任何投资损失,作者不承担任何责任
- 本项目按"原样"提供,不附带任何明示或暗示的保证
- GitHub: https://github.com/ling-0729/khunter
- 文档: 详见 doc/ 目录
- 问题反馈: 在GitHub上提交Issue
KHunter 股票分析系统 v1.1.0 让量化选股更简单、更高效 发布日期: 2026-05-05