Files
MoFin/docs/统一触发逻辑改造方案-20260812.md
T

78 lines
5.5 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.
# 统一触发逻辑改造方案(盘中重评:进区→LLM重评→维持建议才发推荐)
> 创建:2026-08-12 作者:小小莫(Sisyphus)| 状态:**待老莫确认后实施**(高风险,涉及核心盘中推荐逻辑)
> 原则来源:老莫 2026-08-12 明确——"进区触发重评→重评维持才发推荐"本该如此;不要有例外(v_combo波段出场);k线形态判断在 LLM 提示词上体现(不在代码硬编码特定规则);重评就是最强确认;冷却时间(防短时间反复进区频繁触发重评)。
---
## 一、统一触发逻辑(目标态)
```
进操作区间(买入区 / 卖出区[止盈/止损/波段])
→ 触发 LLM 重评(batch_reassess.collect_data + build_prompt + call_llm12维全面评估)
→ LLM 基于 tech_snapshotMA5/10/20/60+支撑阻力+量价)判断 k 线形态(连续收破MA10/回稳/量价关系)
→ 综合结论(timing_signal)维持建议:
买入推荐:含"买入/可买入/加仓/可加仓"
卖出推荐:含"卖出/止盈"
→ 发推荐
→ 冷却:进区信号 30 分钟(price_monitor _can_push 现有)/ 重评 5 分钟(regenerate_all 现有)
```
**核心原则**
1. **统一**:所有盘中触发(买入/卖出/波段出场)同一逻辑,无例外
2. **k 线形态在 LLM 提示词上体现**:连续破MA10/收阳缩量/量价关系由 LLM 判断(tech_snapshot 提供数据),代码不硬编码特定规则
3. **重评是最强确认**:LLM 12维全面评估(大盘/行业/个股×消息/基本/技术/资金),比"连续破MA10"单一规则更全面
4. **冷却防高频重复**:进区信号 30 分钟(同股同区间不重复推)+ 重评 5 分钟(LLM 重评开销)
## 二、需要改造的两块
### 1. stale_push_wlin(买入)——当前"进区直接推"
**现状**468-480 行):
- 价格进买入区(entry_low~entry_high)硬检查**就推**买入提醒("拒绝偏离仍推买入")
- 重评是独立的(RR<1.5/无止盈/非买入signal 标记 STRATEGY_STALE → 后台跑 per_stock_reassess
**改造**
- 进买入区 → **触发 LLM 重评**batch_reassess collect_data+build_prompt+call_llm
- LLM 综合结论含"买入/可买入/加仓/可加仓" → 发买入推荐
- LLM 综合结论非买入(观望/卖出/信号不充分) → **不发**(或发"暂不推荐"说明)
- 冷却:进区信号 30 分钟(同股同区间不重复触发重评)
### 2. price_monitor v_combo 波段出场(卖出)——当前"连续破MA10 代码规则"
**现状**515-537 行):
- exit_mode=swing 的持仓(v_combo 回调源):
- swing_out**连续 2 日收破 MA10** + 价<MA10 → 推"波段先出"(代码硬编码特定规则)
- swing_re**收回 MA10 + 突破前一日高点** → 推"波段再进"(代码硬编码特定规则)
**改造**
- **删除**"连续破MA10"代码规则(例外)——已改在 LLM 提示词(build_prompt 趋势判断加"波段出场形态":连续2日收破MA10→弱可波段先出/回稳+新高→稳可波段再进,已完成)
- 进卖出区(止盈/止损/波段区)→ **触发 LLM 重评** → LLM 判断 k 线形态(连续收破MA10/回稳)+ 综合结论含"卖出/止盈" → 发卖出推荐
- 冷却:进区信号 30 分钟(_can_push 现有)
## 三、风险与应对
| 风险 | 应对 |
|------|------|
| **LLM 重评耗时**call_llm 几秒~几十秒/只,盘中高频进区慢) | 冷却(30分钟进区信号 + 5分钟重评)+ 进区才触发(非全量) |
| **LLM 端点故障**(重评失败,盘中推荐中断) | 兜底:LLM 失败时不发推荐(宁可漏发,不误发);或降级用技术面算法兜底(待定) |
| **改坏盘中推荐**(核心逻辑) | 小步实施:先改 v_combo 波段出场(独立),验证;再改 stale_push_wlin;每步验证不破坏现有推荐 |
| **timing_signal 判断"维持建议"** | 用 LLM 综合结论(【综合结论】节:买入/关注/观望/卖出)——已确认 parse_response 提取 |
## 四、待老莫确认的决策点
1. **LLM 故障兜底**:LLM 重评失败时,**不发推荐**(宁可漏发不误发)还是**降级技术面算法兜底**?
2. **"进卖出区"定义**v_combo 波段出场删除"连续破MA10"后,"进卖出区"= 策略设定的止盈区/止损区/波段区(take_profit_zone/stop_loss),对吗?
3. **并行确认**parallel_batch.sh(盘前批量重评)vs premarket_full_review(盘前全量重评+自选退出)**功能重叠**——合并还是分工?(事项三遗留)
4. **进区信号冷却 30 分钟**是否够用?(防短时间反复进区频繁触发重评)
5. **重评耗时**:LLM 重评每次几秒~几十秒,盘中进区多时会排队——是否接受(冷却缓解)还是需要快评/异步?
## 五、实施顺序(老莫确认后)
1.**price_monitor v_combo 波段出场**(删除连续破MA10 代码规则 → 进卖出区触发 LLM 重评 → 维持卖出才发)——独立,先做
2.**stale_push_wlin**(进区直接推 → 进区触发 LLM 重评 → 维持买入才发)
3. 验证:手动触发模拟进区 → 确认推荐逻辑正确(买入区维持买入才推 / 卖出区维持卖出才推)
4. 小样本实测(不破坏现有推荐)
> 已完成的低风险部分:LLM 提示词补"波段出场形态"判断(build_prompt 趋势判断加连续2日收破MA10→弱/回稳+新高→稳)——k 线形态由 LLM 判断的基础已就绪。