diff --git a/tradein-mvp/backend/app/core/config.py b/tradein-mvp/backend/app/core/config.py index 748c0f2b..e45faa26 100644 --- a/tradein-mvp/backend/app/core/config.py +++ b/tradein-mvp/backend/app/core/config.py @@ -107,7 +107,10 @@ class Settings(BaseSettings): # к high_ppm2×(1+slack) и пропорционально пересчитываем price/range/expected_sold. estimate_corridor_clamp_enabled: bool = True estimate_corridor_clamp_min_n: int = 10 - estimate_corridor_clamp_slack: float = 0.25 + # cap = corridor_high×(1+slack) = ×1.40; даёт премиум-домам без own-листингов + # (tier-C) больше воздуха над sold-коридором, не возвращая исходную 2× инфляцию + # (tier-C гейт ×1.5 ловит явную контаминацию выше). + estimate_corridor_clamp_slack: float = 0.40 # Шаг 2 — ужесточённый MAD-clip на малых выборках в same-building anchor: # при n < small_n_threshold используем mad_k_small вместо estimate_sb_mad_k # (3.5 слишком мягкий при n=7 → элитные хвосты не срезаются, mean тянется вверх).