Commit Graph
115 Commits
Author SHA1 Message Date
hmo 63b53f5c56 feat: 策略研究Tab全流程回测框架 + API端点 + 前端渲染 + 盘中大跌分析日志 2026-07-28 22:53:29 +08:00
hmo a3ef3b570f feat: 严谨技术指标(RSI/MACD/量能/背离)_calc_ta_score+_calc_scores 2026-07-28 13:58:02 +08:00
hmo 1dcadcb909 fix: prompt加趋势判断(下跌趋势反弹不追高) 2026-07-28 13:26:12 +08:00
hmo 1aa2697761 fix: prompt加RR真实性铁律(RR<2降级/最近阻力止盈/禁追高) 2026-07-28 11:59:14 +08:00
hmo 72885bcf45 fix: generate_report DB路径+status过滤+MAX_PRE_REASSESS防超时(还原知微修复) 2026-07-28 09:52:21 +08:00
hmo 069d4a603d fix: remove inactive concept, fix L3 noise 2026-07-28 09:08:13 +08:00
hmo c572bbc3ef feat: 策略追踪评估系统(版本化+理论盈亏+浮盈/浮亏+自动SL/TP检测+30s刷新) 2026-07-27 19:03:05 +08:00
hmo 7a3c74b63d fix: RR门禁前置+盘前标签修正+参数权威保护
- sync_recommend_tag: RR<2.0的买入先查RR再打tag(不落盯盘垃圾)
- 参数权威: 技术路径不得覆写12维Zone/SL/TP(防RR波动)
- prompt: 价格标签分盘中实时/上次收盘(不骗LLM)
2026-07-27 11:19:30 +08:00
hmo 0513522e5a fix: MoFin/scripts/死路径全部改指deploy/profile-scripts/
- promote/review_needed_watchdog引用已删除的per_stock_reassess.py
- meta_growth→hardcode_scanner, mofin_collect→stock_quote, stale_detector同
- 清影子副本的连锁遗留
2026-07-24 14:41:56 +08:00
hmo 5de6bda868 fix: promote技术位锚定+accumulation入门4→5+watchlist_auto_exit排cron+归档孤儿market_scanner
- promote参数不再信扫描器: ta.full_analysis重定 区(弱撑~弱压)/损(强撑x0.985)/盈(强压)
- accumulation_scanner入门闸 score>=4→5(减少陪跑噪音)
- watchlist_auto_exit排入系统crontab(每日08:50,此前根本没调度)
- market_scanner.py是孤儿(跑的是market_screener),归档
2026-07-24 14:32:40 +08:00
hmo 1523f9ad16 feat: position hard-constraint + cash-linked sizing + rotation context
- 建议仓位必须具体数字%,模糊表述(中等仓位/减仓或观望/轻仓)视为输出作废
- 必须结合可用现金计算可买股数,理想仓位超现金时写出实际可执行仓位+换仓建议
- 未持有股票注入最弱3只持仓上下文,LLM可给'减持XX换入'的具体换仓建议
2026-07-24 14:04:02 +08:00
hmo 309f074c51 feat: S6叙事一致性检查+统一入口+容量60硬顶+提拔先入观察
- candidate_filter S6: 消息(个股+行业)x资金x技术叙事矩阵
  利好出货/三重打击=硬否决(dropped=1,不可被高分抵消)
  共振做多+3/利空出尽+1/资金驱动+1/阴跌-1/行业利空-1
- promote: 信号一律先入'关注'(12维确认才升,消灭出生即买入); 容量60硬顶,RR<2的末位淘汰
- alphasift收编: 只写candidates不再直写自选(统一入口)
2026-07-24 12:09:30 +08:00
hmo 481acfb18f feat: 优中选优机制(老爸:阈值太低+存量清洗+直接删)
- enqueue_recommend加严: RR>=2.0+仓位必须明确%+买入区有效+不追高(防今早RR1.49/仓位观望/区缺失的垃圾digest)
- promote: score>=7(原4=91%通过率)+ST排除+RR>=2.0
- watchlist_auto_exit: 新增死水3连退+RR<1.5退; 退出方式改为直接DELETE(非inactive)
- 盯盘可执行门槛1.5→2.0
2026-07-24 11:00:41 +08:00
hmo 1cdef8da7e feat: SenseNova高速通道(key从hermes config读,不落盘)
- token.sensenova.cn托管同款deepseek-v4-flash,实测3.2s vs OCG 45s(开盘高峰)
- 通道顺序: sensenova→OCG key池→gateway; 空输出直接切下一通道(SN无pro)
2026-07-24 09:18:15 +08:00
hmo a559fc84dd feat: 批量重评分片并发(老爸:这么多key不能并发?)
- batch_reassess --shard K/N: index%N==K分片,N进程互不重叠
- llm_client LLM_KEY_OFFSET: key池起始位错开,避免N进程压同一首选key
- SKIP_FLUSH=1时worker不发摘要,parallel_batch.sh收尾统一flush
- parallel_batch.sh: N路并行+等待+统一digest
2026-07-24 09:02:34 +08:00
hmo 9fad0cfa14 feat: kanban→XMPP通知桥(assignee=xiaoxiao/xxm的卡片DM给xxm@yoin.fun)
- hermes gateway dispatcher只派给246本地hermes profile, 小小莫在Windows够不着
- 每2分钟扫kanban.db, [Kanban] card.assigned格式DM, 去重状态文件
2026-07-23 15:53:06 +08:00
hmo 9e995accb2 fix(template): 空仓股票不再显示'盈利持有'
- 技术模板action首段按profit_pct打标签, 非持仓cost=0→profit=0→永远掉进'盈利持有'
  (601998: 空仓+信号买入+显示'盈利持有', 自相矛盾)
- 非持仓(shares=0/is_watchlist): 买入信号→'空仓·可建仓', 其他→'空仓关注'
- manual分支同款修复
2026-07-23 14:42:13 +08:00
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 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 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 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 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 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 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 3ea7c52112 feat(L2): 卫生审计自动收尸——scripts/影子副本+零引用孤儿(mtime>7天)自动git mv归档并提交; dev-spec新增文件居住宪法(红线#9) 2026-07-22 08:41:06 +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