Skip to content

Latest commit

 

History

History
363 lines (280 loc) · 12.9 KB

File metadata and controls

363 lines (280 loc) · 12.9 KB

KHunter 股票分析系统 发版说明

版本信息

  • 版本号: v1.5.0
  • 发布日期: 2026-06-19
  • 发布类型: 功能增强版 + Bug修复
  • 发布状态: 生产就绪

一、核心功能

1.1 选股策略

  • 15种选股策略 - 覆盖底部反转、趋势加速、形态突破等多个维度
    • 底部趋势拐点
    • 涨停回马枪策略
    • 涨停横盘策略
    • 启明星策略
    • 多金叉共振
    • 多方炮策略
    • 阻力位突破策略
    • 强势洗盘弱转强
    • 趋势加速拐点
    • 仙人指路策略
    • W底策略
    • 趋势起点策略
    • 2560战法
    • 金三角策略(新增)- 基于A/B/C三点金叉形态检测
    • 金叉不绿策略(新增)- 金叉形态+绿色K线过滤

1.2 择时策略

  • 5种择时策略 - 辅助判断买卖时机
    • 布林带策略
    • RSI策略
    • 支撑位策略
    • 海龟策略
    • 顺势宝策略 - MACD金叉 + 布林带上穿中轨

1.3 五维度综合评分系统

  • 技术面评分(权重35%)- 策略命中情况,权重累加
  • 资金面评分(权重35%)- 资金流向分析,最重要指标
  • 基本面评分(权重10%)- 财务指标分析,排雷为主
  • 板块强度评分(权重10%)- 所属板块表现,顺势而为
  • 事件驱动评分(权重10%)- 重大事件催化,短期机会

1.4 狩猎场功能

  • 多维度评分的股票筛选
  • 支撑位计算和买点判断
  • 股票追踪管理
  • 评分排名和历史查询

1.5 策略回测功能

  • 支持单策略和多策略回测
  • 详细的回测结果分析
  • 收益曲线展示
  • 交易记录查看

1.6 策略运行器

  • 策略自动化执行
  • 配置文件检测(无配置文件时自动隐藏)
  • 除权检测机制

1.7 PTrade自动交易(新增)

  • 集成PTrade量化交易平台
  • 事件驱动模型:before_trading_start 处理信号 + after_trading_end 导出结果
  • 支持自动交易闭环

1.8 Web管理界面

  • 系统概览和数据管理
  • 股票列表和搜索
  • 选股执行和结果展示
  • 策略配置和参数调整
  • 策略回测和结果分析
  • 狩猎场和股票追踪
  • 行业和板块分析
  • 策略运行器

二、v1.5.0 策略变化

2.1 新增策略

2.1.1 选股策略

  • 金三角策略(GoldenTriangleStrategy):基于A/B/C三点金叉形态检测,识别趋势拐点
    • A点:X日前出现金叉(MA5上穿MA10)
    • B点:A点后出现金叉确认
    • C点:当前最新金叉信号
    • 条件:MA20 >= MA60,且A、B、C点严格按时间顺序排列
  • 金叉不绿策略(GoldenCrossNotGreen):金叉形态 + 绿色K线过滤,提升信号质量

2.2 策略参数调整

  • RSI策略:超卖阈值从30调整为40,放宽抄底条件
  • 布林带策略:增加3%买入缓冲

三、v1.5.0 新增功能

3.1 PTrade自动交易模块

  • 自动交易主程序trading/ptrade/khunter_auto_trade.py
  • 事件驱动模型:before_trading_start + after_trading_end
  • 标准API适配:使用 get_history 替代 attribute_history(QMT专有)
  • 股票代码标准化:.SH → .SS 自动转换
  • 交易反馈trading/ptrade/ptrade_feedback.py
  • 接入示例trading/ptrade/ptradesample.py

3.2 连续温度风险

  • 市场温度监控:基于温度计数据连续监控风险状态
  • 配置驱动config/continuous_temp_risk.yaml
  • 实现模块utils/continuous_temp_risk.py

3.3 除权检测与修复

  • 自动除权检测:基于前复权因子变化检测除权除息
  • K线重建:支持近期(1-6个月)除权股票的K线数据重建
  • 相对误差阈值:采用0.01%相对误差阈值统一检测逻辑

3.4 日期工具类

  • 交易日判断:统一的交易日历工具(utils/date_utils.py
  • 工作日计算:支持工作日与自然日转换

四、v1.5.0 技术优化

4.1 数据源优化

  • TickFlow集成:数据源切换至 TickFlow 免费批量 API
  • 批量初始化:K线初始化改为批量TickFlow + 腾讯财经降级
  • API降级:区分无数据与API失败,仅API失败时才降级到腾讯财经
  • 初始化增强:默认获取3年K线数据(原1年)

4.2 Bug修复

  • 未来函数修复:全面修复各策略中的未来函数问题(ffill向前填充等)
  • 停牌检查:修复停牌检查逻辑,正确区分交易日和非交易日
  • 科创板volume:统一688科创板volume单位为「手」
  • 数据更新状态:修复数据源未就绪时前端一直显示"更新中"的问题
  • 策略运行器:修复持仓文件名搜索使用 working_date 而非 today 的问题
  • 温度数据:修复递归级联导致无限向后追溯的问题
  • 温度补充:自动补充温度数据最多5天,限制时间窗口

4.3 性能优化

  • 批次大小调整:TickFlow API 批次从500改为100,匹配API最大限制
  • 缓存机制:策略运行器增加缓存,减少重复计算
  • 日志优化:历史重建日志级别从DEBUG改为INFO

五、文档完善

5.1 策略说明书

  • 14个策略详细说明书(strategy/spec/目录),包括:
    • 2560战法、底部趋势拐点、多方炮、多金叉共振
    • 金叉不绿、金三角、启明星、强势洗盘弱转强
    • 趋势加速拐点、仙人指路、涨停横盘、涨停回马枪
    • 阻力位突破、W底

5.2 发布文件清单

  • 完整的发布文件清单(RELEASE_FILES.md)
  • 详细的前端和后端文件列表
  • 新增文件的详细说明

六、版本记录

v1.5.0 (2026-06-19)

  • 新增选股策略:金三角策略、金叉不绿策略
  • 新增PTrade自动交易:事件驱动模型,支持自动交易闭环
  • 新增连续温度风险:基于市场温度的连续风险监控
  • 新增除权检测:K线数据除权检测与自动修复
  • 新增日期工具类:统一的日期处理工具
  • 数据源优化:切换至 TickFlow 免费批量 API
  • 技术优化:全面修复未来函数、停牌检查、volume单位等问题
  • Bug修复:数据更新状态、策略运行器、温度数据等多个问题修复

v1.4.0 (2026-05-26)

  • 新增选股策略:趋势起点策略、2560战法
  • 新增择时策略:顺势宝策略(MACD金叉 + 布林带)
  • 新增风险控制模块:VaR风险评估、风险控制器
  • 新增策略运行器:自动化策略执行,支持配置检测
  • 新增日志管理:自动清理10天前日志
  • 文档完善:添加Logo和系统截图,更新README

v1.3.0 (2026-05-05)

  • 新增启明星策略:底部反转形态选股策略
  • 优化评分系统:修复技术面评分问题
  • 用户体验优化:热门行业弹窗、策略名称中文显示
  • 技术优化:交易日判断、板块数据缓存

v1.0.0 (2026-04-18)

  • 首次正式发布 - 生产就绪版本
  • 核心功能完整 - 包含选股、评分、排名、回测、狩猎场等所有功能
  • 文档完善 - 详细的README和发布文件清单
  • 质量保证 - 完整的数据库架构和前端功能验证

七、系统要求

7.1 硬件要求

  • CPU: 双核或以上
  • 内存: 4GB或以上
  • 磁盘: 2GB可用空间(用于数据库和缓存)
  • 网络: 稳定的互联网连接

7.2 软件要求

  • 操作系统: Windows/Linux/macOS
  • Python: 3.8或以上
  • 数据库: SQLite 3.0或以上(已内置)

7.3 可选配置

  • Tushare API Token: 用于获取财务数据(可选,免费数据源可用)
  • PTrade平台: 用于自动交易(可选)
  • 网络代理: 如需要访问国外数据源

八、安装和使用

8.1 快速开始

# 1. 克隆项目
git clone https://github.com/ling-0729/KHunter.git
cd KHunter

# 2. 安装依赖
pip install -r requirements.txt

# 3. 配置
cp config/config.yaml.template config/config.yaml
# 编辑 config/config.yaml 填写必要配置

# 4. 启动Web界面
python main.py web

8.2 Windows用户

  • 直接双击根目录下的 start.bat 文件启动Web服务

8.3 首次使用

  1. 初始化数据 - 执行数据初始化(默认获取3年K线)
  2. 数据更新 - 执行数据更新获取最新K线
  3. 执行选股 - 运行选股策略
  4. 排名评分 - 对选股结果进行五维评分
  5. 查看狩猎场 - 查看符合条件的优质股票

8.4 Web界面访问

  • 访问 http://localhost:5001 使用Web界面

8.5 PTrade自动交易(可选)

  • trading/ptrade/ 目录下的文件部署到PTrade平台
  • 配置KHunter信号文件路径
  • 参考 trading/ptrade/ptradesample.py 示例代码

九、注意事项

  1. 数据时效性:板块数据在收盘后15:00-17:00更新,建议17:00后进行评分计算
  2. Tushare积分要求:部分接口需要6000积分才能调用
  3. TickFlow API:每日更新时可能因数据尚未就绪而跳过,属于正常行为
  4. 除权除息:系统自动检测除权事件并重建K线,如发现异常可手动触发重建
  5. 评分权重:综合评分权重可参考config/strategy_weights.json配置文件
  6. 免费数据源:策略选股功能可稳定使用,但评分等功能依赖的资金面、基本面等数据可能存在获取不稳定的情况
  7. 数据库文件:首次运行会自动创建stock_selection.db数据库文件
  8. 日志文件:系统日志保存在logs目录,遇到问题可查看日志排查(自动保留10天)
  9. 策略运行器:需要配置文件才能使用,无配置文件时菜单自动隐藏
  10. PTrade模块:需要PTrade平台环境,普通使用可忽略

十、常见问题

10.1 数据相关

  • Q: 为什么选股结果为空?

    • A: 检查是否已执行数据初始化和更新,确保有足够的历史数据
  • Q: 评分为什么显示-100?

    • A: 这表示股票触发了一票否决条件,被自动淘汰
  • Q: 如何更新数据?

    • A: 在Web界面的"数据管理"页面执行数据更新

10.2 功能相关

  • Q: 如何调整策略参数?

    • A: 在Web界面的"策略配置"页面在线修改参数
  • Q: 如何调整评分权重?

    • A: 修改config/strategy_weights.json文件中的权重配置
  • Q: 如何导出选股结果?

    • A: 在选股结果页面可以查看详细信息,支持复制和保存
  • Q: 策略运行器菜单不显示?

    • A: 需要配置文件才能显示,检查config目录下是否有策略运行器配置文件
  • Q: 如何使用PTrade自动交易?

    • A: 将trading/ptrade/目录部署到PTrade平台,参考ptradesample.py配置

10.3 技术相关

  • Q: 如何查看系统日志?

    • A: 日志文件保存在logs目录,可查看具体错误信息(保留10天)
  • Q: 如何重置数据库?

    • A: 删除stock_selection.db文件,重新启动系统会自动创建
  • Q: 如何配置Tushare API?

    • A: 在config/tushare_config.json中配置API token

十一、技术支持

如遇到问题,请按以下步骤排查:

  1. 检查日志文件 - 查看logs目录中的错误信息
  2. 验证数据库 - 确保stock_selection.db文件完整
  3. 检查网络 - 确保网络连接正常,能访问数据源
  4. 验证配置 - 检查config目录中的配置文件是否正确
  5. 查看文档 - 参考README.md和各策略说明书
  6. 提交Issue - 在GitHub上提交问题报告

常见错误排查

  • "table backtest_result has no column" - 数据库架构不匹配,需要重新初始化
  • "API调用失败" - 检查网络连接和Tushare API配置
  • "选股结果为空" - 检查数据是否已更新,策略参数是否合理
  • "评分计算失败" - 检查是否有必要的数据源配置
  • "策略运行器菜单不显示" - 检查配置文件是否存在
  • "数据源尚未就绪" - 正常现象,TickFlow数据通常在15:00后可用

十二、许可证和致谢

12.1 许可证

本项目基于 MIT 许可证 开源,详见 LICENSE 文件。

12.2 致谢

  • 感谢原项目 a-share-quant-selector 的作者 Dzy-HW-XD,本项目在其优秀的基础架构上扩展开发
  • 感谢 akshare 提供的A股数据获取库
  • 感谢 pandasnumpy 提供的数据处理能力
  • 感谢 Flask 提供的Web框架支持

12.3 免责声明

  1. 本项目仅供学习和研究使用,不构成任何投资建议
  2. 筛选结果仅为技术指标计算结果,不代表对任何股票的推荐或预测
  3. 过往表现不代表未来收益,股市有风险,投资需谨慎
  4. 使用者应基于独立判断进行投资决策,因使用本项目产生的任何投资损失,作者不承担任何责任
  5. 本项目按"原样"提供,不附带任何明示或暗示的保证

十三、联系方式


KHunter 股票分析系统 v1.5.0 让量化选股更简单、更高效 发布日期: 2026-06-19