fix: 1m/6m周期温区表策略消失——①补全循环补best_regime②切窗版本集扩展含DB-only策略(s2_panic/v_lurk_*/v_mr*)
This commit is contained in:
@@ -850,6 +850,8 @@ def api_research_strategies():
|
||||
'evidence': '',
|
||||
}
|
||||
_entry['regime_winrates'] = _regime_winrates.get(_mv, {})
|
||||
# 2026-08-16 补全条目必须设 best_regime——否则前端按 best_regime 分表时被踢出所有温区表
|
||||
_entry['best_regime'] = _best_regime_map.get(_mv)
|
||||
_entry['current'] = True
|
||||
_entry['state'] = 'active'
|
||||
_entry['state_reason'] = '当前温区路由激活'
|
||||
|
||||
+10
-1
@@ -2104,7 +2104,16 @@ def list_strategies(period_tag=None):
|
||||
days = PERIOD_SLICE_DAYS[period_tag]
|
||||
have_period = {r['version'] for r in rows}
|
||||
from datetime import datetime as _dt, timedelta as _td
|
||||
for v in list(STRATEGIES.keys()) + [x for x in STRATEGY_DESCRIPTIONS.keys() if x not in STRATEGIES]:
|
||||
# 2026-08-16 切窗版本集扩展:静态字典 + DB 里所有有回测记录的版本
|
||||
# (原版只遍历 STRATEGIES+STRATEGY_DESCRIPTIONS,导致 s2_panic/v_lurk_*/v_mr* 等
|
||||
# DB-only 策略在 1m/6m 周期整体消失)
|
||||
_slice_versions = set(STRATEGIES.keys()) | set(STRATEGY_DESCRIPTIONS.keys())
|
||||
try:
|
||||
_slice_versions |= {r[0] for r in conn.execute(
|
||||
"SELECT DISTINCT version FROM strategy_research WHERE COALESCE(market,'a')='a'").fetchall()}
|
||||
except Exception:
|
||||
pass
|
||||
for v in sorted(_slice_versions):
|
||||
if v in have_period:
|
||||
continue # 已有该 period 记录,不用切
|
||||
row = conn.execute(
|
||||
|
||||
Reference in New Issue
Block a user