Commit Graph

104 Commits

Author SHA1 Message Date
知微 abd8d5c258 元自成长改为每日两次(12:45+00:45),半天内完成闭环
12:45: 上午盘发现问题→注入新规则→17:25审计就用新规则扫
00:45: 全天修复汇总→注册表更新→次日审计带新规则

Dad要求:用上午盘的发现提升下午盘,而不是等一周
2026-06-24 00:14:41 +08:00
知微 b4af8c9927 元自成长层:meta_growth 每周扫描修复模式→自动扩展扫描规则
- scripts/meta_growth.py (NEW): 每周日22:00分析git log中的修复模式,
  识别新问题类型,向 hardcode_scanner 注入新规则
- scripts/hardcode_scanner.py (MODIFIED): 预置扩展点注释,
  meta_growth 可直接在其后追加新规则元组
- docs/SELF_GROWTH_SYSTEM.md (UPDATED): 新增第七章"元自成长层"
- cron: 元自成长-每周 周日22:00 no_agent

设计理念:自成长机制本身必须也是自成长的。
hardcode_scanner 能扫什么不是写死的——meta_growth
会从你的修复习惯中学习新的扫描类别。
2026-06-24 00:10:45 +08:00
知微 6c97870a8d add daily tool scripts: hardcode_scanner, branch_scanner, prune_branches 2026-06-24 00:04:59 +08:00
知微 e33a236bc1 自成长系统:四层循环架构文档 + 三个代码改动 + 所有日间修复
内容:
- docs/SELF_GROWTH_SYSTEM.md (NEW) — 完整的 Sense→Respond→Adapt→Improve 架构文档
- docs/SYSTEM_ARCHITECTURE.md (UPDATED) — 总索引指向新文档,cron数从14更新为31
- hk_rate.py (NEW) — HKD汇率模块,缓存+上次有效汇率自动恢复
- price_monitor.py (MODIFIED) — 价格监控注入分支评估+情景切换检测
- strategy_lifecycle.py (MODIFIED) — 策略生命周期评估上下文
- strategy_tree.py (NEW) — 情景化多分支决策引擎

日间修复(2026-06-23):
- stale_push_wlin: cash硬编码146837→读portfolio.json
- stale_push_wlin: lot_cost汇率0.93→hkd_to_cny动态
- stale_push_wlin: HK每手默认500股→Tencent API实时f[60]
- stale_push_wlin: 重评异步→串行(先重评再出报告)
- hk_rate: FALLBACK=0.87硬编码→缓存上次有效汇率
- 新增 cron: 分支扫描每30分, 分支剪枝周六, 硬编码审计17:25
- hardcode_scanner.py 每日扫描所有.py中大额数字
2026-06-24 00:04:26 +08:00
知微 44eef95718 fix: 指数K线数据获取
fetch_kline 修复两个bug:
1. _market_prefix 不认识 sh/sz/hk 开头指数代码
2. 指数code自带前缀,API key不要重复拼接
3. fqkline端点同样支持指数,不需要mkline
4. refresh_mtf_cache 加入6大指数自动缓存

上证指数(4163) MA5=4110 MA10=4053 MA20=4070 周线横盘 月线震荡上升
2026-06-22 23:53:31 +08:00
知微 4863d2c939 fix: cron prompt加入市场趋势研判为强制第一步
每条报告必须先出市场结构判断(大盘格局+行业轮动+组合影响),再分析个股。
确保不再只有个股维度,大盘和行业有独立的研究产出。
2026-06-22 23:27:42 +08:00
知微 eb8648839d feat: 全局系统审计 system_audit.py + 每日cron
system_audit.py 每日17:30自动运行,7个维度全覆盖:
1. 信号管道 — 产出vs处理量,防积压
2. 股票池 — 自选/关注/持仓的数量健康
3. 策略状态 — 过期/缺止损/偏离检测
4. 建议闭环 — pending待执行建议
5. 组合健康 — 仓位/现金水位
6. 数据管道 — 采集时效性
7. 系统服务 — Dashboard/XMPP在线

发现HIGH问题自动触发修复,问题写入report供复盘
2026-06-22 20:21:52 +08:00
知微 06b8388887 docs+fix: 生命周期管理文档 + signal_news processed标记
- docs/lifecycle-management.md 完整生命周期规范(5大对象)
  - 信号、股票、策略、建议、评估的完整状态流转
  - 自我提升循环:信号→评估→执行→对比→修正→验证
  - 当前缺口与修复清单
- signal_news 加 processed 列,处理完标记不重复
- 两个盯盘cron prompt同步更新:读未处理信号(WHERE processed=0)+标记已处理
2026-06-22 20:12:00 +08:00
知微 b32e2fd803 feat: 新增行业领涨股扫描 xiaoguo_scanner
- 新增 fetch_sector_leaders() 从 market.json 读取热门行业领涨股
- 三路并行:同花顺技术榜 + 行业领涨 + 东财热榜(502降级)
- 优先级排序:行业领涨 > 同花顺榜 > 东财热榜
- 名称→代码映射使用本地缓存,避免频繁调用akshare
- 更新文档
2026-06-22 20:00:40 +08:00
知微 b59c1f3bba feat: xiaoguo信号管道完整链路
- xiaoguo_scanner: 6看多榜+5看空榜轮换,看空榜命中持仓预警
- 鹏华财富热榜降级静默
- 盯盘cron prompt: 接入xiaoguo信号+关注列表检查
- watchlist新增status=watching区分正式自选vs关注
- 楚江新材、中谷物流加入正式自选并生成策略
- 香农芯创、科安达加入关注列表等待回调
- 新增 docs/xiaoguo-signal-pipeline.md 完整流程文档
2026-06-22 19:46:21 +08:00
知微 ce687a4216 fix: xiaoguo_scanner 榜单更新+看空榜持仓预警
- 修bug:stock_rank_cxd_ths 实为'创新低',改为 stock_rank_lxsz_ths '连续上涨'
- 新增6个看多榜(险资举牌)+ 5个看空榜(创新低/持续缩量/量价齐跌/连续下跌/向下突破)
- 看空榜自动比对持仓,命中写入 xiaoguo_risk 信号
- 东财热榜静默降级(502不可修)
- 看空榜不跳过已扫描,每轮全检
2026-06-22 19:13:55 +08:00
知微 774c2e885d fix: mofin_collect 9:30前跳过板块采集 2026-06-22 09:39:20 +08:00
知微 a8c3ec5db9 三修:建议去重+闭环跟踪+模糊用词禁令
server.py:
- /api/advice/record 加去重(同天+同方向+同摘要前40字=跳过)
- /api/advice/confirm 支持 executed 动作+自动打 evaluated 标记

cron prompts:
- MoFin盘前中监控 + 午后监控 加入 advice/record 调用指令
- 模糊用词禁令嵌入 cron prompt
2026-06-21 23:00:53 +08:00
知微 9d85601904 fix: 评估页字段名错误(evaluations→advice_evaluation) 2026-06-21 02:55:12 +08:00
知微 4eb409b51a 市场页改版:三栏展示(行业+趋势信号+小果扫描),取代旧洞察/潜力股 2026-06-21 02:47:04 +08:00
知微 70514bf542 Dashboard: 信号tab + API(signals + xiaoguo-scan),前端展示 2026-06-21 02:44:05 +08:00
知微 aa1f621b03 文档同步:合并判断+时序控制 2026-06-21 02:36:38 +08:00
知微 a2fa754e89 xiaoguo_scanner: 每只1次LLM,合审3篇,5分钟窗口无压力 2026-06-21 02:34:17 +08:00
知微 1ff0c356ab xiaoguo_scanner: 小果独立扫描线,5分钟一轮,三榜交叉发现 2026-06-21 02:28:22 +08:00
知微 4fcc516686 清理残余文件 2026-06-21 01:49:57 +08:00
知微 3dc9e5310d 去小果化:mofin_news只搜不分析,新闻由知微亲自读 2026-06-21 01:49:33 +08:00
知微 cab782bce5 fallback: 小果API不可用时降级到关键词分类 2026-06-21 01:34:22 +08:00
知微 4774b0d53f mofin_collect: 采集链脚本,盘前午后cron已就绪 2026-06-21 01:29:43 +08:00
知微 8010ba8605 时序更新:9:25第一轮,全天21轮,含港股全程+集合竞价 2026-06-21 01:22:43 +08:00
知微 f85f940364 合并二+四为一整条管道:15分周期+盯盘判断+自动入自选+Dashboard展示 2026-06-21 01:02:16 +08:00
知微 d05db31700 文档同步:正文去200字限制 2026-06-21 00:40:43 +08:00
知微 3942356a17 xiaoguo_news_processor: 正文去200字限制,全文发 2026-06-21 00:40:08 +08:00
知微 a42d564f9d 文档:小果调用内容修正(标题+正文,不限字数) 2026-06-21 00:39:00 +08:00
知微 c06e4894d9 文档:30分→10分同步 2026-06-21 00:26:56 +08:00
知微 4fc729e930 完整信号体系:5类17种信号,含严重性分级 2026-06-21 00:23:57 +08:00
知微 c9311ad31b xiaoguo_news_processor: 带全文分析5篇12秒,摘要不限字数 2026-06-21 00:05:17 +08:00
知微 ef7f7d2c25 MAX_ARTICLES=5(实测5篇12s,比3篇多5秒而已) 2026-06-20 23:41:01 +08:00
知微 7814d1d492 xiaoguo_news_processor: 小果LLM分析3篇/次,含摘要+情感,60秒跑通 2026-06-20 23:36:53 +08:00
知微 683bf39a46 xiaoguo_news_processor: 改用规则分类(不调LLM),小果服务器负荷太高 2026-06-20 22:39:09 +08:00
知微 a1d789ddab trend_detector + xiaoguo_news_processor 全链路
- trend_detector.py: 6类信号检测(资金异动/涨跌比反转/领涨更替/趋势拐点/量价背离/普涨背离)
- xiaoguo_news_processor.py: akshare搜新闻+小果LLM情感分析
- mofin_db.py: 新增 sector_signals + signal_news 两张表
- 文档更新:新增第四章实时信号检测与小果情报处理
- 测试结果:趋势检测已通过,信号写入正常
2026-06-20 22:20:54 +08:00
知微 47e3aea1c9 模型更换:MTPLX-Optimized-Speed(12s干净JSON)vs OptiQ(48s带思考泄漏) 2026-06-20 21:50:39 +08:00
知微 08852600c1 新增:信号检测+小果情报处理全链路设计 2026-06-20 21:45:53 +08:00
知微 8cef092c74 更新pipeline文档:JSON→SQLite 2026-06-20 20:55:05 +08:00
hmo c80f814632 fix: K线迁移 + 清理重复文件
migrate_all.py:
- 新增 migrate_klines(): multi_tf_cache.json → stock_daily/weekly/monthly + stock_fundamentals
- 迁移量: daily=5520, weekly=1104, monthly=552 (46只股票)
- 验证表新增 stock_daily/weekly/monthly/fundamentals

清理:
- 删除 web/static/ (与根目录 static/ 重复,server.py 使用 static/)
2026-06-20 20:46:25 +08:00
知微 5936db828f gitignore 排除 data/ 运行时文件和 pycache 2026-06-20 20:36:49 +08:00
知微 7a6ade52f1 cron prompt 全切SQLite + script同步
- 4个LLM cron prompt 从JSON改走 mofin.db SQLite
- ~/.hermes/scripts/ 同步xxm的最新版本
- mofin_query.py 已验证可用
- 迁移验证通过
2026-06-20 20:36:34 +08:00
hmo d820ff2ad8 docs: 更新协作文档 — 记录数据层重构完成状态 2026-06-20 20:08:09 +08:00
hmo 6182ff081d docs: 统一数据库架构实施文档
覆盖: 表结构设计(13张表)、数据流架构、核心模块说明、
部署指南、架构决策记录(ADR)、已知限制
2026-06-20 17:54:10 +08:00
hmo 25f8c6ec67 refactor: 消费者切 SQLite 优先读取
切换策略: SQLite 优先 → 失败回退 JSON

price_events (100%覆盖):
- strategy_feedback.py: run() 优先 query_price_events()
- system_health_check.py: 优先 query_price_events() + query_price_events_by_date()

stock_sector_map (100%覆盖):
- strategy_lifecycle.py: load_stock_sector_map() 优先 stock_sectors 表

market.json (85%覆盖):
- strategy_lifecycle.py: load_market_context() 优先 query_latest_market()
- market_insight.py: generate() 优先 query_latest_market()

portfolio.json + watchlist.json (70%覆盖):
- strategy_lifecycle.py: regenerate_all() 优先 query_holdings() + query_watchlist()
- server.py: /api/portfolio, /api/watchlist, /api/overview, /api/market 优先 SQLite

所有改动保留 JSON 回退路径,SQLite 不可用时自动降级
2026-06-20 17:50:15 +08:00
hmo 1610f184a0 feat: 补全 SQLite 表结构 + 查询函数 + 迁移覆盖
mofin_db.py 新增:
- 4 张表: portfolio_summary, advice_timeline, accuracy_stats, strategy_feedback
- 18 个查询函数: query_holdings, query_watchlist, query_strategies,
  query_advice_timeline, query_candidates, query_candidate_scores,
  query_price_events, query_price_events_by_date, query_stock_sectors,
  query_sector_stocks, query_accuracy_stats, query_strategy_feedback,
  query_strategy_evaluations, query_latest_market, query_holding_by_code,
  query_portfolio_summary

migrate_all.py 新增:
- 4 个迁移函数: migrate_portfolio_summary, migrate_advice_timeline,
  migrate_accuracy_stats, migrate_strategy_feedback
- 迁移量: portfolio_summary(1), advice_timeline(2547),
  accuracy_stats(1), strategy_feedback(37)

现在 13 张表全部覆盖,JSON→SQLite 数据完整迁移
2026-06-20 16:59:24 +08:00
hmo 0650673038 feat: migrate_all.py — 完整数据迁移脚本 (JSON → SQLite)
一次性迁移全部生产数据到 mofin.db:
- stock_profiles.json → stocks (55只)
- portfolio.json → holdings (21只) + holding_strategies (21条)
- watchlist.json → watchlist_stocks (1只) + holding_strategies (1条)
- decisions.json → holding_strategies (316条, 含changelog历史)
- candidate_pool.json → candidates (10只) + candidate_score_history (21条)
- price_events.json → price_events (193条)
- evaluation.json → strategy_evaluations (36条)
- stock_sector_map.json → stock_sectors (62条)

特性:
- 自动从所有JSON源收集股票代码 (collect_all_stocks)
- 代码格式归一化 (_normalize_code: 整数→补零字符串)
- 迁移期间关闭外键约束 (兼容旧数据格式不一致)
- 幂等可重跑 (INSERT OR REPLACE/IGNORE)
- JSON文件不修改,可安全重复执行

替换旧的 migrate_sectors.py (功能已合并)
2026-06-20 16:40:39 +08:00
hmo 0924cf3124 refactor: 数据层重构 — 统一 SQLite 访问层 + 多脚本双写
新建 mofin_db.py 共享数据库模块:
- get_conn() 统一连接管理 (WAL + Row factory + 外键)
- init_all_tables() 幂等建表 (12张表: market/sector/stock/kline/fundamentals/sectors/holdings/strategies/watchlist/candidates/score_history/events/evaluations)
- write_market_snapshot() 市场快照双写
- write_klines() K线数据双写 (stocks + daily/weekly/monthly + fundamentals)
- write_price_event() 价格事件双写
- migrate_stock_sectors() 一次性迁移 stock_sector_map.json
- query_*() 通用查询函数 (sector_trend/top_inflow/consecutive_inflow/market_mood/db_stats)

重构现有脚本:
- market_watch.py: 删除内联 DB 代码,改用 mofin_db
- multi_timeframe.py: _save_local_history() 加 SQLite 双写
- price_monitor.py: record_event() 加 SQLite 双写
- mofin_query.py: 改用 mofin_db 查询函数

新增:
- migrate_sectors.py: 一次性迁移脚本

清理:
- get_realtime_prices.py: 死代码 (只读 portfolio.json,不调API)
2026-06-20 16:26:17 +08:00
知微 8926b11090 自选新增 中钨高新(000657) 并制定策略 2026-06-20 15:50:50 +08:00
hmo a293119a31 feat: 阶段1 — market_watch 双写 SQLite + 查询工具
- market_watch.py: 新增 init_db() 建表 + write_snapshot() 双写 SQLite
  - market_snapshots: 每次采集的元信息(时间、来源、涨跌比、情绪)
  - sector_snapshots: 每个板块的涨跌幅、资金流向、领涨股等
  - JSON 写入保留不变,SQLite 写入失败不影响 JSON 管道
- mofin_query.py: 通用查询工具
  - 板块趋势查询:「半导体最近5次采集的涨跌幅」
  - 资金流向排行:「净流入最多的5个板块」
  - 连续净流入检测:「最近3天连续净流入的板块」
  - 市场情绪趋势 + 数据库概览
  - 支持直接 SQL 查询
2026-06-20 12:51:02 +08:00
知微 9e63899794 清理重复文件(2) 2026-06-20 12:44:09 +08:00