- Introduced an interactive HTML stock viewer for visualizing strength scores and filtering stocks based on user-defined thresholds. - Added `--all-stocks` parameter to generate charts for all 108 stocks, including those not meeting convergence criteria. - Implemented a new scoring system for breakout strength, incorporating fitting adherence to improve accuracy. - Updated multiple documentation files, including usage instructions and feature overviews, to reflect recent enhancements. - Improved error handling and file naming conventions to ensure compatibility across platforms.
5.3 KiB
5.3 KiB
全股票图表生成功能
创建时间:2026-01-27
版本:v1.0
功能概述
新增 --all-stocks 参数,支持为所有108只股票生成图表,包括不满足收敛三角形条件的股票。
使用方法
方法1:使用流水线(推荐)
# 为所有108只股票生成图表
python scripts/pipeline_converging_triangle.py --all-stocks
# 指定日期 + 所有股票
python scripts/pipeline_converging_triangle.py --date 20260120 --all-stocks
# 详细模式 + 所有股票
python scripts/pipeline_converging_triangle.py --all-stocks --show-details
方法2:仅生成图表
# 为所有股票生成图表(跳过检测和报告)
python scripts/plot_converging_triangles.py --all-stocks
# 指定日期
python scripts/plot_converging_triangles.py --date 20260120 --all-stocks
行为说明
默认模式(不使用 --all-stocks)
- ✅ 只为满足收敛三角形条件的股票生成图表
- ✅ 图表显示完整的三角形趋势线和强度分
- ✅ 适合日常选股使用
示例(20260120):
- 生成14张图表(14只股票满足条件)
- 其他94只股票不生成图表
全股票模式(使用 --all-stocks)
- ✅ 为所有108只股票生成图表
- ✅ 满足条件的:显示三角形趋势线和强度分
- ✅ 不满足条件的:显示基础K线图,强度分显示为0
- ✅ 适合全面查看整个股票池的情况
示例(20260120):
- 生成101张图表(3只因数据问题跳过)
- 14只显示三角形形态和强度分
- 87只显示基础K线,强度分为0
图表差异
满足条件的股票
标题示例:
SH603900 莱绅通灵 - 收敛三角形 (检测窗口: 20250707 ~ 20260120)
显示范围: 20240123 ~ 20260120 (240个交易日) 突破方向: down 宽度比: 0.13
枢轴点: 高3/低4 触碰: 上3/下4 放量确认: 否
强度分: 0.381 (价格: 0.272×50% + 收敛: 0.872×20% + 成交量: 0.000×15% + 拟合贴合度: 0.053×15%)
图表内容:
- 收盘价曲线(黑色)
- 上沿趋势线(红色虚线)
- 下沿趋势线(绿色虚线)
- 成交量柱状图
不满足条件的股票
标题示例:
SH600000 浦发银行 - K线图(不满足收敛三角形条件)
显示范围: 20240123 ~ 20260120 (240个交易日)
强度分: 0.000 (未检测到收敛三角形形态)
图表内容:
- 收盘价曲线(黑色)
- 成交量柱状图
- 无趋势线
典型使用场景
场景1:日常选股
# 默认模式:只看满足条件的股票
python scripts/pipeline_converging_triangle.py
- 快速查看有潜力的股票
- 减少图表数量,提高效率
- HTML查看器显示14只满足条件的股票
场景2:全面研究(推荐)
# 全股票模式:查看所有股票的状态
python scripts/pipeline_converging_triangle.py --date 20260120 --all-stocks
- 了解整个股票池的整体情况
- 对比满足/不满足条件的股票差异
- 发现边缘形态(接近收敛但未完全形成)
- HTML查看器显示全部108只股票,可通过滑块筛选
场景3:算法调试
# 详细模式 + 所有股票
python scripts/pipeline_converging_triangle.py --all-stocks --show-details
- 查看枢轴点识别情况
- 验证拟合算法效果
- 调试形态检测逻辑
场景4:交互式筛选(新功能)⭐
# 生成HTML查看器后
start outputs/converging_triangles/stock_viewer.html
- 🎚️ 使用滑块动态调整强度分阈值(0.00 ~ 1.00)
- 📊 实时查看筛选后的统计信息
- 🔍 点击图表放大查看细节
- 📱 响应式设计,支持各种屏幕尺寸
- 最佳实践:先用
--all-stocks生成全部数据,再在浏览器中交互式筛选
输出文件
所有图表保存在:outputs/converging_triangles/charts/
文件命名规则:
- 简洁模式:
YYYYMMDD_股票代码_股票名称.png - 详细模式:
YYYYMMDD_股票代码_股票名称_detail.png
示例:
20260120_SH600000_浦发银行.png # 不满足条件
20260120_SH603900_莱绅通灵.png # 满足条件(向下突破)
20260120_SH600744_华银电力.png # 满足条件(无突破)
性能说明
- 默认模式:生成14张图,耗时约1分钟
- 全股票模式:生成101张图,耗时约1分钟
- 图表生成速度相近,主要时间在数据读取和三角形检测
注意事项
- 数据覆盖:部分股票可能因停牌、退市等原因缺少指定日期的数据,会自动跳过
- 磁盘空间:每张图约150KB,108张图约16MB
- 文件覆盖:重新运行会清空旧图表,如需保留请先备份
- 强度分为0:不满足条件的股票强度分始终为0,表示未检测到收敛三角形形态
相关文档
- 使用说明 - 完整的使用指南
- HTML查看器快速指南 - 快速上手 HTML 查看器
- HTML查看器详细文档 - 查看器完整功能说明
- 强度分计算方法 - 强度分的计算逻辑
- 强度分计算示例 - 详细的计算步骤示例
- 文件名修复说明 - ST股票文件名非法字符处理