新增批量打分接口
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")
|
@app.get("/api/v1/scores")
|
||||||
def list_scores(
|
def list_scores(
|
||||||
ts_code: Optional[str] = Query(None),
|
ts_code: Optional[str] = Query(None),
|
||||||
|
|||||||
Reference in New Issue
Block a user