From 9ba85733e65979b8aa556218c8f9c38ad85ac9a3 Mon Sep 17 00:00:00 2001 From: xxm Date: Sat, 15 Aug 2026 12:13:07 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=BF=9B=E5=8C=96=E6=A8=A1=E5=9D=97base?= =?UTF-8?q?line=E6=95=B0=E6=8D=AE=E9=A9=B1=E5=8A=A8=E8=B7=9F=E9=9A=8F?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E6=BF=80=E6=B4=BB=E9=9B=86=E5=90=88=E2=80=94?= =?UTF-8?q?=E2=80=94=E5=8E=9F=E7=A1=AC=E7=BC=96=E7=A0=81v=5Fweak/v=5Fovers?= =?UTF-8?q?old=E4=B8=8E=E6=B8=A9=E5=8C=BA=E8=B7=AF=E7=94=B1=E8=84=B1?= =?UTF-8?q?=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- evolution/evolution_api.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/evolution/evolution_api.py b/evolution/evolution_api.py index d1f01ffb..435e071a 100644 --- a/evolution/evolution_api.py +++ b/evolution/evolution_api.py @@ -40,9 +40,23 @@ def get_evolution_dashboard(): """).fetchall(): evolution.append(dict(r)) - # 当前策略基线(2026-08-11: 改为当前实盘 v_weak + 新策略 v_oversold) + # 当前策略基线(2026-08-15: 数据驱动——跟随 strategy_weights.json 激活集合, + # 原硬编码 ['v_weak','v_oversold'] 与温区路由脱节,激活策略换了一批但基线还显示旧的) + def _active_versions(): + try: + d = json.loads(open('/home/hmo/MoFin/data/strategy_weights.json', encoding='utf-8').read()) + vs = list(d.get('active') or []) + vs += list(((d.get('markets') or {}).get('hk') or {}).get('active') or []) + seen, out = set(), [] + for v in vs: + if v and v not in seen: + seen.add(v) + out.append(v) + return out or ['v_weak', 'v_oversold'] + except Exception: + return ['v_weak', 'v_oversold'] baseline = {} - for v in ['v_weak', 'v_oversold']: + for v in _active_versions(): r = conn.execute(""" SELECT results_json FROM strategy_research WHERE version=? AND period_tag='5y' ORDER BY id DESC LIMIT 1