复用选股候选股票状态

This commit is contained in:
boris
2026-06-21 01:20:57 +08:00
parent bb87d69224
commit 581d4e32d0
@@ -6638,7 +6638,7 @@ impl PlatformExprStrategy {
} }
continue; continue;
} }
candidates.push((candidate.symbol.clone(), rank_value)); candidates.push((candidate.symbol.clone(), rank_value, stock));
} }
candidates.sort_by(|lhs, rhs| { candidates.sort_by(|lhs, rhs| {
let ordering = if self.config.rank_desc { let ordering = if self.config.rank_desc {
@@ -6660,9 +6660,8 @@ impl PlatformExprStrategy {
let mut quote_candidate_symbols = Vec::new(); let mut quote_candidate_symbols = Vec::new();
let mut selected_symbols = Vec::new(); let mut selected_symbols = Vec::new();
let mut processed_scope = 0usize; let mut processed_scope = 0usize;
for (symbol, _) in &candidates { for (symbol, _, stock) in &candidates {
processed_scope += 1; processed_scope += 1;
let stock = self.stock_state_with_factor_date(ctx, date, stock_factor_date, symbol)?;
if !self.stock_passes_quote_plan_filter(ctx, day, &stock, quote_usage)? { if !self.stock_passes_quote_plan_filter(ctx, day, &stock, quote_usage)? {
if diagnostics.len() < 12 { if diagnostics.len() < 12 {
diagnostics.push(format!("{symbol} quote_plan rejected by stock_expr")); diagnostics.push(format!("{symbol} quote_plan rejected by stock_expr"));