SPB Git

spb/valoplex Public

ValoPlex — moteur d'évaluation spécialisé pour les plex au Québec, petit frère de Vrai-Prix.

TypeScript 90.3% Python 7.1% CSS 2.5%
6.7 KB

# ValoPlex

La vraie valeur de votre plex, porte par porte. Le moteur d'évaluation spécialisé plex du Québec — 393 867 immeubles de 2 logements et plus, 1 733 744 portes, un modèle hédonique en ratio à l'épreuve des échelles.

Plex Portes Ventes MdAPE Couverture Valeur totale Tests Next.js TypeScript

En production : www.valoplex.com · petit frère spécialisé de Vrai-Prix


# Pourquoi un moteur spécialisé plex ?

Un plex est un immeuble à revenus : sa valeur se pense par porte, par revenu, par TGA — pas comme une unifamiliale. ValoPlex couvre tous les immeubles résidentiels multi-logements du Québec (CUBF 1000, 2 logements et plus — du duplex à la tour) avec un modèle et une interface dédiés à cette logique.

Fonctionnalité Description
🚪 Économie par porte Valeur/porte, rôle/porte, aire/porte, terrain/porte + benchmark vs marché local
🧮 Pro forma investisseur Loyer implicite, état des résultats complet, hypothèque canadienne, DSCR, cashflow/porte, projection 5 ans, point mort, sensibilité aux taux — interactif
💸 Frais « tout le kit » Droits de mutation (barème QC + barème bonifié de Montréal), notaire, inspection, liquidités totales
🏢 Frise des portes Une porte SVG dessinée par logement (signature) + badge DUPLEX/TRIPLEX/…/MULTI N PORTES
📍 Adresses officielles Toutes les inscriptions d'adresses de l'unité (table des adresses du rôle)
⚖️ Ajustement portes 4ᵉ ajustement des comparables : 50 % du prix/porte, plafonné ±30 %
🗺️ Plan des comparables Carte plan d'arpenteur SVG (azimut + distance réels), état vide honnête si aucun plex comparable
📄 Rapports PDF Standard 3 p. (avec pro forma), professionnel bancaire 6 p., parc, statistique provincial
📉 Statistiques Les plex du Québec valent 400,6 G$ — répartition par gabarit et par municipalité

# Le modèle : hédonique en ratio, calibré par gabarit

Trois idées font la différence :

  1. Cible en ratio log(prix / valeur au rôle) — pas le prix. Un modèle en prix brut, dominé par la masse des duplex, écrase les grands immeubles (nous avons mesuré une tour au rôle de 705 M$ prédite… 5,6 M$). En ratio, le duplex de 400 k$ et la tour de 700 M$ sont évalués avec la même justesse relative. Le modèle connaît en plus l'ancienneté du rôle (mois depuis la date des conditions du marché du dénominateur).
  2. Rétrécissement hors domaine : au-delà de 12 portes (données de ventes rares), l'estimation glisse vers l'ancre empirique de sa bande de gabarit (poids du modèle : 55 % → 20 %).
  3. Calibration conforme Mondrian : les fourchettes P10–P90 sont calibrées par bande de portes sur un ensemble de calibration dédié — couverture vérifiée de 80,0 % (pas promise : mesurée).

# Validation (norme IAAO, 13 617 ventes de test jamais vues)

Segment MdAPE Ratio médian
Tous les plex 13,8 % 0,976
Duplex (2 portes) 13,9 % 0,970
Triplex (3 portes) 12,6 % 0,983
4–5 portes 14,1 % 0,971
6–12 portes 17,9 % 0,955
Test temporel 2026 (9 172 ventes) 13,8 % 0,972
Couverture de la fourchette (calibrée) 79,9 ≈ 80 %

# Le pro forma (app/src/lib/proforma.ts — 20 tests)

Approche revenu inversée : quelle structure de revenus la valeur estimée suppose-t-elle ?

  • Loyer implicite en forme fermée : RB = (V·TGA + F) / (1 − vacance − %variables)
  • Dépenses détaillées : taxes municipales et scolaire (dérivées du rôle), assurances, entretien, gestion, déneigement, énergie des communs, réserve
  • Hypothèque canadienne (composition semestrielle), cashflow/porte/mois, DSCR, cash-on-cash
  • Capital remboursé an 1, projection 5 ans (équité, gain total, multiple sur liquidités)
  • Loyer de point mort et taux de point mort (bissection), sensibilité taux ±1 %
  • Droits de mutation : barème provincial + barème bonifié de Montréal (jusqu'à 4 %)

Cinq curseurs (taux, mise de fonds, amortissement, TGA, appréciation) — tout recalcule en direct.

# Structure du dépôt

text
valoplex/
├── app/                  # application Next.js 16 (TypeScript strict, Tailwind 4)
│   ├── src/lib/          # engine.ts (comparables), proforma.ts, report*.ts (pdfkit)
│   ├── src/components/   # RadarMap, MetricViz, Proforma, DoorsRow…
│   └── src/app/          # pages + API routes
└── scripts/              # pipeline données/modèle (Python)
    ├── hedonic_plex.py   # entraînement (ratio + Mondrian) et prédictions 2021-2026
    └── build_valoplex_db.py  # base SQLite + stats provinciales

# Démarrage

bash
cd app && npm install
# placer la base dans app/data/valoplex.db (non versionnée)
npm run dev
npm run test       # 33 tests (moteur + finance)

Pipeline (nécessite les rôles MAMH et les transactions enrichies, non versionnés) :

bash
python3 scripts/hedonic_plex.py train && python3 scripts/hedonic_plex.py predict
python3 scripts/build_valoplex_db.py

Note données : base SQLite (165 Mo), modèles entraînés et parquets d'estimation non versionnés. Données sources : rôles d'évaluation foncière du Québec (MAMH, licence ouverte).

# Design

Identité « éditorial sharp » : papier grainé #f5f3ee, encre #141814, accent orange vif #ff9f45, ocre brûlé #b25f16 — sœur chromatique de Vrai-Prix (rouge).

# Auteur

Simon-Pierre Bouchercontact@spboucher.ai

Estimations statistiques à titre indicatif — ne remplacent pas une évaluation par un évaluateur agréé (OEAQ) ni un conseil financier. Voir conditions et méthodologie.