technical-patterns-lab/discuss/20260129-讨论.md
褚宏光 bf6baa5483 Add scoring module and enhance HTML viewer with standardization
- Add scripts/scoring/ module with normalizer, sensitivity analysis, and config
- Enhance stock_viewer.html with standardized scoring display
- Add integration tests and normalization verification scripts
- Add documentation for standardization implementation and usage guides
- Add data distribution analysis reports for strength scoring dimensions
- Update discussion documents with algorithm optimization plans
2026-01-30 18:43:37 +08:00

106 lines
6.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 收敛三角形函数本身
总体思路:用户可调整"强度分"中的每个参数,最终筛选出符合预期的个股。
1. **"拟合贴合度"与"边界利用率",是否可以合并为一个维度?** ✅ 已完成
- **结论**:不建议合并,两者测量的是不同维度
- **优化**:重命名为"形态规则度"和"价格活跃度",更直观
- **详情**:见 `docs/命名优化_拟合贴合度_边界利用率_重命名.md`
2. **"强度分"中需要新增"角度"参数**:即斜率、三角形的旋转角度。 ✅ 已完成
- **实现方式**:新增"倾斜度分"作为第6个维度
- **权重分配**从突破幅度分中分配5%50% → 45%
- **详情**:见 `docs/强度分_增加角度参数_深度分析.md`
3. **"强度分"内所有参数需保持在 0-1 区间**
**目前所有 6 个强度分参数都已经在 0-1 区间内**。以下是各分量的归一化方式总结:
| 分量 | 归一化方式 | 范围保证 |
|------|-----------|---------|
| **突破幅度分** (`price_score`) | `np.tanh(pct * 15.0)` | tanh 输出 [0, 1](因为 pct ≥ 0 |
| **收敛度分** (`convergence_score`) | `max(0, min(1, 1 - width_ratio))` | 显式 clamp 到 [0, 1] |
| **成交量分** (`volume_score`) | `min(1, max(0, volume_ratio - 1))` | 显式 clamp 到 [0, 1] |
| **形态规则度** (`geometry_score`) | `exp(-error * 20)` + clamp | 指数衰减 + 显式 clamp |
| **价格活跃度** (`activity_score`) | 逐日计算 `1 - blank_ratio` 的平均 + clamp | 每日 clamp + 最终 clamp |
| **倾斜度分** (`tilt_score`) | `(1 ± tilt) / 2` + clamp | 显式 clamp 到 [0, 1] |
### 形态规则度和价格活跃度的归一化详解
关于**形态规则度** (`geometry_score`) 和**价格活跃度** (`activity_score`) 这两个分量的详细归一化实现,请参阅:
**详细文档**[`docs/强度分_形态规则度和价格活跃度_归一化详解.md`](../docs/强度分_形态规则度和价格活跃度_归一化详解.md)
**核心要点**
- **形态规则度**:使用指数衰减映射 `exp(-mean_rel_error * 20)`,测量枢轴点到拟合线的贴合程度
- **价格活跃度**:使用线性反转 `1 - blank_ratio` + 双重clamp逐日计算通道空间利用率后取平均
两者都严格保证输出在 [0, 1] 区间,满足强度分系统的设计要求。
---
![](images/2026-01-29-16-10-44.png)
4. **分析日志,评估各个维度的分布:均值、正态性、厚尾** ✅ 已完成
- **分析时间**: 2026-01-29 16:28
- **样本量**: 18,004个有效三角形 (108只股票 × 500天检测窗口)
- **分析对象**: **强度分系统的6个核心维度** (7个字段: price_score_up/down分开统计)
- **核心发现**:
-**所有7个字段均呈现非正态分布** (p≈0)
- ⚠️ **5/7字段显著厚尾** (超额峰度>0, 极端事件是正态分布的8-19倍)
- 📊 **4/7字段右偏** (多数普通值+少数极端大值的长尾结构)
- **关键发现**:
1. **突破幅度分(向上)**: 中位数=0, 超额峰度13.38, 尾部15.7倍 → 大多数未突破,强突破稀缺但频繁
2. **突破幅度分(向下)**: 中位数=0, 超额峰度45.72 → 向下突破最不可预测
3. **成交量分**: 中位数=0, 尾部19.1倍 → 放量突破极其稀缺(所有维度中尾部倍数最高)
4. **倾斜度分**: 超额峰度46.33, Q25=Q75=0.5 → 算法强烈偏好对称三角形(75%恰好=0.5)
5. **收敛度分**: 超额峰度-1.05 → 唯一薄尾维度,分布稳定可靠
- **实战建议**:
- 禁止使用均值±3σ、t检验等基于正态的方法
- 推荐使用百分位数(P75/P90)、非参数检验、Bootstrap
- 突破幅度分阈值: P85-P90≈0.15 (而非均值0.056)
- 成交量分不作必要条件(中位数=0),仅作加分项
- **权重优化建议**:
- 收敛度分: 20%→25% (最稳定可靠)
- 成交量分: 15%→10% (中位数=0导致区分度低)
- 形态规则度: 10%→5% (数值普遍过低)
- 价格活跃度: 5%→10% (近正态且稳定)
- **详细报告**:
- 📄 主报告: `docs/收敛三角形_数据分布分析_20260129/强度分六维度_分析报告.md`
- 📑 索引: `docs/收敛三角形_数据分布分析_20260129/INDEX.md`
- 🖼️ 可视化: `distribution_plots_强度分六维度.png`, `qq_plots_强度分六维度.png`, `boxplots_强度分六维度.png`
- 📊 数据表: `distribution_analysis_强度分六维度.csv` (7字段统计)
- 💻 脚本: `analyze_distribution_强度分六维度.py` (可重现)
5. **强度分系统优化:等权设计+参数可调性+平滑性优化** ✅ 深度分析完成
- **分析时间**: 2026-01-29 17:00
- **核心问题**:
- 维度间不可比性:中位数差异巨大 (0 vs 0.8)
- 零膨胀分布突破幅度分、成交量分50%为0
- 点质量分布倾斜度分75%=0.5
- 等权相加会导致收敛度分和倾斜度分"吃掉"大部分强度分
- **SOTA方法调研**:
1. **截面分位数标准化**: 消除尺度差异,但对零膨胀效果差
2. **Power Sorting (2023)**: 专门处理厚尾,保留极端值信息
3. **自适应分组标准化**: 根据分布类型选择不同策略
4. **PID控制论**: 自适应权重调整,基于实际反馈优化
5. **端到端ML优化**: 自动学习最优变换和权重
- **推荐方案:分层标准化**:
- 零膨胀分布(突破幅度分/成交量分): 非零部分排名零值设为0.5(中性)
- 点质量分布(倾斜度分): 偏离中心的值进行拉伸
- 正常分布(收敛度分/价格活跃度): 标准分位数标准化
- 低区分度(形态规则度): 对数变换扩大区分度
- **基金经理视角评估**:
| 维度 | 量化意义 | 当前问题 | 建议 |
|-----|---------|---------|------|
| 突破幅度分 | 信号强度/价格动能 | 中位数=0 | 标准化后使用P75+ |
| 收敛度分 | 蓄势程度/多空博弈 | ✅稳定 | 可提高权重 |
| 成交量分 | 资金确认 | 中位数=0 | 不作必要条件,作加分项 |
| 形态规则度 | 形态质量 | 普遍极低 | 对数变换扩大区分度 |
| 价格活跃度 | 真实博弈 | ✅近正态 | 可提高权重 |
| 倾斜度分 | 趋势一致性 | 75%=0.5 | 重新标准化 |
- **系统评分**:
- 当前综合评分: 2.8/5
- 优化后预期: 4.3/5
- **应用层设计**:
- 等权基础 + 预设配置(激进/保守/放量模式)
- 多维度阈值筛选器
- 敏感性分析工具
- **详细报告**: `docs/收敛三角形_数据分布分析_20260129/强度分优化方案_深度分析.md`