Commit Graph
551 Commits
Author SHA1 Message Date
hmo 6eab2148eb fix(audit): candidates UPSERT保计算列+market_scanner INSERT对齐表结构+拆除sync_decisions_to_db地雷
举一反三审计结果:
- accumulation_scanner: INSERT OR REPLACE整行替换,promoted=1的候选被重置score/promoted/log
  → ON CONFLICT DO UPDATE只更新扫描器自有列(cron活跃,今日必修)
- market_scanner: INSERT引用表中不存在的列(price/score/entry_low等),实测必失败
  → 对齐真实schema+同款UPSERT(孤儿脚本顺手修)
- sync_decisions_to_db.py: 全表DELETE再从已不存在的decisions.json重建,地雷→归档
2026-07-23 14:23:06 +08:00
hmo 12f7f87a2e fix: 弱信号不可执行+rr_low/rr_high防DELETE+INSERT冲零
- /api/watch: 信号不充分/关注/弱势持有/观望/持有 的推荐永远排队不徽章可执行
  (tag是LLM行动信号时遗留,技术路径降级信号后无权摘tag,徽章层自卡信号)
- write_holding_strategy: INSERT补rr_low/rr_high列,调用方不提供时保留旧值
  (盘中per_stock技术路径每次DELETE+INSERT把两个计算列冲成0,昨晚回填全灭)
2026-07-23 14:11:22 +08:00
hmo d5a62f48ef refactor: per_stock统一使用batch的collect_data+build_prompt
- 删除per_stock内160行独立prompt及数据装配(宏观/PE/资金流/新闻/变更记录/技术位锚)
- 单一prompt源头: 以后改prompt只改batch_reassess.build_prompt一处, 不再漂移
- per_stock免费获得: 技术位锚/持仓上下文(持有vs未持有)/组合现金/参数自检/统一输出纪律
2026-07-23 13:53:37 +08:00
hmo ccfa22c0d4 fix(per_stock): prompt补齐技术位锚定(与batch同源)
- per_stock的12维prompt是独立实现,无【技术位锚】无买入区间输出无参数自检
  → 今日35只重评中26只经per_stock路径,锚定纪律缺失(双prompt漂移)
- 注入同款锚定段+买入区间输出+参数自检+输出纪律第4条
2026-07-23 13:40:28 +08:00
hmo 37664f0523 fix(prompt): MA行仅在可用时输出 2026-07-22 23:46:18 +08:00
hmo cf039b2770 feat(prompt): 技术位锚定+止损门禁+12维命名统一
- collect_data: 现算technical_analysis.full_analysis(强撑/弱撑/枢轴/弱压/强压/有效区间/MA)
- prompt: 【技术位锚】独立高亮段+锚定纪律(止损<区下沿,锚弱撑下方1-3%/强撑;止盈锚弱压强压;
  偏离须说明理由)+输出纪律第4条+【参数自检】节
- save_result: sl>=el时用弱撑x0.985/强撑x0.99自动修正并留痕,无技术位拒写
- 命名: 九维→12维全局统一(prompt/docstring/前端弹窗)
2026-07-22 23:43:45 +08:00
hmo 440ce56b0b fix(ui): 盯盘推荐区RR三值+个股弹窗DB化
- /api/stock/<code>: 从holding_strategies读策略/三值RR/action/full_analysis
  (原先只读data/stocks/{code}.json, 与DB脱节, 弹窗打开=空白)
- openStock弹窗: 新增当前策略卡(信号/区间/损盈/三值RR/仓位/操作建议)+12维分析折叠区
- 盯盘推荐区RR列: 中值下方小字显示下沿~上沿(上次改错表了, renderWatchlist≠盯盘推荐区)
2026-07-22 23:25:34 +08:00
hmo 0f2c6555df fix(action): 12维操作建议写入action+技术路径action权限保护+RR区间显示修复
- batch parse_response提取【操作建议】→ save_result写action(根治: action字段只有技术路径写,
  旧'盈亏比不足不建议买入'与12维买入分析同框矛盾)
- write_holding_strategy: 技术路径不得覆盖新鲜(<20h)12维 action(与信号权威同级)
- 前端: rr_high>0即显示低~高区间(rr_low=0是合法信息: 区下沿=止损贴底即损)
- server: SEND_FILE_MAX_AGE_DEFAULT=0 禁静态缓存
2026-07-22 23:16:43 +08:00
hmo f7f7fe3ca0 fix(parser): 节标题锚定解析+脏区间清洗+三值RR
- parse_response: 只认行首【买入区间】【综合结论】等节行(原先取首个关键词行,
  命中修改点段落引用的旧脏值→95~99区间反复写回,17只股票受害);
  信号锚定】后首词,防'观望(不建议买入)'误判; 【买入区间】无→显式清空
- save_result: 区间-现价距离门禁(eh<0.5px或el>1.5px→拒写并清空,不再保留原值养脏)
- recompute_rr: 三值RR(rr_low/rr_ratio中/rr_high,分别对应区下沿/中值/上沿入场)
- 迁移: holding_strategies+rr_low/rr_high列; digest显示RR中(低~高); watch API+前端展示
2026-07-22 22:59:18 +08:00
hmo 56e1326569 fix(rec): RR基准价改用买入区中值(老爸决策)
- 区/损/盈三数同出一份分析, 自洽闭环; 不随价格波动; 脏区间自动算出RR=0现形
- 区间缺失才兜底现价
2026-07-22 20:49:59 +08:00
hmo 9bcf3e5e63 fix(rec): RR系统自算落库+卖出不占买入预算+RR>=1.5门槛
- mofin_db.recompute_rr: 用现价+止损止盈重算RR, sync_recommend_tag入口统一调用
  (根治: prompt没让LLM输出RR, parse不解析, save不落库 → rr_ratio永远0)
- flush_rec_digest: 卖出/止盈单独一组排最前, 不占现金预算; 买入加RR>=1.5可执行门槛
- server.py/api/watch: 卖出永远可执行; 买入RR>=1.5才给可执行徽章
  (根治: 卖出默认吃8%预算被排队, RR=0的5%仓位反而挤进预算)
2026-07-22 20:31:47 +08:00
hmo dabef038db fix: max_tokens下限512(OCG对小max_tokens短路返回空) 2026-07-22 14:00:14 +08:00
hmo efd8baaeff fix: 空输出不再假成功——升级pro仍空时落到外循环切下一个key 2026-07-22 13:54:25 +08:00
hmo 9939713059 feat(llm): OCG key池——按/api/keys实时状态排序轮换(key6优先),空输出同key升pro再切下一key 2026-07-22 13:51:43 +08:00
hmo e0e98ebb1a fix: 消息面不限情绪标签(分类器已死,原始新闻直接喂LLM自行判断)——batch+per_stock两路 2026-07-22 13:37:45 +08:00
hmo 40a75554aa fix: 消息面查询code列不存在(searched_stocks)导致整个try块死亡——改列名+兜底独立try 2026-07-22 13:31:29 +08:00
hmo 5ebc093408 feat: 腾讯基本面刷新器(PE/PB/EPS/总市值/流通市值) 2026-07-22 13:09:30 +08:00
hmo cdfc7346f1 feat: cninfo行业富集器——批量补全stock_sectors行业映射+回填sector_context 2026-07-22 13:04:43 +08:00
hmo 5d8c7476ff fix: 行业未映射时诚实标注,禁止大盘指标伪装成行业信息 2026-07-22 12:52:12 +08:00
hmo cdbbcec69e fix: stock_sectors列名sector→sector_name(静默except吞掉的错误) 2026-07-22 12:50:41 +08:00
hmo eb644221f4 fix: 资金流聚合输出net_flow/main_force/retail_flow/trend(12维资金面恒0根因) + sector_context污染时行业名兜底 2026-07-22 12:46:22 +08:00
hmo a3f5ad5b3a fix: 资金流端点再修正——ssl_qsfx_zjlrqs(最新在前), lscjfb数据停2020年是僵尸源 2026-07-22 12:36:01 +08:00
hmo 51c19b4971 fix: 资金流改Sina MoneyFlow(eastmoney 246不可达) + 消息面按行业名匹配+大盘兜底 2026-07-22 12:31:48 +08:00
hmo b92a8cb666 fix: 换仓建议f-string嵌套引号语法错误(已部署版本必现,紧急修复) 2026-07-22 11:02:43 +08:00
hmo 294133d605 feat(推荐): 换仓策略——现金不足时自动给出减弱势持仓换入排队推荐的方案 2026-07-22 11:01:02 +08:00
hmo f35144f3f1 feat(盯盘): 推荐区全展示+可执行/排队徽章(预算内标可执行,不再降级隐藏) 2026-07-22 10:53:32 +08:00
hmo 1910cef98b fix: 空信号清除tag + 卖出/止盈仅持仓股算动作信号 2026-07-22 10:48:49 +08:00
hmo b18e0d2164 fix: 关停进区摘要推送(噪音)+ per_stock结束也flush推荐摘要(688428式漏发根治) 2026-07-22 10:39:20 +08:00
hmo c91d4c33f0 fix: 信号-分析对齐(reconcile以已存分析为唯一事实源) + prompt持仓上下文(已持有/未持有分开给建议,禁止两头写) 2026-07-22 10:29:23 +08:00
hmo f42dc9381b feat(推荐): enqueue校验(非动作信号不入队)+头部推荐附12维全文+现金预算操盘建议 2026-07-22 10:12:42 +08:00
hmo e633641686 fix: tag只许LLM路径写(防技术路径抖动幽灵化) + 推荐通知改批量摘要(防09:55式14连发轰炸) 2026-07-22 10:05:54 +08:00
hmo 8c2226e2b4 feat: 信号权威层级+推荐转场推送统一+🔔分级修正
1. 权威层级: 新鲜(<20h)12维动作级信号, 技术路径(regenerate_all/
   price_monitor)无权降级为关注/信号不充分/持有——只有LLM路径或
   风险信号(卖出/止盈)可覆盖。根治推荐区'出现-消失'抖动
2. 推荐转场推送统一收拢到 mofin_db.push_recommend_alert:
   tag新转为current_recommend时推送(全路径), 含质量门禁;
   移除batch_reassess内联推送(防双重告警)
3. price_monitor 🔔分级: 只有持仓股的卖出/止盈才ACTION直推,
   买入/加仓机会一律进INFO摘要(老爸: 这种消息不要再发了)
2026-07-22 09:48:58 +08:00
hmo a42e3a16e5 feat(盯盘): 筛选/排序控制条——信号多选chips+排序下拉(RR升降/涨跌升降)+RR下限过滤+重置 2026-07-22 09:31:19 +08:00
hmo fa163f53f9 fix: 开盘grace(09:00-09:15)——管道刚启动时隔夜数据不误报(verify管道审计+L1功能检查) 2026-07-22 09:20:26 +08:00
hmo 2a4ff53553 fix: sync脚本不再创建scripts/下cron脚本副本(配合文件居住宪法,副本一律自动归档) 2026-07-22 08:42:27 +08:00
hmo d04e7664ee chore: L2卫生自动归档 1 个影子/孤儿文件(archive/202607-auto) 2026-07-22 08:41:29 +08:00
hmo b7898c85c9 Merge branch 'session-work' 2026-07-22 08:41:29 +08:00
hmo 3ea7c52112 feat(L2): 卫生审计自动收尸——scripts/影子副本+零引用孤儿(mtime>7天)自动git mv归档并提交; dev-spec新增文件居住宪法(红线#9) 2026-07-22 08:41:06 +08:00
hmo 228344b06b chore: 归档文件内容同步为当前canonical版本 2026-07-22 08:38:43 +08:00
hmo 55077395f9 chore: scripts/大收尸——178个影子副本/零引用工具归档至archive/20260722-scripts-cleanup(红线#6/#8,git mv保历史) 2026-07-22 08:38:19 +08:00
hmo 375f6d469a chore: sync脚本补price_monitor三处副本硬链 2026-07-22 08:28:39 +08:00
hmo fbad1938f1 feat: 失败二轮重试(休息60s后失败股整体重跑) + sync脚本补7个分叉副本硬链 2026-07-22 08:26:32 +08:00
hmo 04284e5187 fix: 推送质量门禁+损盈一致性门禁(根治垃圾信号)
1. XMPP推送门禁(_validate_buy_alert): 实时价>0(live_prices)、
   区间有效、现价不超上沿5%、损<下沿且在(0.5x~1.0x)现价内、
   盈>上沿>损 —— 任一不过不推只记日志
2. DB损盈一致性门禁: 损必须在下沿之下、盈必须在上沿之上且损<盈,
   不一致字段跳过写入保留原值(浩辰 区2~3损25.11 类污染根治)
3. 推送价格源改 live_prices(不再用 holding_strategies.price 的0值)
4. 浩辰脏行已从快照恢复(区25.93~27.84 损25.11 盈31.38)
2026-07-22 08:16:40 +08:00
hmo c27388681c fix: FALLBACK_MODEL 顶层导入(NameError 曾中断批量重评) 2026-07-22 01:31:56 +08:00
hmo 6cdcd3f2e5 feat(L1): 新增reassess_daily检查——持仓当日重评覆盖率+分析存在率+自选24h补评率(修复'每日重评做没做'无监控的空白) 2026-07-22 01:03:43 +08:00
hmo 36f01dc8f0 fix: save_result区间写入门禁——下沿<上沿<下沿x3,异常整体跳过(防214.68~2.52解析污染) 2026-07-22 00:39:30 +08:00
hmo d92d6ba54b fix: 截断保护——输出<1500字且无信号时升级pro重试(flash懒答/截断导致信号丢失) 2026-07-22 00:36:53 +08:00
hmo 83b0770db0 feat(llm): flash空输出自动升级pro重试(688617实测flash三连空/pro正常输出) 2026-07-22 00:30:33 +08:00
hmo 40852de280 fix: LLM空输出视为失败 + save_result拒绝写入空分析(防止假时间戳跳过机制失效) 2026-07-22 00:24:47 +08:00
hmo c1b38d3d7b feat(盯盘): 推荐操作精选层——72h新鲜度+RR降序+现金预算贪心装入(上限5只)
老爸: 太多推荐=没有推荐。机制:
- 候选: tag非空 且 reassessed_at 72h内(陈旧信号不算推荐)
- 排序: rr_ratio 降序
- 预算: 从 portfolio_summary 读现金/总资产, 每只建议仓位
  (position_advice解析%或默认8%) 贪心累加, 耗尽即止, 最多5只
- 落选者降回持仓/自选自然组
- /api/watch 返回 cash/budget_pct/rec_used_pct, 前端显示预算条
- 推荐行仓位列显示'建议X%'
2026-07-22 00:16:35 +08:00