fix: 修复外部因素数据源 - 北向资金改为南向资金,修复P0-P7全部外部因素

- P0资金面:DB数据过期时用麦蕊API获取资金流向
- P1市场情绪:去掉turnover字段依赖(DB无此字段)
- P2南向资金:北向实时数据已停公布,改用南向资金(港股通)替代
- P3美股:用腾讯财经API替代失效的AKShare接口
- P4大宗商品:用腾讯财经API替代,修复var_name解析
- P7汇率:用新浪财经API替代失效的AKShare接口
- 修复评分详情API技术得分硬编码问题
- 前端传入tech_score参数确保明细与列表分数一致
This commit is contained in:
selfrelease
2026-07-18 16:45:58 +08:00
parent bb5a72767f
commit 79e869eeda
13 changed files with 637 additions and 193 deletions
+17
View File
@@ -575,16 +575,33 @@ def job_afternoon_trade():
print(f"[定时任务] ===== 午后交易任务结束 {datetime.now()} =====")
def job_precompute_market_factors():
"""开市前预热市场级外部因素缓存(09:15执行)
预计算 P1市场情绪、P2北向、P3美股、P4商品、P7汇率、P6政策面,
结果存入 score_engine 内存缓存,后续全景扫描和评分直接复用。
"""
print(f"[定时任务] ===== 开市前预热外部因素 {datetime.now()} =====")
try:
from services.score_engine import precompute_market_factors
precompute_market_factors()
print("[定时任务] 外部因素预热完成")
except Exception as e:
print(f"[定时任务] 外部因素预热失败: {e}")
def run_scheduler():
"""运行定时任务调度器"""
global _is_running
# 设置定时任务 — v7最优时点: 09:35买入 / 13:40卖出
schedule.every().day.at("09:15").do(job_precompute_market_factors) # 开市前预热外部因素
schedule.every().day.at("09:35").do(job_morning_trade)
schedule.every().day.at("13:40").do(job_afternoon_trade)
schedule.every().day.at("15:05").do(trigger_closing_update) # 收盘更新持仓价格
print("[定时任务] 调度器已启动 (v7最优时点)")
print("[定时任务] - 09:15 开市前预热外部因素缓存")
print("[定时任务] - 09:35 早盘交易(使用昨日扫描数据 — 最优买入时点)")
print("[定时任务] - 13:40 午后交易(使用当日中午扫描数据 — 最优卖出时点)")
print("[定时任务] - 15:05 收盘更新持仓价格")