hmo
52ed188fa9
feat: LLM提示词补波段出场形态判断——趋势判断加'连续2日收破MA10→弱可波段先出/回稳+新高→稳可波段再进'(k线形态由LLM判断不在代码硬编码,老莫原则)
2026-08-12 21:28:28 +08:00
hmo
f86598f15c
fix: --force补漏主循环预过滤跳过点(共3处:冷却/process内/主循环)
2026-07-29 04:27:05 +08:00
hmo
39b3e9b88b
feat: batch_reassess加--force全量强制重评标志(旁路冷却期+已有分析两项跳过检查)
2026-07-29 04:04:08 +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
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
1523f9ad16
feat: position hard-constraint + cash-linked sizing + rotation context
...
- 建议仓位必须具体数字%,模糊表述(中等仓位/减仓或观望/轻仓)视为输出作废
- 必须结合可用现金计算可买股数,理想仓位超现金时写出实际可执行仓位+换仓建议
- 未持有股票注入最弱3只持仓上下文,LLM可给'减持XX换入'的具体换仓建议
2026-07-24 14:04:02 +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
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
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
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
51c19b4971
fix: 资金流改Sina MoneyFlow(eastmoney 246不可达) + 消息面按行业名匹配+大盘兜底
2026-07-22 12:31:48 +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
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
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
40852de280
fix: LLM空输出视为失败 + save_result拒绝写入空分析(防止假时间戳跳过机制失效)
2026-07-22 00:24:47 +08:00
hmo
9914ff9457
feat(盯盘): 推荐操作区域置顶独立 + tag与XMPP动作级信号自动同步
...
- mofin_db: write_holding_strategy 内置tag同步语义——动作级信号
(买入/可买入/可加仓/卖出/止盈)→current_recommend; 信号降级→
清除current_recommend; active_manual人工标记永不被自动流覆盖/清除
- 新增 sync_recommend_tag() 供裸SQL调用方
- batch_reassess.save_result / per_stock stage-2 调用同步
- 盯盘Tab: '重点推荐'更名'推荐操作', 区域独立琥珀色视觉, 置顶
同步语义: XMPP买入信号(ACTION级告警)的个股=推荐操作区域个股,
信号消失(重评降级)时区域同步消失
2026-07-21 23:31:57 +08:00
hmo
05a60cf0d4
revert( 34337fc5): 恢复被知微二次stale提交覆盖的昨晚重构——batch/per_stock/stale_detector/fix_gateway_port/candidate_filter 回滚至1e71a2d8版本;她提交中的运行时文件(db-shm/db-wal/price_history/market_scan_summary)移出跟踪;保留其morning_health_check小果清理
2026-07-21 23:24:45 +08:00
知微
34337fc5b7
clean: 移除早上健康检查/系统审计中的小果残留引用(二次提交—deploy guard恢复旧版后重新应用)
2026-07-21 12:05:43 +08:00
hmo
1e71a2d852
feat(alerts): alert_helper 统一告警网关——信噪比控制
...
两级通道:
- ACTION(买入信号/重点推荐/部署验证失败): 直通不限速, 🚨 醒目前缀
- INFO(部署/卫生/修复/螺旋报备): 同类30min限1条 + ≤8行截断 +
24h内容去重(同一问题不重复轰炸) + 压制计数透明披露
6个调用点全部迁移: deploy_guard/hygiene/spiral/self_repair(INFO)
+ batch_reassess/per_stock_reassess 买入信号(ACTION)
解决: 真正有意义的信息(重点推荐操作)不被纯通知淹没
2026-07-21 02:43:57 +08:00
hmo
cd530c2463
fix(llm): 重评直连OCG上游绕过hermes agent运行时 + 全线切flash + prompt输出纪律
...
事故根因(2026-07-21): hermes gateway /v1/chat/completions 非透传,
每个请求创建带工具的agent会话。一次603288重评螺旋35分钟/44次
terminal调用/输入153k token, 客户端超时后服务端空转, 重试叠加
新会话自我DDoS。
- llm_client 重写: OCG直连为主(key运行时从hermes config.yaml
ocg-key6读取, 不落盘), gateway兜底(agent模式仅应急)
- REASSESS_MODEL: pro -> flash (A/B实测新prompt下质量差距微弱,
flash快40%)
- prompt输出纪律: 【建议仓位】不可省略(非买入写'不新建仓'),
禁止structured_data/XML/JSON块, 禁止寒暄开场白
- batch main 双通道预检(全挂才退出)
2026-07-21 01:00:47 +08:00
hmo
de9927a627
重评核心重构:ds-v4-pro + 原策略全文 + strategy_history + 前端三改造
...
后端(重评管线):
- 新增 llm_client.py 共享客户端: REASSESS_MODEL=deepseek-v4-pro 单点,
gateway预检(fail-fast), 150s超时+1次重试, 永不抛异常
- batch_reassess/per_stock_reassess: curl/urllib -> call_llm,
prompt传入原策略全文+当前参数+最近3条变更, 输出 维持/修改判断+
修改点理由+最终新策略, max_tokens 4096
- mofin_db: 新增 strategy_history 表 + snapshot_strategy_history(),
write_holding_strategy 覆写前自动快照(保留20条/code)
- mofin_db: holding_strategies 补 tag 列迁移 + 写入保留
(tag缺席=保留旧值, 显式传''=允许清除), 修复推荐标签被静默丢弃
- mo_data.read_decisions: SELECT 补 tag
- stale_detector/promote_candidates: 子进程超时 240/60 -> 480s
前端:
- 移除 报告Tab -> mofin_health 全部流程/Cron 表加 最后十次 列
(modal列表->详情), /api/reports 支持 cron+script 多路匹配
(jobs.json name->id 解析 + 文件名/标题子串兜底)
- 移除 决策库Tab
- 盯盘Tab 重构: 全部持仓+自选, sort_group 分组(推荐/持仓/自选),
推荐行琥珀高亮+🔥 badge+行内策略, 新增 操作策略 列查看
最近3次完整策略(/api/strategy_history/<code>, 表缺失时降级当前行)
- 提示词Tab: registry.py 数据路径改回 /home/hmo/MoFin/data/prompts
(红线: 数据只在规范数据根), 空态提示初始化命令
2026-07-20 23:51:24 +08:00
知微
c31736a38d
chore: deployed pipeline fixes
2026-07-20 17:31:48 +08:00
hmo
a40b97f5ca
feat(analysis): systematic daily 12-dim LLM analysis for holdings+watchlist
...
Gap (reported by user via zhiwei): premarket full review updated technical
params but full_analysis (12-dim LLM matrix) was empty for new holdings
and stale for old ones — batch_reassess existed but was never wired into
the daily pipeline and only covered watchlist.
System fix:
- premarket_full_review.py: new Step 1.5 runs batch_reassess --type
holding --today every trading day 08:10 (force-refresh today's analysis,
timeout 3600s, result in summary.json)
- batch_reassess.py:
- coverage: --type holding|watchlist|all (was watchlist-only)
- staleness: analysis >20h stale gets refreshed (was: skip if any
analysis exists = forever stale)
- --today flag: force re-analyze if not reassessed since 04:00 today
- cash/total read live from portfolio_summary (was hardcoded 321271/
952879 from weeks ago)
- HK stock prefix fix (5-digit codes -> hk, was sending sz00700)
- watchlist_12d_backfill.py: wrapper for hermes cron (no args support)
- cron job '批量补全九维分析-一次性' -> '自选12维分析补全-每日午间'
(daily 12:30 weekdays, covers 109 watchlist stocks missing analysis)
Verified: 300308 got 1920-char 12-dim analysis written to DB at 08:41,
signal=观望, stop/take-profit updated.
2026-07-20 08:48:08 +08:00
知微
80d59c9331
feat: 统一部署目录——所有运行时文件归入MoFin repo
...
- deploy/bot/ — XMPP bot核心(xmpp_agent_core + xmpp_zhiwei_bot)
- deploy/profile-scripts/ — cron脚本(price_monitor等)
- 运行时文件已替换为指向MoFin的符号链接
- 改代码只需改MoFin,系统自动生效
2026-07-17 23:12:35 +08:00