Aller au contenu principal

Architecture de la Couche de Validation

The ValidationLayer (monitoring/validation_layer.py) provides real-time data sanity checking on provider responses before metrics are exposed via the API.

Contrôles de Plage (FIELD_RANGES)

Every incoming numerical metric is validated against absolute domain boundaries:

Nom du ChampMinimum AutoriséMaximum AutoriséUnité / Description
pe_ratio-500.02000.0Ratio PER (Price to Earnings)
dividend_yield0.00.40Rendement du dividende (0% à 40%)
beta-5.010.0Beta du marché
roe-5.05.0Rendement des capitaux propres (ROE -500% à +500%)
roa-5.05.0Rendement des actifs (ROA)
market_cap1,000,00010,000,000,000,000Capitalisation boursière en devise locale

Values falling outside these bounds are discarded and replaced with None.

Vérification du Consensus Inter-Providers

When 2 or more providers supply a numerical value for the same field:

  1. La valeur médiane entre tous les providers en accord est calculée : M = median(V_1, V_2, ..., V_k).
  2. Pour chaque valeur V_i d'un provider, la déviation en pourcentage absolu est calculée : deviation = |V_i - M| / M
  3. If deviation > VALIDATION_OUTLIER_THRESHOLD (default 0.50 or 50%), V_i is flagged as an outlier, logged in provider_health_log, and set to None.