From 88af157ee713301fbbe823b6b05e6eb4fbaa584e Mon Sep 17 00:00:00 2001 From: ao gong <41768719+ageorge156@users.noreply.github.com> Date: Fri, 21 Aug 2026 21:24:17 +0800 Subject: [PATCH] fix: validate unique rebalance dates --- src/quant_engine/portfolio_construction.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/quant_engine/portfolio_construction.py b/src/quant_engine/portfolio_construction.py index 90e2d7d..88487de 100644 --- a/src/quant_engine/portfolio_construction.py +++ b/src/quant_engine/portfolio_construction.py @@ -81,6 +81,8 @@ def scores_to_weight_table( raise TypeError(f"scores must be a pandas DataFrame, got {type(scores).__name__}") _validate_top_k(top_k) _validate_gross_exposure(gross_exposure) + if not scores.index.is_unique: + raise ValueError("scores must contain unique rebalance dates") if not scores.columns.is_unique: raise ValueError("scores must contain unique asset labels") if not all(is_numeric_dtype(dtype) for dtype in scores.dtypes):