新增批量打分接口
This commit is contained in:
@@ -64,6 +64,30 @@ def run_pipeline(req: RunRequest):
|
||||
)
|
||||
|
||||
|
||||
@app.post("/api/v1/run/batch")
|
||||
def run_batch():
|
||||
"""对所有固定品种执行今日打分。"""
|
||||
results = []
|
||||
errors = []
|
||||
for symbol in contracts.SYMBOLS:
|
||||
try:
|
||||
ts_code = contracts.active_contract(symbol)
|
||||
df = fetcher.fetch_contract(ts_code)
|
||||
storage.save_candles(df)
|
||||
result = scorer.score_daily(df)
|
||||
storage.save_score(result)
|
||||
results.append({
|
||||
"symbol": symbol,
|
||||
"ts_code": result.ts_code,
|
||||
"trade_date": result.trade_date,
|
||||
"signal": result.signal,
|
||||
"composite": result.composite,
|
||||
})
|
||||
except Exception as e:
|
||||
errors.append({"symbol": symbol, "error": str(e)})
|
||||
return {"results": results, "errors": errors}
|
||||
|
||||
|
||||
@app.get("/api/v1/scores")
|
||||
def list_scores(
|
||||
ts_code: Optional[str] = Query(None),
|
||||
|
||||
Reference in New Issue
Block a user