alphax/docs/factor_recency_audit.md
2026-05-13 22:32:50 +08:00

41 lines
1.9 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.

# 因子时效性审计2026-05-11
目标:禁止把“过去很久发生的事件”当作“当前正在发生的触发信号”。
## 原则
- 当前触发:必须发生在最近 1 根或上一根对应周期 K 线内。
- 历史结构:可以作为背景/风险说明,但不能加当前触发分,不能进入强门控。
- 文案必须区分“当前信号”和“历史已过期信号”。
## 已修复
| 因子 | 旧问题 | 新规则 | 文件 |
|---|---|---|---|
| 1H量价齐飞 | 最近12根内任一放量阳线都可能计入当前信号 | 只承认最近/上一根1H旧信号进入 stale_vp_fly_details | altcoin_screener.py, altcoin_confirm.py |
| 1H起爆点 | 最近20根内旧起爆点仍加分 | 起爆点带 age_bars只承认 age_bars<=1 | pa_engine.py, altcoin_confirm.py |
| 4H起爆点 | 细筛/强共振可能使用旧4H起爆点 | 只承认 age_bars<=1旧信号标记“历史起爆点已过期” | altcoin_screener.py, altcoin_confirm.py |
| 日线起爆点 | 日线旧起爆点仍可能作为当前日线强信号 | 只承认最近1根日线内发生 | altcoin_confirm.py |
| 强共振旁路 | 旧起爆点可绕过量价齐飞门控 | 只使用时效内起爆点 | altcoin_confirm.py |
| 事件驱动起爆点 | 舆情触发技术确认可能用旧1H起爆点加分 | 只承认 age_bars<=1 | event_driven_screener.py |
| 15min突破K | 最近6根内突破可能被描述成“正在发生” | 只承认最近/上一根15min突破K | pa_engine.py |
## 仍作为结构背景的因子
以下因子不是“当前触发”,允许跨较长窗口存在,但文案不应写成正在发生:
- 筑底 N 根
- 需求区/供需区位置
- 底部抬高
- 布林收窄
- 静K蓄力
- 板块联动/大户偏多/资金费率
这些因子只能作为背景/环境加权,不应单独触发“可即刻买入”。
## 验证
- tests/test_vp_fly_recency.py
- tests/test_pa_recency.py
- tests/test_screener_optimizations.py