Ch. 13 livré et validé (compilation isolée, tests, fusion des registres)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
65 changed files +6,394 −93
modified
analysis/python/cases/ch14_nettoyage.py
+18 −1
@@ -476,6 +476,22 @@ def comparer_imputations(P: dict) -> pd.DataFrame: | ||
| 476 | 476 | "age": c.loc["age", "coef"], "prediction_sujet": pred, **{f"coef_{k}": v for k, v in ind.items()}}) |
| 477 | 477 | return pd.DataFrame(rows).set_index("methode") |
| 478 | 478 | |
| 479 | +def variante_mnar_terrain(seed: int = GRAINE) -> pd.DataFrame: | |
| 480 | + """Exercice 14.7 : les 20 terrains manquants ne sont plus tirés au hasard (MCAR) mais sont les 20 plus petits terrains du jeu | |
| 481 | + parmi les lignes non altérées autrement (MNAR). Retourne le tableau de `comparer_imputations` pour cette variante (+ e.-t. des indicatrices).""" | |
| 482 | + g = generer_brut(seed); b = g["brut"].copy(); ver = g["verite"] | |
| 483 | + v = cas1.charger()["ventes"].set_index("id_vente") | |
| 484 | + ids = ver.loc[ver["anomalie"] == "terrain_manquant", "id_vente_origine"] | |
| 485 | + m = b["id_vente_origine"].isin(ids); b.loc[m, "superficie_terrain_m2"] = v.loc[b.loc[m, "id_vente_origine"], "superficie_terrain_m2"].values | |
| 486 | + cand = b[~b["id_inscription"].isin(set(ver["id_inscription"]))].nsmallest(20, "superficie_terrain_m2") | |
| 487 | + b.loc[cand.index, "superficie_terrain_m2"] = np.nan | |
| 488 | + P = pipeline(b); tab = comparer_imputations(P) | |
| 489 | + # erreur-type de l'indicatrice de terrain manquant | |
| 490 | + base = geocodage_repli(P["regles"]["df"], []); d = imputer(base, None, "indicateur") | |
| 491 | + S = scores_robustes(d, None); E = exclusions_regression(S["garde"], None); mi = _modele_indicateurs(E["df"]) | |
| 492 | + tab.loc["indicateur", "se_manq_terrain"] = mi["coef"].loc["manq_terrain", "se_hc1"] | |
| 493 | + return tab | |
| 494 | + | |
| 479 | 495 | def sensibilite_seuils(b: pd.DataFrame, verite: pd.DataFrame) -> pd.DataFrame: |
| 480 | 496 | """Grille seuil MAD × seuil t : exclusions, σ, β_ln S, et détection des anomalies « à exclure » (ventes liées non déclarées).""" |
| 481 | 497 | a_detecter = set(verite.loc[verite["anomalie"] == "vente_liee_non_declaree", "id_inscription"]) |
@@ -519,7 +535,8 @@ def main(ecrire: bool = True, verbose: bool = True) -> dict: | ||
| 519 | 535 | A = appariement_role(b, role, verite); P0("== Appariement :\n", A["taux"].to_string(), "\n", A["pct"].to_string(), "\nambigus :", A["ambigus"], "; faux appariements :", A.get("faux_appariements"), A.get("faux_par_palier")) |
| 520 | 536 | I = comparer_imputations(P); P0("== Imputations :\n", I.round(4).to_string()) |
| 521 | 537 | T = sensibilite_seuils(b, verite); P0("== Sensibilité aux seuils :\n", T.round(4).to_string(index=False)) |
| 522 | − return {"brut": b, "verite": verite, "role": role, "pipeline": P, "modeles": C, "geocodage": G, "appariement": A, "imputations": I, "sensibilite": T, "masquage": M} | |
| 538 | + V = variante_mnar_terrain(); P0("== Variante MNAR (ex. 14.7) :\n", V.round(4).to_string()) | |
| 539 | + return {"brut": b, "verite": verite, "role": role, "pipeline": P, "modeles": C, "geocodage": G, "appariement": A, "imputations": I, "sensibilite": T, "masquage": M, "mnar": V} | |
| 523 | 540 | |
| 524 | 541 | if __name__ == "__main__": |
| 525 | 542 | main(ecrire="--sans-ecriture" not in sys.argv) |
modified
analysis/python/cases/ch20_reconciliation.py
+22 −3
@@ -145,6 +145,19 @@ def exhaustif(b: dict, P_aj16: np.ndarray, brut16: np.ndarray, k: int = 5) -> di | ||
| 145 | 145 | "rang_selection": int((vals < b["V_comp"]).sum()), "part_sous_hed": float((vals < b["V_hed"]).mean())} |
| 146 | 146 | |
| 147 | 147 | |
| 148 | +def elargissement(b: dict, P_aj16: np.ndarray, brut16: np.ndarray) -> pd.DataFrame: | |
| 149 | + """Indication par comparaison lorsque l'on retient les k premiers candidats (k = 5 … 16) : valeur pondérée (inverse du brut), | |
| 150 | + moyenne simple, résidu moyen (exp(e) − 1) des comparables retenus. Le modèle est fixe (arbitrage biais–variance du ch. 16).""" | |
| 151 | + res = b["adj16"]["residu_log"].values | |
| 152 | + rows = [] | |
| 153 | + for k in range(5, len(P_aj16) + 1): | |
| 154 | + i = np.arange(k) | |
| 155 | + rows.append({"k": k, "valeur_ponderee": valeur_ponderee(P_aj16[i], brut16[i]), "moyenne": float(P_aj16[i].mean()), | |
| 156 | + "residu_moyen_pct": float(np.mean(np.exp(res[i]) - 1)), "brut_moyen": float(brut16[i].mean()), | |
| 157 | + "distance_max": float(b["adj16"]["distance"].values[k - 1])}) | |
| 158 | + return pd.DataFrame(rows) | |
| 159 | + | |
| 160 | + | |
| 148 | 161 | # ---------------------------------------------------------------- 3. indication par le coût (hypothèses déclarées) |
| 149 | 162 | def cout(b: dict, alpha: float = ALPHA_TERRAIN, vie: float = VIE_ECONOMIQUE, age_eff: float = AGE_EFFECTIF) -> dict: |
| 150 | 163 | devis, sujet = c21.charger() |
@@ -208,6 +221,8 @@ def combinaison(b: dict, bs: dict, co: dict, graine: int = GRAINE) -> dict: | ||
| 208 | 221 | arrondi = ARRONDI_CONCLUSION |
| 209 | 222 | conclusion = round(V_raisonnee / arrondi) * arrondi |
| 210 | 223 | fourchette90 = (math.floor(q[1] / arrondi) * arrondi, math.ceil(q[3] / arrondi) * arrondi) |
| 224 | + # fourchette de valeur conclue : encadrée par les deux indications crédibles (comparaison, hédonique), arrondies vers l'extérieur | |
| 225 | + fourchette_conclue = (math.floor(min(V[0], V[1]) / arrondi) * arrondi, math.ceil(max(V[0], V[1]) / arrondi) * arrondi) | |
| 211 | 226 | # courbes de sensibilité aux poids : w_hed de 0 à 1 − w_cout, pour trois poids du coût |
| 212 | 227 | wh = np.linspace(0, 1, 101) |
| 213 | 228 | courbes = {wc: np.array([ (1 - h - wc) * V[0] + h * V[1] + wc * V[2] if h <= 1 - wc + 1e-12 else np.nan for h in wh]) for wc in (0.0, 0.05, 0.10)} |
@@ -216,7 +231,8 @@ def combinaison(b: dict, bs: dict, co: dict, graine: int = GRAINE) -> dict: | ||
| 216 | 231 | w_opt_deux = {r: poids_optimaux_deux(s[0], s[1], r) for r in (0.0, rho, 0.3, 0.6, 0.9)} |
| 217 | 232 | return {"V": V, "s": s, "sd_spec_hed": sd_spec, "sd_pred_boot": sd_pred_boot, "rho": rho, "Sigma": Sigma, "schemas": schemas, "tableau": tab, |
| 218 | 233 | "Vb": Vb, "cout_b": cout_b, "q": {"q025": q[0], "q05": q[1], "q50": q[2], "q95": q[3], "q975": q[4]}, "V_raisonnee": V_raisonnee, |
| 219 | − "conclusion": conclusion, "fourchette90": fourchette90, "wh": wh, "courbes": courbes, "var_deux": var_deux, "w_opt_deux": w_opt_deux, | |
| 234 | + "conclusion": conclusion, "fourchette90": fourchette90, "fourchette_conclue": fourchette_conclue, | |
| 235 | + "largeur_relative_conclue": (fourchette_conclue[1] - fourchette_conclue[0]) / conclusion, "wh": wh, "courbes": courbes, "var_deux": var_deux, "w_opt_deux": w_opt_deux, | |
| 220 | 236 | "ecart_conclusion_comp": conclusion / b["V_comp"] - 1, "ecart_conclusion_hed": conclusion / b["V_hed"] - 1} |
| 221 | 237 | |
| 222 | 238 | |
@@ -283,11 +299,12 @@ def tout(verbose: bool = False) -> dict: | ||
| 283 | 299 | b = base() |
| 284 | 300 | bs = bootstrap(b) |
| 285 | 301 | ex = exhaustif(b, bs["P_aj16"], bs["brut16"]) |
| 302 | + el = elargissement(b, bs["P_aj16"], bs["brut16"]) | |
| 286 | 303 | co = cout(b) |
| 287 | 304 | cb = combinaison(b, bs, co) |
| 288 | 305 | vt = verite(b) |
| 289 | 306 | exo = exercices(b, bs, co, cb) |
| 290 | − r = {"base": b, "bootstrap": bs, "exhaustif": ex, "cout": co, "combinaison": cb, "verite": vt, "exercices": exo} | |
| 307 | + r = {"base": b, "bootstrap": bs, "exhaustif": ex, "elargissement": el, "cout": co, "combinaison": cb, "verite": vt, "exercices": exo} | |
| 291 | 308 | _CACHE["r"] = r |
| 292 | 309 | if verbose: |
| 293 | 310 | imprimer(r) |
@@ -314,6 +331,8 @@ def imprimer(r: dict) -> None: | ||
| 314 | 331 | print(f"n = {ex['n']} ; moyenne {f(ex['moyenne'])} ; é.-t. {f(ex['ecart_type'])} ; min {f(ex['min'])} ; max {f(ex['max'])} ; q5 {f(ex['q05'])} ; q50 {f(ex['q50'])} ; q95 {f(ex['q95'])}") |
| 315 | 332 | print(f"rang de la sélection du ch. 16 : {ex['rang_selection']} sous-ensembles sur {ex['n']} donnent moins ; part sous la prédiction hédonique {ex['part_sous_hed']:.3f}") |
| 316 | 333 | print(ex["par_n_retenus"].round(0).to_string()) |
| 334 | + print("\n=== Élargissement k = 5 … 16 (modèle fixe) ===") | |
| 335 | + print(r["elargissement"].round(4).to_string(index=False)) | |
| 317 | 336 | print("\n=== Coût (hypothèses : α = %.2f, vie = %d ans, âge effectif = %d) ===" % (co["alpha"], co["vie"], co["age_eff"])) |
| 318 | 337 | print(f"C_N {f(co['CN'])} ; V_L {f(co['V_L'])} ; D âge-vie {f(co['D'])} ({co['taux_D']:.3f}) ; contribution bâtiment {f(co['contribution_batiment'])} ; valeur {f(co['valeur'])}") |
| 319 | 338 | print(f"C_N + V_L = {f(co['cout_neuf_plus_terrain'])} ; extraction du marché à la prédiction hédonique : D = {f(co['extraction_hed']['depreciation'])} (taux {co['extraction_hed']['taux']:.3f}) ; à la comparaison : D = {f(co['extraction_comp']['depreciation'])} (taux {co['extraction_comp']['taux']:.3f})") |
@@ -325,7 +344,7 @@ def imprimer(r: dict) -> None: | ||
| 325 | 344 | print(cb["tableau"].round(3).to_string(index=False)) |
| 326 | 345 | print(f"poids optimal de la comparaison à deux indications selon ρ : { {round(k,3): round(v,3) for k, v in cb['w_opt_deux'].items()} }") |
| 327 | 346 | q = cb["q"] |
| 328 | − print(f"conclusion raisonnée {f(cb['V_raisonnee'])} → arrondie {f(cb['conclusion'])} ; bootstrap de la combinaison : q2.5 {f(q['q025'])} q5 {f(q['q05'])} q50 {f(q['q50'])} q95 {f(q['q95'])} q97.5 {f(q['q975'])} ; fourchette 90 % arrondie {f(cb['fourchette90'][0])}–{f(cb['fourchette90'][1])}") | |
| 347 | + print(f"conclusion raisonnée {f(cb['V_raisonnee'])} → arrondie {f(cb['conclusion'])} ; bootstrap de la combinaison : q2.5 {f(q['q025'])} q5 {f(q['q05'])} q50 {f(q['q50'])} q95 {f(q['q95'])} q97.5 {f(q['q975'])} ; fourchette 90 % arrondie {f(cb['fourchette90'][0])}–{f(cb['fourchette90'][1])} ; fourchette conclue {f(cb['fourchette_conclue'][0])}–{f(cb['fourchette_conclue'][1])} ({cb['largeur_relative_conclue']:.3f})") | |
| 329 | 348 | print(f"écart conclusion / comparaison {cb['ecart_conclusion_comp']:.4f} ; / hédonique {cb['ecart_conclusion_hed']:.4f}") |
| 330 | 349 | print("\n=== Loi de génération ===") |
| 331 | 350 | print(f"c_hat {vt['c_hat']:.4f} (e.-t. {vt['se_c']:.4f}, σ_e {vt['sigma_e']:.4f}) ; V_vraie {f(vt['V_true'])} [{f(vt['V_true_bas'])} ; {f(vt['V_true_haut'])}] ; écart comparaison {vt['ecart_comp']:.4f} ; hédonique {vt['ecart_hed']:.4f} ; conclusion {cb['conclusion']/vt['V_true']-1:.4f}") |
added
analysis/python/cases/ch34_tal.py
+440 −0
@@ -0,0 +1,440 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Chapitre 34 — TAL, encadrement locatif et scénarios : calculs du chapitre (cas 3, 12 logements, Montréal, | |
| 3 | +DONNÉES SYNTHÉTIQUES, sauf l'IPC du Québec qui est réel : Statistique Canada, tableau 18-10-0004-01). | |
| 4 | + | |
| 5 | +Contenu : | |
| 6 | + 1. Pourcentage de base de la fixation (Règlement sur les critères de fixation de loyer, art. 3.1, tel que remplacé par | |
| 7 | + D. 1455-2025) recalculé à partir des moyennes annuelles de l'IPC du Québec (vérification des 4,5 % de 2025 et des | |
| 8 | + 3,1 % de 2026 publiés par le TAL) et historique « contrefactuel » de la formule depuis 2006. | |
| 9 | + 2. Calcul pas à pas d'une augmentation de loyer selon la méthode en vigueur depuis le 1er janvier 2026 (art. 3, 3.1, 4, | |
| 10 | + 5 et 15.1) pour un logement du cas 3, et reconstitution pédagogique de la structure de l'ancienne méthode. | |
| 11 | + 3. Trajectoire du loyer contractuel sous contrainte : forme fermée de l'espérance du rapport loyer/marché sous rotation | |
| 12 | + aléatoire, vérifiée par simulation, et comparaison avec la projection déterministe de traite.cas3.projection_dcf. | |
| 13 | + 4. Scénarios : fonction locale `projection_scenario` qui reprend la logique de traite.cas3.projection_dcf avec des | |
| 14 | + paramètres variés (rotation, pourcentage de base, croissance du marché, rattrapage partiel à la relocation, | |
| 15 | + récupération de 5 % des dépenses d'immobilisation, mode déterministe ou espérance) SANS modifier traite/ ; valeur | |
| 16 | + DCF de chaque scénario par traite.cas3.valeur_dcf. | |
| 17 | +Usage (racine du dépôt) : PYTHONPATH=analysis/python python3 analysis/python/cases/ch34_tal.py | |
| 18 | +Les fonctions sont importées par analysis/python/figures/ch34_*.py et analysis/python/tests/test_ch34.py.""" | |
| 19 | +from __future__ import annotations | |
| 20 | +import sys, csv, copy, math, pathlib | |
| 21 | +import numpy as np, pandas as pd | |
| 22 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 23 | +from traite import cas3, finance as fin | |
| 24 | + | |
| 25 | +ROOT = pathlib.Path(__file__).resolve().parents[3] | |
| 26 | +IPC_RAW = ROOT / "data/raw/statcan_18100004/18100004.csv" | |
| 27 | +IPC_PROC = ROOT / "data/processed/ipc_quebec_mensuel.csv" | |
| 28 | +VECTEUR_IPC_QC = "v41691783" # IPC Québec, Ensemble, 2002 = 100, non désaisonnalisé (tableau 18-10-0004-01) | |
| 29 | +PCT_TAL_PUBLIES = {2025: 0.045, 2026: 0.031} # TAL, « Pourcentages applicables », page lue le 2026-10-31 | |
| 30 | +GRAINE = 20261031 | |
| 31 | + | |
| 32 | +# ============================================================================ 1. IPC du Québec et pourcentage de base (art. 3.1) | |
| 33 | + | |
| 34 | +def ipc_quebec_mensuel() -> pd.DataFrame: | |
| 35 | + """Série mensuelle de l'IPC du Québec (Ensemble, 2002 = 100). Extraite une fois du fichier brut de Statistique Canada | |
| 36 | + (170 Mo) vers data/processed/ipc_quebec_mensuel.csv ; les appels suivants lisent le fichier traité.""" | |
| 37 | + if IPC_PROC.exists(): | |
| 38 | + return pd.read_csv(IPC_PROC) | |
| 39 | + if not IPC_RAW.exists(): | |
| 40 | + raise FileNotFoundError(f"ni {IPC_PROC} ni {IPC_RAW} : télécharger le tableau 18-10-0004-01 (voir data/raw/SOURCES.md)") | |
| 41 | + rows = [] | |
| 42 | + with IPC_RAW.open(encoding="utf-8-sig", newline="") as f: | |
| 43 | + for r in csv.reader(f, delimiter=";"): | |
| 44 | + if len(r) > 10 and r[8] == VECTEUR_IPC_QC and r[10] not in ("", ".."): | |
| 45 | + rows.append({"periode": r[0], "ipc": float(r[10])}) | |
| 46 | + df = pd.DataFrame(rows).sort_values("periode").reset_index(drop=True) | |
| 47 | + IPC_PROC.parent.mkdir(parents=True, exist_ok=True) | |
| 48 | + df.to_csv(IPC_PROC, index=False) | |
| 49 | + return df | |
| 50 | + | |
| 51 | +def ipc_moyennes_annuelles(df: pd.DataFrame | None = None) -> pd.Series: | |
| 52 | + """Moyenne annuelle de l'IPC (années civiles complètes seulement, 12 observations).""" | |
| 53 | + df = ipc_quebec_mensuel() if df is None else df | |
| 54 | + d = df.assign(an=df["periode"].str[:4].astype(int)) | |
| 55 | + g = d.groupby("an")["ipc"].agg(["mean", "count"]) | |
| 56 | + return g.loc[g["count"] == 12, "mean"] | |
| 57 | + | |
| 58 | +def pourcentage_base(annee_fixation: int, moy: pd.Series | None = None) -> dict: | |
| 59 | + """Art. 3.1 : { [(A−B)/B] + [(B−C)/C] + [(C−D)/D] } / 3, A = IPC moyen de la période de référence (année civile précédant le | |
| 60 | + terme du bail pour un bail se terminant du 1er avril au 31 décembre, art. 1), B, C, D = les trois périodes de 12 mois | |
| 61 | + antérieures ; résultat négatif réputé nul (3e al.).""" | |
| 62 | + moy = ipc_moyennes_annuelles() if moy is None else moy | |
| 63 | + A, B, C, D = (float(moy.loc[annee_fixation - k]) for k in (1, 2, 3, 4)) | |
| 64 | + v1, v2, v3 = (A - B) / B, (B - C) / C, (C - D) / D | |
| 65 | + brut = (v1 + v2 + v3) / 3 | |
| 66 | + return {"annee": annee_fixation, "A": A, "B": B, "C": C, "D": D, "var_A_B": v1, "var_B_C": v2, "var_C_D": v3, | |
| 67 | + "pct_brut": brut, "pct_base": max(brut, 0.0), "pct_publie": PCT_TAL_PUBLIES.get(annee_fixation)} | |
| 68 | + | |
| 69 | +def historique_pourcentage_base(debut: int = 2006, fin: int = 2026) -> pd.DataFrame: | |
| 70 | + """Pour chaque année de fixation : inflation de la période de référence (A−B)/B et pourcentage de base qu'aurait donné la | |
| 71 | + formule de l'art. 3.1 (contrefactuel avant 2026, car la formule n'existait pas ; valeurs réelles 2025-2026 à comparer aux | |
| 72 | + pourcentages publiés par le TAL).""" | |
| 73 | + moy = ipc_moyennes_annuelles() | |
| 74 | + rows = [] | |
| 75 | + for an in range(debut, fin + 1): | |
| 76 | + if an - 4 in moy.index and an - 1 in moy.index: | |
| 77 | + p = pourcentage_base(an, moy) | |
| 78 | + rows.append({"annee": an, "inflation_ref": p["var_A_B"], "pct_formule": p["pct_base"], "pct_publie": p["pct_publie"]}) | |
| 79 | + return pd.DataFrame(rows) | |
| 80 | + | |
| 81 | +# ============================================================================ 2. Fixation du loyer : nouvelle méthode (2026) et ancienne | |
| 82 | + | |
| 83 | +def arrondi_art_15_1(x: float) -> float: | |
| 84 | + """Art. 15.1 : fraction < 0,50 $ → dollar inférieur ; ≥ 0,50 $ → dollar supérieur (arrondi « demi vers le haut », non bancaire).""" | |
| 85 | + return math.floor(x + 0.5) | |
| 86 | + | |
| 87 | +def part_attribuable(loyer_mensuel: float, revenus_annuels: float) -> float: | |
| 88 | + """Art. 5 : part attribuable au logement = loyer au terme du bail / revenus de l'immeuble (ici loyer annuel / revenus annuels, | |
| 89 | + loyers résidentiels et autres revenus compris ; aucune part pour un local non résidentiel).""" | |
| 90 | + return loyer_mensuel * 12 / revenus_annuels | |
| 91 | + | |
| 92 | +def taux_net(variation: float, pct_base: float) -> float: | |
| 93 | + """Art. 4, 2e al. : si la variation est positive, on en soustrait la valeur absolue du pourcentage de base (brut, avant | |
| 94 | + plancher à zéro) ; si le résultat est négatif, il est réputé nul ; une variation négative ne donne rien.""" | |
| 95 | + if variation <= 0: | |
| 96 | + return 0.0 | |
| 97 | + return max(variation - abs(pct_base), 0.0) | |
| 98 | + | |
| 99 | +def fixation_nouvelle(loyer: float, pct_base: float, part: float, taxes_mun: tuple[float, float], taxes_scol: tuple[float, float], | |
| 100 | + assurances: tuple[float, float], immobilisations: float = 0.0, nouveaux_services: float = 0.0, | |
| 101 | + pct_immobilisations: float = 0.05) -> dict: | |
| 102 | + """Augmentation mensuelle selon les art. 3, 3.1, 4, 5 et 15.1 du Règlement (version en vigueur le 1er janvier 2026). | |
| 103 | + taxes_mun = (exigibles pendant la période de référence, exigibles l'année suivante) ; taxes_scol et assurances = | |
| 104 | + (année précédant la période de référence, période de référence). Montants annuels pour l'immeuble entier. | |
| 105 | + Reconstitution pédagogique : le formulaire officiel du TAL (Outil de calcul) fait foi.""" | |
| 106 | + base = loyer * pct_base | |
| 107 | + v_mun = (taxes_mun[1] - taxes_mun[0]) / taxes_mun[0] | |
| 108 | + v_scol = (taxes_scol[1] - taxes_scol[0]) / taxes_scol[0] | |
| 109 | + v_ass = (assurances[1] - assurances[0]) / assurances[0] | |
| 110 | + n_mun, n_scol, n_ass = taux_net(v_mun, pct_base), taux_net(v_scol, pct_base), taux_net(v_ass, pct_base) | |
| 111 | + m_mun = n_mun * taxes_mun[0] / 12 * part # art. 4, 3e al., 1° : montant mensuel de la période de référence | |
| 112 | + m_scol = n_scol * taxes_scol[0] / 12 * part # art. 4, 3e al., 2° : montant mensuel de la période précédente | |
| 113 | + m_ass = n_ass * assurances[0] / 12 * part | |
| 114 | + m_immo = pct_immobilisations * immobilisations * part / 12 | |
| 115 | + m_serv = nouveaux_services * part / 12 | |
| 116 | + total = base + m_mun + m_scol + m_ass + m_immo + m_serv | |
| 117 | + nouveau = arrondi_art_15_1(loyer + total) | |
| 118 | + return {"loyer": loyer, "pct_base": pct_base, "part": part, "base": base, | |
| 119 | + "var_taxes_mun": v_mun, "net_taxes_mun": n_mun, "m_taxes_mun": m_mun, | |
| 120 | + "var_taxes_scol": v_scol, "net_taxes_scol": n_scol, "m_taxes_scol": m_scol, | |
| 121 | + "var_assurances": v_ass, "net_assurances": n_ass, "m_assurances": m_ass, | |
| 122 | + "immobilisations": immobilisations, "m_immobilisations": m_immo, "m_services": m_serv, | |
| 123 | + "total_brut": total, "augmentation": nouveau - loyer, "nouveau_loyer": nouveau, "taux_effectif": (nouveau - loyer) / loyer} | |
| 124 | + | |
| 125 | +PCT_ANCIENNE_2026 = {"electricite": 0.029, "gaz": 0.137, "mazout": 0.049, "entretien": 0.057, "services_immeuble": 0.034, | |
| 126 | + "gestion": 0.072, "revenu_net": 0.057, "immobilisations": 0.04} | |
| 127 | +PCT_ANCIENNE_2025 = {"electricite": 0.029, "gaz": -0.058, "mazout": -0.029, "entretien": 0.069, "services_immeuble": 0.045, | |
| 128 | + "gestion": 0.082, "revenu_net": 0.069, "immobilisations": 0.047} | |
| 129 | + | |
| 130 | +def fixation_ancienne(loyer: float, part: float, revenus: float, depenses: dict, pct: dict, taxes_mun: tuple[float, float], | |
| 131 | + taxes_scol: tuple[float, float], assurances: tuple[float, float], immobilisations: float = 0.0, | |
| 132 | + gestion_forfait: float = 0.05) -> dict: | |
| 133 | + """Reconstitution PÉDAGOGIQUE de la structure de l'ancienne méthode (avis donnés avant le 1er janvier 2026 ; formulaire de | |
| 134 | + calcul du TAL) : chaque poste de dépenses d'exploitation est ajusté par le pourcentage de sa composante (énergie, | |
| 135 | + entretien, services, gestion forfaitaire de 5 % des revenus), les taxes et assurances passent par leur variation réelle, | |
| 136 | + le revenu net (revenus − dépenses d'exploitation) est majoré du pourcentage « revenu net » et les dépenses d'immobilisation | |
| 137 | + du pourcentage « dépenses d'immobilisation » ; la somme est répartie selon la part attribuable. Le détail exact des lignes | |
| 138 | + du formulaire officiel (et ses exclusions) fait foi ; `depenses` : électricité, gaz, mazout, entretien, services_immeuble.""" | |
| 139 | + gestion = gestion_forfait * revenus | |
| 140 | + aj = {k: depenses.get(k, 0.0) * pct.get(k, 0.0) for k in ("electricite", "gaz", "mazout", "entretien", "services_immeuble")} | |
| 141 | + aj["gestion"] = gestion * pct["gestion"] | |
| 142 | + aj["taxes_mun"] = taxes_mun[1] - taxes_mun[0] | |
| 143 | + aj["taxes_scol"] = taxes_scol[1] - taxes_scol[0] | |
| 144 | + aj["assurances"] = assurances[1] - assurances[0] | |
| 145 | + dep_expl = sum(depenses.get(k, 0.0) for k in ("electricite", "gaz", "mazout", "entretien", "services_immeuble")) + gestion + taxes_mun[0] + taxes_scol[0] + assurances[0] | |
| 146 | + revenu_net = revenus - dep_expl | |
| 147 | + aj["revenu_net"] = revenu_net * pct["revenu_net"] | |
| 148 | + aj["immobilisations"] = immobilisations * pct["immobilisations"] | |
| 149 | + total_immeuble = sum(aj.values()) | |
| 150 | + mensuel = total_immeuble * part / 12 | |
| 151 | + nouveau = arrondi_art_15_1(loyer + mensuel) | |
| 152 | + return {"ajustements_immeuble": aj, "depenses_exploitation": dep_expl, "revenu_net": revenu_net, "total_immeuble": total_immeuble, | |
| 153 | + "mensuel_brut": mensuel, "augmentation": nouveau - loyer, "nouveau_loyer": nouveau, "taux_effectif": (nouveau - loyer) / loyer} | |
| 154 | + | |
| 155 | +def donnees_immeuble_cas3(d: dict | None = None) -> dict: | |
| 156 | + """Montants de l'immeuble du cas 3 utiles à la fixation : revenus (loyers contractuels + autres revenus), taxes 2024-2026, | |
| 157 | + assurances 2024-2025, dépenses 2025 par composante (données synthétiques).""" | |
| 158 | + d = cas3.charger() if d is None else d | |
| 159 | + etat, dep, hyp = d["etat"], d["dep"], d["hyp"] | |
| 160 | + p = dep.pivot(index="poste", columns="annee", values="montant").astype(float) | |
| 161 | + rev = cas3.revenus(etat, hyp) | |
| 162 | + taxes_mun_2026 = hyp["valeur_role_2026"] * hyp["taux_taxe_fonciere"] | |
| 163 | + return {"revenus": rev["rbp_contrat"] + rev["autres_revenus"], "rbp_contrat": rev["rbp_contrat"], "autres_revenus": rev["autres_revenus"], | |
| 164 | + "taxes_mun": {2024: p.loc["Taxes municipales", 2024], 2025: p.loc["Taxes municipales", 2025], 2026: taxes_mun_2026}, | |
| 165 | + "taxes_scol": {2024: p.loc["Taxe scolaire", 2024], 2025: p.loc["Taxe scolaire", 2025]}, | |
| 166 | + "assurances": {2024: p.loc["Assurances", 2024], 2025: p.loc["Assurances", 2025]}, | |
| 167 | + "depenses_2025": {"electricite": p.loc["Électricité (aires communes)", 2025], "gaz": p.loc["Chauffage (aires communes, gaz)", 2025], "mazout": 0.0, | |
| 168 | + "entretien": p.loc["Entretien et réparations", 2025], | |
| 169 | + "services_immeuble": p.loc["Conciergerie", 2025] + p.loc["Déneigement et paysagement", 2025]}, | |
| 170 | + "etat": etat} | |
| 171 | + | |
| 172 | +def exemple_fixation(numero: int = 103, d: dict | None = None) -> dict: | |
| 173 | + """Exemple intégral : logement `numero` du cas 3, pourcentages 2026 (3,1 % ; 5 %). | |
| 174 | + Variante A : données du dossier (taxes municipales 2025 → 2026 normalisées, scolaire et assurances 2024 → 2025, aucune | |
| 175 | + dépense d'immobilisation en 2025). Variante B (illustrative) : mêmes loyers, mais hausse de taxes municipales de 8 %, | |
| 176 | + hausse d'assurances de 10 % et dépenses d'immobilisation de 85 000 $ (les travaux de maçonnerie et de balcons programmés | |
| 177 | + en 2027 dans le dossier, supposés réalisés pendant la période de référence).""" | |
| 178 | + im = donnees_immeuble_cas3(d) | |
| 179 | + etat = im["etat"]; row = etat[etat["logement"] == numero].iloc[0] | |
| 180 | + loyer = float(row["loyer_mensuel_contrat"]); marche = float(row["loyer_mensuel_marche"]) | |
| 181 | + part = part_attribuable(loyer, im["revenus"]) | |
| 182 | + pb = PCT_TAL_PUBLIES[2026] | |
| 183 | + A = fixation_nouvelle(loyer, pb, part, (im["taxes_mun"][2025], im["taxes_mun"][2026]), (im["taxes_scol"][2024], im["taxes_scol"][2025]), | |
| 184 | + (im["assurances"][2024], im["assurances"][2025]), immobilisations=0.0) | |
| 185 | + B = fixation_nouvelle(loyer, pb, part, (im["taxes_mun"][2025], im["taxes_mun"][2025] * 1.08), (im["taxes_scol"][2024], im["taxes_scol"][2025]), | |
| 186 | + (im["assurances"][2024], im["assurances"][2024] * 1.10), immobilisations=85_000.0) | |
| 187 | + anc = fixation_ancienne(loyer, part, im["revenus"], im["depenses_2025"], PCT_ANCIENNE_2026, (im["taxes_mun"][2025], im["taxes_mun"][2026]), | |
| 188 | + (im["taxes_scol"][2024], im["taxes_scol"][2025]), (im["assurances"][2024], im["assurances"][2025]), immobilisations=0.0) | |
| 189 | + anc_B = fixation_ancienne(loyer, part, im["revenus"], im["depenses_2025"], PCT_ANCIENNE_2026, (im["taxes_mun"][2025], im["taxes_mun"][2025] * 1.08), | |
| 190 | + (im["taxes_scol"][2024], im["taxes_scol"][2025]), (im["assurances"][2024], im["assurances"][2024] * 1.10), immobilisations=85_000.0) | |
| 191 | + return {"numero": numero, "loyer": loyer, "marche": marche, "ecart_marche": marche - loyer, "ecart_marche_pct": marche / loyer - 1, | |
| 192 | + "part": part, "revenus": im["revenus"], "immeuble": im, "A": A, "B": B, "ancienne_A": anc, "ancienne_B": anc_B, | |
| 193 | + "annees_rattrapage_base": math.log(marche / loyer) / math.log(1 + pb)} | |
| 194 | + | |
| 195 | +# ============================================================================ 3. Trajectoire espérée sous rotation aléatoire | |
| 196 | + | |
| 197 | +def ratio_espere(q0: float, rho: float, g_c: float, g_m: float, t: int | np.ndarray) -> np.ndarray: | |
| 198 | + """E[q_t] = q0·a^t + ρ·(1 − a^t)/(1 − a), a = (1 − ρ)·δ, δ = (1 + g_c)/(1 + g_m) : rapport espéré loyer/marché d'un logement dont | |
| 199 | + le locataire part chaque année avec probabilité ρ (i.i.d.), le logement étant alors reloué au marché, puis indexé à g_c.""" | |
| 200 | + delta = (1 + g_c) / (1 + g_m); a = (1 - rho) * delta | |
| 201 | + t = np.asarray(t, dtype=float) | |
| 202 | + return q0 * a ** t + rho * (1 - a ** t) / (1 - a) | |
| 203 | + | |
| 204 | +def ratio_limite(rho: float, g_c: float, g_m: float) -> float: | |
| 205 | + """q_∞ = ρ / (1 − (1 − ρ)·δ).""" | |
| 206 | + delta = (1 + g_c) / (1 + g_m) | |
| 207 | + return rho / (1 - (1 - rho) * delta) | |
| 208 | + | |
| 209 | +def ratio_sans_relocation(q0: float, g_c: float, g_m: float, t) -> np.ndarray: | |
| 210 | + delta = (1 + g_c) / (1 + g_m) | |
| 211 | + return q0 * delta ** np.asarray(t, dtype=float) | |
| 212 | + | |
| 213 | +def simulation_ratio(q0: float, rho: float, g_c: float, g_m: float, T: int, n: int = 20_000, graine: int = GRAINE) -> np.ndarray: | |
| 214 | + """Vérification Monte-Carlo de la forme fermée : n trajectoires, départ i.i.d. de probabilité ρ par année.""" | |
| 215 | + rng = np.random.default_rng(graine); delta = (1 + g_c) / (1 + g_m) | |
| 216 | + q = np.full(n, q0, dtype=float); out = [q.mean()] | |
| 217 | + for _ in range(T): | |
| 218 | + q = q * delta | |
| 219 | + depart = rng.random(n) < rho | |
| 220 | + q[depart] = 1.0 | |
| 221 | + out.append(q.mean()) | |
| 222 | + return np.array(out) | |
| 223 | + | |
| 224 | +def trajectoire_cas3_esperee(d: dict | None = None, rho: float | None = None, g_c: float | None = None, g_m: float | None = None, T: int = 10) -> pd.DataFrame: | |
| 225 | + """Espérance du RBP contractuel du cas 3 sous rotation aléatoire (forme fermée appliquée logement par logement) et | |
| 226 | + comparaison avec la projection déterministe « les plus sous le marché d'abord » de traite.cas3.projection_dcf.""" | |
| 227 | + d = cas3.charger() if d is None else d | |
| 228 | + hyp = d["hyp"]; etat = d["etat"] | |
| 229 | + rho = hyp["rotation_annuelle"] if rho is None else rho; g_c = hyp["croissance_loyers_contrat"] if g_c is None else g_c | |
| 230 | + g_m = hyp["croissance_loyers_marche"] if g_m is None else g_m | |
| 231 | + L = etat["loyer_mensuel_contrat"].astype(float).values; M = etat["loyer_mensuel_marche"].astype(float).values | |
| 232 | + t = np.arange(0, T + 1) | |
| 233 | + marche_t = np.outer((1 + g_m) ** t, M) # (T+1) × n | |
| 234 | + q_t = np.column_stack([ratio_espere(L[i] / M[i], rho, g_c, g_m, t) for i in range(len(L))]) | |
| 235 | + rbp_esp = (q_t * marche_t).sum(axis=1) * 12 | |
| 236 | + rbp_marche = marche_t.sum(axis=1) * 12 | |
| 237 | + rbp_sans = (np.column_stack([ratio_sans_relocation(L[i] / M[i], g_c, g_m, t) for i in range(len(L))]) * marche_t).sum(axis=1) * 12 | |
| 238 | + proj = projection_scenario(etat, d["dep"], hyp, rotation=rho, g_c=g_c, g_m=g_m, horizon=T) | |
| 239 | + det = proj.loc[proj["annee"] <= T + 1, "rbp"].values # années 1..T+1 ↔ t = 0..T | |
| 240 | + return pd.DataFrame({"t": t, "exercice": int(hyp["date_evaluation"][:4]) + t, "rbp_marche": rbp_marche, "rbp_esperance": rbp_esp, | |
| 241 | + "rbp_deterministe": det, "rbp_sans_relocation": rbp_sans, | |
| 242 | + "ratio_esperance": rbp_esp / rbp_marche, "ratio_deterministe": det / rbp_marche, "ratio_sans": rbp_sans / rbp_marche}) | |
| 243 | + | |
| 244 | +# ============================================================================ 4. Scénarios : projection locale paramétrée et valeur DCF | |
| 245 | + | |
| 246 | +def projection_scenario(etat: pd.DataFrame, dep: pd.DataFrame, hyp: dict, rotation: float | None = None, g_c: float | None = None, | |
| 247 | + g_m: float | None = None, fraction_rattrapage: float = 1.0, mode: str = "deterministe", | |
| 248 | + recuperation_capex: bool = False, pct_recuperation: float = 0.05, horizon: int | None = None) -> pd.DataFrame: | |
| 249 | + """Reprend la logique de traite.cas3.projection_dcf (indexation des baux à g_c, relocation d'une fraction `rotation` des | |
| 250 | + logements au loyer de marché croissant à g_m, dépenses +g_d, réserve constante, CAPEX aux années prévues) avec : | |
| 251 | + - mode « deterministe » : k = round(rotation × n) logements, les plus sous le marché d'abord (identique au module commun | |
| 252 | + lorsque les paramètres sont ceux du dossier) ; | |
| 253 | + - mode « esperance » : chaque loyer devient (1 − ρ)·L(1+g_c) + ρ·[L(1+g_c) + φ·(M − L(1+g_c))], soit l'espérance sous départ | |
| 254 | + i.i.d. (rotation fractionnaire, sans arrondi) ; | |
| 255 | + - fraction_rattrapage φ ∈ [0, 1] : à la relocation, le nouveau loyer n'absorbe qu'une fraction φ de l'écart au marché | |
| 256 | + (φ < 1 représente un recours en fixation du nouveau locataire, art. 1896 et 1950 C.c.Q., ou un rattrapage partiel) ; | |
| 257 | + - recuperation_capex : l'année qui suit une dépense d'immobilisation, les loyers sont majorés de pct_recuperation × CAPEX | |
| 258 | + (art. 3, par. 5° du Règlement), réparti selon la part attribuable (proportionnellement aux loyers). | |
| 259 | + Colonnes identiques à projection_dcf, plus `ecart_marche` et `logements_reloues`.""" | |
| 260 | + T = horizon or hyp["horizon_ans"] | |
| 261 | + base = cas3.rne(etat, dep, hyp) | |
| 262 | + loyers = etat["loyer_mensuel_contrat"].astype(float).values.copy(); marche = etat["loyer_mensuel_marche"].astype(float).values.copy() | |
| 263 | + rot = hyp["rotation_annuelle"] if rotation is None else rotation | |
| 264 | + gc = hyp["croissance_loyers_contrat"] if g_c is None else g_c | |
| 265 | + gm = hyp["croissance_loyers_marche"] if g_m is None else g_m | |
| 266 | + g_d = hyp["croissance_depenses"]; v = hyp["taux_inoccupation_pertes"]; autres = hyp["autres_revenus_annuels"] | |
| 267 | + de0 = base["depenses_hors_reserve"]; res0 = base["reserve"] | |
| 268 | + annee0 = int(hyp["date_evaluation"][:4]); rows = []; capex_prec = 0.0 | |
| 269 | + for t in range(1, T + 2): | |
| 270 | + k = 0 | |
| 271 | + if t > 1: | |
| 272 | + loyers *= (1 + gc); marche *= (1 + gm) | |
| 273 | + if mode == "deterministe": | |
| 274 | + k = int(round(rot * len(loyers))) | |
| 275 | + idx = np.argsort(loyers / marche)[:k] | |
| 276 | + loyers[idx] = loyers[idx] + fraction_rattrapage * (marche[idx] - loyers[idx]) | |
| 277 | + elif mode == "esperance": | |
| 278 | + loyers = (1 - rot) * loyers + rot * (loyers + fraction_rattrapage * (marche - loyers)) | |
| 279 | + k = rot * len(loyers) | |
| 280 | + else: | |
| 281 | + raise ValueError(mode) | |
| 282 | + if recuperation_capex and capex_prec > 0: | |
| 283 | + loyers *= 1 + pct_recuperation * capex_prec / (loyers.sum() * 12) | |
| 284 | + rbp = loyers.sum() * 12; rbe = fin.revenu_brut_effectif(rbp, v, autres * (1 + g_d) ** (t - 1)) | |
| 285 | + de = de0 * (1 + g_d) ** (t - 1); res = res0; noi = rbe - de - res | |
| 286 | + capex = float(hyp["capex"].get(str(annee0 + t - 1), 0.0)) if t <= T else 0.0 | |
| 287 | + rows.append({"annee": t, "exercice": annee0 + t - 1, "rbp": rbp, "rbp_marche": marche.sum() * 12, "rbe": rbe, "depenses": de, "reserve": res, | |
| 288 | + "rne": noi, "capex": capex, "flux_avant_dette": noi - capex, "ecart_marche": marche.sum() * 12 - rbp, "logements_reloues": k}) | |
| 289 | + capex_prec = capex | |
| 290 | + return pd.DataFrame(rows) | |
| 291 | + | |
| 292 | +def valeur_scenario(d: dict, **kw) -> dict: | |
| 293 | + """Projection locale + valeur DCF (traite.cas3.valeur_dcf, hypothèses r, R_T, c_v, T du dossier) + mesures de l'écart au marché.""" | |
| 294 | + hyp = d["hyp"]; T = hyp["horizon_ans"]; r = hyp["taux_actualisation"] | |
| 295 | + proj = projection_scenario(d["etat"], d["dep"], hyp, **kw) | |
| 296 | + val = cas3.valeur_dcf(proj, hyp) | |
| 297 | + p = proj[proj["annee"] <= T] | |
| 298 | + va_ecart = float(sum(e * fin.facteur_va(r, int(t)) for e, t in zip(p["ecart_marche"], p["annee"]))) | |
| 299 | + return {**val, "projection": proj, "rne_1": float(proj.loc[proj["annee"] == 1, "rne"].iloc[0]), "rbp_1": float(proj.loc[proj["annee"] == 1, "rbp"].iloc[0]), | |
| 300 | + "rbp_T1": float(proj.loc[proj["annee"] == T + 1, "rbp"].iloc[0]), "ecart_T1_pct": float(proj.loc[proj["annee"] == T + 1, "ecart_marche"].iloc[0] / proj.loc[proj["annee"] == T + 1, "rbp_marche"].iloc[0]), | |
| 301 | + "va_ecart_marche": va_ecart, "croissance_rbp": (float(proj.loc[proj["annee"] == T + 1, "rbp"].iloc[0]) / float(proj.loc[proj["annee"] == 1, "rbp"].iloc[0])) ** (1 / T) - 1} | |
| 302 | + | |
| 303 | +def grille_scenarios(d: dict, rotations=(0.05, 0.15, 0.25), bases=(0.02, 0.031, 0.04), **kw) -> pd.DataFrame: | |
| 304 | + """Valeur DCF pour chaque combinaison rotation × pourcentage de base (autres hypothèses du dossier inchangées).""" | |
| 305 | + V0 = d["dcf"]["valeur"] if "dcf" in d else None | |
| 306 | + rows = [] | |
| 307 | + for rho in rotations: | |
| 308 | + for b in bases: | |
| 309 | + v = valeur_scenario(d, rotation=rho, g_c=b, **kw) | |
| 310 | + rows.append({"rotation": rho, "base": b, "logements_par_an": int(round(rho * len(d["etat"]))) if kw.get("mode", "deterministe") == "deterministe" else rho * len(d["etat"]), | |
| 311 | + "valeur": v["valeur"], "rne_T1": v["rne_T1"], "rbp_T1": v["rbp_T1"], "ecart_T1_pct": v["ecart_T1_pct"], | |
| 312 | + "va_ecart_marche": v["va_ecart_marche"], "part_terminale": v["part_terminale"], "croissance_rbp": v["croissance_rbp"]}) | |
| 313 | + g = pd.DataFrame(rows) | |
| 314 | + if V0 is not None: | |
| 315 | + g["ecart_pct_base"] = g["valeur"] / V0 - 1 | |
| 316 | + return g | |
| 317 | + | |
| 318 | +def scenarios_complementaires(d: dict) -> pd.DataFrame: | |
| 319 | + """Scénarios narratifs autour du cas de base (rotation 15 %, base 3,1 %, marché 3,5 %, relocation intégrale au marché).""" | |
| 320 | + V0 = d["dcf"]["valeur"] | |
| 321 | + defs = [ | |
| 322 | + ("Base (dossier)", {}), | |
| 323 | + ("Base, mode espérance (rotation fractionnaire)", {"mode": "esperance"}), | |
| 324 | + ("Indexation seule (aucune relocation)", {"rotation": 0.0}), | |
| 325 | + ("Encadrement serré (ch. 30 : base 2 %, rotation 8 %, marché 3 %)", {"g_c": 0.02, "rotation": 0.08, "g_m": 0.03}), | |
| 326 | + ("Rattrapage partiel à la relocation (φ = 0,5)", {"fraction_rattrapage": 0.5}), | |
| 327 | + ("Encadrement renforcé (base 2 %, rotation 8 %, φ = 0,5, marché 3 %)", {"g_c": 0.02, "rotation": 0.08, "fraction_rattrapage": 0.5, "g_m": 0.03}), | |
| 328 | + ("Récupération de 5 % des dépenses d'immobilisation", {"recuperation_capex": True}), | |
| 329 | + ("Rotation 25 % et base 4 %", {"rotation": 0.25, "g_c": 0.04}), | |
| 330 | + ("Tout au marché dès l'année 1 (borne supérieure théorique)", {"rotation": 1.0}), | |
| 331 | + ] | |
| 332 | + rows = [] | |
| 333 | + for nom, kw in defs: | |
| 334 | + v = valeur_scenario(d, **kw) | |
| 335 | + rows.append({"scenario": nom, **{k: kw.get(k) for k in ("rotation", "g_c", "g_m", "fraction_rattrapage", "mode", "recuperation_capex")}, | |
| 336 | + "rne_1": v["rne_1"], "rne_T1": v["rne_T1"], "rbp_T1": v["rbp_T1"], "ecart_T1_pct": v["ecart_T1_pct"], "va_ecart_marche": v["va_ecart_marche"], | |
| 337 | + "valeur": v["valeur"], "ecart_pct_base": v["valeur"] / V0 - 1, "part_terminale": v["part_terminale"]}) | |
| 338 | + return pd.DataFrame(rows) | |
| 339 | + | |
| 340 | +def elasticites(d: dict, h_rot: float = 0.05, h_base: float = 0.005) -> dict: | |
| 341 | + """Variation de valeur par point de rotation et par point de pourcentage de base autour de la base (différences centrées, | |
| 342 | + mode espérance pour éviter les sauts d'arrondi du nombre de logements).""" | |
| 343 | + hyp = d["hyp"]; rho = hyp["rotation_annuelle"]; b = hyp["croissance_loyers_contrat"] | |
| 344 | + vb = valeur_scenario(d, mode="esperance")["valeur"] | |
| 345 | + v_rp = valeur_scenario(d, mode="esperance", rotation=rho + h_rot)["valeur"]; v_rm = valeur_scenario(d, mode="esperance", rotation=rho - h_rot)["valeur"] | |
| 346 | + v_bp = valeur_scenario(d, mode="esperance", g_c=b + h_base)["valeur"]; v_bm = valeur_scenario(d, mode="esperance", g_c=b - h_base)["valeur"] | |
| 347 | + return {"valeur_esperance": vb, "dV_par_point_rotation": (v_rp - v_rm) / (2 * h_rot * 100), "dV_par_point_base": (v_bp - v_bm) / (2 * h_base * 100)} | |
| 348 | + | |
| 349 | +# ============================================================================ 5. Exercices | |
| 350 | + | |
| 351 | +def exercices() -> dict: | |
| 352 | + out = {} | |
| 353 | + # Ex. 1 : pourcentage de base avec des IPC fictifs (A=161,0 ; B=157,2 ; C=153,6 ; D=147,0) | |
| 354 | + A, B, C, D = 161.0, 157.2, 153.6, 147.0 | |
| 355 | + out["ex1"] = {"v1": (A - B) / B, "v2": (B - C) / C, "v3": (C - D) / D, "pct": ((A - B) / B + (B - C) / C + (C - D) / D) / 3} | |
| 356 | + # Ex. 2 : taxes municipales 24 000 → 26 400 (+10 %), base 3,1 %, loyer 1 100 sur revenus 180 000 | |
| 357 | + part = part_attribuable(1100, 180_000) | |
| 358 | + out["ex2"] = {"part": part, "variation": 0.10, "net": taux_net(0.10, 0.031), "montant": taux_net(0.10, 0.031) * 24_000 / 12 * part, | |
| 359 | + "montant_si_6pct": taux_net(0.06, 0.031) * 24_000 / 12 * part, "montant_si_2pct": taux_net(0.02, 0.031) * 24_000 / 12 * part} | |
| 360 | + # Ex. 3 : fixation complète logement 201 du cas 3 avec données du dossier (variante A) et travaux 40 000 $ (fenêtres) | |
| 361 | + ex = exemple_fixation(201) | |
| 362 | + im = ex["immeuble"] | |
| 363 | + f3 = fixation_nouvelle(ex["loyer"], 0.031, ex["part"], (im["taxes_mun"][2025], im["taxes_mun"][2025] * 1.05), (im["taxes_scol"][2024], im["taxes_scol"][2025]), | |
| 364 | + (im["assurances"][2024], im["assurances"][2025]), immobilisations=40_000.0) | |
| 365 | + out["ex3"] = {"loyer": ex["loyer"], "marche": ex["marche"], "part": ex["part"], "fixation": f3} | |
| 366 | + # Ex. 4 : forme fermée, q0 = 0,70, ρ = 0,10, g_c = 0,031, g_m = 0,035 | |
| 367 | + out["ex4"] = {"q": ratio_espere(0.70, 0.10, 0.031, 0.035, np.array([0, 1, 5, 10])), "q_inf": ratio_limite(0.10, 0.031, 0.035), | |
| 368 | + "q_inf_20": ratio_limite(0.20, 0.031, 0.035), "survie_10": 0.9 ** 10, "temps_moyen": 1 / 0.10} | |
| 369 | + # Ex. 5 : scénarios par script | |
| 370 | + d = cas3.tout() | |
| 371 | + out["ex5"] = {"base": d["dcf"]["valeur"], "rot10_base25": valeur_scenario(d, rotation=0.10, g_c=0.025)["valeur"], | |
| 372 | + "rot10_base25_phi05": valeur_scenario(d, rotation=0.10, g_c=0.025, fraction_rattrapage=0.5)["valeur"], | |
| 373 | + "rot10_base25_recup": valeur_scenario(d, rotation=0.10, g_c=0.025, recuperation_capex=True)["valeur"]} | |
| 374 | + # Ex. 6 : éviction — indemnité (art. 1965) pour le logement 103 (bail depuis 2008, 18 ans → plafond 24 mois) vs gain annuel au marché | |
| 375 | + loyer103 = 728.0; marche103 = 1047.0 | |
| 376 | + indemnite = min(max(18, 3), 24) * loyer103 | |
| 377 | + out["ex6"] = {"mois": min(max(18, 3), 24), "indemnite": indemnite, "gain_annuel": (marche103 - loyer103) * 12, "demenagement_hyp": 1_500.0, | |
| 378 | + "recuperation_ans": (indemnite + 1_500.0) / ((marche103 - loyer103) * 12)} | |
| 379 | + # Ex. 7 : dérivée de q_inf par rapport à ρ | |
| 380 | + delta = 1.031 / 1.035 | |
| 381 | + out["ex7"] = {"delta": delta, "dq_drho_15": (1 - delta) / (1 - (1 - 0.15) * delta) ** 2, "dq_drho_5": (1 - delta) / (1 - (1 - 0.05) * delta) ** 2, | |
| 382 | + "q_inf_5": ratio_limite(0.05, 0.031, 0.035), "q_inf_15": ratio_limite(0.15, 0.031, 0.035), "q_inf_25": ratio_limite(0.25, 0.031, 0.035)} | |
| 383 | + return out | |
| 384 | + | |
| 385 | +# ============================================================================ impression | |
| 386 | + | |
| 387 | +def _d(x): return f"{x:,.0f}".replace(",", " ") + " $" | |
| 388 | +def _d2(x): return f"{x:,.2f}".replace(",", " ").replace(".", ",") + " $" | |
| 389 | +def _p(x, d=2): return f"{x*100:.{d}f}".replace(".", ",") + " %" | |
| 390 | + | |
| 391 | +def main(): | |
| 392 | + print("=== 1. Pourcentage de base (art. 3.1) à partir de l'IPC du Québec (StatCan 18-10-0004-01, v41691783) ===") | |
| 393 | + for an in (2025, 2026): | |
| 394 | + p = pourcentage_base(an) | |
| 395 | + print(f"{an} : A={p['A']:.3f} B={p['B']:.3f} C={p['C']:.3f} D={p['D']:.3f} ; variations {_p(p['var_A_B'])}, {_p(p['var_B_C'])}, {_p(p['var_C_D'])} ; " | |
| 396 | + f"moyenne {_p(p['pct_base'], 3)} ; publié TAL {_p(p['pct_publie'], 1)}") | |
| 397 | + h = historique_pourcentage_base() | |
| 398 | + print(h.to_string(index=False, float_format=lambda x: f"{x:.4f}")) | |
| 399 | + | |
| 400 | + print("\n=== 2. Exemple de fixation 2026, logement 103 du cas 3 ===") | |
| 401 | + ex = exemple_fixation(103) | |
| 402 | + im = ex["immeuble"] | |
| 403 | + print(f"loyer {_d(ex['loyer'])}/mois ; marché {_d(ex['marche'])} ; écart {_d(ex['ecart_marche'])} ({_p(ex['ecart_marche_pct'],1)}) ; revenus immeuble {_d(ex['revenus'])} ; part {_p(ex['part'],3)}") | |
| 404 | + print(f"taxes mun. 2025 {_d(im['taxes_mun'][2025])} → 2026 {_d(im['taxes_mun'][2026])} ; scolaire 2024 {_d(im['taxes_scol'][2024])} → 2025 {_d(im['taxes_scol'][2025])} ; " | |
| 405 | + f"assurances 2024 {_d(im['assurances'][2024])} → 2025 {_d(im['assurances'][2025])}") | |
| 406 | + for nom in ("A", "B"): | |
| 407 | + f = ex[nom] | |
| 408 | + print(f"-- variante {nom} : base {_d2(f['base'])} ; taxes mun. var {_p(f['var_taxes_mun'],1)} net {_p(f['net_taxes_mun'],1)} → {_d2(f['m_taxes_mun'])} ; " | |
| 409 | + f"scol var {_p(f['var_taxes_scol'],1)} net {_p(f['net_taxes_scol'],1)} → {_d2(f['m_taxes_scol'])} ; assur var {_p(f['var_assurances'],1)} net {_p(f['net_assurances'],1)} → {_d2(f['m_assurances'])} ; " | |
| 410 | + f"immob {_d(f['immobilisations'])} → {_d2(f['m_immobilisations'])} ; total {_d2(f['total_brut'])} ; nouveau loyer {_d(f['nouveau_loyer'])} (+{_d(f['augmentation'])}, {_p(f['taux_effectif'])})") | |
| 411 | + for nom in ("ancienne_A", "ancienne_B"): | |
| 412 | + a = ex[nom] | |
| 413 | + print(f"-- {nom} (reconstitution) : ajustements immeuble " + ", ".join(f"{k} {_d(v)}" for k, v in a["ajustements_immeuble"].items()) + | |
| 414 | + f" ; dépenses expl. {_d(a['depenses_exploitation'])} ; revenu net {_d(a['revenu_net'])} ; total {_d(a['total_immeuble'])} ; mensuel {_d2(a['mensuel_brut'])} ; nouveau loyer {_d(a['nouveau_loyer'])} ({_p(a['taux_effectif'])})") | |
| 415 | + print(f"années de rattrapage du marché à 3,1 %/an si le marché était figé : {ex['annees_rattrapage_base']:.1f}") | |
| 416 | + | |
| 417 | + print("\n=== 3. Trajectoire espérée (forme fermée) et vérification Monte-Carlo ===") | |
| 418 | + for rho in (0.05, 0.15, 0.25): | |
| 419 | + q = ratio_espere(0.695, rho, 0.031, 0.035, np.array([0, 1, 2, 5, 10])) | |
| 420 | + print(f"ρ={rho:.2f} : q_t(t=0,1,2,5,10) = " + ", ".join(f"{x:.4f}" for x in q) + f" ; q_inf = {ratio_limite(rho, 0.031, 0.035):.4f} ; survie 10 ans {(1-rho)**10:.3f}") | |
| 421 | + sim = simulation_ratio(0.695, 0.15, 0.031, 0.035, 10) | |
| 422 | + print("Monte-Carlo ρ=0,15 (t=0..10) : " + ", ".join(f"{x:.4f}" for x in sim)) | |
| 423 | + d = cas3.tout() | |
| 424 | + tr = trajectoire_cas3_esperee(d) | |
| 425 | + print(tr.to_string(index=False, float_format=lambda x: f"{x:,.4f}")) | |
| 426 | + | |
| 427 | + print("\n=== 4. Scénarios : grille rotation × base ===") | |
| 428 | + g = grille_scenarios(d) | |
| 429 | + print(g.to_string(index=False, float_format=lambda x: f"{x:,.4f}")) | |
| 430 | + print("\n=== 4b. Scénarios complémentaires ===") | |
| 431 | + s = scenarios_complementaires(d) | |
| 432 | + print(s[["scenario", "rne_1", "rne_T1", "rbp_T1", "ecart_T1_pct", "va_ecart_marche", "valeur", "ecart_pct_base", "part_terminale"]].to_string(index=False, float_format=lambda x: f"{x:,.4f}")) | |
| 433 | + print("\n=== 4c. Élasticités (mode espérance) ===") | |
| 434 | + print(elasticites(d)) | |
| 435 | + print("\n=== 5. Exercices ===") | |
| 436 | + for k, v in exercices().items(): | |
| 437 | + print(k, v) | |
| 438 | + | |
| 439 | +if __name__ == "__main__": | |
| 440 | + main() | |
added
analysis/python/cases/ch35_indices.py
+369 −0
@@ -0,0 +1,369 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Chapitre 35 — Indices immobiliers et ventes répétées : exemple intégral sur le cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031). | |
| 3 | + | |
| 4 | +Construit et compare, sur les 600 ventes du cas 1 (data/synthetic/cas1_gatineau_ventes.csv, 15 trimestres 2023T1-2026T3) : | |
| 5 | + * l'indice de la médiane et de la moyenne géométrique des prix (biais de composition, décomposition exacte) ; | |
| 6 | + * l'indice hédonique à indicatrices temporelles (traite.hedonique.indice_dummies_temps, modèle de référence traite.cas1.matrice | |
| 7 | + avec les indicatrices trimestrielles du ch. 18), l'indice chaîné par périodes adjacentes et l'indice d'imputation géométrique | |
| 8 | + (égal à l'indice à indicatrices quand les coefficients sont communs) ; | |
| 9 | + * un jeu de REVENTES SYNTHÉTIQUES dérivé des 600 ventes (chaque vente observée est la première vente ; la revente est simulée | |
| 10 | + avec la loi de génération du jeu : tendance 4,43 %/an, bruit de transaction σ = 0,085 à chaque vente, marche aléatoire | |
| 11 | + idiosyncrasique δ² = 0,0004 par mois, 15 % de reventes rapides « rénovées » avec prime) ; | |
| 12 | + * les estimateurs de ventes répétées de Bailey-Muth-Nourse (traite.hedonique.ventes_repetees_bmn) et de Case-Shiller pondéré en | |
| 13 | + trois étapes (traite.hedonique.ventes_repetees_case_shiller), avec erreurs-types ; | |
| 14 | + * l'indice SPAR (prix / valeur au rôle, Bourassa, Hoesli et Sun 2006) construit avec valeur_role_2025 ; | |
| 15 | + * la comparaison à la vérité de génération, l'ajustement de conditions du marché du comparable G0404 selon l'indice, | |
| 16 | + la sensibilité (millésimes et révision, filtre des reventes rapides, taille de l'échantillon, fenêtre d'estimation) et les | |
| 17 | + chiffres des solutions d'exercices. | |
| 18 | +Usage (racine du dépôt) : PYTHONPATH=analysis/python python3 analysis/python/cases/ch35_indices.py""" | |
| 19 | +from __future__ import annotations | |
| 20 | +import sys, math, pathlib | |
| 21 | +import numpy as np, pandas as pd | |
| 22 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 23 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) | |
| 24 | +from traite import cas1 | |
| 25 | +from traite import hedonique as h | |
| 26 | +import ch18_hedonique as c18 | |
| 27 | + | |
| 28 | +ROOT = pathlib.Path(__file__).resolve().parents[3] | |
| 29 | +GRAINE = 20261031 | |
| 30 | +T = 15 # trimestres 2023T1 … 2026T3 | |
| 31 | +LABELS = [f"{2023 + k // 4}T{k % 4 + 1}" for k in range(T)] | |
| 32 | +BETA_VRAI = c18.VRAIS["mois"] # ln(1,0443)/12 : tendance mensuelle de génération | |
| 33 | +SIGMA = c18.VRAIS["sigma"] # bruit de transaction de génération | |
| 34 | +DELTA2 = 0.0004 # variance mensuelle de la marche aléatoire idiosyncrasique des reventes (hypothèse) | |
| 35 | +P_REVENTE = 0.60 # probabilité qu'une vente observée soit suivie d'une revente dans la fenêtre | |
| 36 | +PART_FLIP = 0.15 # part des reventes rapides « rénovées » | |
| 37 | +PRIME_FLIP = (0.12, 0.04) # prime moyenne et écart-type (log) des reventes rapides | |
| 38 | +FIN_FENETRE = pd.Timestamp("2026-08-31") | |
| 39 | + | |
| 40 | +# ----------------------------------------------------------------------------- données et vérité | |
| 41 | +def charger() -> pd.DataFrame: | |
| 42 | + v = cas1.charger()["ventes"].copy() | |
| 43 | + v["trim"] = c18.trimestre(v["date_vente"]) | |
| 44 | + v["mois"] = ((v["date_vente"] - cas1.REF_DATE).dt.days / 30.4375).astype(float) | |
| 45 | + return v | |
| 46 | + | |
| 47 | +def mois_mi_trimestre() -> np.ndarray: | |
| 48 | + mid = pd.to_datetime([f"{2023 + k // 4}-{3 * (k % 4) + 2:02d}-15" for k in range(T)]) | |
| 49 | + return ((mid - cas1.REF_DATE).days / 30.4375).to_numpy() | |
| 50 | + | |
| 51 | +def verite(beta: float = BETA_VRAI) -> np.ndarray: | |
| 52 | + """Indice vrai (loi de génération) au milieu de chaque trimestre, base 2023T1 = 100.""" | |
| 53 | + m = mois_mi_trimestre() | |
| 54 | + return 100 * np.exp(beta * (m - m[0])) | |
| 55 | + | |
| 56 | +# ----------------------------------------------------------------------------- médiane, moyenne, composition | |
| 57 | +def indices_naifs(v: pd.DataFrame, td: dict) -> pd.DataFrame: | |
| 58 | + """Indice de la médiane, de la moyenne arithmétique, de la moyenne géométrique et du prix médian au m² par trimestre ; | |
| 59 | + décomposition exacte de la moyenne géométrique : mean(ln P)_t = α + x̄_t'β + τ_t (les résidus MCO somment à zéro par trimestre).""" | |
| 60 | + g = v.groupby("trim") | |
| 61 | + out = pd.DataFrame({"trimestre": LABELS, "n": g.size().reindex(range(T)).to_numpy(), | |
| 62 | + "mediane": g["prix_vente"].median().to_numpy(), "moyenne": g["prix_vente"].mean().to_numpy(), | |
| 63 | + "moy_geo": np.exp(g["prix_vente"].apply(lambda s: np.log(s).mean())).to_numpy(), | |
| 64 | + "mediane_m2": g.apply(lambda d: (d["prix_vente"] / d["superficie_habitable_m2"]).median()).to_numpy(), | |
| 65 | + "superficie_mediane": g["superficie_habitable_m2"].median().to_numpy(), | |
| 66 | + "part_aylmer": g["secteur"].apply(lambda s: (s == "Aylmer").mean()).to_numpy(), | |
| 67 | + "part_hull": g["secteur"].apply(lambda s: (s == "Hull").mean()).to_numpy(), | |
| 68 | + "age_median": g["age"].median().to_numpy()}) | |
| 69 | + for c in ("mediane", "moyenne", "moy_geo", "mediane_m2"): | |
| 70 | + out[f"indice_{c}"] = 100 * out[c] / out[c].iloc[0] | |
| 71 | + # composition : x̄_t'β̂ (hors indicatrices temporelles) relativement à 2023T1 | |
| 72 | + X = td["X"]; beta = pd.Series(td["mco"]["beta"], index=X.columns) | |
| 73 | + cols = [c for c in X.columns if not c.startswith("trim_")] | |
| 74 | + xb = (X[cols].values @ beta[cols].values) | |
| 75 | + comp = pd.Series(xb, index=v.index).groupby(v["trim"]).mean().to_numpy() | |
| 76 | + out["composition_log"] = comp - comp[0] | |
| 77 | + out["indice_composition"] = 100 * np.exp(out["composition_log"]) | |
| 78 | + out["indice_moy_geo_corrigee"] = 100 * np.exp(np.log(out["moy_geo"] / out["moy_geo"].iloc[0]) - out["composition_log"]) | |
| 79 | + return out | |
| 80 | + | |
| 81 | +# ----------------------------------------------------------------------------- hédonique : indicatrices, chaînage, imputation | |
| 82 | +def indice_td(v: pd.DataFrame) -> dict: | |
| 83 | + """Indice hédonique à indicatrices trimestrielles (2023T1 = référence) sur le modèle de référence du cas 1.""" | |
| 84 | + X = c18.matrice_trimestres(v); y = np.log(v["prix_vente"].astype(float)).values | |
| 85 | + r = h.mco(X.values, y) | |
| 86 | + cols = [c for c in X.columns if c.startswith("trim_")] | |
| 87 | + ix = [list(X.columns).index(c) for c in cols] | |
| 88 | + tau = r["beta"][ix]; se = r["se_hc1"][ix] | |
| 89 | + idx = h.indice_dummies_temps(tau) | |
| 90 | + return {"X": X, "y": y, "mco": r, "tau": np.concatenate([[0.0], tau]), "se": np.concatenate([[0.0], se]), "indice": idx, | |
| 91 | + "bas": np.concatenate([[100.0], 100 * np.exp(tau - 1.96 * se)]), "haut": np.concatenate([[100.0], 100 * np.exp(tau + 1.96 * se)]), | |
| 92 | + "sigma": float(np.sqrt(r["sigma2"])), "r2_ajuste": r["r2_ajuste"], "k": r["k"]} | |
| 93 | + | |
| 94 | +def indice_chaine(v: pd.DataFrame) -> dict: | |
| 95 | + """Indice hédonique chaîné : pour chaque paire de trimestres adjacents (t−1, t), MCO sur les ventes des deux trimestres avec une | |
| 96 | + indicatrice de t (coefficients des caractéristiques propres à la paire) ; I_t = I_{t−1} exp(δ_t).""" | |
| 97 | + delta = np.zeros(T); se = np.zeros(T) | |
| 98 | + for t in range(1, T): | |
| 99 | + sub = v[v["trim"].isin([t - 1, t])] | |
| 100 | + X = cas1.matrice(sub).drop(columns=["mois"]) | |
| 101 | + X = X[[c for c in X.columns if X[c].std() > 0 or c == "const"]] | |
| 102 | + X["d_t"] = (sub["trim"] == t).astype(float) | |
| 103 | + r = h.mco(X.values, np.log(sub["prix_vente"].astype(float)).values) | |
| 104 | + j = list(X.columns).index("d_t"); delta[t] = r["beta"][j]; se[t] = r["se_hc1"][j] | |
| 105 | + ln_idx = np.cumsum(delta) | |
| 106 | + return {"delta": delta, "se_delta": se, "indice": 100 * np.exp(ln_idx), "se_cumul": np.sqrt(np.cumsum(se ** 2))} | |
| 107 | + | |
| 108 | +def indice_imputation(v: pd.DataFrame, td: dict) -> dict: | |
| 109 | + """Imputation géométrique (Laspeyres : panier de la période de base ; Paasche : panier courant ; Fisher = moyenne géométrique) | |
| 110 | + avec le modèle à indicatrices (coefficients communs) : chaque vente de la période 0 (resp. t) est « revendue » à la période t (resp. 0) | |
| 111 | + au prix prédit. Avec des coefficients communs, les trois indices coïncident avec exp(τ_t) ; la fonction le vérifie numériquement.""" | |
| 112 | + X = td["X"]; beta = td["mco"]["beta"]; cols = list(X.columns) | |
| 113 | + tcols = [c for c in cols if c.startswith("trim_")] | |
| 114 | + def predire_a(Xsub: pd.DataFrame, t: int) -> np.ndarray: | |
| 115 | + Z = Xsub.copy() | |
| 116 | + for c in tcols: Z[c] = 0.0 | |
| 117 | + if t > 0: Z[f"trim_{t}"] = 1.0 | |
| 118 | + return Z.values @ beta | |
| 119 | + lasp = np.zeros(T); paas = np.zeros(T) | |
| 120 | + X0 = X[v["trim"] == 0] | |
| 121 | + for t in range(T): | |
| 122 | + Xt = X[v["trim"] == t] | |
| 123 | + lasp[t] = np.mean(predire_a(X0, t) - predire_a(X0, 0)) | |
| 124 | + paas[t] = np.mean(predire_a(Xt, t) - predire_a(Xt, 0)) | |
| 125 | + fisher = 0.5 * (lasp + paas) | |
| 126 | + return {"laspeyres": 100 * np.exp(lasp), "paasche": 100 * np.exp(paas), "fisher": 100 * np.exp(fisher), | |
| 127 | + "ecart_max_vs_td": float(np.max(np.abs(100 * np.exp(fisher) - td["indice"])))} | |
| 128 | + | |
| 129 | +# ----------------------------------------------------------------------------- reventes synthétiques | |
| 130 | +def generer_reventes(v: pd.DataFrame, graine: int = GRAINE, p_revente: float = P_REVENTE, part_flip: float = PART_FLIP, | |
| 131 | + delta2: float = DELTA2, beta: float = BETA_VRAI, sigma: float = SIGMA) -> pd.DataFrame: | |
| 132 | + """Paires de reventes synthétiques. Pour chaque vente observée (première vente, prix P1 à la date t1), avec probabilité p_revente : | |
| 133 | + intervalle Δ (mois) tiré d'une loi déclarée (reventes « rapides » : 3 à 9 mois, prime log N(0,08 ; 0,03) ; autres : 6 + Exp(16), ≥ 6) ; | |
| 134 | + ln P2 = ln P1 + β Δ + prime·flip + w + ε2 − ε1', avec ε1', ε2 ~ N(0, σ²) (bruit de transaction à chaque vente) et w ~ N(0, δ² Δ). | |
| 135 | + Seules les reventes datées au plus tard le 31 août 2026 sont conservées ; prix arrondis à 500 $.""" | |
| 136 | + rng = np.random.default_rng(graine) | |
| 137 | + rows = [] | |
| 138 | + for _, s in v.iterrows(): | |
| 139 | + if rng.random() > p_revente: | |
| 140 | + continue | |
| 141 | + flip = rng.random() < part_flip | |
| 142 | + if flip: | |
| 143 | + gap = int(rng.integers(3, 10)); prime = rng.normal(*PRIME_FLIP) | |
| 144 | + else: | |
| 145 | + gap = int(max(6, round(6 + rng.exponential(16.0)))); prime = 0.0 | |
| 146 | + d2 = s["date_vente"] + pd.DateOffset(months=gap) | |
| 147 | + if d2 > FIN_FENETRE: | |
| 148 | + continue | |
| 149 | + w = rng.normal(0.0, math.sqrt(delta2 * gap)); e1 = rng.normal(0.0, sigma); e2 = rng.normal(0.0, sigma) | |
| 150 | + lnp2 = math.log(s["prix_vente"]) + beta * gap + prime + w + e2 - e1 | |
| 151 | + p2 = 500 * round(math.exp(lnp2) / 500) | |
| 152 | + rows.append({"id_vente": s["id_vente"], "secteur": s["secteur"], "date_1": s["date_vente"], "date_2": d2, "prix_1": float(s["prix_vente"]), | |
| 153 | + "prix_2": float(p2), "t_1": int(s["trim"]), "t_2": int(c18.trimestre(pd.Series([d2]))[0]), "intervalle_mois": gap, | |
| 154 | + "flip": bool(flip), "prime": prime}) | |
| 155 | + df = pd.DataFrame(rows) | |
| 156 | + df["ln_ratio"] = np.log(df["prix_2"] / df["prix_1"]) | |
| 157 | + df["id_paire"] = [f"R{i + 1:04d}" for i in range(len(df))] | |
| 158 | + return df | |
| 159 | + | |
| 160 | +def resume_reventes(p: pd.DataFrame) -> dict: | |
| 161 | + return {"n_paires": len(p), "n_flips": int(p["flip"].sum()), "intervalle_median": float(p["intervalle_mois"].median()), | |
| 162 | + "intervalle_moyen": float(p["intervalle_mois"].mean()), "intervalle_min": int(p["intervalle_mois"].min()), "intervalle_max": int(p["intervalle_mois"].max()), | |
| 163 | + "part_moins_12": float((p["intervalle_mois"] < 12).mean()), "variation_mediane": float(np.exp(p["ln_ratio"].median()) - 1), | |
| 164 | + "variation_moyenne_log": float(p["ln_ratio"].mean()), "sd_ln_ratio": float(p["ln_ratio"].std(ddof=1)), | |
| 165 | + "paires_par_annee_1": p["date_1"].dt.year.value_counts().sort_index().to_dict(), | |
| 166 | + "paires_par_annee_2": p["date_2"].dt.year.value_counts().sort_index().to_dict(), | |
| 167 | + "meme_trimestre": int((p["t_1"] == p["t_2"]).sum())} | |
| 168 | + | |
| 169 | +# ----------------------------------------------------------------------------- ventes répétées : BMN et Case–Shiller avec erreurs-types | |
| 170 | +def _se_mco_sans_constante(D: np.ndarray, y: np.ndarray, beta: np.ndarray, w: np.ndarray | None = None) -> np.ndarray: | |
| 171 | + if w is None: w = np.ones(len(y)) | |
| 172 | + Dw = D * w[:, None]; yw = y * w | |
| 173 | + res = yw - Dw @ beta; n, k = D.shape | |
| 174 | + s2 = res @ res / (n - k) | |
| 175 | + return np.sqrt(np.diag(s2 * np.linalg.pinv(Dw.T @ Dw))) | |
| 176 | + | |
| 177 | +def bmn(p: pd.DataFrame) -> dict: | |
| 178 | + r = h.ventes_repetees_bmn(p["prix_1"], p["prix_2"], p["t_1"], p["t_2"], T) | |
| 179 | + se = _se_mco_sans_constante(r["D"], r["y"], r["beta"]) | |
| 180 | + r["se"] = np.concatenate([[0.0], se]); r["bas"] = 100 * np.exp(np.concatenate([[0.0], r["beta"]]) - 1.96 * r["se"]) | |
| 181 | + r["haut"] = 100 * np.exp(np.concatenate([[0.0], r["beta"]]) + 1.96 * r["se"]); r["sigma"] = float(np.sqrt(r["residus"] @ r["residus"] / (len(r["y"]) - T + 1))) | |
| 182 | + # vérification de la forme fermée : β = (D'D)^{-1} D'y | |
| 183 | + r["beta_ferme"] = np.linalg.solve(r["D"].T @ r["D"], r["D"].T @ r["y"]) | |
| 184 | + return r | |
| 185 | + | |
| 186 | +def case_shiller(p: pd.DataFrame) -> dict: | |
| 187 | + r = h.ventes_repetees_case_shiller(p["prix_1"], p["prix_2"], p["t_1"], p["t_2"], T) | |
| 188 | + e1 = h.ventes_repetees_bmn(p["prix_1"], p["prix_2"], p["t_1"], p["t_2"], T) | |
| 189 | + gap_t = (p["t_2"] - p["t_1"]).to_numpy(float) | |
| 190 | + se = _se_mco_sans_constante(e1["D"], e1["y"], r["beta"], r["poids"]) | |
| 191 | + r["se"] = np.concatenate([[0.0], se]); r["bas"] = 100 * np.exp(np.concatenate([[0.0], r["beta"]]) - 1.96 * r["se"]) | |
| 192 | + r["haut"] = 100 * np.exp(np.concatenate([[0.0], r["beta"]]) + 1.96 * r["se"]) | |
| 193 | + r["gap_trimestres"] = gap_t; r["residus_bmn2"] = e1["residus"] ** 2 | |
| 194 | + a = r["coef_variance"] # var(ε) = a0 + a1·(intervalle en trimestres) | |
| 195 | + r["variance_a_gap"] = {g: float(a[0] + a[1] * g) for g in (1, 2, 4, 8, 12)} | |
| 196 | + r["poids_relatif_a_gap"] = {g: float(math.sqrt((a[0] + a[1] * 1) / (a[0] + a[1] * g))) for g in (1, 2, 4, 8, 12)} | |
| 197 | + # pente théorique : var = 2σ² + δ²·(3 mois par trimestre)·gap, en unités de trimestre | |
| 198 | + r["variance_theorique"] = (2 * SIGMA ** 2, DELTA2 * 3) | |
| 199 | + return r | |
| 200 | + | |
| 201 | +# ----------------------------------------------------------------------------- SPAR | |
| 202 | +def spar(v: pd.DataFrame) -> dict: | |
| 203 | + """Indice SPAR (sale price appraisal ratio) : arithmétique [(ΣP_t/ΣA_t)/(ΣP_0/ΣA_0)] et géométrique [exp(mean ln(P/A)_t − mean ln(P/A)_0)], | |
| 204 | + A = valeur au rôle 2025 (date de référence 2024-07-01, fictive).""" | |
| 205 | + g = v.groupby("trim") | |
| 206 | + ratio_arith = (g["prix_vente"].sum() / g["valeur_role_2025"].sum()).to_numpy() | |
| 207 | + lr = np.log(v["prix_vente"] / v["valeur_role_2025"]) | |
| 208 | + ratio_geo = lr.groupby(v["trim"]).mean().to_numpy(); sd_geo = lr.groupby(v["trim"]).std(ddof=1).to_numpy(); n = g.size().to_numpy() | |
| 209 | + se_geo = np.sqrt(sd_geo ** 2 / n + sd_geo[0] ** 2 / n[0]); se_geo[0] = 0.0 | |
| 210 | + return {"ratio_arith": ratio_arith, "ratio_geo": np.exp(ratio_geo), "indice_arith": 100 * ratio_arith / ratio_arith[0], | |
| 211 | + "indice_geo": 100 * np.exp(ratio_geo - ratio_geo[0]), "se_log": se_geo, | |
| 212 | + "bas": 100 * np.exp(ratio_geo - ratio_geo[0] - 1.96 * se_geo), "haut": 100 * np.exp(ratio_geo - ratio_geo[0] + 1.96 * se_geo), | |
| 213 | + "sd_ln_ratio": float(lr.std(ddof=1)), "ratio_median_global": float(np.median(v["prix_vente"] / v["valeur_role_2025"]))} | |
| 214 | + | |
| 215 | +# ----------------------------------------------------------------------------- comparaison | |
| 216 | +def precision(idx: np.ndarray, vrai: np.ndarray) -> dict: | |
| 217 | + e = 100 * (idx / vrai - 1) | |
| 218 | + return {"EAM_pct": float(np.mean(np.abs(e[1:]))), "RMSE_pct": float(np.sqrt(np.mean(e[1:] ** 2))), "max_abs_pct": float(np.max(np.abs(e))), | |
| 219 | + "croissance_totale_pct": float(idx[-1] - 100), "ecart_final_pct": float(e[-1]), | |
| 220 | + "variations_trim_sd_pct": float(np.std(np.diff(np.log(idx))) * 100)} | |
| 221 | + | |
| 222 | +def tableau_indices(vrai, naifs, td, ch, b, cs, sp) -> pd.DataFrame: | |
| 223 | + return pd.DataFrame({"trimestre": LABELS, "n_ventes": naifs["n"], "vrai": vrai, "mediane": naifs["indice_mediane"].to_numpy(), | |
| 224 | + "moy_geo": naifs["indice_moy_geo"].to_numpy(), "hedonique": td["indice"], "hed_bas": td["bas"], "hed_haut": td["haut"], | |
| 225 | + "chaine": ch["indice"], "bmn": b["indice"], "bmn_bas": b["bas"], "bmn_haut": b["haut"], "cs": cs["indice"], | |
| 226 | + "cs_bas": cs["bas"], "cs_haut": cs["haut"], "spar": sp["indice_geo"], "spar_arith": sp["indice_arith"]}) | |
| 227 | + | |
| 228 | +def ajustement_comparable(v: pd.DataFrame, tab: pd.DataFrame, ref: dict, id_vente: str = "G0404", date_eval: str = "2026-09-01") -> dict: | |
| 229 | + """Ajustement de conditions du marché d'un comparable du ch. 16 selon l'indice retenu : A = P × (I_eval / I_vente − 1).""" | |
| 230 | + c = v[v["id_vente"] == id_vente].iloc[0]; P = float(c["prix_vente"]); t1 = int(c["trim"]); t2 = T - 1 | |
| 231 | + dm = (pd.Timestamp(date_eval) - c["date_vente"]).days / 30.4375 | |
| 232 | + bm = ref["beta"][list(ref["X"].columns).index("mois")] | |
| 233 | + out = {"prix": P, "trimestre_vente": LABELS[t1], "mois_ecoules": float(dm), "tendance": P * (math.exp(bm * dm) - 1)} | |
| 234 | + for k in ("mediane", "hedonique", "chaine", "bmn", "cs", "spar"): | |
| 235 | + out[k] = P * (tab[k].iloc[t2] / tab[k].iloc[t1] - 1) | |
| 236 | + out["vrai"] = P * (math.exp(BETA_VRAI * dm) - 1) | |
| 237 | + return out | |
| 238 | + | |
| 239 | +# ----------------------------------------------------------------------------- sensibilité | |
| 240 | +def sensibilite(v: pd.DataFrame, p: pd.DataFrame, vrai: np.ndarray, td: dict, graine: int = GRAINE) -> dict: | |
| 241 | + out = {} | |
| 242 | + # (a) millésimes : révision des indices de ventes répétées quand de nouvelles paires s'ajoutent | |
| 243 | + mill = {} | |
| 244 | + for fin, lab in ((9, "2025T2"), (11, "2025T4"), (T - 1, "2026T3")): | |
| 245 | + sub = p[p["t_2"] <= fin] | |
| 246 | + rb = h.ventes_repetees_bmn(sub["prix_1"], sub["prix_2"], sub["t_1"], sub["t_2"], fin + 1) | |
| 247 | + rc = h.ventes_repetees_case_shiller(sub["prix_1"], sub["prix_2"], sub["t_1"], sub["t_2"], fin + 1) | |
| 248 | + mill[lab] = {"n": len(sub), "bmn": rb["indice"], "cs": rc["indice"]} | |
| 249 | + out["millesimes"] = mill | |
| 250 | + rev = {} | |
| 251 | + for t, lab in ((9, "2025T2"), (7, "2024T4"), (5, "2024T2")): | |
| 252 | + rev[lab] = {"bmn_v2025T2": float(mill["2025T2"]["bmn"][t]), "bmn_v2025T4": float(mill["2025T4"]["bmn"][t]), "bmn_v2026T3": float(mill["2026T3"]["bmn"][t]), | |
| 253 | + "cs_v2025T2": float(mill["2025T2"]["cs"][t]), "cs_v2026T3": float(mill["2026T3"]["cs"][t])} | |
| 254 | + out["revisions"] = rev | |
| 255 | + # (b) filtre des reventes rapides | |
| 256 | + filt = {} | |
| 257 | + for seuil, lab in ((0, "toutes"), (12, "intervalle ≥ 12 mois"), (18, "intervalle ≥ 18 mois")): | |
| 258 | + sub = p[p["intervalle_mois"] >= seuil] if seuil else p | |
| 259 | + rb = h.ventes_repetees_bmn(sub["prix_1"], sub["prix_2"], sub["t_1"], sub["t_2"], T) | |
| 260 | + rc = h.ventes_repetees_case_shiller(sub["prix_1"], sub["prix_2"], sub["t_1"], sub["t_2"], T) | |
| 261 | + filt[lab] = {"n": len(sub), "n_flips": int(sub["flip"].sum()), "bmn": precision(rb["indice"], vrai), "cs": precision(rc["indice"], vrai), | |
| 262 | + "bmn_indice": rb["indice"], "cs_indice": rc["indice"]} | |
| 263 | + sans_flip = p[~p["flip"]] | |
| 264 | + rb = h.ventes_repetees_bmn(sans_flip["prix_1"], sans_flip["prix_2"], sans_flip["t_1"], sans_flip["t_2"], T) | |
| 265 | + filt["sans les reventes rénovées (oracle)"] = {"n": len(sans_flip), "n_flips": 0, "bmn": precision(rb["indice"], vrai), "bmn_indice": rb["indice"]} | |
| 266 | + out["filtre"] = filt | |
| 267 | + # (c) taille de l'échantillon : sous-échantillons aléatoires de paires, erreur-type du dernier trimestre et EAM (moyenne de 200 tirages) | |
| 268 | + rng = np.random.default_rng(graine); taille = {} | |
| 269 | + for frac in (1.0, 0.5, 0.25): | |
| 270 | + eam, fin = [], [] | |
| 271 | + for _ in range(200 if frac < 1 else 1): | |
| 272 | + sub = p.sample(frac=frac, random_state=int(rng.integers(1e9))) if frac < 1 else p | |
| 273 | + try: | |
| 274 | + rb = h.ventes_repetees_bmn(sub["prix_1"], sub["prix_2"], sub["t_1"], sub["t_2"], T) | |
| 275 | + except Exception: | |
| 276 | + continue | |
| 277 | + eam.append(precision(rb["indice"], vrai)["EAM_pct"]); fin.append(rb["indice"][-1]) | |
| 278 | + taille[frac] = {"n": int(round(frac * len(p))), "EAM_moyen_pct": float(np.mean(eam)), "sd_indice_final": float(np.std(fin)) if len(fin) > 1 else float("nan")} | |
| 279 | + out["taille"] = taille | |
| 280 | + # (d) fenêtre d'estimation de l'indice hédonique : huit derniers trimestres seulement, rechaîné sur 2024T4 | |
| 281 | + sub = v[v["trim"] >= 7] | |
| 282 | + X = cas1.matrice(sub).drop(columns=["mois"]); X = X[[c for c in X.columns if X[c].std() > 0 or c == "const"]] | |
| 283 | + for k in range(8, T): X[f"trim_{k}"] = (sub["trim"] == k).astype(float) | |
| 284 | + r = h.mco(X.values, np.log(sub["prix_vente"].astype(float)).values) | |
| 285 | + tau = np.array([r["beta"][list(X.columns).index(f"trim_{k}")] for k in range(8, T)]) | |
| 286 | + idx_court = td["indice"][7] * np.exp(np.concatenate([[0.0], tau])) | |
| 287 | + out["fenetre"] = {"n": len(sub), "indice_court": idx_court, "indice_long": td["indice"][7:], "ecart_max_pct": float(np.max(np.abs(idx_court / td["indice"][7:] - 1)) * 100), | |
| 288 | + "sigma_court": float(np.sqrt(r["sigma2"]))} | |
| 289 | + return out | |
| 290 | + | |
| 291 | +# ----------------------------------------------------------------------------- exercices | |
| 292 | +def exercices(tab: pd.DataFrame, b: dict, cs: dict, sp: dict, ref: dict) -> dict: | |
| 293 | + e = {} | |
| 294 | + # 35.1 : médiane et composition (deux trimestres fictifs) | |
| 295 | + e["1"] = {"mediane_t0": 450_000, "mediane_t1": 480_000, "var_mediane_pct": (480_000 / 450_000 - 1) * 100, | |
| 296 | + "composition_pct": (math.exp(0.539 * math.log(150 / 140)) - 1) * 100, | |
| 297 | + "variation_pure_pct": (480_000 / 450_000 / math.exp(0.539 * math.log(150 / 140)) - 1) * 100} | |
| 298 | + # 35.2 : indice à indicatrices | |
| 299 | + tau = np.array([0.0, 0.031, 0.058, 0.102]); e["2"] = {"indice": 100 * np.exp(tau), "variation_t3_t2_pct": (math.exp(0.102 - 0.058) - 1) * 100, | |
| 300 | + "ic_t3": (100 * math.exp(0.102 - 1.96 * 0.021), 100 * math.exp(0.102 + 1.96 * 0.021))} | |
| 301 | + # 35.3 : BMN à la main sur quatre paires et trois périodes | |
| 302 | + D = np.array([[1.0, 0.0], [-1.0, 1.0], [0.0, 1.0], [1.0, 0.0]]); y = np.log(np.array([462_000 / 430_000, 512_000 / 470_000, 540_000 / 495_000, 455_000 / 436_000])) | |
| 303 | + beta = np.linalg.solve(D.T @ D, D.T @ y) | |
| 304 | + e["3"] = {"y": y, "DtD": D.T @ D, "Dty": D.T @ y, "beta": beta, "indice": 100 * np.exp(np.concatenate([[0.0], beta])), "residus": y - D @ beta} | |
| 305 | + # 35.4 : Case–Shiller : variance et poids | |
| 306 | + a0, a1 = 0.0145, 0.0012; gaps = np.array([1, 4, 8, 12]) | |
| 307 | + var = a0 + a1 * gaps; e["4"] = {"var": var, "poids": 1 / np.sqrt(var), "poids_rel": np.sqrt(var[0] / var), "sd_pct": 100 * np.sqrt(var)} | |
| 308 | + # 35.5 : SPAR sur dix ventes fictives | |
| 309 | + P = np.array([512_000, 468_500, 601_000, 445_000, 530_000, 487_500, 575_000, 455_000, 498_000, 522_000.0]); A = np.array([470_000, 452_000, 545_000, 425_000, 480_000, 468_000, 510_000, 440_000, 455_000, 471_000.0]) | |
| 310 | + base_ratio = 1.045; r_ar = P.sum() / A.sum(); r_geo = math.exp(np.mean(np.log(P / A))) | |
| 311 | + e["5"] = {"ratio_arith": r_ar, "ratio_geo": r_geo, "spar_arith": 100 * r_ar / base_ratio, "spar_geo": 100 * r_geo / base_ratio, "ratios": P / A} | |
| 312 | + # 35.6 : ajustement de G0404 selon l'indice | |
| 313 | + e["6"] = {"P": 506_500.0, "I_2025T2": {k: float(tab[k].iloc[9]) for k in ("hedonique", "bmn", "cs", "mediane")}, | |
| 314 | + "I_2026T3": {k: float(tab[k].iloc[14]) for k in ("hedonique", "bmn", "cs", "mediane")}} | |
| 315 | + e["6"]["ajustements"] = {k: 506_500.0 * (e["6"]["I_2026T3"][k] / e["6"]["I_2025T2"][k] - 1) for k in e["6"]["I_2025T2"]} | |
| 316 | + bm = ref["beta"][list(ref["X"].columns).index("mois")]; e["6"]["tendance"] = 506_500.0 * (math.exp(bm * 15.2) - 1) | |
| 317 | + # 35.7 : révision et biais de sélection (chiffres du script : voir sensibilité) — valeurs conceptuelles | |
| 318 | + # 35.8 : script (pas de chiffre fixe) | |
| 319 | + return e | |
| 320 | + | |
| 321 | +# ----------------------------------------------------------------------------- principal | |
| 322 | +def main(verbose: bool = True) -> dict: | |
| 323 | + v = charger(); ref = cas1.hedonique(v.drop(columns=["trim", "mois"])) | |
| 324 | + vrai = verite() | |
| 325 | + td = indice_td(v); ch = indice_chaine(v); imp = indice_imputation(v, td) | |
| 326 | + naifs = indices_naifs(v, td) | |
| 327 | + p = generer_reventes(v); rp = resume_reventes(p) | |
| 328 | + b = bmn(p); cs = case_shiller(p); sp = spar(v) | |
| 329 | + tab = tableau_indices(vrai, naifs, td, ch, b, cs, sp) | |
| 330 | + prec = {k: precision(tab[k].to_numpy(), vrai) for k in ("mediane", "moy_geo", "hedonique", "chaine", "bmn", "cs", "spar", "spar_arith")} | |
| 331 | + prec["hedonique"]["largeur_ic_finale_pct"] = float((td["haut"][-1] / td["bas"][-1] - 1) * 100) | |
| 332 | + prec["bmn"]["largeur_ic_finale_pct"] = float((b["haut"][-1] / b["bas"][-1] - 1) * 100) | |
| 333 | + prec["cs"]["largeur_ic_finale_pct"] = float((cs["haut"][-1] / cs["bas"][-1] - 1) * 100) | |
| 334 | + prec["spar"]["largeur_ic_finale_pct"] = float((sp["haut"][-1] / sp["bas"][-1] - 1) * 100) | |
| 335 | + # corrélation entre l'écart médiane − hédonique et la composition | |
| 336 | + ecart_med = np.log(naifs["indice_mediane"].to_numpy() / td["indice"]); corr_comp = float(np.corrcoef(ecart_med, naifs["composition_log"])[0, 1]) | |
| 337 | + corr_surf = float(np.corrcoef(ecart_med, np.log(naifs["superficie_mediane"]))[0, 1]) | |
| 338 | + adj = ajustement_comparable(v, tab, ref) | |
| 339 | + sens = sensibilite(v, p, vrai, td) | |
| 340 | + ex = exercices(tab, b, cs, sp, ref) | |
| 341 | + out = {"ventes": v, "ref": ref, "vrai": vrai, "td": td, "chaine": ch, "imputation": imp, "naifs": naifs, "paires": p, "resume_paires": rp, | |
| 342 | + "bmn": b, "cs": cs, "spar": sp, "tableau": tab, "precision": prec, "corr_ecart_composition": corr_comp, "corr_ecart_superficie": corr_surf, | |
| 343 | + "ajustement": adj, "sensibilite": sens, "exercices": ex, "beta_vrai": BETA_VRAI} | |
| 344 | + if verbose: | |
| 345 | + pd.set_option("display.width", 240); pd.set_option("display.max_columns", 40) | |
| 346 | + print(f"== Vérité de génération : β = {BETA_VRAI:.6f}/mois ({(math.exp(12 * BETA_VRAI) - 1) * 100:.2f} %/an) ; indice final {vrai[-1]:.2f}") | |
| 347 | + print("== Médiane, moyennes et composition :\n", naifs.round(3).to_string(index=False)) | |
| 348 | + print(f" corrélation(ln médiane/hédonique, composition) = {corr_comp:.3f} ; avec ln superficie médiane = {corr_surf:.3f}") | |
| 349 | + print(f"== Hédonique à indicatrices : k = {td['k']}, σ = {td['sigma']:.4f}, R² aj. = {td['r2_ajuste']:.4f}") | |
| 350 | + print(f"== Imputation géométrique : écart max à l'indice à indicatrices = {imp['ecart_max_vs_td']:.2e}") | |
| 351 | + print("== Reventes synthétiques :", {k: (round(x, 4) if isinstance(x, float) else x) for k, x in rp.items()}) | |
| 352 | + print(f"== BMN : σ = {b['sigma']:.4f} ; écart max forme fermée vs lstsq = {np.max(np.abs(b['beta'] - b['beta_ferme'])):.1e}") | |
| 353 | + print(f"== Case–Shiller : var(ε) = {cs['coef_variance'][0]:.5f} + {cs['coef_variance'][1]:.5f} × intervalle (trimestres) ; théorie {cs['variance_theorique']}") | |
| 354 | + print(" poids relatifs :", {k: round(x, 3) for k, x in cs["poids_relatif_a_gap"].items()}) | |
| 355 | + print(f"== SPAR : sd ln(P/A) = {sp['sd_ln_ratio']:.4f} ; ratio médian global {sp['ratio_median_global']:.4f}") | |
| 356 | + print("== Indices par trimestre :\n", tab.round(2).to_string(index=False)) | |
| 357 | + print("== Précision vs vérité :") | |
| 358 | + for k, d in prec.items(): print(f" {k:11s}", {kk: round(x, 2) for kk, x in d.items()}) | |
| 359 | + print("== Ajustement de G0404 :", {k: (round(x, 1) if isinstance(x, float) else x) for k, x in adj.items()}) | |
| 360 | + print("== Sensibilité — révisions :", sens["revisions"]) | |
| 361 | + for lab, d in sens["filtre"].items(): print(f" filtre {lab:36s} n={d['n']:3d} flips={d['n_flips']:2d} BMN EAM={d['bmn']['EAM_pct']:.2f} final={d['bmn']['croissance_totale_pct']:.2f}", f"CS EAM={d['cs']['EAM_pct']:.2f}" if "cs" in d else "") | |
| 362 | + print(" taille :", sens["taille"]) | |
| 363 | + print(" fenêtre hédonique :", {k: (np.round(x, 2) if isinstance(x, np.ndarray) else round(x, 3)) for k, x in sens["fenetre"].items()}) | |
| 364 | + print("== Exercices :") | |
| 365 | + for k, e in ex.items(): print(" ", k, {kk: (np.round(vv, 4) if isinstance(vv, (np.ndarray, float)) else vv) for kk, vv in e.items()}) | |
| 366 | + return out | |
| 367 | + | |
| 368 | +if __name__ == "__main__": | |
| 369 | + main() | |
added
analysis/python/figures/ch20_figures.py
+145 −0
@@ -0,0 +1,145 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Chapitre 20 — figures : densités bootstrap et énumération exhaustive ; résidus des candidats et élargissement ; | |
| 3 | +fourchettes par méthode ; sensibilité de la conclusion aux poids et variance de la combinaison selon la corrélation. | |
| 4 | +Usage (racine du dépôt) : PYTHONPATH=analysis/python python3 analysis/python/figures/ch20_figures.py""" | |
| 5 | +from __future__ import annotations | |
| 6 | +import sys, pathlib | |
| 7 | +import numpy as np | |
| 8 | +import matplotlib.pyplot as plt | |
| 9 | +from matplotlib.ticker import FuncFormatter | |
| 10 | +from scipy.stats import gaussian_kde | |
| 11 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 12 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1] / "cases")) | |
| 13 | +from traite.style import setup, palette, savefig, LARGEUR, fmt_dollars | |
| 14 | +import ch20_reconciliation as c20 | |
| 15 | + | |
| 16 | +def fmt_k(x, pos=None): | |
| 17 | + return f"{x/1000:,.0f}".replace(",", " ") + " k$" | |
| 18 | + | |
| 19 | + | |
| 20 | +def fig_bootstrap(r): | |
| 21 | + b, bs, ex = r["base"], r["bootstrap"], r["exhaustif"] | |
| 22 | + fig, axes = plt.subplots(1, 2, figsize=(LARGEUR, 3.3)) | |
| 23 | + ax = axes[0] | |
| 24 | + grille = np.linspace(520000, 700000, 400) | |
| 25 | + for i, (k, lab) in enumerate([("VA", "candidats"), ("VB", "ajustements"), ("VC", "les deux")]): | |
| 26 | + d = gaussian_kde(bs[k])(grille) | |
| 27 | + ax.plot(grille, d / d.max(), color=palette.cat[i], lw=1.6 if k != "VB" else 1.2, ls="-" if k != "VB" else "--", label=lab) | |
| 28 | + ax.axvline(b["V_comp"], color=palette.ink2, lw=0.8); ax.text(b["V_comp"] - 2000, 1.04, "comparaison\n(5 retenus)", ha="right", va="bottom", fontsize=7, color=palette.ink2) | |
| 29 | + ax.axvline(b["V_hed"], color=palette.ink2, lw=0.8, ls=":"); ax.text(b["V_hed"] + 2000, 0.04, "hédonique", ha="left", va="bottom", fontsize=7, color=palette.ink2) | |
| 30 | + ax.set_ylim(0, 1.22); ax.set_yticks([]); ax.set_xlabel("Valeur pondérée par comparaison"); ax.set_ylabel("Densité (échelle relative)") | |
| 31 | + ax.xaxis.set_major_formatter(FuncFormatter(fmt_k)); ax.legend(loc="upper right", fontsize=7, frameon=False, title="rééchantillonnage", title_fontsize=7) | |
| 32 | + ax.set_title("(a) Bootstrap, B = 2 000", loc="left", fontsize=8.5) | |
| 33 | + ax = axes[1] | |
| 34 | + ax.hist(ex["valeurs"], bins=36, color=palette.cat[0], alpha=0.85, edgecolor="white", lw=0.3) | |
| 35 | + ax.axvline(b["V_comp"], color=palette.cat[1], lw=1.4); ax.text(b["V_comp"] - 1500, ax.get_ylim()[1] * 0.95, "sélection\ndu ch. 16", ha="right", va="top", fontsize=7, color=palette.cat[1]) | |
| 36 | + ax.axvline(b["V_hed"], color=palette.ink2, lw=0.8, ls=":"); ax.text(b["V_hed"] + 1500, ax.get_ylim()[1] * 0.95, "hédonique", ha="left", va="top", fontsize=7, color=palette.ink2) | |
| 37 | + ax.axvline(ex["moyenne"], color=palette.ink, lw=0.8, ls="--"); ax.text(ex["moyenne"] + 1500, ax.get_ylim()[1] * 0.55, "moyenne des\n4 368 sous-ensembles", ha="left", va="top", fontsize=7) | |
| 38 | + ax.set_xlabel("Valeur pondérée du sous-ensemble de 5 candidats"); ax.set_ylabel("Nombre de sous-ensembles") | |
| 39 | + ax.xaxis.set_major_formatter(FuncFormatter(fmt_k)); ax.set_title("(b) Tous les sous-ensembles de 5 parmi 16", loc="left", fontsize=8.5) | |
| 40 | + fig.tight_layout(w_pad=2.0) | |
| 41 | + savefig(fig, "ch20/ch20-fig-bootstrap-densite.pdf") | |
| 42 | + | |
| 43 | + | |
| 44 | +def fig_residus_elargissement(r): | |
| 45 | + b, el = r["base"], r["elargissement"] | |
| 46 | + a = b["adj16"] | |
| 47 | + fig, axes = plt.subplots(1, 2, figsize=(LARGEUR, 3.2)) | |
| 48 | + ax = axes[0] | |
| 49 | + rang = np.arange(1, len(a) + 1); res = (np.exp(a["residu_log"].values) - 1) * 100 | |
| 50 | + ret = a["retenu"].values | |
| 51 | + ax.axhline(0, color=palette.ink2, lw=0.8) | |
| 52 | + ax.bar(rang[ret], res[ret], color=palette.cat[1], width=0.7, label="cinq comparables retenus") | |
| 53 | + ax.bar(rang[~ret], res[~ret], color=palette.cat[0], width=0.7, alpha=0.75, label="onze autres candidats") | |
| 54 | + ax.axhline(res[ret].mean(), color=palette.cat[1], lw=1.0, ls="--"); ax.text(16.4, res[ret].mean(), f"moy. {res[ret].mean():.1f} %".replace(".", ","), fontsize=7, va="center", ha="left", color=palette.cat[1]) | |
| 55 | + ax.axhline(res[~ret].mean(), color=palette.cat[0], lw=1.0, ls="--"); ax.text(16.4, res[~ret].mean() + 1.0, f"moy. {res[~ret].mean():.1f} %".replace(".", ","), fontsize=7, va="bottom", ha="left", color=palette.cat[0]) | |
| 56 | + ax.set_xticks(rang); ax.set_xticklabels(a["id_vente"].values, rotation=90, fontsize=6.5) | |
| 57 | + ax.set_xlim(0.3, 18.5); ax.set_ylabel("Résidu du modèle à la vente (%)"); ax.set_xlabel("Candidats, par distance d'attributs croissante") | |
| 58 | + ax.set_ylim(-22, 14); ax.legend(loc="upper left", fontsize=7, frameon=False); ax.set_title("(a) Résidus des 16 candidats", loc="left", fontsize=8.5) | |
| 59 | + ax = axes[1] | |
| 60 | + ax.plot(el["k"], el["valeur_ponderee"], marker="o", color=palette.cat[0], lw=1.6, label="valeur pondérée (inverse du brut)") | |
| 61 | + ax.plot(el["k"], el["moyenne"], marker="s", ms=3.5, color=palette.cat[2], lw=1.0, ls="--", label="moyenne simple") | |
| 62 | + ax.axhline(b["V_hed"], color=palette.ink2, lw=0.8, ls=":"); ax.text(16.2, b["V_hed"] - 1500, "hédonique", fontsize=7, ha="right", va="top", color=palette.ink2) | |
| 63 | + ax.set_xlabel("Nombre k de comparables retenus (par distance croissante)"); ax.set_ylabel("Indication par comparaison") | |
| 64 | + ax.yaxis.set_major_formatter(FuncFormatter(fmt_k)); ax.set_xticks(el["k"]); ax.set_ylim(560000, 650000); ax.legend(loc="lower right", fontsize=7, frameon=False) | |
| 65 | + ax.set_title("(b) Élargissement de l'échantillon", loc="left", fontsize=8.5) | |
| 66 | + fig.tight_layout(w_pad=2.0) | |
| 67 | + savefig(fig, "ch20/ch20-fig-residus-elargissement.pdf") | |
| 68 | + | |
| 69 | + | |
| 70 | +def fig_fourchettes(r): | |
| 71 | + b, bs, co, cb, vt = r["base"], r["bootstrap"], r["cout"], r["combinaison"], r["verite"] | |
| 72 | + ip = b["ip_hed"] | |
| 73 | + z90 = 1.6449 | |
| 74 | + lignes = [ | |
| 75 | + ("Prix de vente probable\n(intervalle de prédiction à 95 %, ch. 18)", b["V_hed"], ip["bas"], ip["haut"], palette.cat[3], 0.5), | |
| 76 | + ("Coût (hypothèses α, vie économique :\nétendue de la grille)", co["valeur"], co["min_grille"], co["max_grille"], palette.cat[2], 1.0), | |
| 77 | + ("Comparaison, 5 comparables\n(bootstrap conjoint, 90 %)", b["V_comp"], bs["resume"]["conjoint"]["q05"], bs["resume"]["conjoint"]["q95"], palette.cat[1], 1.0), | |
| 78 | + ("Comparaison élargie, 16 candidats\n(point)", r["elargissement"]["valeur_ponderee"].iloc[-1], np.nan, np.nan, palette.cat[1], 1.0), | |
| 79 | + ("Hédonique (estimation + spécification,\n± 1,645 écart-type)", b["V_hed"], b["V_hed"] - z90 * cb["s"][1], b["V_hed"] + z90 * cb["s"][1], palette.cat[0], 1.0), | |
| 80 | + ("Conclusion : valeur la plus probable,\nfourchette conclue et bootstrap 90 %", cb["conclusion"], cb["fourchette_conclue"][0], cb["fourchette_conclue"][1], palette.brand, 1.0), | |
| 81 | + ] | |
| 82 | + fig, ax = plt.subplots(figsize=(LARGEUR, 3.6)) | |
| 83 | + y = np.arange(len(lignes))[::-1] | |
| 84 | + for yi, (lab, pt, lo, hi, col, alpha) in zip(y, lignes): | |
| 85 | + if not np.isnan(lo): | |
| 86 | + ax.plot([lo, hi], [yi, yi], color=col, lw=2.2 if alpha == 1.0 else 3.5, alpha=alpha, solid_capstyle="butt") | |
| 87 | + ax.plot([lo, lo], [yi - 0.12, yi + 0.12], color=col, lw=1.0, alpha=alpha); ax.plot([hi, hi], [yi - 0.12, yi + 0.12], color=col, lw=1.0, alpha=alpha) | |
| 88 | + ax.plot(pt, yi, "o", color=col, ms=6, zorder=5, mec="white", mew=0.8) | |
| 89 | + ax.text(pt, yi + 0.2, fmt_dollars(pt), ha="center", va="bottom", fontsize=7) | |
| 90 | + # bande bootstrap 90 % de la conclusion (plus épaisse, sous la fourchette conclue) | |
| 91 | + yc = y[-1] | |
| 92 | + ax.plot([cb["fourchette90"][0], cb["fourchette90"][1]], [yc, yc], color=palette.brand, lw=6, alpha=0.35, solid_capstyle="butt", zorder=1) | |
| 93 | + ax.axvline(cb["conclusion"], color=palette.brand, lw=0.8, ls="--", zorder=0) | |
| 94 | + ax.axvline(vt["V_true"], color=palette.ink2, lw=0.8, ls=":", zorder=0) | |
| 95 | + ax.text(vt["V_true"] + 3000, -0.55, "espérance de la loi\nde génération", fontsize=7, color=palette.ink2, ha="left", va="center") | |
| 96 | + ax.set_ylim(-0.9, len(lignes) - 0.3); ax.set_yticks(y); ax.set_yticklabels([l[0] for l in lignes], fontsize=7.2) | |
| 97 | + ax.set_xlim(270000, 770000); ax.xaxis.set_major_formatter(FuncFormatter(fmt_k)); ax.set_xlabel("Dollars (synthétiques), 1er septembre 2026") | |
| 98 | + ax.grid(axis="y", visible=False) | |
| 99 | + fig.tight_layout() | |
| 100 | + savefig(fig, "ch20/ch20-fig-fourchettes-methodes.pdf") | |
| 101 | + | |
| 102 | + | |
| 103 | +def fig_sensibilite_poids(r): | |
| 104 | + cb = r["combinaison"] | |
| 105 | + fig, axes = plt.subplots(1, 2, figsize=(LARGEUR, 3.2)) | |
| 106 | + ax = axes[0] | |
| 107 | + for i, (wc, courbe) in enumerate(cb["courbes"].items()): | |
| 108 | + lab = "poids du coût = " + (f"{wc*100:.0f} %") | |
| 109 | + ax.plot(cb["wh"], courbe, color=palette.cat[i], lw=1.6 if wc == 0.05 else 1.1, ls="-" if wc == 0.05 else "--", label=lab) | |
| 110 | + tab = cb["tableau"] | |
| 111 | + marqueurs = {"raisonnée (retenue)": ("o", palette.brand), "inverse de la variance (indépendance)": ("s", palette.cat[0]), "variance minimale avec corrélation (MCG)": ("^", palette.cat[0]), "égale (un tiers chacune)": ("D", palette.cat[2])} | |
| 112 | + for _, row in tab.iterrows(): | |
| 113 | + if row["schema"] in marqueurs: | |
| 114 | + m, c = marqueurs[row["schema"]] | |
| 115 | + ax.plot(row["w_hed"], row["valeur"], m, color=c, ms=6, mec="white", mew=0.6, zorder=5) | |
| 116 | + ax.annotate("raisonnée\n(0,40 / 0,55 / 0,05)", (0.55, tab.loc[tab["schema"] == "raisonnée (retenue)", "valeur"].iloc[0]), xytext=(0.62, 572000), fontsize=7, arrowprops=dict(arrowstyle="-", color=palette.ink2, lw=0.6)) | |
| 117 | + ax.annotate("inverse de la variance\net MCG", (0.70, tab.loc[tab["schema"] == "inverse de la variance (indépendance)", "valeur"].iloc[0]), xytext=(0.42, 628000), fontsize=7, arrowprops=dict(arrowstyle="-", color=palette.ink2, lw=0.6)) | |
| 118 | + ax.annotate("égale", (1 / 3, tab.loc[tab["schema"] == "égale (un tiers chacune)", "valeur"].iloc[0]), xytext=(0.12, 540000), fontsize=7, arrowprops=dict(arrowstyle="-", color=palette.ink2, lw=0.6)) | |
| 119 | + ax.set_xlabel("Poids de l'indication hédonique $w_h$ (le reste à la comparaison)"); ax.set_ylabel("Valeur combinée") | |
| 120 | + ax.yaxis.set_major_formatter(FuncFormatter(fmt_k)); ax.set_xlim(0, 1); ax.legend(loc="lower right", fontsize=7, frameon=False) | |
| 121 | + ax.set_title("(a) Conclusion selon les poids", loc="left", fontsize=8.5) | |
| 122 | + ax = axes[1] | |
| 123 | + s = cb["s"] | |
| 124 | + for i, (rho, var) in enumerate(cb["var_deux"].items()): | |
| 125 | + sd = np.sqrt(np.maximum(var, 0)) / 1000 | |
| 126 | + ax.plot(cb["wh"], sd, color=palette.seq[min(2 + i, len(palette.seq) - 1)], lw=1.4, label=f"ρ = {rho:.1f}".replace(".", ",")) | |
| 127 | + w1 = c20.poids_optimaux_deux(s[0], s[1], rho) | |
| 128 | + if 0 <= 1 - w1 <= 1: | |
| 129 | + ax.plot(1 - w1, np.sqrt(w1 ** 2 * s[0] ** 2 + (1 - w1) ** 2 * s[1] ** 2 + 2 * w1 * (1 - w1) * rho * s[0] * s[1]) / 1000, "o", color=palette.seq[min(2 + i, len(palette.seq) - 1)], ms=5, mec="white", mew=0.6) | |
| 130 | + ax.set_xlabel("Poids de l'indication hédonique $w_h$ ($w_c = 1 - w_h$)"); ax.set_ylabel("Écart-type de la combinaison (k$)") | |
| 131 | + ax.set_xlim(0, 1); ax.legend(loc="upper center", fontsize=7, frameon=False, ncol=2) | |
| 132 | + ax.set_title("(b) Variance de deux indications corrélées", loc="left", fontsize=8.5) | |
| 133 | + fig.tight_layout(w_pad=2.0) | |
| 134 | + savefig(fig, "ch20/ch20-fig-sensibilite-poids.pdf") | |
| 135 | + | |
| 136 | + | |
| 137 | +def main(): | |
| 138 | + setup() | |
| 139 | + r = c20.tout() | |
| 140 | + fig_bootstrap(r); fig_residus_elargissement(r); fig_fourchettes(r); fig_sensibilite_poids(r) | |
| 141 | + print("figures ch20 écrites dans assets/figures/ch20/") | |
| 142 | + | |
| 143 | + | |
| 144 | +if __name__ == "__main__": | |
| 145 | + main() | |
added
analysis/python/figures/ch34_calcul_tal.py
+36 −0
@@ -0,0 +1,36 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Ch. 34, figure « exemple de calcul TAL » : composantes de l'augmentation mensuelle du logement 103 du cas 3 (DONNÉES | |
| 3 | +SYNTHÉTIQUES) selon la méthode en vigueur depuis le 1er janvier 2026 (pourcentages 2026), variante A (données du dossier) et | |
| 4 | +variante B (illustrative : taxes +8 %, assurances +10 %, immobilisations 85 000 $), avec l'écart au loyer de marché en repère. | |
| 5 | +Sortie : ch34-fig-calcul-tal.pdf.""" | |
| 6 | +from __future__ import annotations | |
| 7 | +import sys, pathlib | |
| 8 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 9 | +import numpy as np | |
| 10 | +import matplotlib.pyplot as plt | |
| 11 | +from traite.style import setup, palette, savefig, LARGEUR | |
| 12 | +from cases import ch34_tal as c | |
| 13 | + | |
| 14 | +def main(): | |
| 15 | + setup() | |
| 16 | + ex = c.exemple_fixation(103) | |
| 17 | + comp = [("Pourcentage de base\n(3,1 % × 728 $)", "base"), ("Taxes municipales\n(au-delà de 3,1 %)", "m_taxes_mun"), ("Taxes scolaires\n(au-delà de 3,1 %)", "m_taxes_scol"), | |
| 18 | + ("Assurances\n(au-delà de 3,1 %)", "m_assurances"), ("Dépenses d'immobilisation\n(5 % × part)", "m_immobilisations"), ("Total avant arrondi", "total_brut")] | |
| 19 | + fig, ax = plt.subplots(figsize=(LARGEUR, 3.2)) | |
| 20 | + ys = np.arange(len(comp)); h = 0.36 | |
| 21 | + for k, (nom, col, lab) in enumerate((("A", palette.cat[0], "variante A — données du dossier (taxes et assurances en baisse, aucune immobilisation)"), | |
| 22 | + ("B", palette.cat[1], "variante B — illustrative (taxes +8 %, assurances +10 %, travaux de 85 000 $)"))): | |
| 23 | + vals = [ex[nom][key] for _, key in comp] | |
| 24 | + bars = ax.barh(ys + (0.5 - k) * h, vals, h, color=col, label=lab) | |
| 25 | + for bar, v in zip(bars, vals): | |
| 26 | + ax.text(v + 0.5, bar.get_y() + bar.get_height() / 2, f"{v:.2f} $".replace(".", ","), va="center", fontsize=7, color=palette.ink) | |
| 27 | + ax.set_yticks(ys); ax.set_yticklabels([n for n, _ in comp], fontsize=7.5); ax.invert_yaxis() | |
| 28 | + ax.set_xlabel("Augmentation mensuelle (dollars par mois)") | |
| 29 | + ax.set_xlim(0, 62) | |
| 30 | + ax.text(61, 0.05, f"Repère : écart au loyer de marché du logement 103 = {ex['ecart_marche']:.0f} $/mois ({ex['ecart_marche_pct']*100:.1f} % du loyer), hors échelle.".replace(".", ","), | |
| 31 | + ha="right", va="top", fontsize=7, color=palette.ink2) | |
| 32 | + ax.legend(loc="lower right", fontsize=7) | |
| 33 | + savefig(fig, "ch34/ch34-fig-calcul-tal.pdf") | |
| 34 | + | |
| 35 | +if __name__ == "__main__": | |
| 36 | + main() | |
added
analysis/python/figures/ch34_ipc_base.py
+31 −0
@@ -0,0 +1,31 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Ch. 34, figure « IPC et pourcentage de base » (DONNÉES RÉELLES : Statistique Canada, tableau 18-10-0004-01, IPC du Québec, | |
| 3 | +Ensemble, 2002 = 100, extrait dans data/processed/ipc_quebec_mensuel.csv) : inflation de la période de référence et pourcentage | |
| 4 | +de base que donne la formule de l'art. 3.1 du Règlement (moyenne des trois dernières variations annuelles), 2006-2026 ; les | |
| 5 | +pourcentages publiés par le TAL pour 2025 (4,5 %) et 2026 (3,1 %) sont marqués. Avant 2026, la formule est contrefactuelle. | |
| 6 | +Sortie : ch34-fig-ipc-base.pdf.""" | |
| 7 | +from __future__ import annotations | |
| 8 | +import sys, pathlib | |
| 9 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 10 | +import matplotlib.pyplot as plt | |
| 11 | +from matplotlib.ticker import FuncFormatter | |
| 12 | +from traite.style import setup, palette, savefig, LARGEUR | |
| 13 | +from cases import ch34_tal as c | |
| 14 | + | |
| 15 | +def main(): | |
| 16 | + setup() | |
| 17 | + h = c.historique_pourcentage_base(2006, 2026) | |
| 18 | + fig, ax = plt.subplots(figsize=(LARGEUR, 3.0)) | |
| 19 | + ax.bar(h["annee"], h["inflation_ref"] * 100, color=palette.cat[2], alpha=0.75, width=0.7, label="inflation de la période de référence (IPC Québec, moyenne annuelle)") | |
| 20 | + ax.plot(h["annee"], h["pct_formule"] * 100, color=palette.cat[0], marker="o", ms=3.5, label="pourcentage de base selon la formule de l'art. 3.1 (contrefactuel avant 2026)") | |
| 21 | + pub = h.dropna(subset=["pct_publie"]) | |
| 22 | + ax.plot(pub["annee"], pub["pct_publie"] * 100, ls="none", marker="D", ms=6, mfc="white", mec=palette.cat[1], mew=1.4, label="pourcentage de base publié par le TAL (2025 : 4,5 % ; 2026 : 3,1 %)") | |
| 23 | + ax.axvspan(2025.5, 2026.5, color=palette.grid, alpha=0.6, lw=0) | |
| 24 | + ax.text(2026, 6.6, "nouvelle\nméthode", ha="center", fontsize=7, color=palette.ink2) | |
| 25 | + ax.set_xlabel("Année de fixation (période de référence = année civile précédente)"); ax.set_ylabel("Pourcentage (%)") | |
| 26 | + ax.yaxis.set_major_formatter(FuncFormatter(lambda v, q: f"{v:.0f}")); ax.set_xticks(range(2006, 2027, 2)); ax.set_ylim(0, 7.2) | |
| 27 | + ax.legend(fontsize=7, loc="upper left") | |
| 28 | + savefig(fig, "ch34/ch34-fig-ipc-base.pdf") | |
| 29 | + | |
| 30 | +if __name__ == "__main__": | |
| 31 | + main() | |
added
analysis/python/figures/ch34_rotation.py
+38 −0
@@ -0,0 +1,38 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Ch. 34, figure « rotation espérée » : (gauche) rapport espéré loyer contractuel / loyer de marché d'un logement partant de | |
| 3 | +q0 = 0,695 (logement 103 du cas 3, DONNÉES SYNTHÉTIQUES) pour une rotation de 5, 15 et 25 %, forme fermée (trait) et simulation | |
| 4 | +Monte-Carlo (points), avec la limite q_∞ ; (droite) probabilité que le locataire initial soit encore en place après t années. | |
| 5 | +Sortie : ch34-fig-rotation-esperee.pdf.""" | |
| 6 | +from __future__ import annotations | |
| 7 | +import sys, pathlib | |
| 8 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 9 | +import numpy as np | |
| 10 | +import matplotlib.pyplot as plt | |
| 11 | +from matplotlib.ticker import FuncFormatter | |
| 12 | +from traite.style import setup, palette, savefig, LARGEUR | |
| 13 | +from cases import ch34_tal as c | |
| 14 | + | |
| 15 | +def main(): | |
| 16 | + setup() | |
| 17 | + q0, gc, gm, T = 0.695, 0.031, 0.035, 15 | |
| 18 | + t = np.arange(0, T + 1) | |
| 19 | + fig, (a1, a2) = plt.subplots(1, 2, figsize=(LARGEUR, 3.0), gridspec_kw={"width_ratios": [1.6, 1]}) | |
| 20 | + for rho, col in ((0.05, palette.cat[2]), (0.15, palette.cat[0]), (0.25, palette.cat[1])): | |
| 21 | + q = c.ratio_espere(q0, rho, gc, gm, t); sim = c.simulation_ratio(q0, rho, gc, gm, T, n=20_000) | |
| 22 | + a1.plot(t, q, color=col, label=f"rotation {rho*100:.0f} % : forme fermée") | |
| 23 | + a1.plot(t, sim, color=col, ls="none", marker="o", ms=3, mfc="white", mew=1.0) | |
| 24 | + qi = c.ratio_limite(rho, gc, gm) | |
| 25 | + a1.axhline(qi, color=col, lw=0.7, ls=":") | |
| 26 | + a1.text(T + 0.2, qi, f"q∞ = {qi:.3f}".replace(".", ","), fontsize=7, color=palette.ink, va="center") | |
| 27 | + a1.plot(t, c.ratio_sans_relocation(q0, gc, gm, t), color=palette.ink2, ls="--", lw=1.0, label="sans relocation (indexation seule)") | |
| 28 | + a1.plot([], [], color=palette.ink2, ls="none", marker="o", ms=3, mfc="white", label="simulation (20 000 trajectoires)") | |
| 29 | + a1.set_xlabel("Années depuis l'évaluation"); a1.set_ylabel("Loyer contractuel / loyer de marché (espérance)") | |
| 30 | + a1.set_ylim(0.6, 1.02); a1.set_xlim(0, T + 3.5); a1.legend(fontsize=7, loc="lower right") | |
| 31 | + for rho, col in ((0.05, palette.cat[2]), (0.15, palette.cat[0]), (0.25, palette.cat[1])): | |
| 32 | + a2.plot(t, (1 - rho) ** t, color=col, label=f"rotation {rho*100:.0f} %") | |
| 33 | + a2.set_xlabel("Années depuis l'évaluation"); a2.set_ylabel("Probabilité que le locataire initial soit en place") | |
| 34 | + a2.yaxis.set_major_formatter(FuncFormatter(lambda v, q: f"{v*100:.0f} %")); a2.set_ylim(0, 1.0); a2.legend(fontsize=7) | |
| 35 | + savefig(fig, "ch34/ch34-fig-rotation-esperee.pdf") | |
| 36 | + | |
| 37 | +if __name__ == "__main__": | |
| 38 | + main() | |
added
analysis/python/figures/ch34_trajectoires.py
+33 −0
@@ -0,0 +1,33 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Ch. 34, figure « trajectoires RBP » : revenu brut potentiel contractuel du cas 3 (DONNÉES SYNTHÉTIQUES) selon la rotation | |
| 3 | +(5, 15, 25 % ; pourcentage de base 3,1 %), avec le RBP au marché (+3,5 %/an), l'indexation seule et le scénario d'encadrement | |
| 4 | +renforcé (base 2 %, rotation 8 %, rattrapage partiel φ = 0,5, marché 3 %). Sortie : ch34-fig-trajectoires-rbp.pdf.""" | |
| 5 | +from __future__ import annotations | |
| 6 | +import sys, pathlib | |
| 7 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 8 | +import matplotlib.pyplot as plt | |
| 9 | +from matplotlib.ticker import FuncFormatter | |
| 10 | +from traite import cas3 | |
| 11 | +from traite.style import setup, palette, savefig, LARGEUR, fmt_milliers | |
| 12 | +from cases import ch34_tal as c | |
| 13 | + | |
| 14 | +def main(): | |
| 15 | + setup() | |
| 16 | + d = cas3.tout(); hyp = d["hyp"] | |
| 17 | + fig, ax = plt.subplots(figsize=(LARGEUR, 3.3)) | |
| 18 | + base = c.valeur_scenario(d)["projection"]; x = base["exercice"].values | |
| 19 | + ax.plot(x, base["rbp_marche"] / 1000, color=palette.ink2, lw=1.2, ls="--", label="RBP au loyer de marché (+3,5 %/an)") | |
| 20 | + for rho, col, lab in ((0.05, palette.cat[2], "rotation 5 % (1 logement/an)"), (0.15, palette.cat[0], "rotation 15 % (2 logements/an) — base du dossier"), (0.25, palette.cat[1], "rotation 25 % (3 logements/an)")): | |
| 21 | + p = c.valeur_scenario(d, rotation=rho)["projection"] | |
| 22 | + ax.plot(x, p["rbp"] / 1000, color=col, marker="o", ms=3, label=f"RBP contractuel, base 3,1 %, {lab}") | |
| 23 | + p0 = c.valeur_scenario(d, rotation=0.0)["projection"] | |
| 24 | + ax.plot(x, p0["rbp"] / 1000, color=palette.cat[0], ls=":", lw=1.2, label="Indexation seule (aucune relocation)") | |
| 25 | + pr = c.valeur_scenario(d, g_c=0.02, rotation=0.08, fraction_rattrapage=0.5, g_m=0.03)["projection"] | |
| 26 | + ax.plot(x, pr["rbp"] / 1000, color=palette.cat[3], marker="s", ms=3, label="Encadrement renforcé (base 2 %, rotation 8 %, φ = 0,5)") | |
| 27 | + ax.set_xticks(x); ax.set_xlabel("Exercice"); ax.set_ylabel("Revenu brut potentiel (milliers de $)") | |
| 28 | + ax.yaxis.set_major_formatter(FuncFormatter(lambda v, q: fmt_milliers(v))) | |
| 29 | + ax.legend(loc="upper left", fontsize=7.2) | |
| 30 | + savefig(fig, "ch34/ch34-fig-trajectoires-rbp.pdf") | |
| 31 | + | |
| 32 | +if __name__ == "__main__": | |
| 33 | + main() | |
added
analysis/python/figures/ch34_valeur_scenarios.py
+41 −0
@@ -0,0 +1,41 @@ | ||
| 1 | +#!/usr/bin/env python3 | |
| 2 | +"""Ch. 34, figure « valeur par scénario » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour la grille rotation (5, 15, 25 %) × | |
| 3 | +pourcentage de base (2 ; 3,1 ; 4 %), avec repères : valeur de base (2 208 566 $), capitalisation directe (2 037 503 $), indexation | |
| 4 | +seule et encadrement renforcé. Sortie : ch34-fig-valeur-scenarios.pdf.""" | |
| 5 | +from __future__ import annotations | |
| 6 | +import sys, pathlib | |
| 7 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1])) | |
| 8 | +import numpy as np | |
| 9 | +import matplotlib.pyplot as plt | |
| 10 | +from matplotlib.ticker import FuncFormatter | |
| 11 | +from traite import cas3 | |
| 12 | +from traite.style import setup, palette, savefig, LARGEUR, fmt_milliers | |
| 13 | +from cases import ch34_tal as c | |
| 14 | + | |
| 15 | +def main(): | |
| 16 | + setup() | |
| 17 | + d = cas3.tout() | |
| 18 | + g = c.grille_scenarios(d); s = c.scenarios_complementaires(d).set_index("scenario") | |
| 19 | + rotations = sorted(g["rotation"].unique()); bases = sorted(g["base"].unique()) | |
| 20 | + fig, ax = plt.subplots(figsize=(LARGEUR, 3.3)) | |
| 21 | + w = 0.26; xs = np.arange(len(rotations)) | |
| 22 | + for j, b in enumerate(bases): | |
| 23 | + vals = [g[(g["rotation"] == r) & (g["base"] == b)]["valeur"].iloc[0] / 1e6 for r in rotations] | |
| 24 | + bars = ax.bar(xs + (j - 1) * w, vals, w, color=palette.cat[j], label=f"pourcentage de base {b*100:.1f} %".replace(".", ",")) | |
| 25 | + for bar, v in zip(bars, vals): | |
| 26 | + ax.text(bar.get_x() + bar.get_width() / 2, v + 0.012, f"{v:.3f}".replace(".", ","), ha="center", va="bottom", fontsize=7, color=palette.ink) | |
| 27 | + V0 = d["dcf"]["valeur"] / 1e6; Vcap = d["valeur_capitalisation"] / 1e6 | |
| 28 | + ax.axhline(V0, color=palette.ink2, lw=0.9, ls="--"); ax.text(2.42, V0 + 0.01, "base du dossier", fontsize=7, color=palette.ink2, ha="right") | |
| 29 | + ax.axhline(Vcap, color=palette.ink2, lw=0.9, ls=":"); ax.text(2.42, Vcap - 0.045, "capitalisation directe (4,415 %)", fontsize=7, color=palette.ink2, ha="right") | |
| 30 | + v_idx = s.loc["Indexation seule (aucune relocation)", "valeur"] / 1e6 | |
| 31 | + v_ren = s.loc["Encadrement renforcé (base 2 %, rotation 8 %, φ = 0,5, marché 3 %)", "valeur"] / 1e6 | |
| 32 | + ax.axhline(v_idx, color=palette.cat[3], lw=0.9, ls="-."); ax.text(-0.42, v_idx + 0.01, "indexation seule, sans relocation", fontsize=7, color=palette.cat[3]) | |
| 33 | + ax.axhline(v_ren, color=palette.cat[3], lw=0.9, ls="-"); ax.text(-0.42, v_ren + 0.01, "encadrement renforcé", fontsize=7, color=palette.cat[3]) | |
| 34 | + ax.set_xticks(xs); ax.set_xticklabels([f"rotation {r*100:.0f} %\n({int(round(r*12))} logement{'s' if round(r*12) > 1 else ''}/an)" for r in rotations]) | |
| 35 | + ax.set_ylabel("Valeur DCF (millions de $)"); ax.set_ylim(1.6, 2.45) | |
| 36 | + ax.yaxis.set_major_formatter(FuncFormatter(lambda v, q: f"{v:.1f}".replace(".", ","))) | |
| 37 | + ax.legend(loc="upper left", fontsize=7.5, ncol=3) | |
| 38 | + savefig(fig, "ch34/ch34-fig-valeur-scenarios.pdf") | |
| 39 | + | |
| 40 | +if __name__ == "__main__": | |
| 41 | + main() | |
modified
analysis/python/tests/test_ch14.py
+11 −0
@@ -183,3 +183,14 @@ def test_solutions_exercices(): | ||
| 183 | 183 | w_acc = [math.log2(a / b) for a, b in zip(m, u)]; w_dis = [math.log2((1 - a) / (1 - b)) for a, b in zip(m, u)] |
| 184 | 184 | assert sum(w_acc) == pytest.approx(16.35, abs=0.05) and (w_acc[0] + w_acc[1] + w_dis[2]) == pytest.approx(11.2, abs=0.05) |
| 185 | 185 | assert (w_dis[0] + w_acc[1] + w_acc[2]) == pytest.approx(0.78, abs=0.05) |
| 186 | + | |
| 187 | +def test_variante_mnar(R): | |
| 188 | + """Exercice 14.7 : terrains manquants = les 20 plus petits (MNAR).""" | |
| 189 | + V = R["mnar"] | |
| 190 | + assert V.loc["suppression", "n"] == 536 and V.loc["suppression", "ln_T"] == pytest.approx(0.1007, abs=5e-4) | |
| 191 | + assert V.loc["mediane", "ln_T"] == pytest.approx(0.0977, abs=5e-4) and V.loc["regression", "ln_T"] == pytest.approx(0.0972, abs=5e-4) | |
| 192 | + assert V.loc["indicateur", "ln_T"] == pytest.approx(0.0978, abs=5e-4) | |
| 193 | + assert V.loc["suppression", "prediction_sujet"] == pytest.approx(638976, abs=5) and V.loc["mediane", "prediction_sujet"] == pytest.approx(636195, abs=5) | |
| 194 | + assert V.loc["regression", "prediction_sujet"] == pytest.approx(636224, abs=5) and V.loc["indicateur", "prediction_sujet"] == pytest.approx(638201, abs=5) | |
| 195 | + assert V.loc["indicateur", "coef_manq_terrain"] == pytest.approx(-0.0502, abs=5e-4) and V.loc["indicateur", "se_manq_terrain"] == pytest.approx(0.0143, abs=5e-4) | |
| 196 | + assert abs(V.loc["indicateur", "coef_manq_terrain"] / V.loc["indicateur", "se_manq_terrain"]) > 3 | |
added
analysis/python/tests/test_ch15.py
+136 −0
@@ -0,0 +1,136 @@ | ||
| 1 | +"""Chapitre 15 — Études de marché et segmentation : vérification des identités et des chiffres cités dans le texte et les solutions. | |
| 2 | +Tolérances : indicateurs APCIQ ± 0,05 ; statistiques de test ± 0,005 (F) et ± 0,05 (W) ; silhouettes ± 0,002 ; RMSE ± 0,0005 ; montants ± 1 $.""" | |
| 3 | +import sys, pathlib, math | |
| 4 | +import numpy as np, pandas as pd, pytest | |
| 5 | +from scipy import stats | |
| 6 | +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parents[1] / "cases")) | |
| 7 | +import ch15_segmentation as c15 | |
| 8 | +from traite import cas1, cas3 | |
| 9 | + | |
| 10 | +@pytest.fixture(scope="module") | |
| 11 | +def r(): | |
| 12 | + return c15.tout() | |
| 13 | + | |
| 14 | +# ------------------------------------------------------------------ A. indicateurs de marché | |
| 15 | +def test_mois_inventaire_et_absorption(r): | |
| 16 | + ind = r["indicateurs"].set_index("territoire") | |
| 17 | + attendu = {"Province de Québec": 6.1, "RMR de Montréal": 6.6, "RMR de Québec": 3.1, "RMR de Gatineau": 6.5, | |
| 18 | + "RMR de Sherbrooke": 4.3, "RMR de Trois-Rivières": 3.6, "RMR de Saguenay": 4.0} | |
| 19 | + for t, mi in attendu.items(): | |
| 20 | + assert ind.loc[t, "mois_inventaire"] == pytest.approx(mi, abs=0.05) | |
| 21 | + assert ind.loc[t, "taux_absorption_mensuel"] * ind.loc[t, "mois_inventaire"] == pytest.approx(1.0, abs=1e-12) # a = 1/MI | |
| 22 | + assert ind.loc["RMR de Québec", "taux_absorption_mensuel"] * 100 == pytest.approx(32.7, abs=0.05) | |
| 23 | + assert ind.loc["RMR de Montréal", "taux_absorption_mensuel"] * 100 == pytest.approx(15.2, abs=0.05) | |
| 24 | + assert ind.loc["RMR de Montréal", "ratio_stock_flux"] == pytest.approx(5.0, abs=0.05) | |
| 25 | + assert ind.loc["RMR de Gatineau", "ratio_stock_flux"] == pytest.approx(5.8, abs=0.05) | |
| 26 | + assert ind.loc["RMR de Québec", "ratio_stock_flux"] == pytest.approx(3.2, abs=0.05) | |
| 27 | + assert c15.mois_inventaire(20350, 9265) == pytest.approx(20350 / (9265 / 3)) | |
| 28 | + | |
| 29 | +def test_parts_secteurs_gatineau(r): | |
| 30 | + p = r["parts_gatineau"] | |
| 31 | + assert p["ventes_apciq_t3_2026"].sum() == 1044 and p["ventes_synthetiques"].sum() == 600 | |
| 32 | + assert p.loc["Hull", "part_apciq"] * 100 == pytest.approx(16.7, abs=0.05) and p.loc["Hull", "part_synthetique"] * 100 == pytest.approx(31.0, abs=0.05) | |
| 33 | + assert p.loc["Gatineau", "part_apciq"] * 100 == pytest.approx(33.1, abs=0.05) | |
| 34 | + | |
| 35 | +# ------------------------------------------------------------------ B. Chow | |
| 36 | +def test_chow_identites_et_valeurs(r): | |
| 37 | + ch = r["chow"]["secteur"] | |
| 38 | + assert ch["G"] == 5 and ch["k0"] == 12 and ch["n"] == 600 and ch["q"] == 44 and ch["df2"] == 540 and ch["q_classique"] == 48 | |
| 39 | + assert ch["ssr_libre"] <= ch["ssr_contraint"] <= ch["ssr_classique"] # emboîtement des modèles | |
| 40 | + assert ch["ssr_contraint"] == pytest.approx(4.0245, abs=5e-4) and ch["ssr_libre"] == pytest.approx(3.7360, abs=5e-4) and ch["ssr_classique"] == pytest.approx(6.4024, abs=5e-4) | |
| 41 | + F = ((ch["ssr_contraint"] - ch["ssr_libre"]) / 44) / (ch["ssr_libre"] / 540) | |
| 42 | + assert ch["F"] == pytest.approx(F) and ch["F"] == pytest.approx(0.948, abs=0.005) and ch["p"] == pytest.approx(0.570, abs=0.005) | |
| 43 | + assert ch["F_classique"] == pytest.approx(8.029, abs=0.005) and ch["p_classique"] < 1e-30 | |
| 44 | + assert ch["wald_hc1"] == pytest.approx(54.48, abs=0.05) and ch["p_wald"] == pytest.approx(0.134, abs=0.002) and ch["q_wald"] == 44 | |
| 45 | + assert ch["p"] == pytest.approx(stats.f.sf(ch["F"], 44, 540)) | |
| 46 | + # la SCR du modèle contraint (constantes de secteur + pentes communes) est celle du modèle de référence traite.cas1.hedonique | |
| 47 | + ref = r["reference"]; assert float(ref["residus"] @ ref["residus"]) == pytest.approx(ch["ssr_contraint"], rel=1e-9) | |
| 48 | + assert ref["r2"] == pytest.approx(0.853, abs=0.0005) and ref["sigma"] == pytest.approx(0.0830, abs=5e-5) | |
| 49 | + assert math.sqrt(ch["ssr_classique"] / (600 - 12)) == pytest.approx(0.104, abs=0.001) | |
| 50 | + # coefficients par secteur cités au tableau | |
| 51 | + ps = ch["par_segment"] | |
| 52 | + assert ps["Aylmer"]["coef"]["ln_S"] == pytest.approx(0.513, abs=0.001) and ps["Masson-Angers"]["coef"]["ln_S"] == pytest.approx(0.558, abs=0.001) | |
| 53 | + assert ps["Hull"]["coef"]["qualite"] == pytest.approx(0.064, abs=0.001) and ps["Buckingham"]["n"] == 42 and ps["Masson-Angers"]["n"] == 47 | |
| 54 | + assert ps["Aylmer"]["coef"]["mois"] == pytest.approx(0.0044, abs=5e-5) and ps["Masson-Angers"]["coef"]["mois"] == pytest.approx(0.0030, abs=5e-5) | |
| 55 | + | |
| 56 | +def test_chow_autres_partitions(r): | |
| 57 | + c = r["chow"] | |
| 58 | + assert c["secteur4"]["p"] == pytest.approx(0.426, abs=0.005) and c["secteur4"]["q"] == 33 | |
| 59 | + assert c["type"]["k0"] == 11 and c["type"]["regresseurs_retires"] == ["etages"] and c["type"]["q"] == 10 | |
| 60 | + assert c["type"]["p"] == pytest.approx(0.079, abs=0.005) and c["type"]["p_wald"] == pytest.approx(0.0096, abs=0.0005) | |
| 61 | + assert c["periode"]["p"] == pytest.approx(0.034, abs=0.002) and c["periode"]["p_classique"] == pytest.approx(0.024, abs=0.002) and c["periode"]["p_wald"] == pytest.approx(0.037, abs=0.002) | |
| 62 | + assert c["periode"]["F"] < stats.f.ppf(0.99, 11, 576) # non rejeté au seuil de 1 % | |
| 63 | + assert c["kmeans"]["p"] == pytest.approx(0.588, abs=0.005) and c["kmeans"]["p_classique"] < 1e-30 | |
| 64 | + assert c["kmeans5"]["p"] == pytest.approx(0.427, abs=0.005) and c["kmeans5"]["p_wald"] == pytest.approx(0.057, abs=0.002) | |
| 65 | + assert c["ward"]["F"] == pytest.approx(c["kmeans"]["F"]) # mêmes partitions à k = 2 | |
| 66 | + | |
| 67 | +# ------------------------------------------------------------------ B. classification | |
| 68 | +def test_classification(r): | |
| 69 | + t = r["classification"]["tableau"].set_index("k") | |
| 70 | + assert r["k_opt"] == 2 | |
| 71 | + assert t.loc[2, "silhouette_kmeans"] == pytest.approx(0.417, abs=0.002) and t.loc[3, "silhouette_kmeans"] == pytest.approx(0.225, abs=0.002) | |
| 72 | + assert t.loc[5, "silhouette_kmeans"] == pytest.approx(0.188, abs=0.002) and t.loc[5, "silhouette_ward"] == pytest.approx(0.156, abs=0.002) | |
| 73 | + assert t.loc[2, "ari_kmeans_ward"] == pytest.approx(1.0) and t.loc[5, "ari_kmeans_ward"] == pytest.approx(0.476, abs=0.002) | |
| 74 | + assert all(np.diff(t["inertie_kmeans"].values) < 0) # l'inertie décroît avec k | |
| 75 | + assert r["ari_secteur"] == pytest.approx(0.213, abs=0.002) and r["ari_secteur5"] == pytest.approx(0.124, abs=0.002) | |
| 76 | + # silhouette : implémentation directe = sklearn | |
| 77 | + Z = r["Z"].values; lab = r["labels_kmeans"] | |
| 78 | + s_man = c15.silhouette_manuelle(Z, lab) | |
| 79 | + assert np.allclose(s_man, r["silhouette_i"], atol=1e-10) and -1 <= s_man.min() and s_man.max() <= 1 | |
| 80 | + # segment Est = Buckingham + Masson-Angers | |
| 81 | + cr = r["croise"]; est = cr.loc[cr.sum(axis=1).idxmin()] | |
| 82 | + assert est["Buckingham"] == 42 and est["Masson-Angers"] == 47 and est.sum() == 89 | |
| 83 | + p5 = r["profil5"]; assert p5["n"].sum() == 600 and sorted(p5["n"].tolist()) == [89, 96, 98, 120, 197] | |
| 84 | + assert p5.loc[p5["n"] == 89, "prix_med"].iloc[0] == 371000 and p5.loc[p5["n"] == 96, "qualite_moy"].iloc[0] == pytest.approx(1.81, abs=0.005) | |
| 85 | + j = r["jeux"] | |
| 86 | + assert j["coordonnees"]["ari_secteur_k5"] == pytest.approx(0.986, abs=0.002) and j["coordonnees"]["silhouette"] == pytest.approx(0.735, abs=0.002) | |
| 87 | + assert j["attributs"]["ari_secteur"] == pytest.approx(0.001, abs=0.002) and j["attributs"]["silhouette"] == pytest.approx(0.221, abs=0.002) | |
| 88 | + | |
| 89 | +def test_validation_croisee(r): | |
| 90 | + cv = r["cv"].set_index("specification") | |
| 91 | + ref = cv.loc["Pentes communes + indicatrices (secteur)"] | |
| 92 | + assert ref["rmse_log"] == pytest.approx(0.0839, abs=5e-4) and ref["mape_mediane_pct"] == pytest.approx(5.81, abs=0.01) | |
| 93 | + assert cv.loc["Équation unique sans segment", "rmse_log"] == pytest.approx(0.1053, abs=5e-4) | |
| 94 | + assert cv.loc["Une équation par segment (secteur)", "mape_mediane_pct"] == pytest.approx(6.26, abs=0.01) | |
| 95 | + assert cv.loc["Une équation par segment (k-moyennes, k = 5)", "mape_mediane_pct"] == pytest.approx(6.71, abs=0.01) | |
| 96 | + assert (cv["rmse_log"] >= ref["rmse_log"]).all() # la référence est la meilleure spécification | |
| 97 | + | |
| 98 | +# ------------------------------------------------------------------ C. marché locatif | |
| 99 | +def test_locatif(r): | |
| 100 | + L = r["locatif"]; rev = L["revenus"] | |
| 101 | + assert rev["rbp_contrat"] == 165540 and rev["rbp_marche"] == 186036 and rev["ecart_marche"] == 20496 | |
| 102 | + assert L["ecart_global_pct"] == pytest.approx(11.0, abs=0.05) | |
| 103 | + pt = L["par_type"] | |
| 104 | + assert pt.loc["3½", "ecart_contrat_marche_pct"] == pytest.approx(15.8, abs=0.05) and pt.loc["5½", "ecart_contrat_marche_pct"] == pytest.approx(4.9, abs=0.05) | |
| 105 | + assert pt.loc["4½", "ratio_marche_schl"] == pytest.approx(0.994, abs=0.0005) and pt.loc["5½", "ratio_marche_schl"] == pytest.approx(0.944, abs=0.0005) | |
| 106 | + u = c15.SCHL_ZONE9["univers_2025"]; assert u["studio"] + u["1 ch."] + u["2 ch."] + u["3 ch. +"] == u["tous"] == 44554 | |
| 107 | + assert L["parts_univers"]["2 ch."] * 100 == pytest.approx(50.5, abs=0.05) and L["parts_univers"]["1 ch."] * 100 == pytest.approx(27.8, abs=0.05) | |
| 108 | + assert L["ecart_inoccupe_occupe_1ch_zone9_pct"] == pytest.approx(22.9, abs=0.05) and L["ecart_inoccupe_occupe_rmr_pct"] == pytest.approx(27.1, abs=0.05) | |
| 109 | + assert L["rattrapage_an1"]["hypothese_cas3"] == pytest.approx(3074, abs=1) and L["rattrapage_an1"]["schl_ile_6_19_2025"] == pytest.approx(1742, abs=1) | |
| 110 | + assert L["horizon_renouvellement"]["schl_ile_6_19_2025"] == pytest.approx(11.8, abs=0.05) | |
| 111 | + assert L["neuf_prime_pct"] == pytest.approx(55.2, abs=0.05) and L["neuf_part_univers_pct"] == pytest.approx(1.41, abs=0.005) | |
| 112 | + assert 44554 / c15.SCHL_RMR["univers_2025"] * 100 == pytest.approx(6.7, abs=0.05) and 1750 / 1626 - 1 == pytest.approx(0.076, abs=0.0005) | |
| 113 | + | |
| 114 | +# ------------------------------------------------------------------ solutions des exercices | |
| 115 | +def test_solutions_exercices(): | |
| 116 | + # 15.1 | |
| 117 | + assert c15.mois_inventaire(825, 569) == pytest.approx(4.35, abs=0.005) and c15.taux_absorption(825, 569) * 100 == pytest.approx(23.0, abs=0.05) | |
| 118 | + assert c15.mois_inventaire(825 * 1.2, 569 * 0.9) == pytest.approx(5.80, abs=0.005) | |
| 119 | + # 15.3 | |
| 120 | + vm = 9265 / 3; d = 40 / c15.JOURS_PAR_MOIS | |
| 121 | + assert vm * d == pytest.approx(4059, abs=1) and (20350 - vm * d) / 20350 * 100 == pytest.approx(80.1, abs=0.05) | |
| 122 | + # 15.4 | |
| 123 | + a = (1 + math.sqrt(2)) / 2; b = (3 + math.sqrt(10) + 4) / 3 | |
| 124 | + assert (b - a) / max(a, b) == pytest.approx(0.644, abs=0.001) | |
| 125 | + Z = np.array([[0, 0], [0, 1], [1, 0], [4, 0], [4, 1], [5, 0]], float); lab = np.array([0, 0, 0, 1, 1, 1]) | |
| 126 | + assert c15.silhouette_manuelle(Z, lab)[2] == pytest.approx(0.6437, abs=1e-4) | |
| 127 | + # 15.5 | |
| 128 | + F = ((4.0245 - 3.7360) / 44) / (3.7360 / 540); F0 = ((6.4024 - 3.7360) / 48) / (3.7360 / 540) | |
| 129 | + assert F == pytest.approx(0.948, abs=0.001) and F0 == pytest.approx(8.03, abs=0.005) | |
| 130 | + assert stats.f.ppf(0.95, 44, 540) == pytest.approx(1.40, abs=0.005) and stats.f.ppf(0.95, 48, 540) == pytest.approx(1.38, abs=0.005) | |
| 131 | + # 15.6 | |
| 132 | + assert 1 - 0.85 ** 5 == pytest.approx(0.556, abs=0.001) and 1 - 0.906 ** 5 == pytest.approx(0.390, abs=0.001) and 1 - 0.915 ** 5 == pytest.approx(0.359, abs=0.001) | |
| 133 | + assert 1 - 0.85 ** 10 == pytest.approx(0.803, abs=0.001) and 1 - 0.915 ** 10 == pytest.approx(0.589, abs=0.001) | |
| 134 | + assert 1 - 875.25 / 1039 == pytest.approx(0.158, abs=0.001) and 1295 / 1054 - 1 == pytest.approx(0.229, abs=0.001) | |
| 135 | + # probabilité d'au moins un rejet sur six tests indépendants au seuil de 5 % | |
| 136 | + assert 1 - 0.95 ** 6 == pytest.approx(0.265, abs=0.001) | |
modified
analysis/python/tests/test_ch22.py
+11 −0
@@ -61,6 +61,17 @@ class TestGeometrie: | ||
| 61 | 61 | assert S["aire_etages_mefq"] * c21.PI2_PAR_M2 == pytest.approx(2046, abs=0.6) |
| 62 | 62 | assert S["habitable"] * c21.PI2_PAR_M2 == pytest.approx(1777, abs=0.6) |
| 63 | 63 | |
| 64 | + def test_couts_unitaires_conventions(self, data): | |
| 65 | + S, cn = data["S"], data["cn"] | |
| 66 | + assert cn["total"] / S["aire_etages_mefq"] == pytest.approx(2092, abs=0.6) | |
| 67 | + assert cn["total"] / S["habitable"] == pytest.approx(2408, abs=0.6) | |
| 68 | + assert cn["total"] / S["nette_hors_sol"] == pytest.approx(2937, abs=0.6) | |
| 69 | + assert S["habitable"] / S["aire_etages_mefq"] == pytest.approx(0.869, abs=5e-4) | |
| 70 | + assert S["nette_hors_sol"] / S["habitable"] == pytest.approx(0.820, abs=5e-4) | |
| 71 | + assert S["nette_hors_sol"] / S["aire_etages_mefq"] == pytest.approx(0.712, abs=5e-4) | |
| 72 | + # écart de 40 % entre les coûts unitaires extrêmes | |
| 73 | + assert (cn["total"] / S["nette_hors_sol"]) / (cn["total"] / S["aire_etages_mefq"]) - 1 == pytest.approx(0.404, abs=5e-3) | |
| 74 | + | |
| 64 | 75 | def test_pieces_couvrent_les_niveaux(self, data): |
| 65 | 76 | pcs = data["S"]["pieces"] |
| 66 | 77 | assert pcs.loc[pcs["niveau"] == "rez", "brute"].sum() == pytest.approx(95.04, abs=1e-6) |
added
analysis/python/tests/test_ch31.py
+210 −0
@@ -0,0 +1,210 @@ | ||
| 1 | +"""Tests du chapitre 31 — financement, levier, RCD et RPV (cas 3, données synthétiques ; repères BdC réels). | |
| 2 | +Identités : taux périodique canadien ; paiement × facteur VA = capital ; solde prospectif = solde du tableau ; solde final nul ; | |
| 3 | +Σ intérêts + capital = Σ paiements ; constante = 12·PMT/M_0 ; prêt max par RCD ⇒ RCD = seuil ; R_E = (R − Mf)/(1 − M) ; | |
| 4 | +levier positif ssi y > k ; renouvellement exact : solde au terme reporté, TRI exact ≥ approximation ; barème APH ; mise de fonds ; | |
| 5 | +valeurs citées dans manuscript/chapters/ch31.tex (tolérances déclarées).""" | |
| 6 | +import math, pytest | |
| 7 | +import numpy as np | |
| 8 | +from traite import finance as fin | |
| 9 | +from cases import ch31_financement as c | |
| 10 | + | |
| 11 | +@pytest.fixture(scope="module") | |
| 12 | +def R(): | |
| 13 | + return c.base() | |
| 14 | + | |
| 15 | +@pytest.fixture(scope="module") | |
| 16 | +def FI(R): | |
| 17 | + return c.financement(R) | |
| 18 | + | |
| 19 | +# ------------------------------------------------------------------ hypothèque canadienne | |
| 20 | + | |
| 21 | +def test_taux_canadien_et_effectif(): | |
| 22 | + im = fin.taux_mensuel_canadien(0.0412) | |
| 23 | + assert im == pytest.approx((1 + 0.0412 / 2) ** (1 / 6) - 1, rel=1e-14) | |
| 24 | + assert im == pytest.approx(0.0034042, abs=5e-8) | |
| 25 | + assert fin.taux_effectif_annuel(0.0412, 2) == pytest.approx(0.041624, abs=1e-6) | |
| 26 | + assert (1 + im) ** 12 - 1 == pytest.approx(fin.taux_effectif_annuel(0.0412, 2), rel=1e-12) | |
| 27 | + assert 0.0412 / 12 == pytest.approx(0.0034333, abs=5e-8) | |
| 28 | + | |
| 29 | +def test_identites_hypotheque(FI): | |
| 30 | + h = FI["hypotheque"]; n = h.amortissement_mois; i = h.taux_periodique | |
| 31 | + assert h.paiement * fin.facteur_va_annuite(i, n) == pytest.approx(h.capital, rel=1e-12) | |
| 32 | + tab = h.tableau() | |
| 33 | + assert tab[-1]["solde"] == pytest.approx(0.0, abs=1e-6) | |
| 34 | + for k in (1, 12, 60, 120, 240, 479): | |
| 35 | + assert tab[k - 1]["solde"] == pytest.approx(h.solde(k), rel=1e-9) | |
| 36 | + assert sum(r["interet"] + r["capital"] for r in tab) == pytest.approx(h.paiement * n, rel=1e-9) | |
| 37 | + assert sum(r["capital"] for r in tab) == pytest.approx(h.capital, rel=1e-9) | |
| 38 | + assert h.constante_hypothecaire == pytest.approx(12 * h.paiement / h.capital, rel=1e-14) | |
| 39 | + # capital remboursé croît géométriquement | |
| 40 | + assert tab[1]["capital"] / tab[0]["capital"] == pytest.approx(1 + i, rel=1e-9) | |
| 41 | + | |
| 42 | +def test_valeurs_citees_financement(FI): | |
| 43 | + assert FI["valeur"] == pytest.approx(2_208_566, abs=1) | |
| 44 | + assert FI["rne_1"] == pytest.approx(89_956, abs=1) | |
| 45 | + assert FI["pret_rpv"] == pytest.approx(1_656_424, abs=1) | |
| 46 | + assert FI["pret_rcd"] == pytest.approx(1_475_959, abs=1) | |
| 47 | + assert FI["pret"] == FI["pret_rcd"] and FI["contrainte"] == "RCD" | |
| 48 | + assert FI["rpv"] == pytest.approx(0.6683, abs=5e-5) | |
| 49 | + assert FI["mise_de_fonds"] == pytest.approx(732_606, abs=1) | |
| 50 | + assert FI["paiement"] == pytest.approx(6246.93, abs=0.01) | |
| 51 | + assert FI["service_dette"] == pytest.approx(74_963, abs=1) | |
| 52 | + assert FI["constante"] == pytest.approx(0.050789, abs=1e-6) | |
| 53 | + assert FI["interets_an1"] == pytest.approx(60_016, abs=1) and FI["capital_an1"] == pytest.approx(14_947, abs=1) | |
| 54 | + assert FI["solde_60"] == pytest.approx(1_394_739, abs=1) and FI["solde_120"] == pytest.approx(1_295_148, abs=1) | |
| 55 | + assert FI["rcd"] == pytest.approx(1.20, abs=1e-9) | |
| 56 | + assert FI["flux_apres_dette_1"] == pytest.approx(14_993, abs=1) | |
| 57 | + assert FI["cash_on_cash_1"] == pytest.approx(0.0205, abs=5e-5) | |
| 58 | + assert FI["point_mort"] == pytest.approx(0.927, abs=5e-4) and FI["point_mort_hors_reserve"] == pytest.approx(0.878, abs=5e-4) | |
| 59 | + assert FI["tri_fp"] == pytest.approx(0.1122, abs=5e-5) | |
| 60 | + assert FI["k_annuel"] == pytest.approx(0.0406, abs=5e-5) and FI["k_annuel"] < FI["taux_effectif"] | |
| 61 | + assert FI["rpv_max_par_rcd_sur_Vcap"] == pytest.approx(0.724, abs=5e-4) | |
| 62 | + | |
| 63 | +def test_conventions(FI): | |
| 64 | + d = c.conventions(FI["pret"]).set_index("convention") | |
| 65 | + ca, us = d.loc["Canada (semestrielle)"], d.loc["États-Unis (mensuelle)"] | |
| 66 | + assert ca["paiement"] < us["paiement"] and ca["taux_effectif"] < us["taux_effectif"] | |
| 67 | + assert us["paiement"] == pytest.approx(6279.21, abs=0.01) | |
| 68 | + assert us["service_dette"] - ca["service_dette"] == pytest.approx(387, abs=1) | |
| 69 | + assert us["constante"] == pytest.approx(0.051052, abs=1e-6) | |
| 70 | + assert us["solde_60"] == pytest.approx(1_395_377, abs=1) | |
| 71 | + | |
| 72 | +def test_tableau_extraits(FI): | |
| 73 | + t = c.tableau_extraits(FI["hypotheque"]).set_index("periode") | |
| 74 | + assert t.loc[1, "interet"] == pytest.approx(5024.50, abs=0.01) and t.loc[1, "capital"] == pytest.approx(1222.42, abs=0.01) | |
| 75 | + assert t.loc[60, "solde"] == pytest.approx(1_394_739.19, abs=0.01) | |
| 76 | + assert t.loc[480, "solde"] == pytest.approx(0.0, abs=1e-6) | |
| 77 | + assert t.loc[1, "part_interet"] == pytest.approx(0.804, abs=1e-3) | |
| 78 | + dec = c.decomposition_annuelle(FI["hypotheque"]) | |
| 79 | + assert dec["interet"].sum() == pytest.approx(1_522_566, abs=1) | |
| 80 | + assert (dec["interet"] + dec["capital"] - FI["service_dette"]).abs().max() < 1e-6 | |
| 81 | + | |
| 82 | +# ------------------------------------------------------------------ ratios, prêt max, règles | |
| 83 | + | |
| 84 | +def test_pret_max_par_rcd_donne_rcd_seuil(R): | |
| 85 | + noi = R["base"]["rne"] | |
| 86 | + for i, n, q in ((0.0412, 480, 1.2), (0.0612, 300, 1.1), (0.0312, 360, 1.3)): | |
| 87 | + p = fin.pret_max_par_rcd(noi, q, i, n) | |
| 88 | + assert fin.rcd(noi, fin.Hypotheque(p, i, n).service_dette_annuel) == pytest.approx(q, rel=1e-12) | |
| 89 | + g = c.grille_pret_max(R) | |
| 90 | + assert (g.groupby(["amortissement_mois", "rcd_min"])["pret_max"].diff().dropna() < 0).all() # décroissant en taux | |
| 91 | + row = g[(g["taux"] == 0.0412) & (g["amortissement_mois"] == 480) & (g["rcd_min"] == 1.2)].iloc[0] | |
| 92 | + assert row["pret_max"] == pytest.approx(1_475_959, abs=1) | |
| 93 | + r300 = g[(g["taux"] == 0.0412) & (g["amortissement_mois"] == 300) & (g["rcd_min"] == 1.2)].iloc[0]["pret_max"] | |
| 94 | + assert row["pret_max"] / r300 == pytest.approx(1.258, abs=2e-3) | |
| 95 | + | |
| 96 | +def test_seuil_rpv_max_par_rcd(FI): | |
| 97 | + # M_max/V = R/(RCD·f) ; seuil de liaison R = RCD · f · LTVmax = 4,571 % | |
| 98 | + assert FI["rpv_max_par_rcd_sur_V"] == pytest.approx(FI["rpv"], rel=1e-9) | |
| 99 | + assert 1.2 * FI["constante"] * 0.75 == pytest.approx(0.04571, abs=5e-5) | |
| 100 | + | |
| 101 | +def test_regles_residentielles(): | |
| 102 | + assert fin.taux_admissible_minimal(0.0458) == pytest.approx(0.0658) and fin.taux_admissible_minimal(0.03) == pytest.approx(0.0525) | |
| 103 | + assert c.mise_de_fonds_minimale(400_000) == 20_000 and c.mise_de_fonds_minimale(650_000) == 40_000 | |
| 104 | + assert c.mise_de_fonds_minimale(1_000_000) == 75_000 and c.mise_de_fonds_minimale(1_500_000) == 125_000 | |
| 105 | + assert c.mise_de_fonds_minimale(1_600_000) == 320_000 | |
| 106 | + rr = c.regles_residentielles() | |
| 107 | + assert rr["capacite"]["pret_au_contrat"] == pytest.approx(594_162, abs=1) and rr["capacite"]["pret_au_mqr"] == pytest.approx(491_344, abs=1) | |
| 108 | + assert rr["capacite"]["reduction_mqr"] == pytest.approx(0.173, abs=5e-4) | |
| 109 | + | |
| 110 | +def test_prime_aph_bareme(): | |
| 111 | + assert c.prime_aph(0.60, 300) == pytest.approx(0.0260) and c.prime_aph(0.65, 300) == pytest.approx(0.0260) | |
| 112 | + assert c.prime_aph(0.72, 480) == pytest.approx(0.0335 + 0.0075) and c.prime_aph(0.78, 480) == pytest.approx(0.0435 + 0.0075) | |
| 113 | + assert c.prime_aph(0.817, 540) == pytest.approx(0.0535 + 0.0100) and c.prime_aph(0.845, 600) == pytest.approx(0.0535 + 0.0125) | |
| 114 | + assert c.prime_aph(0.95, 600) == pytest.approx(0.0615 + 0.0125) | |
| 115 | + # cohérence avec les valeurs du ch. 47 (RPV 78,2 / 81,7 / 84,5 % sur 40/45/50 ans → 5,10 / 6,35 / 6,60 %) | |
| 116 | + assert c.prime_aph(0.782, 480) == pytest.approx(0.0510) and c.prime_aph(0.817, 540) == pytest.approx(0.0635) and c.prime_aph(0.845, 600) == pytest.approx(0.0660) | |
| 117 | + | |
| 118 | +def test_aph_select(R): | |
| 119 | + a = c.aph_select(R).set_index("amortissement_mois") | |
| 120 | + assert a.loc[480, "pret"].iloc[-1] if hasattr(a.loc[480, "pret"], "iloc") else True | |
| 121 | + aph = c.aph_select(R).iloc[1:] | |
| 122 | + assert list(aph["pret"].round(0)) == [1_610_138, 1_682_397, 1_741_328] | |
| 123 | + assert (aph["pret_rcd"] < aph["pret_rpv"]).all() # RCD liant | |
| 124 | + assert (aph["rcd_1"] - 1.10).abs().max() < 1e-9 | |
| 125 | + assert aph["service_dette"].iloc[0] == pytest.approx(81_778, abs=1) | |
| 126 | + assert list(aph["prime_pct"].round(4)) == [0.0410, 0.0535, 0.0560] | |
| 127 | + assert aph["prime"].iloc[0] == pytest.approx(66_016, abs=1) and aph["mise_de_fonds"].iloc[-1] == pytest.approx(467_238, abs=1) | |
| 128 | + | |
| 129 | +def test_stress_rcd(R): | |
| 130 | + s = c.stress_rcd(R).set_index("marge") | |
| 131 | + assert s.loc[0.0, "rcd_1"] == pytest.approx(1.2, abs=1e-9) | |
| 132 | + assert s.loc[0.02, "service_dette"] == pytest.approx(97_988, abs=1) and s.loc[0.02, "rcd_1"] == pytest.approx(0.918, abs=5e-4) | |
| 133 | + assert s.loc[0.02, "pret_max_qualifie"] == pytest.approx(1_129_149, abs=1) | |
| 134 | + assert (s["rcd_1"].diff().dropna() < 0).all() | |
| 135 | + | |
| 136 | +# ------------------------------------------------------------------ levier | |
| 137 | + | |
| 138 | +def test_levier_courant_formule(R): | |
| 139 | + l = c.levier_courant(R) | |
| 140 | + assert l["RE_formule"] == pytest.approx(l["RE_direct"], rel=1e-12) and l["RE_alt"] == pytest.approx(l["RE_direct"], rel=1e-12) | |
| 141 | + assert l["RE_direct"] == pytest.approx(0.0205, abs=5e-5) and l["R"] < l["f"] and l["levier_courant"] == "négatif" | |
| 142 | + assert l["RE_cap"] == pytest.approx(0.0267, abs=5e-5) | |
| 143 | + | |
| 144 | +def test_levier_par_rpv_monotone(R, FI): | |
| 145 | + t = c.levier_par_rpv(R) | |
| 146 | + assert t["tri_fp"].iloc[0] == pytest.approx(0.0725, abs=1e-6) # sans levier : TRI = r | |
| 147 | + assert (t["tri_fp"].diff().dropna() > 0).all() # y > k ⇒ TRI FP croît avec M | |
| 148 | + assert (t["cash_on_cash_1"].diff().dropna() < 0).all() # R < f ⇒ rendement courant décroît | |
| 149 | + ret = t[t["retenu"]].iloc[0] | |
| 150 | + assert ret["tri_fp"] == pytest.approx(FI["tri_fp"], rel=1e-9) and ret["rcd_1"] == pytest.approx(1.2, abs=1e-9) | |
| 151 | + t85 = t[np.isclose(t["rpv"], 0.85)].iloc[0] | |
| 152 | + assert t85["tri_fp"] == pytest.approx(0.1524, abs=5e-5) and t85["cash_on_cash_1"] < 0 and t85["rcd_1"] < 1 | |
| 153 | + t75 = t[np.isclose(t["rpv"], 0.75)].iloc[0] | |
| 154 | + assert t75["rcd_1"] == pytest.approx(1.07, abs=5e-3) and t75["flux_min"] == pytest.approx(-69_617, abs=1) | |
| 155 | + | |
| 156 | +def test_proposition_levier_positif(R, FI): | |
| 157 | + """y_E > y ⇔ y > k : vérifié sur le cas 3 (y = 7,25 %, k ≈ 4,06 %) et par un contre-exemple où la dette coûte plus que l'actif.""" | |
| 158 | + assert FI["tri_sans_levier"] > FI["k_annuel"] and FI["tri_fp"] > FI["tri_sans_levier"] | |
| 159 | + d = R["dcf"]; V = d["valeur"] | |
| 160 | + cher = fin.Hypotheque(0.5 * V, 0.09, 480) # dette à 9 % > y = 7,25 % | |
| 161 | + res = fin.rendement_fonds_propres_levier(d["flux"], V, cher, d["vt_nette"]) | |
| 162 | + assert res["tri"] < 0.0725 | |
| 163 | + neutre_k = 0.0725 | |
| 164 | + # dette dont le TRI annuel = y exactement (taux effectif y, paiements annuels) ⇒ y_E = y | |
| 165 | + sd = 0.5 * V * fin.facteur_recouvrement(neutre_k, 10) | |
| 166 | + flux = [-(0.5 * V)] + [cf - sd for cf in d["flux"]]; flux[-1] += d["vt_nette"] | |
| 167 | + assert fin.tri(flux) == pytest.approx(0.0725, abs=1e-9) | |
| 168 | + | |
| 169 | +def test_risque_levier(R): | |
| 170 | + rk = c.risque_levier(R) | |
| 171 | + assert rk["sigma_fp"] == pytest.approx(0.08 / (1 - rk["M"])) and rk["multiplicateur"] == pytest.approx(3.01, abs=5e-3) | |
| 172 | + | |
| 173 | +# ------------------------------------------------------------------ renouvellement | |
| 174 | + | |
| 175 | +def test_renouvellement_exact(R, FI): | |
| 176 | + ren = c.renouvellement(R); t = ren["tableau"].set_index("delta") | |
| 177 | + assert ren["solde_terme"] == pytest.approx(FI["solde_60"], rel=1e-12) and ren["n_residuel"] == 420 | |
| 178 | + assert t.loc[0.0, "paiement_2"] == pytest.approx(FI["paiement"], rel=1e-9) # taux inchangé ⇒ même paiement | |
| 179 | + assert t.loc[0.0, "tri_fp"] == pytest.approx(FI["tri_fp"], rel=1e-9) and t.loc[0.0, "solde_T"] == pytest.approx(FI["solde_120"], rel=1e-9) | |
| 180 | + assert list(t["service_dette_2"].round(0)) == [74_963, 85_177, 95_920, 107_120] # identiques au ch. 47 | |
| 181 | + assert list(t["rcd_an_terme_plus_1"].round(3)) == [1.746, 1.537, 1.365, 1.222] | |
| 182 | + assert list(t["tri_fp"].round(4)) == [0.1122, 0.1078, 0.1032, 0.0986] | |
| 183 | + assert list(t["tri_fp_approx_ch30"].round(4)) == [0.1122, 0.1003, 0.0881, 0.0757] | |
| 184 | + assert (t["tri_fp"] >= t["tri_fp_approx_ch30"] - 1e-12).all() and (t["sd_approx_ch30"] >= t["service_dette_2"] - 1e-6).all() | |
| 185 | + assert t.loc[0.02, "solde_T"] == pytest.approx(1_327_042, abs=1) | |
| 186 | + # le solde renouvelé suit la formule prospective avec le nouveau taux | |
| 187 | + h2 = ren["detail"][0.02]["hypotheque_2"] | |
| 188 | + assert h2.capital == pytest.approx(ren["solde_terme"]) and h2.solde(60) == pytest.approx(t.loc[0.02, "solde_T"], rel=1e-12) | |
| 189 | + assert ren["delta_rcd_120"] == pytest.approx(0.0317, abs=1e-4) and ren["delta_rcd_100"] == pytest.approx(0.0502, abs=1e-4) | |
| 190 | + | |
| 191 | +def test_sensibilite_service_dette(R, FI): | |
| 192 | + s = c.sensibilite_service_dette(R, taux=np.array([0.0412, 0.055, 0.0612])) | |
| 193 | + b = s[(s["amortissement_mois"] == 480) & np.isclose(s["taux"], 0.0412)].iloc[0] | |
| 194 | + assert b["service_dette"] == pytest.approx(FI["service_dette"], rel=1e-9) and b["rcd_1"] == pytest.approx(1.2, abs=1e-9) | |
| 195 | + assert s[(s["amortissement_mois"] == 480) & np.isclose(s["taux"], 0.055)].iloc[0]["rcd_1"] < 1.0 | |
| 196 | + assert s[(s["amortissement_mois"] == 300) & np.isclose(s["taux"], 0.0412)].iloc[0]["rcd_1"] == pytest.approx(0.954, abs=5e-4) | |
| 197 | + | |
| 198 | +# ------------------------------------------------------------------ exercices | |
| 199 | + | |
| 200 | +def test_exercices_coherence(): | |
| 201 | + e = c.exercices() | |
| 202 | + ca, us = e["ex1"]["Canada (semestrielle)"], e["ex1"]["États-Unis (mensuelle)"] | |
| 203 | + assert ca["paiement"] == pytest.approx(4742.40, abs=0.01) and us["paiement"] == pytest.approx(4763.26, abs=0.01) | |
| 204 | + assert e["ex2"]["solde_60"] == pytest.approx(944_971, abs=1) and e["ex2"]["part_remboursee_60"] == pytest.approx(0.0550, abs=5e-5) | |
| 205 | + assert e["ex2"]["interets_totaux"] == pytest.approx(1_031_577, abs=1) and e["ex2"]["interets_totaux_25"] == pytest.approx(597_637, abs=1) | |
| 206 | + assert e["ex3"]["pret"] == pytest.approx(1_572_079, abs=1) and e["ex3"]["pret_aph"] == pytest.approx(2_147_906, abs=1) and e["ex3"]["prime_aph"] == pytest.approx(0.0610) | |
| 207 | + assert e["ex4"][0.7][0.06] == pytest.approx(0.03333, abs=1e-5) and e["ex4"][0.7][0.045] == pytest.approx(0.06833, abs=1e-5) | |
| 208 | + assert e["ex5"]["mdf"] == 47_000 and e["ex5"]["paiement_mqr"] == pytest.approx(4540.60, abs=0.01) and e["ex5"]["lti_revenu_requis"] == pytest.approx(149_556, abs=1) | |
| 209 | + assert e["ex6"]["service_dette_2"] == pytest.approx(90_487, abs=1) and e["ex6"]["tri_fp"] == pytest.approx(0.1055, abs=5e-5) | |
| 210 | + assert e["ex7"][0]["tri_fp"] == pytest.approx(0.0949, abs=5e-5) and e["ex7"][1]["tri_fp"] == pytest.approx(0.1524, abs=5e-5) | |
modified
assets/figures/ch14/ch14-fig-avant-apres.pdf
+0 −0
Binary file not shown.
modified
assets/figures/ch14/ch14-fig-geocodage.pdf
+0 −0
Binary file not shown.
modified
assets/figures/ch14/ch14-fig-levier-cook.pdf
+0 −0
Binary file not shown.
modified
assets/figures/ch14/ch14-fig-scores-robustes.pdf
+0 −0
Binary file not shown.
modified
assets/figures/ch14/ch14-fig-sensibilite-seuils.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch20/ch20-fig-bootstrap-densite.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch20/ch20-fig-fourchettes-methodes.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch20/ch20-fig-residus-elargissement.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch20/ch20-fig-sensibilite-poids.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch34/ch34-fig-calcul-tal.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch34/ch34-fig-ipc-base.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch34/ch34-fig-rotation-esperee.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch34/ch34-fig-trajectoires-rbp.pdf
+0 −0
Binary file not shown.
added
assets/figures/ch34/ch34-fig-valeur-scenarios.pdf
+0 −0
Binary file not shown.
added
data/processed/ipc_quebec_mensuel.csv
+578 −0
@@ -0,0 +1,578 @@ | ||
| 1 | +periode,ipc | |
| 2 | +1978-09,37.6 | |
| 3 | +1978-10,37.8 | |
| 4 | +1978-11,38.1 | |
| 5 | +1978-12,38.3 | |
| 6 | +1979-01,38.6 | |
| 7 | +1979-02,39.0 | |
| 8 | +1979-03,39.5 | |
| 9 | +1979-04,39.9 | |
| 10 | +1979-05,40.2 | |
| 11 | +1979-06,40.2 | |
| 12 | +1979-07,40.6 | |
| 13 | +1979-08,40.9 | |
| 14 | +1979-09,41.3 | |
| 15 | +1979-10,41.6 | |
| 16 | +1979-11,42.0 | |
| 17 | +1979-12,42.2 | |
| 18 | +1980-01,42.4 | |
| 19 | +1980-02,42.8 | |
| 20 | +1980-03,43.3 | |
| 21 | +1980-04,43.5 | |
| 22 | +1980-05,43.9 | |
| 23 | +1980-06,44.5 | |
| 24 | +1980-07,44.8 | |
| 25 | +1980-08,45.4 | |
| 26 | +1980-09,45.7 | |
| 27 | +1980-10,46.1 | |
| 28 | +1980-11,46.9 | |
| 29 | +1980-12,46.9 | |
| 30 | +1981-01,47.5 | |
| 31 | +1981-02,48.1 | |
| 32 | +1981-03,48.6 | |
| 33 | +1981-04,49.1 | |
| 34 | +1981-05,49.4 | |
| 35 | +1981-06,50.1 | |
| 36 | +1981-07,50.6 | |
| 37 | +1981-08,50.9 | |
| 38 | +1981-09,51.4 | |
| 39 | +1981-10,51.7 | |
| 40 | +1981-11,52.3 | |
| 41 | +1981-12,53.1 | |
| 42 | +1982-01,53.3 | |
| 43 | +1982-02,54.1 | |
| 44 | +1982-03,54.4 | |
| 45 | +1982-04,54.9 | |
| 46 | +1982-05,55.6 | |
| 47 | +1982-06,56.3 | |
| 48 | +1982-07,56.5 | |
| 49 | +1982-08,56.9 | |
| 50 | +1982-09,57.2 | |
| 51 | +1982-10,57.5 | |
| 52 | +1982-11,57.9 | |
| 53 | +1982-12,57.9 | |
| 54 | +1983-01,57.5 | |
| 55 | +1983-02,57.7 | |
| 56 | +1983-03,58.3 | |
| 57 | +1983-04,58.5 | |
| 58 | +1983-05,58.8 | |
| 59 | +1983-06,59.1 | |
| 60 | +1983-07,59.3 | |
| 61 | +1983-08,59.7 | |
| 62 | +1983-09,59.8 | |
| 63 | +1983-10,60.2 | |
| 64 | +1983-11,60.2 | |
| 65 | +1983-12,60.4 | |
| 66 | +1984-01,60.4 | |
| 67 | +1984-02,60.9 | |
| 68 | +1984-03,61.1 | |
| 69 | +1984-04,61.4 | |
| 70 | +1984-05,61.4 | |
| 71 | +1984-06,61.6 | |
| 72 | +1984-07,61.9 | |
| 73 | +1984-08,61.5 | |
| 74 | +1984-09,61.6 | |
| 75 | +1984-10,61.8 | |
| 76 | +1984-11,62.3 | |
| 77 | +1984-12,62.4 | |
| 78 | +1985-01,62.6 | |
| 79 | +1985-02,63.2 | |
| 80 | +1985-03,63.2 | |
| 81 | +1985-04,63.5 | |
| 82 | +1985-05,63.8 | |
| 83 | +1985-06,64.3 | |
| 84 | +1985-07,64.5 | |
| 85 | +1985-08,64.7 | |
| 86 | +1985-09,64.9 | |
| 87 | +1985-10,65.0 | |
| 88 | +1985-11,65.2 | |
| 89 | +1985-12,65.6 | |
| 90 | +1986-01,65.8 | |
| 91 | +1986-02,66.2 | |
| 92 | +1986-03,66.5 | |
| 93 | +1986-04,66.7 | |
| 94 | +1986-05,66.9 | |
| 95 | +1986-06,66.8 | |
| 96 | +1986-07,67.3 | |
| 97 | +1986-08,67.7 | |
| 98 | +1986-09,67.7 | |
| 99 | +1986-10,68.1 | |
| 100 | +1986-11,68.7 | |
| 101 | +1986-12,68.8 | |
| 102 | +1987-01,68.7 | |
| 103 | +1987-02,69.2 | |
| 104 | +1987-03,69.3 | |
| 105 | +1987-04,69.6 | |
| 106 | +1987-05,69.9 | |
| 107 | +1987-06,70.1 | |
| 108 | +1987-07,70.5 | |
| 109 | +1987-08,70.5 | |
| 110 | +1987-09,70.5 | |
| 111 | +1987-10,71.1 | |
| 112 | +1987-11,71.4 | |
| 113 | +1987-12,71.4 | |
| 114 | +1988-01,71.4 | |
| 115 | +1988-02,71.9 | |
| 116 | +1988-03,72.1 | |
| 117 | +1988-04,72.3 | |
| 118 | +1988-05,72.5 | |
| 119 | +1988-06,72.7 | |
| 120 | +1988-07,73.0 | |
| 121 | +1988-08,73.3 | |
| 122 | +1988-09,73.2 | |
| 123 | +1988-10,73.6 | |
| 124 | +1988-11,73.8 | |
| 125 | +1988-12,73.9 | |
| 126 | +1989-01,74.0 | |
| 127 | +1989-02,74.7 | |
| 128 | +1989-03,74.9 | |
| 129 | +1989-04,75.1 | |
| 130 | +1989-05,75.8 | |
| 131 | +1989-06,76.3 | |
| 132 | +1989-07,76.6 | |
| 133 | +1989-08,76.6 | |
| 134 | +1989-09,76.4 | |
| 135 | +1989-10,76.9 | |
| 136 | +1989-11,77.1 | |
| 137 | +1989-12,76.8 | |
| 138 | +1990-01,77.6 | |
| 139 | +1990-02,78.0 | |
| 140 | +1990-03,78.2 | |
| 141 | +1990-04,78.1 | |
| 142 | +1990-05,78.6 | |
| 143 | +1990-06,78.9 | |
| 144 | +1990-07,79.3 | |
| 145 | +1990-08,79.5 | |
| 146 | +1990-09,79.6 | |
| 147 | +1990-10,80.4 | |
| 148 | +1990-11,81.0 | |
| 149 | +1990-12,81.0 | |
| 150 | +1991-01,84.0 | |
| 151 | +1991-02,84.0 | |
| 152 | +1991-03,84.5 | |
| 153 | +1991-04,84.6 | |
| 154 | +1991-05,84.9 | |
| 155 | +1991-06,85.3 | |
| 156 | +1991-07,85.3 | |
| 157 | +1991-08,85.3 | |
| 158 | +1991-09,85.4 | |
| 159 | +1991-10,85.5 | |
| 160 | +1991-11,85.7 | |
| 161 | +1991-12,85.3 | |
| 162 | +1992-01,86.0 | |
| 163 | +1992-02,86.0 | |
| 164 | +1992-03,86.2 | |
| 165 | +1992-04,86.2 | |
| 166 | +1992-05,86.3 | |
| 167 | +1992-06,86.5 | |
| 168 | +1992-07,86.7 | |
| 169 | +1992-08,86.7 | |
| 170 | +1992-09,86.7 | |
| 171 | +1992-10,87.0 | |
| 172 | +1992-11,87.3 | |
| 173 | +1992-12,87.3 | |
| 174 | +1993-01,87.6 | |
| 175 | +1993-02,87.6 | |
| 176 | +1993-03,87.9 | |
| 177 | +1993-04,87.7 | |
| 178 | +1993-05,87.6 | |
| 179 | +1993-06,87.6 | |
| 180 | +1993-07,87.6 | |
| 181 | +1993-08,87.6 | |
| 182 | +1993-09,87.6 | |
| 183 | +1993-10,87.6 | |
| 184 | +1993-11,88.3 | |
| 185 | +1993-12,88.2 | |
| 186 | +1994-01,88.0 | |
| 187 | +1994-02,86.4 | |
| 188 | +1994-03,86.5 | |
| 189 | +1994-04,86.4 | |
| 190 | +1994-05,86.0 | |
| 191 | +1994-06,86.4 | |
| 192 | +1994-07,86.4 | |
| 193 | +1994-08,86.4 | |
| 194 | +1994-09,86.4 | |
| 195 | +1994-10,86.2 | |
| 196 | +1994-11,86.8 | |
| 197 | +1994-12,86.7 | |
| 198 | +1995-01,87.2 | |
| 199 | +1995-02,87.5 | |
| 200 | +1995-03,87.6 | |
| 201 | +1995-04,88.2 | |
| 202 | +1995-05,88.4 | |
| 203 | +1995-06,88.3 | |
| 204 | +1995-07,88.5 | |
| 205 | +1995-08,88.2 | |
| 206 | +1995-09,88.4 | |
| 207 | +1995-10,88.2 | |
| 208 | +1995-11,88.5 | |
| 209 | +1995-12,88.3 | |
| 210 | +1996-01,88.5 | |
| 211 | +1996-02,88.8 | |
| 212 | +1996-03,89.1 | |
| 213 | +1996-04,89.4 | |
| 214 | +1996-05,89.8 | |
| 215 | +1996-06,89.8 | |
| 216 | +1996-07,89.6 | |
| 217 | +1996-08,89.6 | |
| 218 | +1996-09,89.6 | |
| 219 | +1996-10,90.0 | |
| 220 | +1996-11,90.3 | |
| 221 | +1996-12,89.9 | |
| 222 | +1997-01,90.2 | |
| 223 | +1997-02,90.5 | |
| 224 | +1997-03,90.5 | |
| 225 | +1997-04,90.6 | |
| 226 | +1997-05,90.7 | |
| 227 | +1997-06,91.1 | |
| 228 | +1997-07,91.0 | |
| 229 | +1997-08,91.1 | |
| 230 | +1997-09,90.9 | |
| 231 | +1997-10,91.0 | |
| 232 | +1997-11,91.0 | |
| 233 | +1997-12,90.8 | |
| 234 | +1998-01,91.9 | |
| 235 | +1998-02,92.0 | |
| 236 | +1998-03,91.8 | |
| 237 | +1998-04,91.9 | |
| 238 | +1998-05,92.2 | |
| 239 | +1998-06,92.4 | |
| 240 | +1998-07,92.1 | |
| 241 | +1998-08,92.2 | |
| 242 | +1998-09,92.0 | |
| 243 | +1998-10,92.2 | |
| 244 | +1998-11,92.3 | |
| 245 | +1998-12,92.0 | |
| 246 | +1999-01,92.2 | |
| 247 | +1999-02,92.3 | |
| 248 | +1999-03,92.9 | |
| 249 | +1999-04,93.3 | |
| 250 | +1999-05,93.4 | |
| 251 | +1999-06,93.6 | |
| 252 | +1999-07,93.8 | |
| 253 | +1999-08,93.8 | |
| 254 | +1999-09,94.1 | |
| 255 | +1999-10,94.4 | |
| 256 | +1999-11,94.2 | |
| 257 | +1999-12,94.1 | |
| 258 | +2000-01,94.1 | |
| 259 | +2000-02,94.8 | |
| 260 | +2000-03,95.2 | |
| 261 | +2000-04,94.9 | |
| 262 | +2000-05,95.3 | |
| 263 | +2000-06,96.2 | |
| 264 | +2000-07,96.2 | |
| 265 | +2000-08,96.0 | |
| 266 | +2000-09,96.4 | |
| 267 | +2000-10,96.5 | |
| 268 | +2000-11,96.7 | |
| 269 | +2000-12,96.8 | |
| 270 | +2001-01,96.7 | |
| 271 | +2001-02,97.3 | |
| 272 | +2001-03,97.6 | |
| 273 | +2001-04,98.5 | |
| 274 | +2001-05,98.9 | |
| 275 | +2001-06,98.4 | |
| 276 | +2001-07,98.4 | |
| 277 | +2001-08,98.5 | |
| 278 | +2001-09,98.4 | |
| 279 | +2001-10,98.0 | |
| 280 | +2001-11,97.7 | |
| 281 | +2001-12,97.9 | |
| 282 | +2002-01,98.1 | |
| 283 | +2002-02,98.8 | |
| 284 | +2002-03,99.0 | |
| 285 | +2002-04,99.5 | |
| 286 | +2002-05,99.4 | |
| 287 | +2002-06,99.7 | |
| 288 | +2002-07,100.6 | |
| 289 | +2002-08,100.7 | |
| 290 | +2002-09,100.7 | |
| 291 | +2002-10,101.0 | |
| 292 | +2002-11,101.3 | |
| 293 | +2002-12,101.3 | |
| 294 | +2003-01,102.0 | |
| 295 | +2003-02,103.1 | |
| 296 | +2003-03,103.3 | |
| 297 | +2003-04,102.4 | |
| 298 | +2003-05,102.4 | |
| 299 | +2003-06,102.3 | |
| 300 | +2003-07,102.4 | |
| 301 | +2003-08,102.5 | |
| 302 | +2003-09,102.3 | |
| 303 | +2003-10,102.4 | |
| 304 | +2003-11,102.7 | |
| 305 | +2003-12,102.7 | |
| 306 | +2004-01,103.2 | |
| 307 | +2004-02,103.6 | |
| 308 | +2004-03,103.9 | |
| 309 | +2004-04,103.8 | |
| 310 | +2004-05,104.8 | |
| 311 | +2004-06,104.8 | |
| 312 | +2004-07,104.6 | |
| 313 | +2004-08,104.5 | |
| 314 | +2004-09,104.7 | |
| 315 | +2004-10,105.3 | |
| 316 | +2004-11,105.5 | |
| 317 | +2004-12,105.2 | |
| 318 | +2005-01,105.3 | |
| 319 | +2005-02,105.6 | |
| 320 | +2005-03,106.4 | |
| 321 | +2005-04,106.4 | |
| 322 | +2005-05,106.5 | |
| 323 | +2005-06,106.8 | |
| 324 | +2005-07,107.0 | |
| 325 | +2005-08,107.4 | |
| 326 | +2005-09,108.5 | |
| 327 | +2005-10,107.7 | |
| 328 | +2005-11,107.5 | |
| 329 | +2005-12,107.4 | |
| 330 | +2006-01,108.1 | |
| 331 | +2006-02,108.0 | |
| 332 | +2006-03,108.4 | |
| 333 | +2006-04,109.1 | |
| 334 | +2006-05,109.3 | |
| 335 | +2006-06,109.1 | |
| 336 | +2006-07,109.2 | |
| 337 | +2006-08,109.2 | |
| 338 | +2006-09,108.4 | |
| 339 | +2006-10,108.4 | |
| 340 | +2006-11,108.6 | |
| 341 | +2006-12,108.7 | |
| 342 | +2007-01,108.8 | |
| 343 | +2007-02,109.6 | |
| 344 | +2007-03,110.4 | |
| 345 | +2007-04,110.6 | |
| 346 | +2007-05,111.1 | |
| 347 | +2007-06,110.7 | |
| 348 | +2007-07,110.6 | |
| 349 | +2007-08,110.1 | |
| 350 | +2007-09,110.5 | |
| 351 | +2007-10,110.5 | |
| 352 | +2007-11,110.8 | |
| 353 | +2007-12,111.1 | |
| 354 | +2008-01,111.0 | |
| 355 | +2008-02,111.4 | |
| 356 | +2008-03,111.7 | |
| 357 | +2008-04,112.4 | |
| 358 | +2008-05,113.6 | |
| 359 | +2008-06,114.1 | |
| 360 | +2008-07,114.1 | |
| 361 | +2008-08,113.5 | |
| 362 | +2008-09,114.0 | |
| 363 | +2008-10,113.0 | |
| 364 | +2008-11,112.4 | |
| 365 | +2008-12,111.7 | |
| 366 | +2009-01,111.5 | |
| 367 | +2009-02,112.3 | |
| 368 | +2009-03,112.6 | |
| 369 | +2009-04,112.7 | |
| 370 | +2009-05,113.7 | |
| 371 | +2009-06,114.3 | |
| 372 | +2009-07,113.8 | |
| 373 | +2009-08,113.9 | |
| 374 | +2009-09,113.7 | |
| 375 | +2009-10,113.6 | |
| 376 | +2009-11,114.3 | |
| 377 | +2009-12,114.0 | |
| 378 | +2010-01,114.0 | |
| 379 | +2010-02,114.2 | |
| 380 | +2010-03,114.5 | |
| 381 | +2010-04,114.8 | |
| 382 | +2010-05,114.9 | |
| 383 | +2010-06,114.8 | |
| 384 | +2010-07,114.5 | |
| 385 | +2010-08,114.6 | |
| 386 | +2010-09,114.8 | |
| 387 | +2010-10,115.2 | |
| 388 | +2010-11,115.6 | |
| 389 | +2010-12,115.8 | |
| 390 | +2011-01,116.4 | |
| 391 | +2011-02,116.7 | |
| 392 | +2011-03,118.3 | |
| 393 | +2011-04,118.5 | |
| 394 | +2011-05,118.9 | |
| 395 | +2011-06,118.2 | |
| 396 | +2011-07,118.3 | |
| 397 | +2011-08,118.5 | |
| 398 | +2011-09,118.7 | |
| 399 | +2011-10,119.0 | |
| 400 | +2011-11,119.3 | |
| 401 | +2011-12,118.7 | |
| 402 | +2012-01,119.7 | |
| 403 | +2012-02,120.4 | |
| 404 | +2012-03,120.8 | |
| 405 | +2012-04,121.3 | |
| 406 | +2012-05,121.1 | |
| 407 | +2012-06,120.6 | |
| 408 | +2012-07,120.5 | |
| 409 | +2012-08,120.9 | |
| 410 | +2012-09,120.9 | |
| 411 | +2012-10,121.3 | |
| 412 | +2012-11,121.1 | |
| 413 | +2012-12,120.5 | |
| 414 | +2013-01,120.4 | |
| 415 | +2013-02,122.1 | |
| 416 | +2013-03,121.8 | |
| 417 | +2013-04,121.8 | |
| 418 | +2013-05,121.9 | |
| 419 | +2013-06,121.8 | |
| 420 | +2013-07,121.8 | |
| 421 | +2013-08,121.9 | |
| 422 | +2013-09,122.0 | |
| 423 | +2013-10,121.6 | |
| 424 | +2013-11,121.8 | |
| 425 | +2013-12,121.5 | |
| 426 | +2014-01,121.7 | |
| 427 | +2014-02,122.6 | |
| 428 | +2014-03,122.9 | |
| 429 | +2014-04,123.4 | |
| 430 | +2014-05,123.8 | |
| 431 | +2014-06,123.9 | |
| 432 | +2014-07,123.7 | |
| 433 | +2014-08,123.8 | |
| 434 | +2014-09,123.9 | |
| 435 | +2014-10,124.3 | |
| 436 | +2014-11,123.8 | |
| 437 | +2014-12,122.8 | |
| 438 | +2015-01,122.6 | |
| 439 | +2015-02,123.9 | |
| 440 | +2015-03,124.7 | |
| 441 | +2015-04,124.7 | |
| 442 | +2015-05,125.3 | |
| 443 | +2015-06,125.2 | |
| 444 | +2015-07,125.3 | |
| 445 | +2015-08,125.2 | |
| 446 | +2015-09,125.1 | |
| 447 | +2015-10,125.2 | |
| 448 | +2015-11,124.9 | |
| 449 | +2015-12,124.4 | |
| 450 | +2016-01,124.6 | |
| 451 | +2016-02,125.1 | |
| 452 | +2016-03,125.6 | |
| 453 | +2016-04,126.0 | |
| 454 | +2016-05,126.2 | |
| 455 | +2016-06,126.0 | |
| 456 | +2016-07,125.6 | |
| 457 | +2016-08,125.3 | |
| 458 | +2016-09,125.8 | |
| 459 | +2016-10,125.9 | |
| 460 | +2016-11,125.6 | |
| 461 | +2016-12,125.2 | |
| 462 | +2017-01,126.2 | |
| 463 | +2017-02,126.6 | |
| 464 | +2017-03,126.7 | |
| 465 | +2017-04,127.0 | |
| 466 | +2017-05,127.1 | |
| 467 | +2017-06,126.7 | |
| 468 | +2017-07,126.7 | |
| 469 | +2017-08,126.7 | |
| 470 | +2017-09,127.1 | |
| 471 | +2017-10,127.2 | |
| 472 | +2017-11,127.7 | |
| 473 | +2017-12,127.5 | |
| 474 | +2018-01,127.8 | |
| 475 | +2018-02,128.5 | |
| 476 | +2018-03,128.7 | |
| 477 | +2018-04,129.2 | |
| 478 | +2018-05,129.3 | |
| 479 | +2018-06,129.2 | |
| 480 | +2018-07,129.7 | |
| 481 | +2018-08,129.5 | |
| 482 | +2018-09,129.3 | |
| 483 | +2018-10,129.4 | |
| 484 | +2018-11,128.9 | |
| 485 | +2018-12,128.9 | |
| 486 | +2019-01,129.1 | |
| 487 | +2019-02,130.2 | |
| 488 | +2019-03,131.0 | |
| 489 | +2019-04,131.5 | |
| 490 | +2019-05,132.4 | |
| 491 | +2019-06,132.0 | |
| 492 | +2019-07,132.6 | |
| 493 | +2019-08,132.4 | |
| 494 | +2019-09,132.1 | |
| 495 | +2019-10,132.4 | |
| 496 | +2019-11,132.4 | |
| 497 | +2019-12,132.4 | |
| 498 | +2020-01,132.6 | |
| 499 | +2020-02,133.2 | |
| 500 | +2020-03,132.5 | |
| 501 | +2020-04,131.7 | |
| 502 | +2020-05,131.9 | |
| 503 | +2020-06,132.8 | |
| 504 | +2020-07,133.0 | |
| 505 | +2020-08,132.9 | |
| 506 | +2020-09,132.5 | |
| 507 | +2020-10,133.1 | |
| 508 | +2020-11,133.5 | |
| 509 | +2020-12,133.4 | |
| 510 | +2021-01,134.3 | |
| 511 | +2021-02,135.3 | |
| 512 | +2021-03,135.4 | |
| 513 | +2021-04,136.2 | |
| 514 | +2021-05,137.3 | |
| 515 | +2021-06,137.7 | |
| 516 | +2021-07,138.5 | |
| 517 | +2021-08,138.7 | |
| 518 | +2021-09,139.2 | |
| 519 | +2021-10,140.2 | |
| 520 | +2021-11,140.5 | |
| 521 | +2021-12,140.2 | |
| 522 | +2022-01,141.1 | |
| 523 | +2022-02,142.6 | |
| 524 | +2022-03,144.5 | |
| 525 | +2022-04,145.5 | |
| 526 | +2022-05,147.6 | |
| 527 | +2022-06,148.7 | |
| 528 | +2022-07,148.6 | |
| 529 | +2022-08,148.6 | |
| 530 | +2022-09,148.3 | |
| 531 | +2022-10,149.2 | |
| 532 | +2022-11,150.1 | |
| 533 | +2022-12,149.0 | |
| 534 | +2023-01,149.9 | |
| 535 | +2023-02,150.6 | |
| 536 | +2023-03,151.3 | |
| 537 | +2023-04,152.5 | |
| 538 | +2023-05,153.5 | |
| 539 | +2023-06,154.1 | |
| 540 | +2023-07,154.4 | |
| 541 | +2023-08,155.4 | |
| 542 | +2023-09,155.4 | |
| 543 | +2023-10,155.4 | |
| 544 | +2023-11,155.5 | |
| 545 | +2023-12,155.0 | |
| 546 | +2024-01,154.8 | |
| 547 | +2024-02,155.5 | |
| 548 | +2024-03,156.7 | |
| 549 | +2024-04,157.0 | |
| 550 | +2024-05,158.2 | |
| 551 | +2024-06,157.5 | |
| 552 | +2024-07,157.9 | |
| 553 | +2024-08,157.7 | |
| 554 | +2024-09,157.4 | |
| 555 | +2024-10,157.9 | |
| 556 | +2024-11,157.8 | |
| 557 | +2024-12,157.5 | |
| 558 | +2025-01,157.6 | |
| 559 | +2025-02,158.6 | |
| 560 | +2025-03,159.7 | |
| 561 | +2025-04,160.4 | |
| 562 | +2025-05,160.9 | |
| 563 | +2025-06,161.0 | |
| 564 | +2025-07,161.6 | |
| 565 | +2025-08,161.9 | |
| 566 | +2025-09,162.6 | |
| 567 | +2025-10,162.9 | |
| 568 | +2025-11,162.6 | |
| 569 | +2025-12,162.6 | |
| 570 | +2026-01,162.3 | |
| 571 | +2026-02,163.1 | |
| 572 | +2026-03,164.3 | |
| 573 | +2026-04,165.2 | |
| 574 | +2026-05,166.7 | |
| 575 | +2026-06,166.2 | |
| 576 | +2026-07,167.0 | |
| 577 | +2026-08,166.9 | |
| 578 | +2026-09,167.7 | |
modified
manuscript/chapters/ch13.tex
+1 −1
@@ -479,7 +479,7 @@ RL0501A & Appartenance à la catégorie des terrains vagues desservis & O & bool | ||
| 479 | 479 | \tabsource{MAMH, Répertoire des renseignements prescrits du rôle d'évaluation foncière en format ouvert, version 2.5 (24 mars 2022), fichier \texttt{data/raw/mamh\_roles\_evaluation/} \parencite{dqrepertoire} ; sélection et lecture de l'auteur.} |
| 480 | 480 | \end{table} |
| 481 | 481 | |
| 482 | −\begin{figure}[tbp] | |
| 482 | +\begin{figure}[htbp] | |
| 483 | 483 | \centering |
| 484 | 484 | \includegraphics[width=\linewidth]{ch13/ch13-fig-rfu.pdf} |
| 485 | 485 | \caption{Composition de l'évaluation imposable uniformisée 2026 par catégorie d'immeubles pour Montréal, Québec et Gatineau, et montant total (en milliards de dollars). La part des résidences d'un logement passe de 20~\% à Montréal à 56~\% à Gatineau ; celle des immeubles à logements et des copropriétés suit le mouvement inverse.}\label{fig:13:rfu} |
modified
manuscript/chapters/ch14.tex
+25 −25
@@ -88,7 +88,7 @@ Le \cref{tab:14:regles} présente les sept règles appliquées au jeu brut du ca | ||
| 88 | 88 | \caption{Règles déterministes appliquées au jeu brut du cas 1 et effet sur le nombre d'inscriptions}\label{tab:14:regles} |
| 89 | 89 | \centering |
| 90 | 90 | \small |
| 91 | −\begin{tabularx}{\textwidth}{lYlS[table-format=2.0]S[table-format=3.0]} | |
| 91 | +\begin{tabularx}{\textwidth}{l>{\hsize=1.35\hsize}Y>{\hsize=0.65\hsize}YS[table-format=2.0]S[table-format=3.0]} | |
| 92 | 92 | \toprule |
| 93 | 93 | Règle & Test & Action & {Touchées} & {Conservées} \\ |
| 94 | 94 | \midrule |
@@ -144,10 +144,10 @@ Le \cref{tab:14:masquage} compare, secteur par secteur, le score classique et le | ||
| 144 | 144 | \begin{table}[htbp] |
| 145 | 145 | \caption{Effet de masquage : scores classique et robuste du logarithme du prix au mètre carré, par secteur, avant le retrait des prix symboliques (données synthétiques)}\label{tab:14:masquage} |
| 146 | 146 | \centering |
| 147 | −\small | |
| 147 | +\small\setlength{\tabcolsep}{4.5pt} | |
| 148 | 148 | \begin{tabular}{lS[table-format=3.0]S[table-format=1.3]S[table-format=1.3]S[table-format=2.0]S[table-format=2.0]S[table-format=1.0]} |
| 149 | 149 | \toprule |
| 150 | −Secteur & {$n$} & {Écart-type $s$} & {$1{,}4826\,\mathrm{MAD}$} & {$|z_{\text{class.}}| > 3{,}5$} & {$|z_{\text{rob.}}| > 3{,}5$} & {Prix à 1 \$} \\ | |
| 150 | +Secteur & {$n$} & {$s$} & {$1{,}4826\,\mathrm{MAD}$} & {$|z_{\text{class.}}| > 3{,}5$} & {$|z_{\text{rob.}}| > 3{,}5$} & {Prix à 1 \$} \\ | |
| 151 | 151 | \midrule |
| 152 | 152 | Hull & 193 & 1.395 & 0.181 & 2 & 10 & 2 \\ |
| 153 | 153 | Gatineau & 207 & 0.976 & 0.190 & 1 & 5 & 1 \\ |
@@ -222,22 +222,22 @@ La \cref{fig:14:levier} montre les 581 ventes de la première itération dans le | ||
| 222 | 222 | \begin{table}[htbp] |
| 223 | 223 | \caption{Les huit ventes exclues par les scores robustes (S1) et par la régression (E1), avec leur nature réelle dans la table de vérité (données synthétiques)}\label{tab:14:exclus} |
| 224 | 224 | \centering |
| 225 | −\small\setlength{\tabcolsep}{4pt} | |
| 225 | +\footnotesize\setlength{\tabcolsep}{3pt} | |
| 226 | 226 | \begin{tabular}{llS[table-format=3.0]S[table-format=6.0]S[table-format=-1.2]S[table-format=-1.2]S[table-format=-1.2]S[table-format=1.3]l} |
| 227 | 227 | \toprule |
| 228 | −Inscription & Secteur & {Sup. (m\textsuperscript{2})} & {Prix (\$)} & {$z$ prix/m\textsuperscript{2}} & {$z$ terrain} & {$t_i$} & {$D_i$} & Nature réelle \\ | |
| 228 | +Inscr. & Secteur & {Sup. (m\textsuperscript{2})} & {Prix (\$)} & {$z$ prix/m\textsuperscript{2}} & {$z$ terrain} & {$t_i$} & {$D_i$} & Nature réelle \\ | |
| 229 | 229 | \midrule |
| 230 | 230 | \multicolumn{9}{l}{\textit{Étape S1 — scores robustes, seuil 3,5}} \\ |
| 231 | −B0173 & Hull & 121 & 155500 & -6.50 & 0.37 & {---} & {---} & vente liée non déclarée \\ | |
| 232 | −B0006 & Aylmer & 160 & 231500 & -5.47 & -0.34 & {---} & {---} & vente liée non déclarée \\ | |
| 233 | −B0105 & Hull & 116 & 179000 & -5.32 & 0.26 & {---} & {---} & vente liée non déclarée \\ | |
| 234 | −B0003 & Hull & 241 & 492000 & -3.51 & -2.06 & {---} & {---} & vente sincère (faux positif) \\ | |
| 235 | −B0021 & Aylmer & 165 & 334000 & -3.50 & 1.05 & {---} & {---} & vente liée non déclarée \\ | |
| 236 | −B0558 & Gatineau & 174 & 622000 & 0.19 & -3.92 & {---} & {---} & vente sincère (faux positif) \\ | |
| 231 | +B0173 & Hull & 121 & 155500 & -6.50 & 0.37 & {---} & {---} & liée, non déclarée \\ | |
| 232 | +B0006 & Aylmer & 160 & 231500 & -5.47 & -0.34 & {---} & {---} & liée, non déclarée \\ | |
| 233 | +B0105 & Hull & 116 & 179000 & -5.32 & 0.26 & {---} & {---} & liée, non déclarée \\ | |
| 234 | +B0003 & Hull & 241 & 492000 & -3.51 & -2.06 & {---} & {---} & sincère (faux positif) \\ | |
| 235 | +B0021 & Aylmer & 165 & 334000 & -3.50 & 1.05 & {---} & {---} & liée, non déclarée \\ | |
| 236 | +B0558 & Gatineau & 174 & 622000 & 0.19 & -3.92 & {---} & {---} & sincère (faux positif) \\ | |
| 237 | 237 | \addlinespace |
| 238 | 238 | \multicolumn{9}{l}{\textit{Étape E1 — résidu studentisé externe, seuil 3, première itération ($n = 581$, $k = 16$)}} \\ |
| 239 | −B0410 & Hull & 99 & 249000 & {---} & {---} & -6.70 & 0.048 & vente liée non déclarée \\ | |
| 240 | −B0039 & Gatineau & 150 & 282500 & {---} & {---} & -5.84 & 0.084 & vente liée non déclarée \\ | |
| 239 | +B0410 & Hull & 99 & 249000 & {---} & {---} & -6.70 & 0.048 & liée, non déclarée \\ | |
| 240 | +B0039 & Gatineau & 150 & 282500 & {---} & {---} & -5.84 & 0.084 & liée, non déclarée \\ | |
| 241 | 241 | \bottomrule |
| 242 | 242 | \end{tabular} |
| 243 | 243 | \tabsource{\synth{analysis/python/cases/ch14\_nettoyage.py ; les scores $z$ sont calculés par secteur sur le logarithme}} |
@@ -260,10 +260,10 @@ Faute d'adresses réelles à géocoder, on peut mesurer ce que coûte une erreur | ||
| 260 | 260 | \begin{table}[htbp] |
| 261 | 261 | \caption{Effet simulé d'une erreur de position sur les variables spatiales du cas 1, par technique de géocodage (écarts-types hypothétiques)}\label{tab:14:geocodage} |
| 262 | 262 | \centering |
| 263 | −\small | |
| 263 | +\footnotesize\setlength{\tabcolsep}{3.5pt} | |
| 264 | 264 | \begin{tabular}{lS[table-format=4.0]S[table-format=4.0]S[table-format=4.0]S[table-format=1.2]S[table-format=2.1]S[table-format=-1.4]} |
| 265 | 265 | \toprule |
| 266 | −Technique & {$\sigma_g$ (m)} & {Erreur médiane (m)} & {95\textsuperscript{e} centile (m)} & {Rayon 3 km modifié (\%)} & {Voisins conservés (\%)} & {$\hat\beta_{\text{dist}}$} \\ | |
| 266 | +Technique & {$\sigma_g$ (m)} & {Err. méd. (m)} & {95\textsuperscript{e} cent. (m)} & {Rayon modifié (\%)} & {Voisins conservés (\%)} & {$\hat\beta_{\text{dist}}$} \\ | |
| 267 | 267 | \midrule |
| 268 | 268 | Point d'adresse & 5 & 6 & 12 & 0.00 & 99.1 & -0.0036 \\ |
| 269 | 269 | Centroïde de parcelle & 15 & 18 & 35 & 0.00 & 97.1 & -0.0036 \\ |
@@ -304,16 +304,16 @@ Le script du chapitre construit un extrait de rôle fictif de 600 unités et des | ||
| 304 | 304 | \caption{Appariement des 618 inscriptions brutes du cas 1 à l'extrait de rôle fictif, par palier (données synthétiques)}\label{tab:14:appariement} |
| 305 | 305 | \centering |
| 306 | 306 | \small |
| 307 | −\begin{tabular}{llS[table-format=3.0]S[table-format=2.1]S[table-format=1.0]} | |
| 307 | +\begin{tabularx}{\textwidth}{lYS[table-format=3.0]S[table-format=2.1]S[table-format=1.0]} | |
| 308 | 308 | \toprule |
| 309 | −Palier & Critère & {Inscriptions} & {Part (\%)} & {Faux appariements} \\ | |
| 309 | +Palier & Critère & {Inscriptions} & {Part (\%)} & {Faux appar.} \\ | |
| 310 | 310 | \midrule |
| 311 | 311 | 1 & matricule identique, caractère pour caractère & 367 & 59.4 & 0 \\ |
| 312 | 312 | 2 & matricule normalisé (chiffres seulement) & 198 & 32.0 & 0 \\ |
| 313 | 313 | 3 & secteur, année de construction et terrain à 2 \% près ; candidat unique & 45 & 7.3 & 0 \\ |
| 314 | 314 | {---} & non apparié (dont 3 cas ambigus au palier 3) & 8 & 1.3 & {---} \\ |
| 315 | 315 | \bottomrule |
| 316 | −\end{tabular} | |
| 316 | +\end{tabularx} | |
| 317 | 317 | \tabsource{\synth{analysis/python/cases/ch14\_nettoyage.py (fonction \texttt{appariement\_role}) ; la vérité est connue par construction}} |
| 318 | 318 | \end{table} |
| 319 | 319 | |
@@ -344,10 +344,10 @@ Le \cref{tab:14:imputation} compare les quatre traitements sur le cas 1, toute l | ||
| 344 | 344 | \begin{table}[htbp] |
| 345 | 345 | \caption{Quatre traitements des 45 valeurs manquantes du jeu brut du cas 1 et leur effet sur le modèle hédonique (données synthétiques)}\label{tab:14:imputation} |
| 346 | 346 | \centering |
| 347 | −\small | |
| 347 | +\footnotesize\setlength{\tabcolsep}{4pt} | |
| 348 | 348 | \begin{tabular}{lS[table-format=3.0]S[table-format=1.4]S[table-format=1.4]S[table-format=1.4]S[table-format=1.4]S[table-format=6.0]} |
| 349 | 349 | \toprule |
| 350 | −Traitement & {$n$} & {$\sigma$} & {$\hat\beta_{\ln T}$} & {e.-t.} & {$\hat\beta_{\text{qualité}}$} & {Prédiction sujet (\$)} \\ | |
| 350 | +Traitement & {$n$} & {$\sigma$} & {$\hat\beta_{\ln T}$} & {e.-t.} & {$\hat\beta_{\text{qual.}}$} & {Prédiction (\$)} \\ | |
| 351 | 351 | \midrule |
| 352 | 352 | Suppression par liste & 535 & 0.0809 & 0.0969 & 0.0112 & 0.0613 & 640921 \\ |
| 353 | 353 | Médiane conditionnelle (secteur $\times$ type) & 579 & 0.0837 & 0.0941 & 0.0113 & 0.0598 & 637017 \\ |
@@ -397,15 +397,15 @@ La chaîne de traitement enchaîne les étapes des sections précédentes dans l | ||
| 397 | 397 | \begin{table}[htbp] |
| 398 | 398 | \caption{Le modèle hédonique de référence réestimé à chaque étape du nettoyage et sur le jeu propre (données synthétiques)}\label{tab:14:modeles} |
| 399 | 399 | \centering |
| 400 | −\small\setlength{\tabcolsep}{4pt} | |
| 400 | +\footnotesize\setlength{\tabcolsep}{3pt} | |
| 401 | 401 | \begin{tabular}{lS[table-format=3.0]S[table-format=1.3]S[table-format=1.4]S[table-format=1.4]S[table-format=1.4]S[table-format=1.4]S[table-format=1.2]S[table-format=1.4]S[table-format=6.0]} |
| 402 | 402 | \toprule |
| 403 | −Jeu & {$n$} & {$R^2$} & {$\sigma$} & {$\hat\beta_{\ln S}$} & {e.-t.} & {$\hat\beta_{\text{qual.}}$} & {Mois (\%)} & {$\hat\beta_{\text{Aylmer}}$} & {Prédiction (\$)} \\ | |
| 403 | +Jeu & {$n$} & {$R^2$} & {$\sigma$} & {$\hat\beta_{\ln S}$} & {e.-t.} & {$\hat\beta_{\text{qual.}}$} & {Mois (\%)} & {$\hat\beta_{\text{Aylm.}}$} & {Préd. (\$)} \\ | |
| 404 | 404 | \midrule |
| 405 | 405 | Brut, lignes complètes & 573 & 0.039 & 1.2311 & 0.2009 & 0.0757 & 0.0569 & 0.18 & 0.0212 & 565471 \\ |
| 406 | −Après règles, G1 et I1 & 587 & 0.755 & 0.1132 & 0.5432 & 0.0161 & 0.0536 & 0.42 & 0.1166 & 634782 \\ | |
| 407 | −Après scores robustes S1 & 581 & 0.832 & 0.0897 & 0.5377 & 0.0144 & 0.0570 & 0.36 & 0.1008 & 636062 \\ | |
| 408 | −Après régression E1 (nettoyé) & 579 & 0.850 & 0.0837 & 0.5335 & 0.0132 & 0.0598 & 0.36 & 0.0841 & 637017 \\ | |
| 406 | +Après règles, G1, I1 & 587 & 0.755 & 0.1132 & 0.5432 & 0.0161 & 0.0536 & 0.42 & 0.1166 & 634782 \\ | |
| 407 | +Après scores S1 & 581 & 0.832 & 0.0897 & 0.5377 & 0.0144 & 0.0570 & 0.36 & 0.1008 & 636062 \\ | |
| 408 | +Après régression E1 & 579 & 0.850 & 0.0837 & 0.5335 & 0.0132 & 0.0598 & 0.36 & 0.0841 & 637017 \\ | |
| 409 | 409 | \midrule |
| 410 | 410 | Jeu propre de référence & 600 & 0.853 & 0.0830 & 0.5391 & 0.0127 & 0.0611 & 0.36 & 0.0854 & 637953 \\ |
| 411 | 411 | \bottomrule |
modified
manuscript/chapters/ch15.tex
+33 −33
@@ -113,10 +113,10 @@ Le \cref{tab:15:indicateurs} applique ces définitions aux chiffres publiés par | ||
| 113 | 113 | |
| 114 | 114 | \begin{table}[htbp] |
| 115 | 115 | \caption{Indicateurs de conjoncture de la revente, troisième trimestre de 2026, propriétés résidentielles vendues par courtier}\label{tab:15:indicateurs} |
| 116 | −\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 116 | +\centering\footnotesize\setlength{\tabcolsep}{3pt} | |
| 117 | 117 | \begin{tabular}{@{}lS[table-format=1.1]S[table-format=2.1]S[table-format=2.0]S[table-format=2.0]S[table-format=2.0]S[table-format=1.1]@{}} |
| 118 | 118 | \toprule |
| 119 | −Territoire & {Mois d'inv.} & {Absorption (\%/mois)} & {Délai unif. (j)} & {Délai copro. (j)} & {Délai plex (j)} & {Stock/flux} \\ | |
| 119 | +Territoire & {Mois d'inv.} & {Absorp. (\%/mois)} & {Délai unif. (j)} & {Délai copro. (j)} & {Délai plex (j)} & {Stock/flux} \\ | |
| 120 | 120 | \midrule |
| 121 | 121 | Province de Québec & 6.1 & 16.5 & 45 & 58 & 48 & 4.1 \\ |
| 122 | 122 | RMR de Montréal & 6.6 & 15.2 & 40 & 61 & 51 & 5.0 \\ |
@@ -145,10 +145,10 @@ Les indicateurs métropolitains sont nécessaires mais insuffisants : le sujet s | ||
| 145 | 145 | |
| 146 | 146 | \begin{table}[htbp] |
| 147 | 147 | \caption{Répartition des ventes résidentielles entre les secteurs de la RMR de Gatineau : marché réel du troisième trimestre de 2026 et jeu synthétique du cas 1}\label{tab:15:parts} |
| 148 | −\centering\small | |
| 149 | −\begin{tabular}{@{}lS[table-format=3.0]S[table-format=2.1]S[table-format=3.0]S[table-format=2.1]S[table-format=6.0]@{}} | |
| 148 | +\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 149 | +\begin{tabular}{@{}lS[table-format=4.0]S[table-format=3.1]S[table-format=3.0]S[table-format=3.1]S[table-format=6.0]@{}} | |
| 150 | 150 | \toprule |
| 151 | −Secteur & {Ventes T3 2026} & {Part (\%)} & {Ventes synth.} & {Part (\%)} & {Médiane unif. T3 2026 (\$)} \\ | |
| 151 | +Secteur & {Ventes T3 2026} & {Part (\%)} & {Ventes synth.} & {Part (\%)} & {Méd. unif. T3 2026 (\$)} \\ | |
| 152 | 152 | \midrule |
| 153 | 153 | Gatineau & 346 & 33.1 & 200 & 33.3 & 464900 \\ |
| 154 | 154 | Hull & 174 & 16.7 & 186 & 31.0 & 475000 \\ |
@@ -212,10 +212,10 @@ Les variables de classification retenues sont de deux natures : les attributs du | ||
| 212 | 212 | |
| 213 | 213 | \begin{table}[htbp] |
| 214 | 214 | \caption{Silhouette moyenne et inertie selon le nombre de segments, 600 ventes du cas 1, variables : attributs et coordonnées centrés-réduits (données synthétiques)}\label{tab:15:silhouette} |
| 215 | −\centering\small | |
| 215 | +\centering\footnotesize | |
| 216 | 216 | \begin{tabular}{@{}S[table-format=1.0]S[table-format=1.3]S[table-format=1.3]S[table-format=4.0]S[table-format=1.3]@{}} |
| 217 | 217 | \toprule |
| 218 | −{$k$} & {$\bar s$ k-moyennes} & {$\bar s$ Ward} & {Inertie k-moyennes} & {ARI k-moyennes / Ward} \\ | |
| 218 | +{$k$} & {$\bar s$, k-moy.} & {$\bar s$, Ward} & {Inertie, k-moy.} & {ARI k-moy./Ward} \\ | |
| 219 | 219 | \midrule |
| 220 | 220 | 2 & 0.417 & 0.417 & 3261 & 1.000 \\ |
| 221 | 221 | 3 & 0.225 & 0.225 & 2749 & 1.000 \\ |
@@ -247,10 +247,10 @@ Trois enseignements se dégagent. Le premier est que la structure la plus nette | ||
| 247 | 247 | |
| 248 | 248 | \begin{table}[htbp] |
| 249 | 249 | \caption{Profil des cinq segments des k-moyennes (attributs et coordonnées) et croisement avec les secteurs, cas 1 (données synthétiques)}\label{tab:15:profil} |
| 250 | −\centering\footnotesize\setlength{\tabcolsep}{3.5pt} | |
| 250 | +\centering\scriptsize\setlength{\tabcolsep}{2.5pt} | |
| 251 | 251 | \begin{tabular}{@{}cS[table-format=3.0]S[table-format=3.1]S[table-format=2.0]S[table-format=1.2]S[table-format=2.1]S[table-format=6.0]S[table-format=4.0]S[table-format=3.0]S[table-format=3.0]S[table-format=3.0]S[table-format=2.0]S[table-format=2.0]@{}} |
| 252 | 252 | \toprule |
| 253 | −Seg. & {$n$} & {Sup. méd. (m\textsuperscript{2})} & {Âge méd.} & {Qualité moy.} & {Dist. centre méd. (km)} & {Prix méd. (\$)} & {\$/m\textsuperscript{2} méd.} & {Hull} & {Gatineau} & {Aylmer} & {Buck.} & {M.-A.} \\ | |
| 253 | +Seg. & {$n$} & {Sup. (m\textsuperscript{2})} & {Âge} & {Qual.} & {Dist. (km)} & {Prix (\$)} & {\$/m\textsuperscript{2}} & {Hull} & {Gat.} & {Ayl.} & {Buck.} & {M.-A.} \\ | |
| 254 | 254 | \midrule |
| 255 | 255 | 1 & 197 & 135.0 & 41 & 3.36 & 6.9 & 523500 & 3655 & 69 & 83 & 45 & 0 & 0 \\ |
| 256 | 256 | 2 & 89 & 145.0 & 43 & 3.09 & 28.1 & 371000 & 2684 & 0 & 0 & 0 & 42 & 47 \\ |
@@ -259,7 +259,7 @@ Seg. & {$n$} & {Sup. méd. (m\textsuperscript{2})} & {Âge méd.} & {Qualité mo | ||
| 259 | 259 | 5 & 98 & 116.0 & 34 & 3.14 & 6.9 & 446750 & 3853 & 33 & 48 & 17 & 0 & 0 \\ |
| 260 | 260 | \bottomrule |
| 261 | 261 | \end{tabular} |
| 262 | −\tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py}, k-moyennes à $k = 5$, 20 initialisations, graine 20261031 ; silhouette moyenne 0,188 ; indice de Rand ajusté avec les secteurs 0,124.}} | |
| 262 | +\tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py}, k-moyennes à $k = 5$, 20 initialisations, graine 20261031 ; superficie, âge, distance au centre et prix : médianes ; qualité : moyenne ; les cinq dernières colonnes donnent le nombre de ventes de chaque secteur dans le segment ; silhouette moyenne 0,188 ; indice de Rand ajusté avec les secteurs 0,124.}} | |
| 263 | 263 | \end{table} |
| 264 | 264 | |
| 265 | 265 | \begin{figure}[htbp] |
@@ -300,22 +300,22 @@ Le \cref{tab:15:coefficients} présente, pour chacun des cinq secteurs, les coef | ||
| 300 | 300 | |
| 301 | 301 | \begin{table}[htbp] |
| 302 | 302 | \caption{Coefficients hédoniques estimés séparément dans chaque secteur (erreurs-types HC1 entre parenthèses) et coefficient commun du modèle de référence, cas 1 (données synthétiques)}\label{tab:15:coefficients} |
| 303 | −\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 304 | −\begin{tabular}{@{}lccccccc@{}} | |
| 303 | +\centering\footnotesize\setlength{\tabcolsep}{3pt} | |
| 304 | +\begin{tabular}{@{}lcccccc@{}} | |
| 305 | 305 | \toprule |
| 306 | −Secteur & $n$ & ln(superficie) & ln(terrain) & Âge & Qualité & Garage & Tendance (mois) \\ | |
| 306 | +Secteur & $n$ & ln(superficie) & ln(terrain) & Âge & Qualité & Tendance (mois) \\ | |
| 307 | 307 | \midrule |
| 308 | −Hull & 186 & 0,540 (0,022) & 0,083 (0,021) & $-$0,0043 (0,0010) & 0,064 (0,007) & 0,040 (0,009) & 0,0032 (0,0005) \\ | |
| 309 | −Gatineau & 200 & 0,556 (0,020) & 0,109 (0,020) & $-$0,0054 (0,0009) & 0,058 (0,008) & 0,031 (0,009) & 0,0035 (0,0005) \\ | |
| 310 | −Aylmer & 125 & 0,513 (0,029) & 0,047 (0,025) & $-$0,0032 (0,0016) & 0,054 (0,011) & 0,023 (0,013) & 0,0044 (0,0006) \\ | |
| 311 | −Buckingham & 42 & 0,536 (0,051) & 0,096 (0,046) & $-$0,0055 (0,0025) & 0,048 (0,017) & 0,010 (0,017) & 0,0039 (0,0012) \\ | |
| 312 | −Masson-Angers & 47 & 0,558 (0,061) & 0,161 (0,038) & $-$0,0053 (0,0023) & 0,078 (0,017) & 0,044 (0,019) & 0,0030 (0,0012) \\ | |
| 308 | +Hull & 186 & 0,540 (0,022) & 0,083 (0,021) & $-$0,0043 (0,0010) & 0,064 (0,007) & 0,0032 (0,0005) \\ | |
| 309 | +Gatineau & 200 & 0,556 (0,020) & 0,109 (0,020) & $-$0,0054 (0,0009) & 0,058 (0,008) & 0,0035 (0,0005) \\ | |
| 310 | +Aylmer & 125 & 0,513 (0,029) & 0,047 (0,025) & $-$0,0032 (0,0016) & 0,054 (0,011) & 0,0044 (0,0006) \\ | |
| 311 | +Buckingham & 42 & 0,536 (0,051) & 0,096 (0,046) & $-$0,0055 (0,0025) & 0,048 (0,017) & 0,0039 (0,0012) \\ | |
| 312 | +Masson-Angers & 47 & 0,558 (0,061) & 0,161 (0,038) & $-$0,0053 (0,0023) & 0,078 (0,017) & 0,0030 (0,0012) \\ | |
| 313 | 313 | \midrule |
| 314 | −Modèle commun & 600 & 0,539 (0,013) & 0,094 (0,011) & $-$0,0051 (0,0006) & 0,061 (0,004) & 0,032 (0,005) & 0,0036 (0,0003) \\ | |
| 315 | −Loi de génération & {---} & 0,55 & 0,10 & $-$0,0055 & 0,06 & 0,035 & 0,0036 \\ | |
| 314 | +Modèle commun & 600 & 0,539 (0,013) & 0,094 (0,011) & $-$0,0051 (0,0006) & 0,061 (0,004) & 0,0036 (0,0003) \\ | |
| 315 | +Loi de génération & {---} & 0,55 & 0,10 & $-$0,0055 & 0,06 & 0,0036 \\ | |
| 316 | 316 | \bottomrule |
| 317 | 317 | \end{tabular} |
| 318 | −\tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py} ; modèle commun : \texttt{traite.cas1.hedonique} (indicatrices de secteur incluses) ; chaque équation de secteur comprend aussi l'âge au carré, le sous-sol fini, la piscine, le type et la distance au centre ; loi de génération : \texttt{data/synthetic/README.md} (la tendance mensuelle de 0,0036 découle de la croissance annuelle de 4,43 \%).}} | |
| 318 | +\tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py} ; modèle commun : \texttt{traite.cas1.hedonique} (indicatrices de secteur incluses) ; chaque équation de secteur comprend aussi l'âge au carré, le garage, le sous-sol fini, la piscine, le type et la distance au centre ; loi de génération : \texttt{data/synthetic/README.md} (la tendance mensuelle de 0,0036 découle de la croissance annuelle de 4,43 \%).}} | |
| 319 | 319 | \end{table} |
| 320 | 320 | |
| 321 | 321 | \begin{figure}[htbp] |
@@ -361,10 +361,10 @@ Le test de Chow dit si les coefficients diffèrent significativement ; il ne dit | ||
| 361 | 361 | |
| 362 | 362 | \begin{table}[htbp] |
| 363 | 363 | \caption{Précision prédictive hors échantillon (validation croisée à dix plis) de sept spécifications, cas 1 (données synthétiques)}\label{tab:15:cv} |
| 364 | −\centering\small | |
| 365 | −\begin{tabular}{@{}lS[table-format=1.4]S[table-format=1.2]S[table-format=1.2]@{}} | |
| 364 | +\centering\footnotesize | |
| 365 | +\begin{tabularx}{\textwidth}{@{}YS[table-format=1.4]S[table-format=1.2]S[table-format=1.2]@{}} | |
| 366 | 366 | \toprule |
| 367 | −Spécification & {RMSE (log)} & {Erreur abs. médiane (\%)} & {Erreur abs. moyenne (\%)} \\ | |
| 367 | +Spécification & {RMSE (log)} & {Err. abs. méd. (\%)} & {Err. abs. moy. (\%)} \\ | |
| 368 | 368 | \midrule |
| 369 | 369 | Équation unique sans segment & 0.1053 & 7.08 & 8.39 \\ |
| 370 | 370 | Pentes communes + indicatrices de secteur (référence) & 0.0839 & 5.81 & 6.79 \\ |
@@ -374,7 +374,7 @@ Une équation par segment k-moyennes, $k = 2$ & 0.0904 & 6.65 & 7.37 \\ | ||
| 374 | 374 | Pentes communes + indicatrices k-moyennes, $k = 5$ & 0.0901 & 6.55 & 7.33 \\ |
| 375 | 375 | Une équation par segment k-moyennes, $k = 5$ & 0.0942 & 6.71 & 7.62 \\ |
| 376 | 376 | \bottomrule |
| 377 | −\end{tabular} | |
| 377 | +\end{tabularx} | |
| 378 | 378 | \tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py} ; dix plis aléatoires, graine 20261031 ; erreurs en pourcentage calculées sur $\exp(\text{résidu}) - 1$.}} |
| 379 | 379 | \end{table} |
| 380 | 380 | |
@@ -386,17 +386,17 @@ Les conclusions des deux sections précédentes dépendent de choix de l'analyst | ||
| 386 | 386 | |
| 387 | 387 | \begin{table}[htbp] |
| 388 | 388 | \caption{Sensibilité de la segmentation statistique au jeu de variables de classification, k-moyennes, cas 1 (données synthétiques)}\label{tab:15:sens} |
| 389 | −\centering\small | |
| 390 | −\begin{tabular}{@{}lcS[table-format=1.3]S[table-format=1.3]S[table-format=1.3]S[table-format=1.3]@{}} | |
| 389 | +\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 390 | +\begin{tabularx}{\textwidth}{@{}YcS[table-format=1.3]S[table-format=1.3]S[table-format=1.3]S[table-format=1.3]@{}} | |
| 391 | 391 | \toprule |
| 392 | −Variables & $k$ optimal & {$\bar s$ au $k$ optimal} & {ARI secteurs au $k$ optimal} & {$\bar s$ à $k = 5$} & {ARI secteurs à $k = 5$} \\ | |
| 392 | +Variables & $k^{*}$ & {$\bar s$ à $k^{*}$} & {ARI à $k^{*}$} & {$\bar s$ à $k = 5$} & {ARI à $k = 5$} \\ | |
| 393 | 393 | \midrule |
| 394 | 394 | Attributs seuls (superficie, terrain, âge, qualité, type) & 2 & 0.221 & 0.001 & 0.180 & 0.048 \\ |
| 395 | 395 | Coordonnées seules (x, y, distance au centre) & 2 & 0.735 & 0.213 & 0.672 & 0.986 \\ |
| 396 | 396 | Attributs et coordonnées & 2 & 0.417 & 0.213 & 0.188 & 0.124 \\ |
| 397 | 397 | \bottomrule |
| 398 | −\end{tabular} | |
| 399 | −\tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py}, 20 initialisations, graine 20261031 ; ARI : indice de Rand ajusté entre la partition et les cinq secteurs.}} | |
| 398 | +\end{tabularx} | |
| 399 | +\tabsource{\synth{\texttt{analysis/python/cases/ch15\_segmentation.py}, 20 initialisations, graine 20261031 ; $k^{*}$ : nombre de segments maximisant la silhouette ; ARI : indice de Rand ajusté entre la partition et les cinq secteurs.}} | |
| 400 | 400 | \end{table} |
| 401 | 401 | |
| 402 | 402 | \section{L'étude de marché locatif : l'immeuble du cas 3}\label{sec:15:locatif} |
@@ -439,10 +439,10 @@ La zone 9 est un marché locatif de grande taille, avec 44\,554 appartements d'i | ||
| 439 | 439 | |
| 440 | 440 | \begin{table}[htbp] |
| 441 | 441 | \caption{Loyers de l'immeuble du cas 3 par type de logement et loyers moyens de la zone SCHL 9 (données synthétiques pour l'immeuble ; SCHL pour la zone)}\label{tab:15:cas3} |
| 442 | −\centering\small | |
| 443 | −\begin{tabular}{@{}lS[table-format=1.0]S[table-format=4.0]S[table-format=4.0]S[table-format=4.0]S[table-format=1.3]S[table-format=2.1]@{}} | |
| 442 | +\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 443 | +\begin{tabular}{@{}lS[table-format=2.0]S[table-format=5.0]S[table-format=5.0]S[table-format=4.0]S[table-format=1.3]S[table-format=2.1]@{}} | |
| 444 | 444 | \toprule |
| 445 | −Type (immeuble / SCHL) & {$n$} & {Loyer contractuel moyen (\$)} & {Loyer de marché moyen (\$)} & {Loyer moyen zone 9 (\$)} & {Marché / zone} & {Écart contrat--marché (\%)} \\ | |
| 445 | +Type (immeuble / SCHL) & {$n$} & {Contrat (\$)} & {Marché (\$)} & {Zone 9 (\$)} & {Marché/zone} & {Écart (\%)} \\ | |
| 446 | 446 | \midrule |
| 447 | 447 | 3½ / 1 chambre & 4 & 875 & 1039 & 1055 & 0.985 & 15.8 \\ |
| 448 | 448 | 4½ / 2 chambres & 6 & 1192 & 1340 & 1348 & 0.994 & 11.1 \\ |
modified
manuscript/chapters/ch22.tex
+21 −21
@@ -33,19 +33,19 @@ Les trente-huit postes du devis du cas 1 (\cref{tab:21:devis}) ne se mesurent pa | ||
| 33 | 33 | \begin{figure}[tbp] |
| 34 | 34 | \centering |
| 35 | 35 | \begin{tikzpicture}[ |
| 36 | − bloc/.style={draw, rounded corners=2pt, minimum height=9mm, text width=30mm, align=center, font=\sffamily\footnotesize, line width=0.6pt}, | |
| 36 | + bloc/.style={draw, rounded corners=2pt, minimum height=9mm, text width=26mm, align=center, font=\sffamily\scriptsize, line width=0.6pt}, | |
| 37 | 37 | src/.style={bloc, fill=brandLight, draw=brandPrimary}, |
| 38 | 38 | op/.style={bloc, fill=white, draw=brandDark}, |
| 39 | 39 | res/.style={bloc, fill=brandPrimary, text=white, draw=brandPrimary}, |
| 40 | − ctl/.style={bloc, fill=orange!8, draw=brandAmber, text width=36mm}, | |
| 40 | + ctl/.style={bloc, fill=orange!8, draw=brandAmber, text width=34mm}, | |
| 41 | 41 | fl/.style={-{Stealth[length=2mm]}, line width=0.6pt, color=brandGray}] |
| 42 | 42 | \node[src] (plans) at (0,0) {Plans, coupes,\\ élévations, devis descriptif}; |
| 43 | − \node[op, right=5mm of plans] (dims) {Dimensions de base\\ (aire au sol, périmètre, hauteurs, ouvertures)}; | |
| 44 | − \node[op, right=5mm of dims] (regles) {Règles de mesure\\ par corps de métier}; | |
| 45 | − \node[res, right=5mm of regles] (bord) {Bordereau\\ des quantités $q_k$}; | |
| 43 | + \node[op, right=3.5mm of plans] (dims) {Dimensions de base\\ (aire au sol, périmètre, hauteurs, ouvertures)}; | |
| 44 | + \node[op, right=3.5mm of dims] (regles) {Règles de mesure\\ par corps de métier}; | |
| 45 | + \node[res, right=3.5mm of regles] (bord) {Bordereau\\ des quantités $q_k$}; | |
| 46 | 46 | \node[op, below=9mm of bord] (prix) {Prix unitaires installés $p_k$\\ (matériaux, pertes, main-d'œuvre, marge)}; |
| 47 | − \node[res, left=5mm of prix] (D) {Coût direct\\ $D = \sum_k q_k p_k$}; | |
| 48 | − \node[op, left=5mm of D] (cn) {Indirects, incitatif\\ $\to C_N$ (ch.~21 et 23)}; | |
| 47 | + \node[res, left=3.5mm of prix] (D) {Coût direct\\ $D = \sum_k q_k p_k$}; | |
| 48 | + \node[op, left=3.5mm of D] (cn) {Indirects, incitatif\\ $\to C_N$ (ch.~21 et 23)}; | |
| 49 | 49 | \node[ctl, below=9mm of dims, xshift=-8mm] (ctl) {Métré de contrôle : cohérence géométrique, dénombrements, ratios des forfaits, tolérances, effet sur $D$ et $C_N$}; |
| 50 | 50 | \draw[fl] (plans) -- (dims); \draw[fl] (dims) -- (regles); \draw[fl] (regles) -- (bord); |
| 51 | 51 | \draw[fl] (bord) -- (prix); \draw[fl] (prix) -- (D); \draw[fl] (D) -- (cn); |
@@ -58,9 +58,9 @@ Les trente-huit postes du devis du cas 1 (\cref{tab:21:devis}) ne se mesurent pa | ||
| 58 | 58 | |
| 59 | 59 | \subsection{L'ordre des corps de métier et le choix des unités} |
| 60 | 60 | |
| 61 | −Un bordereau se lit dans l'ordre d'exécution du chantier, parce que c'est l'ordre dans lequel l'estimateur mesure et dans lequel les sous-traitants soumissionnent : terrassement et excavation, fondations et dalle, drainage, charpente des planchers et des murs, toiture, enveloppe (couverture, revêtement, isolation, portes et fenêtres), cloisons et finitions intérieures (gypse, peinture, planchers, escaliers, portes, armoires), mécanique (plomberie, chauffage, ventilation) et électricité, puis les ouvrages extérieurs et les frais de chantier. Les classifications normalisées de la construction, comme celle qu'utilisent les données RSMeans par divisions de travaux \parencite{rsmeans2025} ou la classification par divisions de l'indice des prix de la construction de bâtiments de Statistique Canada \parencite{statcanIPCB}, suivent cette logique et permettent de comparer des bordereaux entre eux. Le regroupement en sept blocs adopté au \cref{ch:21} (fondations et site, structure et charpente, enveloppe, finition intérieure, mécanique et électricité, aménagements extérieurs, coûts indirects) est une version condensée de cet ordre, et le chapitre le conserve pour que les deux chapitres se répondent chiffre pour chiffre. | |
| 61 | +Un bordereau se lit dans l'ordre d'exécution du chantier, parce que c'est l'ordre dans lequel l'estimateur mesure et dans lequel les sous-traitants soumissionnent : terrassement et excavation, fondations et dalle, drainage, charpente des planchers et des murs, toiture, enveloppe (couverture, revêtement, isolation, portes et fenêtres), cloisons et finitions intérieures (gypse, peinture, planchers, escaliers, portes, armoires), mécanique (plomberie, chauffage, ventilation) et électricité, puis les ouvrages extérieurs et les frais de chantier. Le regroupement en sept blocs adopté au \cref{ch:21} (fondations et site, structure et charpente, enveloppe, finition intérieure, mécanique et électricité, aménagements extérieurs, coûts indirects) est une version condensée de cet ordre, et le chapitre le conserve pour que les deux chapitres se répondent chiffre pour chiffre ; les classifications par divisions de travaux des guides de coûts \parencite{rsmeans2025} et de l'IPCB \parencite{statcanIPCB} suivent la même logique. | |
| 62 | 62 | |
| 63 | −Le choix de l'unité n'est pas une affaire de commodité : il doit refléter ce qui fait varier le coût du poste. Le béton coûte au mètre cube parce que c'est le volume que la bétonnière livre et que le coffrage, en première approximation, lui est proportionnel ; la toiture coûte au mètre carré de versant parce que les bardeaux et la main-d'œuvre se comptent à la surface réellement couverte, non à la projection horizontale ; le drain coûte au mètre linéaire ; une fenêtre coûte à l'unité parce que sa fabrication et sa pose dépendent davantage de son existence que de sa taille, du moins dans une gamme usuelle. Choisir une mauvaise unité revient à appliquer un prix à une grandeur qui ne le commande pas, et c'est la source d'erreurs la plus sournoise du métré. Le \cref{tab:22:regles} rassemble, pour chaque corps de métier, l'unité usuelle et la règle de mesure que l'on détaille à la \cref{sec:22:regles}. | |
| 63 | +Le choix de l'unité n'est pas une affaire de commodité : il doit refléter ce qui fait varier le coût du poste. Le béton coûte au mètre cube parce que c'est le volume que la bétonnière livre et que le coffrage, en première approximation, lui est proportionnel ; la toiture coûte au mètre carré de versant parce que les bardeaux et la main-d'œuvre se comptent à la surface réellement couverte, non à la projection horizontale ; le drain coûte au mètre linéaire ; une fenêtre coûte à l'unité parce que sa fabrication et sa pose dépendent davantage de son existence que de sa taille, du moins dans une gamme usuelle. Le \cref{tab:22:regles} rassemble, pour chaque corps de métier, l'unité usuelle et la règle de mesure que l'on détaille à la \cref{sec:22:regles}. | |
| 64 | 64 | |
| 65 | 65 | \begin{table}[tbp] |
| 66 | 66 | \caption{Unités de mesure et règles de mesure usuelles par corps de métier dans un devis résidentiel par composantes.}\label{tab:22:regles} |
@@ -114,7 +114,7 @@ Soit un rectangle de côtés $L$ et $W$ dans lequel on découpe, dans un coin, u | ||
| 114 | 114 | Parcourons la forme en L à partir du coin opposé au découpage : deux côtés entiers $L$ et $W$, puis les deux côtés amputés $L - g_x$ et $W - g_y$, puis les deux côtés du rentrant $g_x$ et $g_y$. La somme vaut $L + W + (L - g_x) + (W - g_y) + g_x + g_y = 2(L + W)$. |
| 115 | 115 | \end{proof} |
| 116 | 116 | |
| 117 | −La proposition signifie que, pour un cottage dont le garage occupe un coin de l'empreinte au niveau du sol et dont le sous-sol ne s'étend que sous la partie habitable, le périmètre des murs de fondation du sous-sol est le même que celui de l'empreinte entière : les deux murs intérieurs du rentrant, qui séparent le sous-sol du remblai sous le garage, remplacent exactement les deux segments de façade manquants. Elle signifie aussi que le ratio périmètre sur aire, qui gouverne les économies d'échelle géométriques de la \cref{prop:echelle}, est plus défavorable pour la forme en L que pour le rectangle de même aire, puisque l'aire diminue alors que le périmètre ne change pas. | |
| 117 | +La proposition signifie que, pour un cottage dont le garage occupe un coin de l'empreinte au niveau du sol et dont le sous-sol ne s'étend que sous la partie habitable, le périmètre des murs de fondation du sous-sol est le même que celui de l'empreinte entière : les deux murs intérieurs du rentrant, qui séparent le sous-sol du remblai sous le garage, remplacent exactement les deux segments de façade manquants. | |
| 118 | 118 | |
| 119 | 119 | \subsection{Le sujet du cas 1 : plan coté et dimensions de base} |
| 120 | 120 | |
@@ -210,12 +210,12 @@ Le sujet est un cottage à deux étages de 12,00 m de façade sur 7,92 m de prof | ||
| 210 | 210 | \figsource{\synth{schéma de l'auteur (TikZ) d'après le dictionnaire \texttt{PLAN} de \texttt{analysis/python/cases/ch22\_metre.py}}.} |
| 211 | 211 | \end{figure} |
| 212 | 212 | |
| 213 | −Le \cref{tab:22:dimensions} rassemble les dimensions de base et les superficies du sujet selon les conventions. L'aire des étages au sens du Manuel est de \msq{190.08} (\pisq{2046}) et son périmètre des étages de 79,68 m ; la superficie habitable, brute hors garage, est de \msq{165.13} (\pisq{1777}), ce qui est la valeur de \msq{165} du dossier du sujet ; l'aire nette intérieure des espaces habitables hors sol, pièce par pièce, est de \msq{135.37}, soit 58,56 au rez-de-chaussée et 76,81 à l'étage après déduction de la trémie de \msq{2.45}. L'aire nette représente 86,9 \% de l'aire habitable et 71,2 \% de l'aire des étages. Le même coût neuf de \dollars{397567} du \cref{ch:21} s'exprime donc par \parmsq{2092} à l'aire des étages, \parmsq{2408} à la superficie habitable et \parmsq{2937} à l'aire nette : trois coûts unitaires qui diffèrent de 40 \% entre les extrêmes pour un seul et même bâtiment. C'est la raison pour laquelle le métré commence toujours par déclarer sa convention. | |
| 213 | +Le \cref{tab:22:dimensions} rassemble les dimensions de base et les superficies du sujet selon les conventions. L'aire des étages au sens du Manuel est de \msq{190.08} (\pisq{2046}) et son périmètre des étages de 79,68 m ; la superficie habitable, brute hors garage, est de \msq{165.13} (\pisq{1777}), ce qui est la valeur de \msq{165} du dossier du sujet ; l'aire nette intérieure des espaces habitables hors sol, pièce par pièce, est de \msq{135.37}, soit 58,56 au rez-de-chaussée et 76,81 à l'étage après déduction de la trémie de \msq{2.45}. La superficie habitable représente 86,9 \% de l'aire des étages ; l'aire nette, 82,0 \% de la superficie habitable et 71,2 \% de l'aire des étages. Le même coût neuf de \dollars{397567} du \cref{ch:21} s'exprime donc par \parmsq{2092} à l'aire des étages, \parmsq{2408} à la superficie habitable et \parmsq{2937} à l'aire nette : trois coûts unitaires qui diffèrent de 40 \% entre les extrêmes pour un seul et même bâtiment. C'est la raison pour laquelle le métré commence toujours par déclarer sa convention. | |
| 214 | 214 | |
| 215 | 215 | \begin{table}[tbp] |
| 216 | 216 | \caption{Dimensions de base et superficies du sujet du cas 1 selon la convention retenue, et coût neuf unitaire correspondant ($C_N = \dollars{397567.33}$, \cref{ch:21}).}\label{tab:22:dimensions} |
| 217 | −\centering\small | |
| 218 | −\begin{tabular}{@{}l l S[table-format=3.2] S[table-format=4.0] S[table-format=4.0]@{}} | |
| 217 | +\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 218 | +\begin{tabular}{@{}L{46mm} L{40mm} S[table-format=3.2] S[table-format=4.0] S[table-format=4.0]@{}} | |
| 219 | 219 | \toprule |
| 220 | 220 | Grandeur & Convention & {m\textsuperscript{2}} & {pi\textsuperscript{2}} & {$C_N$ (\$/m\textsuperscript{2})} \\ |
| 221 | 221 | \midrule |
@@ -266,7 +266,7 @@ où $n_j$ est le nombre d'ouvertures de type $j$ et $a_j$ leur aire unitaire. Po | ||
| 266 | 266 | \begin{equation}\label{eq:22:toit} |
| 267 | 267 | A_{\text{couv}} = (L + 2d_t)(W + 2d_t)\,\sqrt{1 + p^2}, |
| 268 | 268 | \end{equation} |
| 269 | −où $d_t$ est le débord et $p$ la pente exprimée en élévation par unité de course (0,5 pour 6:12). Pour le sujet, la projection est de $12{,}80 \times 8{,}72 = \msq{111.62}$ (devis : 110, $+1{,}5$ \%) et la couverture de $111{,}62 \times 1{,}1180 = \msq{124.79}$ (devis : 125). Un toit à 8:12 aurait un facteur de 1,2019 et une couverture 7,5 \% plus grande pour la même projection ; un toit à quatre versants (en croupe) de même pente a la même surface de couverture qu'un toit à deux versants de même projection, mais davantage d'arêtiers et de pertes. | |
| 269 | +où $d_t$ est le débord et $p$ la pente exprimée en élévation par unité de course (0,5 pour 6:12). Pour le sujet, la projection est de $12{,}80 \times 8{,}72 = \msq{111.62}$ (devis : 110, $+1{,}5$ \%) et la couverture de $111{,}62 \times 1{,}1180 = \msq{124.79}$ (devis : 125). Un toit à 8:12 aurait un facteur de 1,2019 et une couverture 7,5 \% plus grande pour la même projection. | |
| 270 | 270 | |
| 271 | 271 | \subsection{Enveloppe : revêtement, isolation, ouvertures} |
| 272 | 272 | |
@@ -328,7 +328,7 @@ Un prix unitaire n'a de sens que rapporté à la convention de mesure sur laquel | ||
| 328 | 328 | \begin{equation}\label{eq:22:conversion} |
| 329 | 329 | p^{\text{brut}} = p^{\text{net}}\,\frac{q^{\text{net}}}{q^{\text{brut}}} . |
| 330 | 330 | \end{equation} |
| 331 | −Pour le revêtement du sujet, où les ouvertures représentent 34,90 des \msq{238.79} bruts, un prix net serait 17 \% plus élevé que le prix brut de \parmsq{119.27} du devis. Cette règle de cohérence est l'exact pendant, au niveau du poste, de celle que le \cref{ch:21} a posée au niveau du bâtiment pour le coût au mètre carré. | |
| 331 | +Pour le revêtement du sujet, où les ouvertures représentent 34,90 des \msq{238.79} bruts, un prix net serait 17 \% plus élevé que le prix brut de \parmsq{119.27} du devis. | |
| 332 | 332 | |
| 333 | 333 | \subsection{Propagation des erreurs de mesure} |
| 334 | 334 | |
@@ -503,8 +503,8 @@ Supervision de chantier (salaires) & semaine & 26 & 26.00 & +0.0 & conforme \\ | ||
| 503 | 503 | |
| 504 | 504 | \begin{table}[tbp] |
| 505 | 505 | \caption{Contrôle par ratios des quatorze postes forfaitaires du sujet du cas 1 : montant, montant par mètre carré de superficie habitable (\msq{165.13}) et part du coût direct $D$.}\label{tab:22:forfaits} |
| 506 | −\centering\footnotesize | |
| 507 | −\begin{tabular}{@{}L{62mm} S[table-format=5.2] S[table-format=3.0] S[table-format=1.1]@{}} | |
| 506 | +\centering\footnotesize\setlength{\tabcolsep}{4pt} | |
| 507 | +\begin{tabular}{@{}L{60mm} S[table-format=5.2] S[table-format=3.0] S[table-format=2.1]@{}} | |
| 508 | 508 | \toprule |
| 509 | 509 | Poste (forfait) & {Montant (\$)} & {\$/m\textsuperscript{2} hab.} & {Part de $D$ (\%)} \\ |
| 510 | 510 | \midrule |
@@ -535,10 +535,10 @@ Le métré de contrôle a borné l'erreur du devis du sujet à environ 1 \% du c | ||
| 535 | 535 | |
| 536 | 536 | \begin{table}[tbp] |
| 537 | 537 | \caption{Sensibilité du coût neuf du sujet du cas 1 à une erreur relative uniforme sur les quantités d'un bloc de corps de métier (indirects du devis fixés en dollars, incitatif de 10 \% sur $D + I$) ; cas de base $C_N = \dollars{397567}$.}\label{tab:22:sensibilite} |
| 538 | −\centering\small | |
| 539 | −\begin{tabular}{@{}l S[table-format=3.1] S[table-format=+6.0] S[table-format=+6.0] S[table-format=+6.0] S[table-format=+6.0] S[table-format=1.2]@{}} | |
| 538 | +\centering\footnotesize\setlength{\tabcolsep}{3.5pt} | |
| 539 | +\begin{tabular}{@{}l S[table-format=3.1] S[table-format=+5.0] S[table-format=+5.0] S[table-format=+5.0] S[table-format=+5.0] S[table-format=1.2]@{}} | |
| 540 | 540 | \toprule |
| 541 | −Bloc & {Part de $D$ (\%)} & {$-10$ \%} & {$-5$ \%} & {$+5$ \%} & {$+10$ \%} & {$\pm 10$ \% en \% de $C_N$} \\ | |
| 541 | +Bloc & {Part de $D$ (\%)} & {$-10$ \%} & {$-5$ \%} & {$+5$ \%} & {$+10$ \%} & {$\pm 10$ \% (\% de $C_N$)} \\ | |
| 542 | 542 | \midrule |
| 543 | 543 | Fondations et site & 13.3 & -4380 & -2190 & +2190 & +4380 & 1.10 \\ |
| 544 | 544 | Structure et charpente & 18.0 & -5924 & -2962 & +2962 & +5924 & 1.49 \\ |
@@ -555,7 +555,7 @@ Tous les postes directs & 100.0 & -32871 & -16435 & +16435 & +32871 & 8.27 \\ | ||
| 555 | 555 | |
| 556 | 556 | Trois conclusions se dégagent, qui complètent celles du \cref{ch:21}. D'abord, la hiérarchie des risques de quantité suit la hiérarchie des poids : l'enveloppe et la finition intérieure, qui réunissent 46 \% du coût direct, méritent l'essentiel de l'attention, et c'est précisément là que le métré de contrôle du sujet a trouvé son seul écart matériel. Ensuite, la forme de l'erreur compte plus que sa taille : dix erreurs indépendantes de 5 \% pèsent moins qu'une seule erreur de 5 \% sur une dimension de base. Enfin, même dans le scénario défavorable d'une erreur corrélée de 10 \%, l'enjeu des quantités (8,3 \%) reste inférieur à celui d'une année d'indice de prix (16,5 \% d'étendue) ; dans la méthode du coût, la fraîcheur des prix unitaires domine la précision du métré, ce qui ne dispense pas de mesurer mais dit où placer l'effort. |
| 557 | 557 | |
| 558 | −\begin{quebec}[Mesurage, construction et main-d'œuvre : le cadre québécois du métré] | |
| 558 | +\begin{quebec}[Le cadre québécois du métré : normes de mesurage du rôle --- Code de construction --- main-d'œuvre] | |
| 559 | 559 | \emph{Normes de mesurage du rôle.} Le Manuel d'évaluation foncière du Québec, dont le Règlement sur le rôle d'évaluation foncière rend les consignes obligatoires pour l'évaluateur municipal \parencite[art.~1 et 2]{reglrole}, définit au bloc 07 des dossiers de propriété des bâtiments résidentiels les dimensions de base que l'on a utilisées : aire au sol, périmètre au sol, aire des étages et périmètre des étages, mesures brutes prises à la face externe des murs, étage compté lorsque son plancher n'est pas plus bas que 0,4 m sous le niveau moyen du sol, murs mitoyens exclus du périmètre, garage intégré et verrière intégrée compris dans l'étage \parencite{mefqpartie2}. L'édition 2026 s'applique aux rôles entrant en vigueur le 1\ier{} janvier 2027 \parencite{mefq2026}. Les barèmes de coûts unitaires de la partie 3E du Manuel sont établis sur ces mesures ; ils sont librement consultables mais protégés par le droit d'auteur du gouvernement du Québec et ne sont pas reproduits ici. |
| 560 | 560 | |
| 561 | 561 | \emph{Code de construction.} Les quantités d'un coût de remplacement sont celles d'un bâtiment conforme aux normes actuelles. Le chapitre I du Code de construction, fondé sur le Code national du bâtiment 2020 modifié pour le Québec, est en vigueur depuis le 17 avril 2025, avec une période transitoire qui permet d'appliquer les dispositions antérieures aux travaux commencés avant le 17 octobre 2027 ; le chapitre I.1 porte sur l'efficacité énergétique du bâtiment \parencite{codeConstruction}. Les épaisseurs d'isolant, la ventilation mécanique et la séparation coupe-feu entre un garage et l'habitation sont autant de quantités que le Code impose et qu'un plan de 1998 ne montrait pas sous la même forme. |
modified
manuscript/chapters/ch23.tex
+569 −1
@@ -1,2 +1,570 @@ | ||
| 1 | 1 | \chapter{Coûts directs et indirects}\label{ch:23} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +Le coût neuf d'un bâtiment n'est pas un chiffre que l'on lit ; c'est une somme que l'on construit, poste par poste, en décidant à chaque fois ce que l'on compte, où on le compte et à quel prix. Le \cref{ch:21} a posé l'identité $C_N = D + I + E$ et le \cref{ch:22} a montré comment les quantités deviennent des coûts directs ; le présent chapitre descend dans la structure de ces trois termes. Il décrit d'abord ce que contiennent les coûts directs, c'est-à-dire les matériaux, la main-d'œuvre régie au Québec par les conventions collectives de l'industrie de la construction, l'équipement et la sous-traitance ; il analyse ensuite les coûts indirects, honoraires, permis, assurances, taxes de vente et surtout le financement intérimaire, dont la formule usuelle est dérivée puis appliquée avec un taux documenté ; il traite de l'incitatif de l'entrepreneur, de son assiette et de ce qui le distingue du profit réalisé ; il examine les coûts d'infrastructure et les contributions municipales, dont celle pour fins de parcs ; et il replace l'ensemble dans la conjoncture québécoise de 2020 à 2026, pendant laquelle les coûts de construction ont progressé plus vite que tout autre poste de l'évaluation. Le devis synthétique du sujet du cas 1, repris à l'identique du \cref{ch:21}, sert d'exemple intégral, prolongé par une transposition déclarée au douze-logements du cas 3. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +À la fin de ce chapitre, le lecteur sait : | |
| 7 | +\begin{itemize} | |
| 8 | +\item décomposer un coût direct en matériaux, main-d'œuvre, équipement et sous-traitance, situer la frontière avec les coûts indirects et reconnaître les conventions de classement qui déplacent cette frontière ; | |
| 9 | +\item décrire le cadre québécois qui conditionne ces coûts : conventions collectives sectorielles de la construction, licence d'entrepreneur, plan de garantie des bâtiments résidentiels neufs, permis et contributions municipales ; | |
| 10 | +\item dériver la formule des intérêts intérimaires $I_{\text{fin}} \approx L\,i\,T/2$, en connaître les variantes et les limites, et la calculer avec un taux documenté ; | |
| 11 | +\item traiter les taxes de vente et leurs remboursements selon le profil de l'acheteur, en distinguant ce qui est vérifié de ce qui ne l'est pas ; | |
| 12 | +\item définir l'incitatif de l'entrepreneur, choisir et déclarer son assiette, convertir une marge sur le coût en marge sur le prix et l'extraire du marché ; | |
| 13 | +\item lire les indices de prix de la construction de Statistique Canada par type d'immeuble, par région et par division de travaux, et en tirer une décomposition raisonnée de la hausse de 2020-2026 ; | |
| 14 | +\item établir la structure complète d'un coût neuf, en mesurer les ratios et la sensibilité à la durée du chantier, au taux intérimaire et à la part des indirects. | |
| 15 | +\end{itemize} | |
| 16 | +\end{objectifs} | |
| 17 | + | |
| 18 | +\section{La structure du coût neuf et la frontière entre direct et indirect}\label{sec:23:structure} | |
| 19 | + | |
| 20 | +\subsection{Trois blocs, une seule contrainte de cohérence} | |
| 21 | + | |
| 22 | +Le coût neuf d'un bâtiment se compose de coûts directs, de coûts indirects et de l'incitatif de l'entrepreneur. Les coûts directs (\emph{hard costs}) sont les déboursés qui s'incorporent physiquement à l'ouvrage ou qui sont nécessaires à son édification sur le chantier ; les coûts indirects (\emph{soft costs}) sont ceux qui accompagnent le projet sans se matérialiser dans l'ouvrage ; l'incitatif est la rémunération que le marché doit offrir à celui qui organise le projet et en porte le risque \parencite{appraisal2026,aiDictionary2022}. Si l'on note $D_k$ le coût du poste direct $k$, $I_j$ celui du poste indirect $j$ et $E$ l'incitatif, le coût neuf s'écrit | |
| 23 | +\begin{equation}\label{eq:23:total} | |
| 24 | +C_N = \sum_{k=1}^{K} D_k + \sum_{j=1}^{J} I_j + E = D + I + E , | |
| 25 | +\end{equation} | |
| 26 | +et les conventions de l'ouvrage, fixées au \cref{ch:21}, expriment les indirects en proportion des directs, $I = \tau_I D$, et l'incitatif en proportion de la somme des deux, $E = \tau_E (D + I)$, de sorte que $C_N = D(1+\tau_I)(1+\tau_E)$. L'\cref{eq:23:total} paraît triviale ; elle cache la seule véritable difficulté du chapitre, qui est de décider dans quelle somme chaque dépense entre. Une même dépense, la supervision du chantier par exemple, peut être classée dans les frais généraux de l'entrepreneur général, donc dans $D$, ou dans les frais du promoteur, donc dans $I$ ; le classement change $\tau_I$ sans changer $D + I$, mais il change $E$ si l'assiette de l'incitatif n'est que $D$, et il rend incomparables deux taux d'indirects mesurés sous des conventions différentes. La règle est donc moins « le bon classement » que la cohérence : le taux d'indirects appliqué à un bâtiment doit avoir été mesuré avec la même définition des directs, et l'incitatif ne doit pas rémunérer deux fois la même chose. | |
| 27 | + | |
| 28 | +\begin{definition}{Coûts directs et coûts indirects}{directs-indirects} | |
| 29 | +Les \emph{coûts directs} $D$ sont les coûts des matériaux, de la main-d'œuvre, de l'équipement et des sous-traitants incorporés à l'ouvrage ou nécessaires à son édification sur le site, y compris les frais généraux de chantier (installations temporaires, supervision sur place, nettoyage) et la marge des sous-traitants incluse dans leurs prix. Les \emph{coûts indirects} $I$ sont les coûts du projet qui ne se matérialisent pas dans l'ouvrage : honoraires professionnels, études et permis, assurances et cautionnements, financement intérimaire, frais juridiques et administratifs, taxes non récupérables, mise en marché. La frontière entre les deux est une convention à déclarer, non une propriété de la dépense. | |
| 30 | +\end{definition} | |
| 31 | + | |
| 32 | +\subsection{Qui paie quoi : la chaîne des coûts} | |
| 33 | + | |
| 34 | +La \cref{fig:23:chaine} représente la chaîne qui relie le propriétaire final aux facteurs de production. Le promoteur ou le propriétaire qui fait construire paie l'entrepreneur général, les professionnels, la municipalité, le prêteur et l'assureur ; l'entrepreneur général paie ses sous-traitants, son personnel de chantier et ses fournisseurs ; chaque sous-traitant paie à son tour ses ouvriers, ses matériaux et ses équipements, et inclut dans son prix ses frais généraux et son profit. Trois marges distinctes apparaissent ainsi dans un coût neuf, celle des sous-traitants, celle de l'entrepreneur général et celle du promoteur, et c'est la dernière seulement que l'évaluateur nomme incitatif de l'entrepreneur lorsqu'il travaille sur des prix de sous-traitants installés, comme le fait le devis du cas 1. Lorsque le propriétaire traite directement avec un entrepreneur général qui construit « clés en main », la marge de ce dernier et l'incitatif se confondent en partie ; lorsqu'il s'agit d'un promoteur qui vend des maisons neuves, les trois niveaux coexistent et le prix de vente les contient tous, ce qui est précisément ce qui permet d'extraire l'incitatif du marché (\cref{sec:23:incitatif}). | |
| 35 | + | |
| 36 | +\begin{figure}[tbp] | |
| 37 | +\centering | |
| 38 | +\resizebox{\linewidth}{!}{% | |
| 39 | +\begin{tikzpicture}[ | |
| 40 | + bloc/.style={draw, rounded corners=2pt, minimum height=8mm, text width=27mm, align=center, font=\sffamily\footnotesize, line width=0.6pt}, | |
| 41 | + haut/.style={bloc, fill=brandPrimary, text=white, draw=brandPrimary, text width=38mm}, | |
| 42 | + eg/.style={bloc, fill=brandLight, draw=brandPrimary}, | |
| 43 | + st/.style={bloc, fill=white, draw=brandDark}, | |
| 44 | + ind/.style={bloc, fill=orange!8, draw=brandAmber}, | |
| 45 | + fac/.style={bloc, fill=gray!8, draw=brandGray, text width=20mm, minimum height=7mm}, | |
| 46 | + fl/.style={-{Stealth[length=2mm]}, line width=0.6pt, color=brandGray}, | |
| 47 | + lab/.style={font=\sffamily\scriptsize, color=brandGray}] | |
| 48 | + \node[haut] (prop) at (0,0) {Propriétaire ou promoteur\\ paie $C_N$ (+ terrain, + taxes)}; | |
| 49 | + \node[eg, below left=9mm and 4mm of prop] (eg) {Entrepreneur général\\ frais généraux + marge}; | |
| 50 | + \node[ind, below right=9mm and 4mm of prop, text width=38mm] (ind) {Indirects du projet $I$\\ professionnels, municipalité, prêteur, assureur, GCR, fisc}; | |
| 51 | + \node[st, below=9mm of eg] (st) {Sous-traitants par métier\\ prix installés (marge incluse)}; | |
| 52 | + \node[fac, below left=8mm and -10mm of st] (mat) {Matériaux\\ (+ pertes)}; | |
| 53 | + \node[fac, below=8mm of st] (mo) {Main-d'œuvre\\ (CCQ, charges)}; | |
| 54 | + \node[fac, below right=8mm and -10mm of st] (eq) {Équipement\\ et location}; | |
| 55 | + \draw[fl] (prop.south) -- node[lab, left=1mm] {$D$ + marge EG} (eg.north); | |
| 56 | + \draw[fl] (prop.south) -- node[lab, right=1mm, text width=30mm] {honoraires, permis, intérêts, primes, taxes} (ind.north); | |
| 57 | + \draw[fl] (eg.south) -- (st.north); | |
| 58 | + \draw[fl] (st.south) -- (mat.north); \draw[fl] (st.south) -- (mo.north); \draw[fl] (st.south) -- (eq.north); | |
| 59 | + \node[draw=brandDark, dashed, rounded corners=3pt, fit=(st)(mat)(mo)(eq), inner sep=3mm, label={[lab, color=brandDark]below:{Coûts directs $D$ : ce que le devis par composantes mesure (ch.~22)}}] {}; | |
| 60 | + \node[lab, color=brandAmber, anchor=north west] at ([yshift=-2mm]ind.south west) {Incitatif $E = \tau_E(D+I)$ : marge du promoteur, tirée du marché}; | |
| 61 | +\end{tikzpicture}} | |
| 62 | +\caption{Chaîne des coûts d'une construction résidentielle : le propriétaire ou le promoteur paie l'entrepreneur général et les coûts indirects du projet ; l'entrepreneur général paie des sous-traitants dont les prix installés incluent déjà matériaux, main-d'œuvre, équipement et marge. L'incitatif de l'entrepreneur rémunère le niveau supérieur de la chaîne et ne doit pas se superposer aux marges déjà incluses dans les prix.}\label{fig:23:chaine} | |
| 63 | +\figsource{schéma de l'auteur (TikZ, \texttt{manuscript/chapters/ch23.tex}).} | |
| 64 | +\end{figure} | |
| 65 | + | |
| 66 | +\subsection{Le classement par nature et le classement par poste} | |
| 67 | + | |
| 68 | +Deux grilles de lecture se superposent dans tout devis. La première classe les coûts par \emph{poste} ou corps de métier (fondations, charpente, enveloppe, finition, mécanique, électricité), c'est la grille du métré et du \cref{ch:22}. La seconde les classe par \emph{nature} économique : matériaux, main-d'œuvre, équipement, services et sous-traitance. La seconde est celle qui compte pour comprendre l'évolution des coûts, parce que les prix des matériaux, les salaires et les coûts d'équipement obéissent à des déterminants différents et évoluent à des rythmes différents, comme la \cref{sec:23:conjoncture} le montre à partir des divisions de l'indice de Statistique Canada. Un devis par composantes bâti sur des prix installés ne distingue pas les deux natures à l'intérieur d'un poste ; il faut alors recourir à une décomposition conventionnelle, poste par poste, qui attribue à chacun une nature dominante. Le \cref{tab:23:typologie} propose cette lecture croisée pour les postes usuels d'une maison unifamiliale et signale, pour chacun, le piège de classement le plus fréquent. | |
| 69 | + | |
| 70 | +\begin{table}[tbp] | |
| 71 | +\caption{Typologie des coûts d'une construction résidentielle par bloc et par nature dominante, et piège de classement associé.}\label{tab:23:typologie} | |
| 72 | +\centering\small | |
| 73 | +\begin{tabularx}{\textwidth}{@{}L{30mm}L{34mm}YL{40mm}@{}} | |
| 74 | +\toprule | |
| 75 | +Bloc & Exemples de postes & Nature dominante & Piège de classement \\ | |
| 76 | +\midrule | |
| 77 | +Directs : site et fondations & Excavation, remblai, semelles et murs de béton, dalle, drain, raccordements & Équipement (excavation) ; mixte béton-main-d'œuvre ; services (raccordements) & Les raccordements sont déjà dans la valeur d'un terrain viabilisé estimé par comparaison \\ | |
| 78 | +Directs : structure et enveloppe & Charpente, fermes, couverture, revêtement, isolation, ouvertures & Mixte ; matériaux (fermes, fenêtres, portes) & Les fenêtres livrées incluent la marge du fabricant, pas la pose \\ | |
| 79 | +Directs : finition et mécanique & Gypse, peinture, planchers, armoires, plomberie, électricité, CVCA & Main-d'œuvre (gypse, peinture) ; matériaux (armoires, thermopompe) ; mixte & Les appareils (électroménagers) ne sont pas de l'immobilier \\ | |
| 80 | +Directs : frais de chantier & Conteneurs, nettoyage, installations temporaires, supervision sur place & Services ; main-d'œuvre & Tantôt dans les prix unitaires, tantôt poste séparé, tantôt dans les indirects \\ | |
| 81 | +Indirects & Plans et honoraires, permis et études, assurances et cautionnement, financement intérimaire, frais juridiques, mise en marché, taxes non récupérables & Services professionnels ; coût du capital ; prélèvements & Les intérêts sur le terrain sont comptés une fois ; les taxes dépendent du profil de l'acheteur \\ | |
| 82 | +Incitatif & Rémunération du risque et de la coordination du promoteur & Marge & Ne pas superposer aux marges des sous-traitants et de l'entrepreneur général \\ | |
| 83 | +\bottomrule | |
| 84 | +\end{tabularx} | |
| 85 | +\tabsource{synthèse de l'auteur d'après \textcite{appraisal2026} et la structure du devis synthétique du cas 1 (\texttt{data/synthetic/cas1\_gatineau\_couts.csv}).} | |
| 86 | +\end{table} | |
| 87 | + | |
| 88 | +\section{Les coûts directs}\label{sec:23:directs} | |
| 89 | + | |
| 90 | +\subsection{Le prix unitaire installé et ses composantes} | |
| 91 | + | |
| 92 | +Le devis par composantes du \cref{ch:21} et le métré du \cref{ch:22} aboutissent l'un et l'autre à des prix unitaires installés, c'est-à-dire au prix qu'un sous-traitant facture pour livrer et poser une unité d'ouvrage. Ce prix agrège les quatre natures de coûts directs et la marge du métier. Pour le poste $k$, si $m_k$ est le coût des matériaux par unité d'ouvrage, $\pi_k$ le taux de pertes et de chutes qui majore la quantité de matériaux à acheter, $h_k$ le nombre d'heures de main-d'œuvre par unité, $w_k$ le taux horaire de base du métier, $\phi$ le taux des avantages sociaux et des charges qui s'ajoutent au salaire, $e_k$ le coût d'équipement par unité et $\gamma_k$ la marge du sous-traitant sur ses coûts, on a | |
| 93 | +\begin{equation}\label{eq:23:prix-installe} | |
| 94 | +p_k = \big[\, m_k (1+\pi_k) + h_k\, w_k (1+\phi) + e_k \,\big]\,(1+\gamma_k) . | |
| 95 | +\end{equation} | |
| 96 | +L'\cref{eq:23:prix-installe} n'est pas destinée à être calculée terme à terme pour chaque poste d'une évaluation courante, ce qui exigerait les données d'un estimateur d'entrepreneur ; elle sert à comprendre ce que contient un prix installé et ce qui le fait bouger. La part de la main-d'œuvre dans le prix, $\lambda_k = h_k w_k (1+\phi)/[m_k(1+\pi_k) + h_k w_k(1+\phi) + e_k]$, détermine la sensibilité du poste aux conventions collectives ; la part des matériaux, sa sensibilité aux prix du bois, de l'acier ou du béton. Agrégée sur le bâtiment, la part de la main-d'œuvre $\lambda = \sum_k \lambda_k D_k / D$ relie directement une hausse salariale à la variation du coût direct. | |
| 97 | + | |
| 98 | +\begin{proposition}{Transmission d'une hausse salariale au coût direct}{salaires} | |
| 99 | +Soit un bâtiment dont le coût direct $D$ comporte une part $\lambda$ de main-d'œuvre (salaires et charges) et dont les autres composantes restent constantes. Une hausse uniforme de $g$ des taux horaires de tous les métiers, à heures et à marges proportionnelles inchangées, accroît le coût direct de | |
| 100 | +\begin{equation}\label{eq:23:salaires} | |
| 101 | +\frac{\Delta D}{D} = \lambda\, g , | |
| 102 | +\end{equation} | |
| 103 | +et le coût neuf de $\Delta C_N = \lambda\, g\, D\,(1+\tau_I)(1+\tau_E)$ lorsque les indirects et l'incitatif sont exprimés en taux. | |
| 104 | +\end{proposition} | |
| 105 | +\begin{proof} | |
| 106 | +Par l'\cref{eq:23:prix-installe}, le terme de main-d'œuvre du poste $k$ devient $h_k w_k(1+g)(1+\phi)$ et le prix installé augmente de $p_k' - p_k = (1+\gamma_k)\,h_k w_k\, g\,(1+\phi) = \lambda_k\, g\, p_k$ ; la variation du poste est donc $\Delta D_k = \lambda_k g D_k$ puisque la marge s'applique proportionnellement. En sommant, $\Delta D = g \sum_k \lambda_k D_k = \lambda g D$. Si $I = \tau_I D$ et $E = \tau_E(D+I)$, alors $C_N = D(1+\tau_I)(1+\tau_E)$ est linéaire en $D$, d'où $\Delta C_N = \Delta D (1+\tau_I)(1+\tau_E)$. | |
| 107 | +\end{proof} | |
| 108 | + | |
| 109 | +La proposition suppose que les indirects suivent les directs, ce qui est vrai des honoraires exprimés en pourcentage du coût des travaux et du financement, mais faux des permis forfaitaires ; elle suppose aussi que les heures ne changent pas, alors qu'une hausse des salaires incite à substituer des matériaux préfabriqués à la main-d'œuvre sur place. Elle donne néanmoins un ordre de grandeur immédiatement utile. Pour le sujet du cas 1, dont les coûts directs s'élèvent à \dollars{298826.17}, une hausse de 8 \% des taux horaires, celle qu'a connue le secteur résidentiel de la construction en juillet 2025, accroît le coût direct de \dollars{8367} si la part de la main-d'œuvre est de 35 \%, de \dollars{9562} si elle est de 40 \% et de \dollars{11953} si elle est de 50 \%, soit de 2,8 à 4,0 \% ; avec les taux d'indirects et d'incitatif du devis, le coût neuf augmente de \dollars{11132} à \dollars{15903}. Ces parts de main-d'œuvre sont des hypothèses de travail, non des mesures : le devis synthétique ne sépare pas les natures à l'intérieur des prix installés, et aucune statistique publique ne donne la part de la main-d'œuvre dans le coût d'une maison québécoise. La \cref{sec:23:conjoncture} montre toutefois que la hausse annuelle de l'indice des prix de la construction, 8,6 \% au troisième trimestre de 2026, dépasse ce qu'une hausse salariale de 8 \% peut expliquer à elle seule, même avec une part de main-d'œuvre de moitié : les matériaux et les marges y contribuent nécessairement. | |
| 110 | + | |
| 111 | +\subsection{La main-d'œuvre : le régime québécois des conventions collectives} | |
| 112 | + | |
| 113 | +Au Québec, les conditions de travail de l'industrie de la construction ne sont pas négociées chantier par chantier : la Loi sur les relations du travail, la formation professionnelle et la gestion de la main-d'œuvre dans l'industrie de la construction \parencite{r20} organise une négociation sectorielle dont les conventions collectives, administrées par la Commission de la construction du Québec (CCQ), fixent pour chaque métier et chaque secteur les taux de salaire, les avantages sociaux, les primes, les indemnités de déplacement et les heures. Quatre secteurs coexistent, résidentiel, institutionnel et commercial, industriel, génie civil et voirie, et le secteur résidentiel se subdivise lui-même en résidentiel léger et résidentiel lourd selon la taille du bâtiment. Il en résulte que le taux horaire d'un charpentier-menuisier ou d'un électricien n'est pas un prix de marché que l'évaluateur estime, mais une donnée publique qu'il consulte : la CCQ diffuse les taux par métier et par secteur dans son outil des taux de salaire \parencite{ccqSalaires}. Le présent ouvrage ne reproduit pas ces taux, qui changent chaque année à date fixe et qui doivent être lus à la date d'évaluation ; il en décrit la mécanique. | |
| 114 | + | |
| 115 | +Les conventions 2025-2029 illustrent cette mécanique et ses nuances sectorielles. Dans les secteurs institutionnel-commercial et industriel, l'entente conclue au printemps 2025 prévoit des majorations de 8 \% au 27 avril 2025, de 5 \% au 26 avril 2026, de 5 \% au 25 avril 2027 et de 4 \% au 30 avril 2028, puis une protection contre l'inflation au 29 avril 2029 fixée par l'indice des prix à la consommation majoré d'un demi-point, bornée entre 2,5 et 4 \% ; une grille identique a été convenue en génie civil et voirie. Dans le secteur résidentiel, qui est celui des maisons et des petits immeubles, l'entente a été ratifiée plus tard : les nouveaux taux sont entrés en vigueur le 27 juillet 2025 avec une majoration de 8 \%, et les majorations des années suivantes ont été renvoyées à l'arbitrage ; la page des taux de la CCQ affiche, au 26 avril 2026, une majoration de 5,5 \% pour le résidentiel léger et de 5 \% pour le résidentiel lourd et les autres secteurs. Le \cref{ch:21} a cité la grille 8, 5, 5 et 4 \% telle que relayée par un guide de coûts ; la lecture des documents sectoriels précise qu'elle décrit les secteurs institutionnel-commercial, industriel et génie civil, et que le résidentiel suit une trajectoire voisine mais distincte. Pour l'évaluateur, trois conséquences. Les hausses salariales sont connues d'avance et datées, ce qui permet de les intégrer à l'indexation d'un devis ou d'une soumission au jour près. Le taux horaire n'est qu'une partie du coût horaire : les avantages sociaux, les cotisations et les charges de l'employeur s'y ajoutent, et c'est le coût horaire chargé, $w(1+\phi)$ dans l'\cref{eq:23:prix-installe}, qui entre dans les prix. Enfin, l'autoconstruction, permise sans licence pour la maison unifamiliale destinée à l'usage personnel de celui qui la construit \parencite[art.~49]{loibatiment}, échappe pour partie à ce régime et ne produit pas un coût de marché, comme le \cref{ch:21} l'a rappelé. | |
| 116 | + | |
| 117 | +\subsection{Matériaux, pertes et équipement} | |
| 118 | + | |
| 119 | +Les matériaux se paient au prix des fournisseurs, majoré des pertes et des chutes que la pose entraîne : le gypse se coupe, le bardeau se perd dans les noues, le bois de charpente se commande en longueurs standard. Le taux de pertes $\pi_k$ de l'\cref{eq:23:prix-installe} varie selon le matériau et la complexité du plan ; le \cref{ch:22} en a traité comme règle de mesure, et il suffit ici de noter que les prix installés des sous-traitants l'incluent déjà, alors qu'un métré de matériaux bruts doit l'ajouter. Les prix des matériaux sont la composante la plus volatile du coût direct : la \cref{sec:23:conjoncture} montre que l'indice de la division « bois, plastiques et composites » de l'indice des prix de la construction de Montréal a progressé de 85 \% entre le premier trimestre de 2020 et le quatrième trimestre de 2022, puis a reculé, alors que les divisions à forte main-d'œuvre évoluaient de façon régulière. L'équipement, enfin, est tantôt possédé, tantôt loué ; son coût par unité d'ouvrage, $e_k$, est élevé pour l'excavation et le terrassement, faible pour la finition, et il inclut le carburant et l'opérateur lorsque la machine est louée avec lui. Dans un devis par composantes, ces trois natures sont fondues dans des prix installés, et la lecture par nature que propose le \cref{tab:23:structure} de l'exemple intégral n'est qu'une attribution dominante, utile pour raisonner sur l'évolution des coûts, non une comptabilité. | |
| 120 | + | |
| 121 | +\subsection{La sous-traitance et les frais généraux de chantier} | |
| 122 | + | |
| 123 | +La plupart des maisons québécoises sont construites par un entrepreneur général qui confie chaque corps de métier à un sous-traitant et conserve la coordination, la supervision, les installations temporaires et parfois la charpente. Les prix des sous-traitants incluent leurs frais généraux et leur profit ; les frais généraux de chantier de l'entrepreneur général (roulotte, clôtures, conteneurs, nettoyage, supervision sur place, assurances de chantier lorsqu'il les souscrit lui-même) s'y ajoutent, et sa marge vient par-dessus. Le devis du cas 1 illustre la difficulté de classement que cette organisation engendre : il traite les conteneurs et le nettoyage comme un poste direct (\dollars{2746.83}), mais classe la supervision du chantier, vingt-six semaines de salaires pour \dollars{35708.66}, parmi les indirects. Ce choix n'est pas fautif, il est conventionnel ; il a pour effet de porter le taux d'indirects à 20,95 \% des directs alors qu'il ne serait que de 9,00 \% si la supervision était reclassée dans les frais généraux de chantier, comme le \cref{ch:21} l'a signalé et comme l'\cref{ex:21:5} l'a fait calculer. L'évaluateur qui compare ce taux à une fourchette « de marché » doit savoir laquelle des deux conventions cette fourchette suppose. | |
| 124 | + | |
| 125 | +\section{Les coûts indirects}\label{sec:23:indirects} | |
| 126 | + | |
| 127 | +\subsection{Honoraires professionnels, études et permis} | |
| 128 | + | |
| 129 | +Les honoraires des professionnels, architecte, technologue, ingénieur en structure ou en mécanique, arpenteur-géomètre pour le certificat de piquetage et le certificat de localisation, sont le premier poste indirect de tout projet. Pour une maison unifamiliale, les plans sont souvent produits par un technologue ou achetés sur catalogue puis adaptés, et le coût en est modeste ; pour un immeuble de logements, la conception, la coordination des disciplines et la surveillance des travaux représentent un pourcentage significatif du coût des travaux, et les honoraires sont fréquemment convenus en proportion de ce coût, ce qui les rend sensibles à la hausse des directs comme la \cref{prop:salaires} le suppose. Les études préalables, étude géotechnique, test de percolation hors des réseaux, caractérisation environnementale lorsque l'historique du site l'exige (\cref{ch:43}), s'y ajoutent. Les permis et les frais municipaux forment un poste distinct : le permis de construction est tarifé par chaque municipalité, souvent en proportion de la valeur déclarée des travaux, et les données ouvertes des permis de Montréal et de Québec donnent, à défaut de tarifs, les coûts déclarés des projets autorisés \parencite{mtlpermis,vqpermis}, avec la réserve que ces déclarations n'ont pas de valeur légale et sont souvent sous-estimées. Dans le devis du cas 1, « permis et études » (\dollars{4481.67}, soit 1,50 \% des directs) et « plans et honoraires professionnels » (\dollars{10119.90}, soit 3,39 \%) représentent ensemble 4,89 \% des coûts directs. | |
| 130 | + | |
| 131 | +\subsection{Assurances, cautionnements et garantie des bâtiments neufs} | |
| 132 | + | |
| 133 | +Le chantier doit être assuré contre les dommages à l'ouvrage en cours (assurance « tous risques chantier ») et la responsabilité civile de l'entrepreneur doit être couverte ; les cautionnements d'exécution et de paiement des sous-traitants et des fournisseurs, usuels dans les contrats publics, sont moins fréquents dans le résidentiel privé mais existent pour les projets d'une certaine taille. Le cadre québécois ajoute deux éléments propres. La licence d'entrepreneur, obligatoire pour quiconque exerce les fonctions d'entrepreneur de construction \parencite[art.~46]{loibatiment}, s'accompagne d'un cautionnement de licence et de frais annuels \parencite{rbqLicences}, que l'entrepreneur répercute dans ses frais généraux. Le plan de garantie des bâtiments résidentiels neufs, obligatoire pour les maisons unifamiliales isolées, jumelées ou en rangée, pour les immeubles de deux à cinq logements et pour les copropriétés comprenant au plus quatre parties privatives superposées \parencite[art.~2]{reglgarantie}, est administré par Garantie de construction résidentielle (GCR), auprès de laquelle l'entrepreneur doit être accrédité et enregistrer chaque bâtiment \parencite{gcr}. L'accréditation comporte des frais d'adhésion, un cautionnement dont le montant dépend de la cote de qualité de l'entrepreneur et du nombre d'unités, et des frais d'enregistrement par bâtiment ; la page d'accréditation de GCR consultée le 31 octobre 2026 indique des frais d'adhésion de \dollars{556.48}, taxes comprises, mais ne chiffre pas les frais d'enregistrement, de sorte que le coût de la garantie par maison n'est pas vérifié ici et doit être obtenu de l'entrepreneur. Ce poste a deux particularités qui importent à l'évaluateur. D'une part, il n'existe que pour les bâtiments visés : un immeuble de douze logements comme celui du cas 3 n'est pas couvert par le plan obligatoire, et son coût neuf ne doit pas contenir de prime de garantie. D'autre part, la garantie protège l'acheteur (parachèvement, malfaçons un an, vices cachés trois ans, vices de conception et du sol cinq ans, avec des plafonds par unité \parencite[art.~10, 13 et 14]{reglgarantie}) et elle est transférable à l'acquéreur subséquent pendant sa durée ; une maison neuve vendue par un entrepreneur accrédité porte donc, pendant cinq ans, un attribut que n'a pas une maison autoconstruite, et le marché peut le payer. | |
| 134 | + | |
| 135 | +\subsection{Le financement intérimaire : dérivation de la formule} | |
| 136 | + | |
| 137 | +Le financement intérimaire, ou prêt de construction, est le coût du capital emprunté pendant le chantier. Il se distingue de l'hypothèque permanente qui le remplace à la livraison : le prêt de construction est déboursé par tranches au rythme de l'avancement des travaux, généralement après inspection, et porte intérêt sur le solde tiré, à un taux variable fondé sur le taux préférentiel des banques majoré d'une prime, avec des frais d'ouverture et d'inspection. L'intérêt total dépend donc du profil des tirages, du taux et de la durée. La pratique le résume par une formule que le \cref{ch:21} a citée sans la démontrer : les intérêts valent approximativement la moitié du produit du prêt par le taux et par la durée. La proposition suivante en donne la dérivation et les variantes. | |
| 138 | + | |
| 139 | +\begin{proposition}{Intérêts intérimaires sous tirage uniforme}{interets} | |
| 140 | +Soit un prêt de construction d'un montant total $L$ déboursé à un rythme constant sur une durée $T$ (en années) et portant intérêt simple au taux annuel $i$ sur le solde tiré. Alors : | |
| 141 | +\begin{enumerate} | |
| 142 | +\item en temps continu, le solde à l'instant $t$ est $B(t) = L\,t/T$ et les intérêts cumulés valent | |
| 143 | +\begin{equation}\label{eq:23:interets} | |
| 144 | +I_{\text{fin}} = \int_0^T i\,B(t)\,\dd t = \frac{L\,i\,T}{2} , | |
| 145 | +\end{equation} | |
| 146 | +c'est-à-dire l'intérêt sur le solde moyen $L/2$ pendant toute la durée ; | |
| 147 | +\item avec $n$ tirages mensuels de $L/n$ en début de mois et un intérêt mensuel de $i/12$ sur le solde du mois, | |
| 148 | +\begin{equation}\label{eq:23:interets-mensuel} | |
| 149 | +I_{\text{fin}}^{(n)} = \frac{i}{12}\,\frac{L}{n}\sum_{k=1}^{n} k = \frac{L\,i\,T}{2}\cdot\frac{n+1}{n}, \qquad n = 12\,T , | |
| 150 | +\end{equation} | |
| 151 | +qui excède la version continue d'un facteur $(n+1)/n$ et converge vers elle quand $n$ croît ; | |
| 152 | +\item si une mise de fonds $Q$ finance les premiers déboursés d'un coût total $C$ tiré uniformément, le prêt $L = C - Q$ ne commence qu'à $t_0 = T\,Q/C$ et | |
| 153 | +\begin{equation}\label{eq:23:interets-mise} | |
| 154 | +I_{\text{fin}} = \frac{L\,i\,(T - t_0)}{2} = \frac{L\,i\,T}{2}\left(1 - \frac{Q}{C}\right) . | |
| 155 | +\end{equation} | |
| 156 | +\end{enumerate} | |
| 157 | +\end{proposition} | |
| 158 | +\begin{proof} | |
| 159 | +(1) Le tirage à taux constant $L/T$ donne $B(t) = Lt/T$ ; l'intérêt instantané est $i\,B(t)$, et $\int_0^T i\,Lt/T\,\dd t = (iL/T)\,T^2/2 = LiT/2$. (2) Après $k$ tirages, le solde est $kL/n$ ; l'intérêt du mois $k$ vaut $(i/12)(kL/n)$ ; la somme des entiers de 1 à $n$ est $n(n+1)/2$, d'où $I^{(n)} = (i/12)(L/n)\,n(n+1)/2 = iL(n+1)/24$ ; avec $n = 12T$, $iL(n+1)/24 = (LiT/2)\,(n+1)/n$. (3) Les déboursés cumulés valent $Ct/T$ ; la mise de fonds est épuisée à $t_0$ tel que $Ct_0/T = Q$ ; à partir de $t_0$, le solde du prêt croît linéairement de 0 à $L$ sur une durée $T - t_0$, et l'application de (1) sur cette durée donne $Li(T-t_0)/2$ ; enfin $T - t_0 = T(1 - Q/C)$. | |
| 160 | +\end{proof} | |
| 161 | + | |
| 162 | +Trois remarques complètent la proposition. Premièrement, si les intérêts ne sont pas payés mensuellement mais capitalisés dans le prêt, ce qui est fréquent lorsque le prêteur finance une réserve d'intérêts, le solde porteur d'intérêt croît un peu plus vite et le total est légèrement supérieur à l'\cref{eq:23:interets-mensuel} ; la fonction \texttt{interets\_intermediaires} de la bibliothèque \texttt{traite.finance} calcule les trois variantes, continue, mensuelle simple et mensuelle capitalisée. Deuxièmement, la formule suppose un tirage uniforme ; un chantier réel concentre ses déboursés à certains moments (fondations et charpente tôt, finition tard), et un profil en S donne un solde moyen différent de $L/2$ ; l'écart reste modeste pour une maison sur quelques mois, il ne l'est plus pour un immeuble sur deux ans, et la méthode correcte est alors l'échéancier de tirages. Troisièmement, l'\cref{eq:23:interets} s'inverse : un montant d'intérêts connu révèle le produit $i\,T = 2 I_{\text{fin}}/L$, ce qui permet de contrôler la vraisemblance d'un forfait de financement figurant dans un devis. | |
| 163 | + | |
| 164 | +Le taux à retenir mérite une attention particulière. Un prêt de construction résidentiel est en pratique tarifé au-dessus du taux préférentiel, à taux variable, et son niveau n'est publié par aucune source officielle ; les données publiques de la Banque du Canada donnent des repères encadrants. Au 28 octobre 2026, le taux hypothécaire affiché à cinq ans pour un prêt conventionnel des banques à charte était de 6,19 \% \parencite{bdcvalet} ; en août 2026, les taux effectivement consentis sur les fonds avancés étaient de 4,58 \% pour les prêts non assurés à taux fixe de cinq ans et plus, de 4,34 \% pour l'ensemble des prêts non assurés et de 3,90 \% pour les prêts non assurés à taux variable \parencite{bdctauxhypothecaires2026} ; le taux directeur venait d'être relevé à 2,50 \% \parencite{bdc20261028}. Le chapitre retient le taux affiché de 6,19 \% comme taux de référence documenté, parce qu'il est une borne haute publique et datée pour un emprunteur résidentiel, et il traite le taux comme un paramètre de sensibilité de 4 à 9 \% dans la \cref{sec:23:sensibilite}. Il ne s'agit pas d'une estimation du taux d'un prêt de construction, que l'évaluateur doit obtenir des prêteurs à la date d'évaluation, mais d'une convention de calcul déclarée. | |
| 165 | + | |
| 166 | +\subsection{Le financement intérimaire : application au cas 1} | |
| 167 | + | |
| 168 | +Le devis du cas 1 inscrit le financement intérimaire comme un forfait de \dollars{8529.63}. La \cref{prop:interets} permet d'en vérifier la vraisemblance. Les coûts directs et indirects hors financement s'élèvent à $C = \dollars{352895.22}$ ; si l'entrepreneur finançait la totalité de ce montant par un prêt tiré uniformément pendant les 26 semaines de supervision du devis, soit $T = 0{,}5$ an, au taux de référence de 6,19 \%, les intérêts vaudraient $\dollars{352895.22} \times 0{,}0619 \times 0{,}5 / 2 = \dollars{5461.05}$ en temps continu, \dollars{6371.23} avec six tirages mensuels (facteur $7/6$) et \dollars{6426.29} si les intérêts étaient capitalisés. Le forfait du devis est supérieur à ces trois montants ; le produit $i\,T$ qu'il implique, $2 \times 8529{,}63 / 352\,895{,}22 = 0{,}0483$, correspond à une durée de 9,4 mois au taux de 6,19 \%, ou à un taux de 9,67 \% sur six mois. L'interprétation la plus naturelle est que le forfait couvre une période de financement plus longue que la seule présence du surintendant sur le chantier, puisque le prêt court de l'achat des matériaux de fondation à la vente ou au refinancement, et qu'il inclut des frais d'ouverture et d'inspection que la formule ignore ; elle est compatible avec un chantier de neuf mois au taux de référence. Le chapitre conserve donc le forfait du devis dans le coût neuf central, par cohérence avec le \cref{ch:21}, et mesure dans la \cref{sec:23:sensibilite} ce que son remplacement par un calcul explicite changerait : avec six mois à 6,19 \%, le coût neuf passerait de \dollars{397567.33} à \dollars{394191.90}, une baisse de \dollars{3375.43} ou 0,85 \%, parce que la réduction du poste se répercute sur l'incitatif assis sur $D + I$. L'\cref{eq:23:interets-mise} montre enfin l'effet d'une mise de fonds : si le constructeur finance lui-même le premier quart des déboursés et emprunte le reste sur neuf mois, le prêt ne commence qu'après 2,25 mois et les intérêts tombent à \dollars{4607.76}, contre \dollars{8191.58} pour un prêt couvrant la totalité des coûts sur la même durée. | |
| 169 | + | |
| 170 | +\subsection{Mise en marché, frais de vente et frais du promoteur} | |
| 171 | + | |
| 172 | +Lorsque le bâtiment est destiné à la vente, le promoteur supporte des frais de mise en marché (publicité, maison modèle, bureau des ventes), des commissions de courtage et des frais juridiques de vente qui n'existent pas pour un propriétaire qui fait construire sa propre maison. Leur traitement dans le coût neuf dépend de la question posée. Pour estimer la valeur marchande d'une maison existante par le coût, on cherche le coût du substitut que l'acheteur typique obtiendrait sur le marché, c'est-à-dire le prix d'une maison neuve comparable ; ce prix contient la mise en marché et les frais de vente du promoteur, et il est cohérent de les inclure dans les indirects, ou de les laisser absorbés par un incitatif mesuré sur des prix de vente qui les contiennent, mais pas les deux. Pour une valeur assurable ou pour le coût de remplacement d'un bâtiment que le propriétaire reconstruirait pour lui-même, ces frais n'ont pas lieu d'être. Les frais d'administration du promoteur, comptabilité, gestion de projet hors chantier, frais de bureau, relèvent de la même logique : ils sont réels pour un promoteur, et c'est l'une des raisons pour lesquelles l'incitatif, qui les rémunère en partie, ne se confond pas avec un simple profit. | |
| 173 | + | |
| 174 | +\subsection{Les taxes de vente et les remboursements pour habitation neuve} | |
| 175 | + | |
| 176 | +La vente d'une habitation neuve par un constructeur est assujettie à la taxe sur les produits et services et à la taxe de vente du Québec, alors que la revente d'une habitation usagée en est en règle générale exonérée. Le taux de la TPS est de 5 \% et celui de la TVQ de 9,975 \% ; l'Agence du revenu du Canada les présente ensemble dans sa table des taux par province, page modifiée le 1\ier{} avril 2025 et consultée le 31 octobre 2026. Les deux taxes s'appliquent au prix de vente avant taxes, terrain compris lorsque le constructeur vend le tout. Si l'on note $t_F$ et $t_Q$ les deux taux, $V$ le prix ou la juste valeur marchande de l'habitation et $R_F(V)$, $R_Q(V)$ les remboursements auxquels l'acheteur a droit, le coût pour un acheteur qui ne récupère pas les taxes est | |
| 177 | +\begin{equation}\label{eq:23:taxes} | |
| 178 | +C^{\text{TTC}} = V\,(1 + t_F + t_Q) - R_F(V) - R_Q(V) , | |
| 179 | +\end{equation} | |
| 180 | +tandis qu'un investisseur inscrit aux fichiers des taxes qui acquiert l'immeuble pour une activité taxable les récupère par crédits de taxe sur les intrants et supporte $C^{\text{TTC}} = V$ ; la location résidentielle de longue durée étant exonérée, un investisseur qui construit un immeuble locatif ne récupère pas les taxes sur ses intrants de la même manière, et un régime de remboursement propre aux immeubles locatifs neufs existe, que le chapitre ne détaille pas faute de l'avoir vérifié. Les remboursements fédéraux sont décrits dans le guide RC4028 de l'Agence du revenu du Canada, révision d'octobre 2026, dont la lecture permet d'affirmer ce qui suit \parencite{arcRC4028}. Le remboursement général pour habitation neuve est de 36 \% de la TPS payée, jusqu'à un maximum de \dollars{6300} ; il est accordé en entier lorsque la juste valeur marchande ne dépasse pas \dollars{350000}, il « est réduit lorsque la JVM de la maison se situe entre 350 001 \$ et 449 999 \$ » et il est nul à \dollars{450000} et plus ; la règle de réduction est renvoyée au formulaire et n'est pas écrite dans le guide, de sorte que le chapitre l'applique comme une réduction linéaire entre les deux seuils en le signalant. Un remboursement distinct pour les acheteurs d'une première habitation s'applique lorsque la construction ou les rénovations majeures commencent le 20 mars 2025 ou après et avant 2031 : il rembourse la totalité de la TPS pour une habitation d'une valeur égale ou inférieure à un million de dollars, est réduit graduellement au-delà et devient nul à 1,5 million. Du côté provincial, Revenu Québec décrit un remboursement de la TVQ de 50 \% de la taxe payée, plafonné à \dollars{9975}, réduit lorsque le prix dépasse \dollars{200000} et nul à \dollars{300000} et plus ; ces paramètres ont été lus par l'intermédiaire d'un moteur de recherche qui reproduisait la page officielle, cette page elle-même étant restée inaccessible lors de la rédaction, et ils sont donc tenus pour partiellement vérifiés. | |
| 181 | + | |
| 182 | +Ces règles ont une conséquence nette pour le marché québécois de 2026 : aux prix courants des maisons neuves, les remboursements généraux sont presque toujours nuls, parce que la valeur de l'habitation terrain compris dépasse \dollars{450000} au fédéral et \dollars{300000} au provincial ; seul le remboursement fédéral pour premiers acheteurs modifie substantiellement le coût. Le \cref{tab:23:taxes} l'illustre pour le sujet du cas 1 en supposant, à titre d'hypothèse en attente du \cref{ch:25}, une valeur de terrain de \dollars{180000} : l'habitation neuve équivalente vaudrait \dollars{577567} avant taxes ; la TPS s'élève à \dollars{28878} et la TVQ à \dollars{57612} ; un acheteur occupant qui n'en est pas à sa première habitation paie \dollars{86491} de taxes nettes, soit 14,98 \% du prix, et débourse \dollars{664058} ; un premier acheteur dont la construction a commencé après le 20 mars 2025 récupère toute la TPS et paie \dollars{57612}, soit 9,98 \% ; un investisseur inscrit qui destine l'immeuble à une activité taxable ne supporte aucune taxe nette. Sur le seul coût neuf du bâtiment, les deux taxes représentent \dollars{59536}, soit 14,975 \% de \dollars{397567}. Pour l'évaluateur, la règle pratique est double : déclarer si le coût neuf est exprimé avant ou après taxes, et comparer des grandeurs homogènes ; une maison existante, exonérée à la revente, se compare à un substitut neuf dont le prix de marché est taxable, et l'acheteur typique du marché considéré détermine le traitement. | |
| 183 | + | |
| 184 | +\begin{table}[tbp] | |
| 185 | +\caption{Taxes de vente sur une habitation neuve équivalente au sujet du cas 1 (coût neuf \dollars{397567} plus terrain hypothétique de \dollars{180000}) selon le profil de l'acheteur, dollars du T3 2026. Le remboursement de la TVQ est nul dans les trois cas (valeur supérieure à \dollars{300000}).}\label{tab:23:taxes} | |
| 186 | +\centering\footnotesize | |
| 187 | +\begin{tabular}{@{}L{30mm} S[table-format=6.0] S[table-format=5.0] S[table-format=5.0] S[table-format=5.0] S[table-format=2.2] S[table-format=6.0]@{}} | |
| 188 | +\toprule | |
| 189 | +Profil de l'acheteur & {Prix (\$)} & {TPS (\$)} & {TVQ (\$)} & {Remb. TPS (\$)} & {Taxes nettes (\%)} & {Coût TTC (\$)} \\ | |
| 190 | +\midrule | |
| 191 | +Occupant, acheteur subséquent & 577567 & 28878 & 57612 & 0 & 14.98 & 664058 \\ | |
| 192 | +Premier acheteur (travaux commencés après le 20 mars 2025) & 577567 & 28878 & 57612 & 28878 & 9.98 & 635180 \\ | |
| 193 | +Investisseur inscrit (activité taxable) & 577567 & 28878 & 57612 & {récup.} & 0.00 & 577567 \\ | |
| 194 | +\bottomrule | |
| 195 | +\end{tabular} | |
| 196 | +\tabsource{\synth{\texttt{analysis/python/cases/ch23\_structure\_couts.py}, fonction \texttt{taxes\_profils}} ; taux : ARC, table des taux de TPS/TVH et de TVP (2025-04-01) ; remboursements : guide RC4028 Rév. 10/2026 \parencite{arcRC4028} et Revenu Québec (partiellement vérifié) ; valeur de terrain : hypothèse en attente du \cref{ch:25}.} | |
| 197 | +\end{table} | |
| 198 | + | |
| 199 | +\section{L'incitatif de l'entrepreneur}\label{sec:23:incitatif} | |
| 200 | + | |
| 201 | +\subsection{Rémunération anticipée du risque, non profit constaté} | |
| 202 | + | |
| 203 | +Le \cref{ch:21} a posé la distinction : l'incitatif (\emph{entrepreneurial incentive}) est la rémunération anticipée nécessaire pour qu'un promoteur entreprenne le projet, le profit (\emph{entrepreneurial profit}) est la rémunération réalisée une fois le bien vendu, et c'est le premier qui entre dans le coût neuf \parencite{appraisal2026}. Il reste à préciser ce que l'incitatif rémunère, sur quelle assiette on le mesure et comment on l'extrait du marché. Il rémunère trois choses : le temps du promoteur et ses frais d'administration non comptés ailleurs ; le capital qu'il immobilise, au-delà des intérêts explicitement payés sur le prêt de construction, c'est-à-dire la mise de fonds et le terrain pendant la durée du projet ; et le risque, qui tient à l'incertitude des coûts, des délais et du prix de vente final. \textcite{geltnerMillerClaytonEichholtz2014} montrent que, dans l'analyse d'un projet de développement, ce que l'évaluateur nomme incitatif est la contrepartie de la valeur actualisée des flux du promoteur, et que son niveau dépend de la durée, du levier et de la volatilité du marché à la livraison ; la théorie des options réelles, de \textcite{titman1985} à \textcite{quigg1993} et \textcite{cunningham2006}, explique en outre pourquoi le promoteur exige une prime d'autant plus élevée que l'incertitude des prix est grande, puisque construire, c'est renoncer à l'option d'attendre. | |
| 204 | + | |
| 205 | +\subsection{Assiettes et conversion des marges} | |
| 206 | + | |
| 207 | +Quatre assiettes sont utilisées en pratique pour exprimer l'incitatif en pourcentage : les coûts directs seuls, les coûts directs et indirects, le coût total y compris le terrain, et le prix de vente. Les deux premières ont été comparées au \cref{ch:21}, qui a montré que leur écart vaut $D\,\tau_I\,\tau_E$ et que l'ouvrage retient la seconde. La troisième est celle des analystes de développement, pour qui le promoteur porte le risque sur l'ensemble de sa mise, terrain compris ; la quatrième est celle des constructeurs eux-mêmes, qui parlent de marge sur les ventes. Une marge de 10 \% n'a donc pas le même sens selon l'assiette, et la conversion entre marge sur le coût et marge sur le prix est une identité à connaître. Si $m_c = E/C$ est la marge sur le coût $C$ (quelle que soit la définition de $C$) et $m_p = E/(C+E)$ la marge sur le prix, alors | |
| 208 | +\begin{equation}\label{eq:23:marges} | |
| 209 | +m_p = \frac{m_c}{1 + m_c}, \qquad m_c = \frac{m_p}{1 - m_p} ; | |
| 210 | +\end{equation} | |
| 211 | +un incitatif de 10 \% des coûts directs et indirects correspond à une marge de 9,09 \% du prix hors terrain, et une marge de 15 \% sur le prix correspond à 17,6 \% sur le coût. Lire une fourchette d'incitatifs sans en connaître l'assiette revient à ne rien lire. Le chapitre ne propose pas de fourchette chiffrée : aucune source publique québécoise n'en publie, les guides de coûts sous licence n'en donnent pas pour le marché résidentiel montréalais, et les ordres de grandeur qui circulent dans la pratique ne sont pas vérifiables ; le taux de 10 \% du cas 1 reste l'hypothèse pédagogique déclarée au \cref{ch:21}. Qualitativement, l'incitatif croît avec la durée du projet, avec la part des ventes non préalablement conclues, avec la taille et la complexité du bâtiment et avec la volatilité du marché ; il est faible pour une maison construite sur commande, payée par acomptes et livrée en quelques mois, et élevé pour un immeuble de condominiums vendu sur plans sur deux ans. | |
| 212 | + | |
| 213 | +\subsection{Extraction du marché et rendement implicite} | |
| 214 | + | |
| 215 | +La méthode correcte pour fixer l'incitatif est l'extraction à partir de projets comparables dont le prix de vente, la valeur du terrain et les coûts sont connus : | |
| 216 | +\begin{equation}\label{eq:23:extraction} | |
| 217 | +E = P - V_L - D - I , | |
| 218 | +\end{equation} | |
| 219 | +où $P$ est le prix de vente de la maison neuve, $V_L$ la valeur du terrain à la date de l'achat par le promoteur et $D + I$ ses coûts de construction, financement compris. Le résultat est un profit réalisé pour chaque projet ; c'est la régularité de ce profit sur plusieurs projets et plusieurs promoteurs, en période de marché stable, qui en fait une mesure de l'incitatif requis. L'extraction exige des données que les constructeurs ne publient pas, mais que les entretiens, les prospectus de projets et les prix affichés des maisons neuves, décomposés entre terrain et bâtiment, permettent d'approcher ; elle est le pendant, pour le coût, de l'extraction du taux de capitalisation pour le revenu. Une seconde lecture, utile pour juger de la vraisemblance d'un incitatif, le convertit en rendement du capital engagé. Si le promoteur achète le terrain au départ et tire les coûts de construction uniformément pendant $T$, son capital moyen engagé est $V_L + (D+I)/2$ et le rendement annuel implicite de l'incitatif vaut | |
| 220 | +\begin{equation}\label{eq:23:rendement} | |
| 221 | +\rho = \frac{E}{T\,\big[V_L + (D+I)/2\big]} . | |
| 222 | +\end{equation} | |
| 223 | +Pour le cas 1, avec $E = \dollars{36142.49}$, un terrain hypothétique de \dollars{180000} et une durée de neuf mois, $\rho = 13{,}4$ \% par année ; sur six mois, 20,0 \%. Ce rendement rémunère le risque et le travail du promoteur en sus des intérêts du prêt de construction, qui sont déjà dans $I$, et des intérêts sur le terrain, qui ne sont comptés ni dans $I$ ni ailleurs dans le devis ; il est l'une des façons de juger si un taux d'incitatif est plausible pour la durée et le risque d'un projet, et il explique pourquoi un même pourcentage ne convient pas à un chantier de six mois et à un projet de deux ans. | |
| 224 | + | |
| 225 | +\section{Coûts d'infrastructure et contributions municipales}\label{sec:23:infrastructures} | |
| 226 | + | |
| 227 | +\subsection{Terrain brut, terrain viabilisé et coût du site} | |
| 228 | + | |
| 229 | +Le coût d'un bâtiment ne commence pas à la dalle. Entre le terrain brut et le terrain prêt à bâtir s'intercalent les infrastructures, rue, aqueduc, égouts, électricité et télécommunications jusqu'à la limite du lot, puis les raccordements du lot au réseau, et enfin les conditions que la municipalité attache au lotissement et au permis. Dans un quartier établi comme le secteur Hull du cas 1, le terrain est viabilisé depuis longtemps et sa valeur, estimée par comparaison avec des terrains desservis (\cref{ch:25}), incorpore les infrastructures ; seuls les raccordements du lot (\dollars{6867.07} dans le devis) relèvent du coût du bâtiment. Dans un développement neuf, la logique s'inverse : le promoteur paie les infrastructures, les contributions municipales et le portage du terrain, et le prix des lots qu'il vend les contient. Le coût du site prêt à bâtir s'écrit alors | |
| 230 | +\begin{equation}\label{eq:23:site} | |
| 231 | +C_{\text{site}} = V_L^{\text{brut}} + C_{\text{infra}} + K_{\text{parcs}} + K_{\text{autres}} + I_{\text{portage}} , | |
| 232 | +\end{equation} | |
| 233 | +où $C_{\text{infra}}$ est le coût des infrastructures, $K_{\text{parcs}}$ la contribution pour fins de parcs, $K_{\text{autres}}$ les autres contributions et frais municipaux et $I_{\text{portage}}$ le coût de détention du terrain pendant le développement, que \textcite{capozzaHelsley1989} identifient comme l'une des composantes du prix d'un terrain urbain avec la valeur agricole, la rente d'accessibilité et la prime de croissance anticipée. L'\cref{eq:23:site} n'a de place dans la méthode du coût que dans un sens : vérifier que ce que l'on a mis dans la valeur du terrain n'est pas remis dans le coût du bâtiment. Le \cref{ch:41} développe l'analyse de développement proprement dite. | |
| 234 | + | |
| 235 | +\subsection{La contribution pour fins de parcs} | |
| 236 | + | |
| 237 | +La Loi sur l'aménagement et l'urbanisme permet à une municipalité d'exiger, comme condition préalable à l'approbation d'un plan relatif à une opération cadastrale ou à la délivrance d'un permis de construction dans les cas qu'elle détermine (redéveloppement, lot issu de la rénovation cadastrale, nouvelles activités), que le propriétaire cède gratuitement un terrain ou une servitude pour fins de parcs, de terrains de jeux ou d'espaces naturels, verse une somme, ou combine les deux \parencite[art.~117.1 et 117.2]{lau}. Le terrain cédé et la somme versée ne doivent pas excéder, respectivement, 10 \% de la superficie et 10 \% de la valeur du site, et leur combinaison ne doit pas excéder 10 \% de la valeur du site \parencite[art.~117.4]{lau} ; la réforme de 2023 a précisé le régime \parencite{loi2023c12}. La valeur du site, selon le guide ministériel de la prise de décision en urbanisme consulté le 31 octobre 2026, est établie à la date de la réception de la demande de permis, soit à partir de la valeur inscrite au rôle, soit par un évaluateur agréé mandaté par la municipalité selon ce que prévoit son règlement, et la municipalité comme le propriétaire peuvent contester cette valeur devant le Tribunal administratif du Québec, sans que la contestation dispense le propriétaire de verser la contribution. La question de la valeur du site est ainsi, au Québec, l'un des mandats où l'évaluateur agréé intervient par disposition réglementaire ; la Cour suprême a rappelé en 2025, dans \emph{Ville de Sainte-Julie c. Investissements Laroda}, qu'une cession excédant ce que la loi permet pour fins de parcs s'analyse en une réserve de terrains donnant droit à une indemnité fondée sur la valeur marchande \parencite{laroda2025}. Pour la méthode du coût, la contribution est un coût du site, non du bâtiment : elle entre dans le prix d'un lot viabilisé et elle est déjà dans la valeur d'un terrain estimé par comparaison ; pour un site de \dollars{180000}, elle ne pourrait excéder \dollars{18000} si elle était exigible, et elle ne l'est pas pour la reconstruction d'une maison sur un lot existant qui n'est ni loti ni redéveloppé. | |
| 238 | + | |
| 239 | +\subsection{Permis, frais d'infrastructure et autres contributions} | |
| 240 | + | |
| 241 | +Les municipalités tarifent le permis de construction, les branchements aux réseaux, les entrées charretières et, dans certains cas, des frais destinés à financer les infrastructures que la croissance rend nécessaires ; ces régimes varient d'une municipalité à l'autre et le chapitre n'en cite aucun montant, faute de les avoir vérifiés dans les règlements en vigueur à la date d'évaluation. Le principe demeure celui de l'\cref{eq:23:site} : ce qui conditionne la constructibilité du lot est un coût du site, ce qui conditionne l'édification du bâtiment (le permis, les inspections) est un coût indirect du bâtiment. Le devis du cas 1 range les permis avec les études dans un seul poste indirect de \dollars{4481.67}, convention admissible pour une maison et qu'il faut détailler pour un immeuble. | |
| 242 | + | |
| 243 | +\section{La conjoncture des coûts de construction, 2020-2026}\label{sec:23:conjoncture} | |
| 244 | + | |
| 245 | +\subsection{Par type d'immeuble et par région} | |
| 246 | + | |
| 247 | +L'indice des prix de la construction de bâtiments (IPCB) de Statistique Canada, présenté au \cref{ch:21}, mesure trimestriellement le prix que les entrepreneurs facturent pour construire des bâtiments types dans quinze régions métropolitaines, par type d'immeuble et par division de travaux \parencite{statcanIPCB}. Le \cref{ch:21} en a tiré la trajectoire montréalaise de la maison individuelle ; le présent chapitre élargit la lecture à tous les types résidentiels, aux régions québécoises couvertes et aux divisions, à partir du fichier brut du tableau 18-10-0289-01 diffusé le 29 octobre 2026. Une précision s'impose d'abord : outre Montréal, dont les séries résidentielles commencent au premier trimestre de 2017, le tableau contient depuis le premier trimestre de 2023 des séries pour la région métropolitaine de Québec, et il couvre la partie ontarienne d'Ottawa-Gatineau depuis 2017 ; Gatineau n'y figure pas en propre, mais la série ontarienne de la même région métropolitaine est le repère public le plus proche pour un évaluateur de l'Outaouais, à la réserve près que le régime de main-d'œuvre, les taxes et les normes diffèrent de part et d'autre de la rivière. Le \cref{tab:23:ipcb-regions} rassemble les valeurs du troisième trimestre de 2025 et de 2026, la variation sur un an et, lorsque la série le permet, la variation depuis le premier trimestre de 2020. | |
| 248 | + | |
| 249 | +\begin{table}[tbp] | |
| 250 | +\caption{IPCB des bâtiments résidentiels par type et par région (indice, 2023 = 100) : T3 2025, T3 2026, variation sur un an et variation depuis le T1 2020.}\label{tab:23:ipcb-regions} | |
| 251 | +\centering\footnotesize | |
| 252 | +\begin{tabular}{@{}L{25mm}L{44mm} S[table-format=3.1] S[table-format=3.1] S[table-format=1.1] S[table-format=2.1]@{}} | |
| 253 | +\toprule | |
| 254 | +Région & Type d'immeuble & {T3 2025} & {T3 2026} & {1 an (\%)} & {T1 2020 (\%)} \\ | |
| 255 | +\midrule | |
| 256 | +Montréal & Bâtiments résidentiels (ensemble) & 108.5 & 117.8 & 8.6 & 62.0 \\ | |
| 257 | +Montréal & Maison individuelle & 107.3 & 116.5 & 8.6 & 59.4 \\ | |
| 258 | +Montréal & Maison en rangée & 107.0 & 116.2 & 8.6 & 59.4 \\ | |
| 259 | +Montréal & Immeuble d'appartements, moins de 5 étages & 108.5 & 118.5 & 9.2 & 64.6 \\ | |
| 260 | +Montréal & Tour d'habitation, 5 étages ou plus & 110.8 & 119.5 & 7.9 & 53.8 \\ | |
| 261 | +Montréal & Bâtiments non résidentiels & 108.5 & 114.4 & 5.4 & 50.1 \\ | |
| 262 | +Québec & Bâtiments résidentiels (ensemble) & 114.3 & 124.8 & 9.2 & {n.\,d.} \\ | |
| 263 | +Québec & Maison individuelle & 113.5 & 123.8 & 9.1 & {n.\,d.} \\ | |
| 264 | +Québec & Immeuble d'appartements, moins de 5 étages & 115.0 & 126.1 & 9.7 & {n.\,d.} \\ | |
| 265 | +Ottawa--Gatineau (ont.) & Bâtiments résidentiels (ensemble) & 105.9 & 110.8 & 4.6 & 69.4 \\ | |
| 266 | +Ottawa--Gatineau (ont.) & Maison individuelle & 105.6 & 110.8 & 4.9 & 67.9 \\ | |
| 267 | +Composite de 15 RMR & Bâtiments résidentiels (ensemble) & 108.5 & 111.4 & 2.7 & 72.2 \\ | |
| 268 | +Composite de 15 RMR & Maison individuelle & 108.4 & 111.1 & 2.5 & 80.4 \\ | |
| 269 | +\bottomrule | |
| 270 | +\end{tabular} | |
| 271 | +\tabsource{Statistique Canada, tableau 18-10-0289-01, agrégat des divisions, diffusé le 29 octobre 2026, consulté le 31 octobre 2026 ; fichier brut \texttt{data/raw/statcan\_18100289/18100289.csv} ; calculs \texttt{analysis/python/cases/ch23\_structure\_couts.py}. Les séries de Québec commencent au T1 2023 (n.\,d. : non disponible).} | |
| 272 | +\end{table} | |
| 273 | + | |
| 274 | +Trois enseignements se dégagent. Le premier est la convergence des types résidentiels à Montréal : maison individuelle, maison en rangée et immeuble d'appartements de moins de cinq étages ont progressé de 59 à 65 \% depuis le début de 2020 et de 8,6 à 9,2 \% sur la dernière année, la tour d'habitation un peu moins (53,8 \% et 7,9 \%) et le non résidentiel nettement moins (50,1 \% et 5,4 \%) ; l'évaluateur qui indexe un coût résidentiel avec une série non résidentielle commet une erreur systématique, le \cref{ch:21} l'a chiffrée, mais entre types résidentiels l'erreur de série est de second ordre sur cette période. Le second enseignement est la divergence régionale récente : au troisième trimestre de 2026, les coûts résidentiels progressaient de 8,6 \% à Montréal et de 9,2 \% à Québec sur un an, contre 4,6 \% dans la partie ontarienne d'Ottawa-Gatineau et 2,7 \% pour le composite des quinze régions ; le Québec connaît en 2026 une inflation des coûts de construction nettement supérieure au reste du pays, alors que la flambée de 2020-2022 avait été plus forte ailleurs (72 \% pour le composite contre 62 \% à Montréal). Le troisième est la lecture des variations sur un an, que la \cref{fig:23:ipcb-types} met en évidence : la hausse annuelle de la maison individuelle à Montréal a culminé à 18,9 \% au premier trimestre de 2022, est tombée à 0,9 \% au premier trimestre de 2024, puis est remontée pour atteindre 8,6 \% au troisième trimestre de 2026. Un évaluateur qui aurait indexé en 2024 un coût de 2023 sur la base de la variation de 2022 l'aurait surestimé ; celui qui, en 2026, prolongerait l'accalmie de 2024 le sous-estimerait. La variation annuelle de l'indice n'est pas un paramètre stable, et la seule procédure correcte consiste à lire la série à la date d'évaluation. | |
| 275 | + | |
| 276 | +\begin{figure}[tbp] | |
| 277 | +\centering | |
| 278 | +\includegraphics[width=\linewidth]{ch23/ch23-fig-ipcb-types.pdf} | |
| 279 | +\caption{Indice des prix de la construction de bâtiments, 2023 = 100 : (a) variation sur quatre trimestres des séries résidentielles de Montréal par type d'immeuble, du T1 2018 au T3 2026, qui culmine à 18,9 \% au T1 2022 et remonte à 8,6 \% au T3 2026 ; (b) niveau de l'indice des bâtiments résidentiels à Montréal, à Québec (série débutant au T1 2023), dans la partie ontarienne d'Ottawa--Gatineau et pour le composite de quinze régions métropolitaines, du T1 2017 au T3 2026.}\label{fig:23:ipcb-types} | |
| 280 | +\figsource{Statistique Canada, tableau 18-10-0289-01, diffusé le 29 octobre 2026, consulté le 31 octobre 2026 ; fichier brut \texttt{data/raw/statcan\_18100289/18100289.csv} ; script \texttt{analysis/python/figures/ch23\_ipcb\_types.py}.} | |
| 281 | +\end{figure} | |
| 282 | + | |
| 283 | +\subsection{Par division de travaux : une décomposition de la hausse} | |
| 284 | + | |
| 285 | +L'IPCB est aussi publié par division de travaux, selon la nomenclature des devis de construction : béton, maçonnerie, bois et composites, isolation et étanchéité, ouvertures, revêtements de finition, plomberie, chauffage-ventilation, électricité, exigences générales, terrassements, services d'utilités, aménagements extérieurs. Chaque division a son indice, mais le tableau ne publie pas les poids des divisions dans le bâtiment type, de sorte que l'on peut comparer les rythmes de hausse des divisions sans calculer leurs contributions exactes à la hausse de l'ensemble. Formellement, si $\omega_d$ est le poids de la division $d$ dans le coût du bâtiment type à la période de base et $g_d$ la variation de son indice, la variation de l'agrégat est approximativement | |
| 286 | +\begin{equation}\label{eq:23:contributions} | |
| 287 | +g \approx \sum_d \omega_d\, g_d , | |
| 288 | +\end{equation} | |
| 289 | +et la contribution de la division $d$ vaut $\omega_d g_d$ ; faute des $\omega_d$, le \cref{tab:23:divisions} et la \cref{fig:23:ipcb-divisions} présentent les $g_d$ pour la maison individuelle à Montréal sur deux périodes, la flambée du premier trimestre de 2020 au quatrième trimestre de 2022 et la dernière année, du troisième trimestre de 2025 au troisième trimestre de 2026. | |
| 290 | + | |
| 291 | +\begin{table}[tbp] | |
| 292 | +\caption{IPCB Montréal, maison individuelle, par division de travaux (indice, 2023 = 100) : T1 2020, T4 2022, T3 2025, T3 2026 et variations sur les deux périodes. Indices de division, non pondérés ; l'agrégat est publié séparément.}\label{tab:23:divisions} | |
| 293 | +\centering\footnotesize | |
| 294 | +\begin{tabular}{@{}L{46mm} S[table-format=3.1] S[table-format=3.1] S[table-format=3.1] S[table-format=3.1] S[table-format=2.1] S[table-format=2.1]@{}} | |
| 295 | +\toprule | |
| 296 | +Division & {T1 2020} & {T4 2022} & {T3 2025} & {T3 2026} & {20--22 (\%)} & {1 an (\%)} \\ | |
| 297 | +\midrule | |
| 298 | +Bois, plastiques et composites & 59.8 & 110.7 & 94.4 & 102.6 & 85.1 & 8.7 \\ | |
| 299 | +Ouvrages métalliques & 58.3 & 96.7 & 109.3 & 121.5 & 65.9 & 11.2 \\ | |
| 300 | +Charpente en acier & 68.7 & 94.7 & 112.3 & 127.0 & 37.8 & 13.1 \\ | |
| 301 | +\textbf{Agrégat des divisions} & 73.1 & 99.4 & 107.3 & 116.5 & 36.0 & 8.6 \\ | |
| 302 | +Revêtements de finition & 74.6 & 99.0 & 112.5 & 123.1 & 32.7 & 9.4 \\ | |
| 303 | +Plomberie & 76.3 & 100.4 & 111.6 & 122.8 & 31.6 & 10.0 \\ | |
| 304 | +Ouvertures et fermetures & 75.8 & 98.7 & 103.7 & 106.4 & 30.2 & 2.6 \\ | |
| 305 | +Béton & 71.3 & 92.0 & 119.3 & 137.7 & 29.0 & 15.4 \\ | |
| 306 | +Services d'utilités & 78.6 & 99.6 & 117.3 & 128.8 & 26.7 & 9.8 \\ | |
| 307 | +Isolation thermique et étanchéité & 74.5 & 93.8 & 109.7 & 119.2 & 25.9 & 8.7 \\ | |
| 308 | +Aménagements extérieurs & 79.7 & 96.3 & 104.9 & 110.9 & 20.8 & 5.7 \\ | |
| 309 | +Maçonnerie & 80.2 & 95.0 & 105.4 & 117.6 & 18.5 & 11.6 \\ | |
| 310 | +Terrassements & 80.5 & 95.0 & 120.6 & 122.6 & 18.0 & 1.7 \\ | |
| 311 | +Exigences générales & 80.5 & 93.1 & 111.5 & 118.4 & 15.7 & 6.2 \\ | |
| 312 | +Chauffage, ventilation et conditionnement d'air & 91.3 & 100.0 & 106.0 & 110.4 & 9.5 & 4.2 \\ | |
| 313 | +Communications & 89.6 & 97.5 & 109.7 & 114.4 & 8.8 & 4.3 \\ | |
| 314 | +Électricité & 94.2 & 98.7 & 107.3 & 110.4 & 4.8 & 2.9 \\ | |
| 315 | +Sécurité et protection électronique & 95.8 & 99.2 & 105.8 & 108.6 & 3.5 & 2.6 \\ | |
| 316 | +\bottomrule | |
| 317 | +\end{tabular} | |
| 318 | +\tabsource{Statistique Canada, tableau 18-10-0289-01, Montréal, maison individuelle, diffusé le 29 octobre 2026, consulté le 31 octobre 2026 ; calculs \texttt{analysis/python/cases/ch23\_structure\_couts.py}, fonction \texttt{divisions\_maison}.} | |
| 319 | +\end{table} | |
| 320 | + | |
| 321 | +\begin{figure}[tbp] | |
| 322 | +\centering | |
| 323 | +\includegraphics[width=\linewidth]{ch23/ch23-fig-ipcb-divisions.pdf} | |
| 324 | +\caption{Variation des indices de division de l'IPCB, Montréal, maison individuelle, du T1 2020 au T4 2022 (flambée) et du T3 2025 au T3 2026 (dernière année). La flambée a été portée par le bois et les ouvrages métalliques ; la hausse récente est menée par le béton, la charpente d'acier, la maçonnerie et les ouvrages métalliques, les divisions à forte main-d'œuvre progressant à un rythme proche de celui des conventions collectives. Indices de division, non pondérés.}\label{fig:23:ipcb-divisions} | |
| 325 | +\figsource{Statistique Canada, tableau 18-10-0289-01, diffusé le 29 octobre 2026, consulté le 31 octobre 2026 ; script \texttt{analysis/python/figures/ch23\_ipcb\_divisions.py}.} | |
| 326 | +\end{figure} | |
| 327 | + | |
| 328 | +La lecture des divisions éclaire la nature de la hausse. Entre le début de 2020 et la fin de 2022, l'agrégat de la maison individuelle a gagné 36 \%, mais la division « bois, plastiques et composites » a bondi de 85 \%, avant de reculer de 110,7 à 94,4 entre la fin de 2022 et le troisième trimestre de 2025, et les ouvrages métalliques de 66 \% ; à l'opposé, l'électricité (+4,8 \%), la sécurité électronique (+3,5 \%) et le chauffage-ventilation (+9,5 \%) sont restés presque stables. La flambée de 2020-2022 a donc été d'abord une flambée des matériaux, bois et acier en tête, dans un contexte de perturbation des chaînes d'approvisionnement, et non une flambée des salaires. La hausse de la dernière année est d'une autre nature : le bois ne progresse plus que de 8,7 \%, mais le béton (+15,4 \%), la charpente d'acier (+13,1 \%), la maçonnerie (+11,6 \%), les ouvrages métalliques (+11,2 \%) et la plomberie (+10,0 \%) dépassent l'agrégat (+8,6 \%), tandis que les divisions dominées par la main-d'œuvre sur place, exigences générales (+6,2 \%), aménagements extérieurs (+5,7 \%), électricité (+2,9 \%), se situent sous la majoration salariale de 8 \% du secteur résidentiel. Il faut se garder d'une lecture trop fine : chaque division mêle matériaux et main-d'œuvre, les tarifs douaniers de 2025-2026 sur l'acier et l'aluminium pèsent sur les divisions métalliques, et le béton dépend de l'énergie et du transport ; mais l'ordre de grandeur est robuste et il confirme ce que la \cref{prop:salaires} suggérait : une hausse salariale de 8 \% appliquée à une part de main-d'œuvre d'un tiers à la moitié explique trois à quatre points de la hausse de 8,6 \%, et le reste vient des matériaux et des marges. Altus Group, dans le commentaire public de son guide de 2026, notait que les coûts montréalais avaient augmenté de 4 \% ou davantage en 2025 \parencite{altuscostinsights2026} ; l'IPCB, qui mesure des prix facturés sur des bâtiments types, enregistre une accélération en 2026 que l'évaluateur doit intégrer. L'indice des prix des logements neufs, enfin, ne doit pas être confondu avec l'IPCB : il mesure le prix de vente des maisons neuves, terrain compris, et il n'a progressé que de 1,2 \% à Montréal et de 0,3 \% dans la partie québécoise d'Ottawa-Gatineau entre septembre 2025 et septembre 2026 \parencite{statcanipln}, ce qui signifie que la hausse des coûts de construction de 2026 n'a pas été transmise aux prix de vente et que les marges des constructeurs, ou la valeur implicite des terrains, l'ont absorbée ; c'est l'illustration la plus directe de la différence entre coût et prix, et de la raison pour laquelle l'incitatif réalisé n'est pas l'incitatif requis. | |
| 329 | + | |
| 330 | +\section{Exemple intégral : la structure complète du coût neuf du cas 1}\label{sec:23:exemple} | |
| 331 | + | |
| 332 | +\begin{synthetique} | |
| 333 | +Le devis utilisé est celui du \cref{ch:21} (\texttt{data/\allowbreak synthetic/\allowbreak cas1\_gatineau\_couts.csv}), 38 postes (33 directs, 5 indirects) générés par \texttt{analysis/python/traite/synth.py} avec la graine 20261031 pour le cottage fictif de \msq{165} du secteur Hull ; les quantités sont vraisemblables et les prix unitaires calibrés sur la fourchette publique relayée du guide Altus 2026 (voir l'encadré correspondant du \cref{ch:21}). Les montants $D$, $I$, $E$ et $C_N$ sont identiques à ceux du \cref{ch:21}. Les paramètres documentés ajoutés ici sont le taux hypothécaire affiché de la Banque du Canada (6,19 \% au 28 octobre 2026), les taux de TPS et de TVQ et les paramètres des remboursements lus dans le guide RC4028 ; la valeur de terrain de \dollars{180000} et la part de main-d'œuvre de 40 \% sont des hypothèses. Tous les résultats sont imprimés par \texttt{analysis/python/cases/ch23\_structure\_couts.py} et vérifiés par \texttt{analysis/python/tests/test\_ch23.py}. | |
| 334 | +\end{synthetique} | |
| 335 | + | |
| 336 | +\begin{exemple}{Structure complète et ratios du coût neuf d'un cottage de 165 m² à Hull}{structure-cas1} | |
| 337 | +L'analyse procède en cinq étapes : le tableau complet des postes, les ratios des indirects, la vérification du financement, l'incitatif et le coût toutes taxes comprises, puis la lecture par nature. | |
| 338 | + | |
| 339 | +\emph{Étape 1 : le tableau complet.} Le \cref{tab:23:structure} présente les 38 postes groupés par corps de métier, avec la part de chaque poste direct dans $D = \dollars{298826.17}$, la part de chaque poste indirect dans $I = \dollars{62598.68}$, et la part de chacun dans le coût neuf $C_N = \dollars{397567.33}$. Le poste direct le plus lourd, la charpente des murs et planchers (\dollars{39359.10}), représente 13,17 \% des directs et 9,90 \% du coût neuf ; les trois premiers postes directs (charpente, revêtement extérieur, armoires) pèsent 28,6 \% des directs. Côté indirects, la supervision du chantier (\dollars{35708.66}) représente à elle seule 57,04 \% des indirects et 8,98 \% du coût neuf. | |
| 340 | + | |
| 341 | +\emph{Étape 2 : les ratios des indirects.} Rapportés aux directs, les cinq postes indirects valent 11,95 \% (supervision), 3,39 \% (plans et honoraires), 2,85 \% (financement), 1,50 \% (permis et études) et 1,26 \% (assurances et cautionnement), soit 20,95 \% au total ; rapportés à $D + I$, 9,88, 2,80, 2,36, 1,24 et 1,04 \%, soit 17,32 \% ; rapportés à $C_N$, 8,98, 2,55, 2,15, 1,13 et 0,95 \%, soit 15,75 \%. Hors supervision, les indirects ne représentent que 9,00 \% des directs : c'est ce second chiffre qu'il faudrait comparer à un taux d'indirects mesuré sur des devis où la supervision est dans les frais de chantier. Le même devis supporte donc deux taux d'indirects « corrects », 20,95 et 9,00 \%, et la différence tient tout entière à une convention de classement. | |
| 342 | + | |
| 343 | +\emph{Étape 3 : la vérification du financement.} Les coûts hors financement s'élèvent à \dollars{352895.22}. La \cref{prop:interets} donne, pour un prêt couvrant la totalité de ces coûts pendant six mois au taux de référence de 6,19 \%, des intérêts de \dollars{5461.05} (continu), \dollars{6371.23} (six tirages mensuels) ou \dollars{6426.29} (intérêts capitalisés). Le forfait du devis, \dollars{8529.63}, implique un produit $i\,T$ de 0,0483, soit 9,4 mois à 6,19 \% : il est vraisemblable pour une période de financement allant de l'achat des matériaux de fondation à la livraison et incluant des frais de dossier, et il est conservé. S'il était remplacé par le calcul continu à six mois, le coût neuf tomberait à \dollars{394191.90}. | |
| 344 | + | |
| 345 | +\emph{Étape 4 : incitatif et coût toutes taxes comprises.} L'incitatif de 10 \% de $D + I$ vaut \dollars{36142.49}, soit une marge de 9,09 \% du coût neuf hors terrain par l'\cref{eq:23:marges}, et un rendement implicite du capital de 13,4 \% par année pour un projet de neuf mois avec un terrain de \dollars{180000} par l'\cref{eq:23:rendement}. Le coût neuf est de \dollars{397567.33}. Si l'on y ajoute le terrain hypothétique, l'habitation neuve équivalente vaut \dollars{577567} avant taxes ; la TPS (5 \%) et la TVQ (9,975 \%) ajoutent \dollars{86491} pour un acheteur occupant sans remboursement, dont la valeur dépasse les seuils de \dollars{450000} et de \dollars{300000}, et \dollars{57612} pour un premier acheteur dont la construction a commencé après le 20 mars 2025 (\cref{tab:23:taxes}). La \cref{fig:23:structure} représente la formation du coût, bloc par bloc, jusqu'au coût toutes taxes comprises du seul bâtiment, \dollars{457103}. | |
| 346 | + | |
| 347 | +\emph{Étape 5 : la lecture par nature.} En attribuant à chaque poste direct une nature dominante (convention du chapitre, colonne « nature » du \cref{tab:23:structure}), 64,5 \% des directs relèvent de postes mixtes matériaux-main-d'œuvre, 21,7 \% de postes dominés par les matériaux livrés (fermes, fenêtres, portes, armoires, thermopompe, chauffe-eau), 7,8 \% de postes dominés par la main-d'œuvre (gypse, peinture), 3,2 \% de services (raccordements, conteneurs) et 2,8 \% d'équipement (excavation). Cette lecture ne mesure pas la part de la main-d'œuvre, qui est contenue dans les postes mixtes ; elle indique seulement que près des deux tiers du coût direct sont exposés à la fois aux prix des matériaux et aux conventions collectives, ce qui justifie la plage de 35 à 50 \% retenue pour $\lambda$ dans l'analyse de sensibilité. | |
| 348 | +\end{exemple} | |
| 349 | + | |
| 350 | +\begin{longtable}{@{}L{47mm}L{19mm} S[table-format=6.2] S[table-format=3.2] S[table-format=3.2]@{}} | |
| 351 | +\caption{Structure complète du coût neuf du sujet du cas 1 : 38 postes groupés par corps de métier, nature dominante, montant (dollars du T3 2026), part du bloc (directs ou indirects) et part du coût neuf.}\label{tab:23:structure}\\ | |
| 352 | +\toprule | |
| 353 | +Poste & Nature & {Montant (\$)} & {Part du bloc (\%)} & {Part de $C_N$ (\%)} \\ | |
| 354 | +\midrule | |
| 355 | +\endfirsthead | |
| 356 | +\caption[]{Structure complète du coût neuf du sujet du cas 1 (suite).}\\ | |
| 357 | +\toprule | |
| 358 | +Poste & Nature & {Montant (\$)} & {Part du bloc (\%)} & {Part de $C_N$ (\%)} \\ | |
| 359 | +\midrule | |
| 360 | +\endhead | |
| 361 | +\midrule | |
| 362 | +\multicolumn{5}{r}{\footnotesize\itshape suite à la page suivante}\\ | |
| 363 | +\endfoot | |
| 364 | +\bottomrule | |
| 365 | +\endlastfoot | |
| 366 | +\multicolumn{5}{@{}l}{\itshape Fondations et site (5 postes, \dollars{39818.04})}\\ | |
| 367 | +Fondations béton (semelles, murs) & mixte & 14283.44 & 4.78 & 3.59 \\ | |
| 368 | +Excavation et remblai & équipement & 8500.80 & 2.84 & 2.14 \\ | |
| 369 | +Raccordements aqueduc et égout & services & 6867.07 & 2.30 & 1.73 \\ | |
| 370 | +Dalle de sous-sol & mixte & 6523.65 & 2.18 & 1.64 \\ | |
| 371 | +Drain français et imperméabilisation & mixte & 3643.08 & 1.22 & 0.92 \\ | |
| 372 | +\multicolumn{5}{@{}l}{\itshape Structure et charpente (3 postes, \dollars{53852.16})}\\ | |
| 373 | +Charpente murs et planchers & mixte & 39359.10 & 13.17 & 9.90 \\ | |
| 374 | +Fermes de toit & matériaux & 7553.70 & 2.53 & 1.90 \\ | |
| 375 | +Escaliers & mixte & 6939.36 & 2.32 & 1.75 \\ | |
| 376 | +\multicolumn{5}{@{}l}{\itshape Enveloppe (7 postes, \dollars{70350.56})}\\ | |
| 377 | +Revêtement extérieur (brique et fibrociment) & mixte & 28624.80 & 9.58 & 7.20 \\ | |
| 378 | +Fenêtres (PVC double vitrage) & matériaux & 16770.08 & 5.61 & 4.22 \\ | |
| 379 | +Isolation et pare-vapeur & mixte & 9714.60 & 3.25 & 2.44 \\ | |
| 380 | +Couverture, bardeaux d'asphalte & mixte & 7680.00 & 2.57 & 1.93 \\ | |
| 381 | +Portes extérieures & matériaux & 4120.23 & 1.38 & 1.04 \\ | |
| 382 | +Porte de garage & matériaux & 1879.41 & 0.63 & 0.47 \\ | |
| 383 | +Gouttières et solins & mixte & 1561.44 & 0.52 & 0.39 \\ | |
| 384 | +\multicolumn{5}{@{}l}{\itshape Finition intérieure (8 postes, \dollars{67092.26})}\\ | |
| 385 | +Armoires de cuisine et comptoirs & matériaux & 17348.39 & 5.81 & 4.36 \\ | |
| 386 | +Gypse et tirage de joints & main-d'œuvre & 17031.40 & 5.70 & 4.28 \\ | |
| 387 | +Planchers de bois franc & mixte & 8240.30 & 2.76 & 2.07 \\ | |
| 388 | +Portes intérieures et moulures & mixte & 6577.90 & 2.20 & 1.65 \\ | |
| 389 | +Peinture intérieure & main-d'œuvre & 6274.40 & 2.10 & 1.58 \\ | |
| 390 | +Vanités et accessoires (2 salles de bain) & matériaux & 5421.37 & 1.81 & 1.36 \\ | |
| 391 | +Planchers de céramique & mixte & 3415.30 & 1.14 & 0.86 \\ | |
| 392 | +Planchers flottants (sous-sol) & mixte & 2783.20 & 0.93 & 0.70 \\ | |
| 393 | +\multicolumn{5}{@{}l}{\itshape Mécanique et électricité (6 postes, \dollars{51105.45})}\\ | |
| 394 | +Plomberie brute et finition & mixte & 16697.80 & 5.59 & 4.20 \\ | |
| 395 | +Électricité (entrée 200 A, filage, appareils) & mixte & 14095.57 & 4.72 & 3.55 \\ | |
| 396 | +Thermopompe centrale et plinthes & matériaux & 10481.32 & 3.51 & 2.64 \\ | |
| 397 | +Ventilation (VRC) et conduits & mixte & 5638.23 & 1.89 & 1.42 \\ | |
| 398 | +Éclairage et finition électrique & mixte & 3035.97 & 1.02 & 0.76 \\ | |
| 399 | +Chauffe-eau & matériaux & 1156.56 & 0.39 & 0.29 \\ | |
| 400 | +\multicolumn{5}{@{}l}{\itshape Aménagements extérieurs (4 postes, \dollars{16607.70})}\\ | |
| 401 | +Balcon et perron & mixte & 6577.90 & 2.20 & 1.65 \\ | |
| 402 | +Aménagement paysager de base & mixte & 4698.52 & 1.57 & 1.18 \\ | |
| 403 | +Nettoyage et conteneurs & services & 2746.83 & 0.92 & 0.69 \\ | |
| 404 | +Entrée asphaltée & mixte & 2584.45 & 0.86 & 0.65 \\ | |
| 405 | +\midrule | |
| 406 | +\textbf{Coûts directs $D$ (33 postes)} & & \bfseries 298826.17 & \bfseries 100.00 & \bfseries 75.16 \\ | |
| 407 | +\midrule | |
| 408 | +\multicolumn{5}{@{}l}{\itshape Coûts indirects (5 postes, \dollars{62598.68}) ; part du bloc = part de $I$}\\ | |
| 409 | +Supervision de chantier (26 semaines de salaires) & indirect & 35708.66 & 57.04 & 8.98 \\ | |
| 410 | +Plans et honoraires professionnels & indirect & 10119.90 & 16.17 & 2.55 \\ | |
| 411 | +Financement intérimaire (forfait) & indirect & 8529.63 & 13.63 & 2.15 \\ | |
| 412 | +Permis et études (arpentage, sol) & indirect & 4481.67 & 7.16 & 1.13 \\ | |
| 413 | +Assurances de chantier et cautionnement & indirect & 3758.82 & 6.00 & 0.95 \\ | |
| 414 | +\midrule | |
| 415 | +\textbf{Coûts indirects $I$} (20,95 \% de $D$) & & \bfseries 62598.68 & \bfseries 100.00 & \bfseries 15.75 \\ | |
| 416 | +Sous-total $D + I$ & & 361424.85 & & 90.91 \\ | |
| 417 | +Incitatif de l'entrepreneur $E$ (10 \% de $D+I$) & & 36142.49 & & 9.09 \\ | |
| 418 | +\midrule | |
| 419 | +\textbf{Coût neuf $C_N$} & & \bfseries 397567.33 & & \bfseries 100.00 \\ | |
| 420 | +\end{longtable} | |
| 421 | +\vspace{-8pt} | |
| 422 | +\tabsource{\synth{\texttt{data/synthetic/cas1\_gatineau\_couts.csv}, graine 20261031 ; calculs \texttt{analysis/python/cases/ch23\_structure\_couts.py}, fonction \texttt{structure}} ; nature dominante : convention du chapitre.} | |
| 423 | + | |
| 424 | +\begin{figure}[tbp] | |
| 425 | +\centering | |
| 426 | +\includegraphics[width=\linewidth]{ch23/ch23-fig-structure-couts.pdf} | |
| 427 | +\caption{Formation du coût du sujet du cas 1 : coûts directs par corps de métier (bleu), cinq postes indirects (orange), incitatif (vert), puis TPS et TVQ sur le seul bâtiment (jaune), sans remboursement puisque la valeur de l'habitation terrain compris dépasse les seuils. Les repères verticaux marquent $D$, $D + I$, $C_N$ et le coût toutes taxes comprises du bâtiment.}\label{fig:23:structure} | |
| 428 | +\figsource{\synth{script \texttt{analysis/python/figures/ch23\_structure.py}, graine 20261031} ; taux de taxes : ARC (2025-04-01).} | |
| 429 | +\end{figure} | |
| 430 | + | |
| 431 | +\subsection{Transposition déclarée au douze-logements du cas 3} | |
| 432 | + | |
| 433 | +Le troisième dossier de cas de l'ouvrage est un immeuble fictif de douze logements à Rosemont, construit en 1962, de trois étages et de \msq{825} de superficie locative. Aucun barème public ne donne le coût de construction d'un tel immeuble au Québec : le guide Altus publie des fourchettes multilogement réservées à ses abonnés, et les notes de recherche de l'ouvrage n'en ont trouvé aucune reprise publique. Le chapitre propose donc, non un coût de marché, mais une transposition du devis du cas 1 dont chaque hypothèse est déclarée et dont l'intérêt est de montrer comment la structure des coûts change avec la taille. L'aire brute est obtenue en divisant la superficie locative par une efficacité de 85 \%, soit \msq{970.6} ; le coût direct unitaire du cas 1, \dollars{298826.17} pour \msq{190} d'aire brute, soit \parmsq{1572.77}, est multiplié par le rapport des indices IPCB montréalais de l'immeuble d'appartements de moins de cinq étages et de la maison individuelle au troisième trimestre de 2026 ($118{,}5/116{,}5 = 1{,}0172$), ce qui donne \parmsq{1599.77} et $D = \dollars{1552717.60}$ ; les quatre postes indirects hors financement sont pris aux ratios du devis du cas 1 (supervision 11,95 \%, plans et honoraires 3,39 \%, permis et études 1,50 \%, assurances 1,26 \% des directs) ; le financement est calculé explicitement par l'\cref{eq:23:interets-mise} avec un prêt de 75 \% des coûts hors financement, une mise de fonds qui finance le premier quart des déboursés, une durée de douze mois et le taux de référence de 6,19 \% ; l'incitatif reste de 10 \% de $D + I$ ; aucune prime de garantie GCR n'est comptée, l'immeuble n'étant pas visé par le plan obligatoire. Le \cref{tab:23:multi} donne le résultat : des indirects de \dollars{312868.76}, soit 20,15 \% des directs, dont \dollars{31922.93} d'intérêts intérimaires ; un coût neuf indicatif de \dollars{2052145}, soit \dollars{171012} par logement, \parmsq{2487} de superficie locative ou \parmsq{2114} d'aire brute. Avec un chantier de dix-huit mois à 7 \%, les intérêts montent à \dollars{54150.37} et le coût neuf à \dollars{2076595.18}. Ces chiffres ne doivent être lus que pour ce qu'ils sont : la structure qu'aurait le coût neuf d'un petit immeuble si ses coûts unitaires étaient ceux d'une maison corrigés par l'indice ; un mandat réel exigerait des soumissions ou un barème multilogement sous licence, et la part des honoraires professionnels, des exigences du Code pour un bâtiment de plus de deux logements et des frais de mise en marché y serait vraisemblablement différente. | |
| 434 | + | |
| 435 | +\begin{table}[tbp] | |
| 436 | +\caption{Transposition déclarée du devis du cas 1 à l'immeuble de 12 logements du cas 3 (dollars du T3 2026) : coût neuf indicatif et structure. Hypothèses : efficacité locative 85 \%, ratio IPCB immeuble/maison 1,0172, indirects hors financement aux ratios du cas 1, prêt de 75 \% sur 12 mois à 6,19 \% avec mise de fonds d'abord, incitatif 10 \% de $D+I$.}\label{tab:23:multi} | |
| 437 | +\centering\footnotesize | |
| 438 | +\begin{tabular}{@{}L{70mm} S[table-format=7.2] S[table-format=3.2] S[table-format=6.0]@{}} | |
| 439 | +\toprule | |
| 440 | +Composante & {Montant (\$)} & {Part de $D$ (\%)} & {Par logement (\$)} \\ | |
| 441 | +\midrule | |
| 442 | +Coûts directs $D$ (\msq{970.6} à \parmsq{1599.77}) & 1552717.60 & 100.00 & 129393 \\ | |
| 443 | +Supervision de chantier & 185544.21 & 11.95 & 15462 \\ | |
| 444 | +Plans et honoraires professionnels & 52583.57 & 3.39 & 4382 \\ | |
| 445 | +Permis et études & 23287.01 & 1.50 & 1941 \\ | |
| 446 | +Assurances de chantier et cautionnement & 19531.04 & 1.26 & 1628 \\ | |
| 447 | +Financement intérimaire (prêt \dollars{1375248}, 9 mois effectifs) & 31922.93 & 2.06 & 2660 \\ | |
| 448 | +Coûts indirects $I$ & 312868.76 & 20.15 & 26072 \\ | |
| 449 | +Incitatif $E$ (10 \% de $D+I$) & 186558.64 & 12.01 & 15547 \\ | |
| 450 | +\midrule | |
| 451 | +Coût neuf indicatif $C_N$ & 2052145.00 & 132.16 & 171012 \\ | |
| 452 | +\bottomrule | |
| 453 | +\end{tabular} | |
| 454 | +\tabsource{\synth{\texttt{analysis/python/cases/ch23\_structure\_couts.py}, fonction \texttt{multilogement\_cas3}} ; sujet : \texttt{data/synthetic/cas3\_montreal\_sujet.json} ; indices : Statistique Canada 18-10-0289-01 ; taux : Banque du Canada V80691335. Hypothèse pédagogique, non un coût de marché.} | |
| 455 | +\end{table} | |
| 456 | + | |
| 457 | +\section{Analyse de sensibilité}\label{sec:23:sensibilite} | |
| 458 | + | |
| 459 | +Le \cref{ch:21} a mesuré la sensibilité du coût neuf au taux d'indirects global, au taux d'incitatif et à la date des prix. Le présent chapitre descend d'un niveau et fait varier les déterminants des indirects eux-mêmes : la durée du chantier, le taux intérimaire, la part des indirects hors financement, et la hausse salariale transmise par la \cref{prop:salaires}, l'incitatif servant de repère. Le \cref{tab:23:financement} croise la durée (6 à 18 mois) et le taux (4 à 9 \%) pour le prêt couvrant les coûts hors financement du cas 1 : les intérêts vont de \dollars{3529} à \dollars{23820}, et le coût neuf, une fois le forfait du devis remplacé par ce calcul et l'incitatif recalculé, de \dollars{392067} à \dollars{414387}, soit une étendue de 5,7 \%. Chaque mois de chantier supplémentaire coûte, au taux de référence, environ \dollars{910} d'intérêts et \dollars{1001} de coût neuf ; chaque point de taux, sur douze mois, \dollars{1764} d'intérêts et \dollars{1941} de coût neuf. La \cref{fig:23:sensibilite} représente ces intérêts en fonction de la durée pour chaque taux et replace les paramètres dans une tornade. | |
| 460 | + | |
| 461 | +\begin{table}[tbp] | |
| 462 | +\caption{Intérêts intérimaires du cas 1 selon la durée du chantier et le taux annuel (prêt tiré uniformément sur \dollars{352895} de coûts hors financement, formule continue), et coût neuf correspondant après remplacement du forfait du devis et recalcul de l'incitatif, en dollars.}\label{tab:23:financement} | |
| 463 | +\centering\small | |
| 464 | +\begin{tabular}{@{}S[table-format=2.0] S[table-format=5.0] S[table-format=5.0] S[table-format=5.0] S[table-format=5.0] S[table-format=5.0] S[table-format=6.0] S[table-format=6.0]@{}} | |
| 465 | +\toprule | |
| 466 | +{Durée (mois)} & {4 \%} & {5 \%} & {6,19 \%} & {7 \%} & {9 \%} & {$C_N$ à 4 \%} & {$C_N$ à 9 \%} \\ | |
| 467 | +\midrule | |
| 468 | +6 & 3529 & 4411 & 5461 & 6176 & 7940 & 392067 & 396919 \\ | |
| 469 | +9 & 5293 & 6617 & 8192 & 9263 & 11910 & 394008 & 401286 \\ | |
| 470 | +12 & 7058 & 8822 & 10922 & 12351 & 15880 & 395948 & 405653 \\ | |
| 471 | +18 & 10587 & 13234 & 16383 & 18527 & 23820 & 399830 & 414387 \\ | |
| 472 | +\bottomrule | |
| 473 | +\end{tabular} | |
| 474 | +\tabsource{\synth{\texttt{analysis/python/cases/ch23\_structure\_couts.py}, fonctions \texttt{grille\_financement} et \texttt{cout\_neuf\_avec\_financement}} ; taux de référence 6,19 \% : Banque du Canada, V80691335 (2026-10-28). Le forfait du devis (\dollars{8530}) correspond à 9,4 mois au taux de référence.} | |
| 475 | +\end{table} | |
| 476 | + | |
| 477 | +\begin{figure}[tbp] | |
| 478 | +\centering | |
| 479 | +\includegraphics[width=\linewidth]{ch23/ch23-fig-sensibilite.pdf} | |
| 480 | +\caption{Sensibilité du coût neuf du cas 1 : (a) intérêts intérimaires selon la durée du chantier pour cinq taux annuels, la ligne tiretée marquant le forfait du devis ; (b) tornade où chaque paramètre varie seul autour du cas de base de \dollars{397567} : taux d'incitatif (5 à 15 \%), indirects hors financement (± 5 points des directs), durée du chantier (6 à 18 mois au taux de référence), hausse salariale (0 à 8 \% avec une part de main-d'œuvre de 40 \%) et taux intérimaire (4 à 9 \% sur douze mois).}\label{fig:23:sensibilite} | |
| 481 | +\figsource{\synth{script \texttt{analysis/python/figures/ch23\_sensibilite.py}, graine 20261031} ; taux de référence : Banque du Canada, V80691335.} | |
| 482 | +\end{figure} | |
| 483 | + | |
| 484 | +La tornade hiérarchise les incertitudes. L'incitatif, de 5 à 15 \%, déplace le coût neuf de \dollars{379496} à \dollars{415639} (9,1 \%) et la part des indirects hors financement, de cinq points de part et d'autre du devis, de \dollars{381132} à \dollars{414003} (8,3 \%) : ce sont les deux conventions dont le \cref{ch:21} a déjà montré le poids. Les déterminants du financement viennent ensuite : la durée du chantier, de six à dix-huit mois, déplace le coût neuf de \dollars{394192} à \dollars{406206} (3,0 \%) et le taux, de 4 à 9 \% sur douze mois, de \dollars{395948} à \dollars{405653} (2,4 \%). Une hausse salariale de 8 \% transmise par une part de main-d'œuvre de 40 \% ajoute \dollars{10519}, soit 2,6 \%. Pour une maison unifamiliale, le financement intérimaire est donc un poste de second ordre tant que le chantier reste court ; il change de nature pour un immeuble dont la construction dure dix-huit ou vingt-quatre mois et dont le prêt représente plusieurs fois le coût d'une maison, comme la transposition au cas 3 l'a montré, les intérêts y passant de \dollars{31923} à \dollars{54150} entre douze mois à 6,19 \% et dix-huit mois à 7 \%. La leçon rejoint celle du \cref{ch:21} : la date des prix et les conventions d'assiette pèsent plus que les paramètres financiers, mais ceux-ci deviennent déterminants dès que la durée s'allonge, et l'évaluateur doit alors remplacer la formule simple par un échéancier de tirages. | |
| 485 | + | |
| 486 | +\begin{quebec}[Le cadre québécois des coûts directs et indirects : ce qui est vérifié et à quelle date] | |
| 487 | +\emph{Main-d'œuvre.} Les conditions de travail de l'industrie sont fixées par quatre conventions collectives sectorielles administrées par la CCQ en vertu de la Loi R-20 \parencite{r20,ccqSalaires}. Secteurs institutionnel-commercial et industriel, 2025-2029 : 8 \% au 27 avril 2025, 5 \% au 26 avril 2026, 5 \% au 25 avril 2027, 4 \% au 30 avril 2028, protection contre l'inflation au 29 avril 2029 (IPC + 0,5 point, bornée entre 2,5 et 4 \%), selon le document de faits saillants de l'Association de la construction du Québec du 25 avril 2025 ; même grille en génie civil et voirie. Secteur résidentiel : nouveaux taux en vigueur le 27 juillet 2025 avec 8 \% de majoration, années suivantes fixées par arbitrage (CCQ, nouvelle du 18 juillet 2025) ; au 26 avril 2026, la CCQ affiche 5,5 \% pour le résidentiel léger et 5 \% pour le résidentiel lourd. Taux horaires par métier : outil des taux de salaire de la CCQ, à lire à la date d'évaluation ; non reproduits ici. | |
| 488 | + | |
| 489 | +\emph{Licence et garantie.} Licence RBQ obligatoire pour agir comme entrepreneur \parencite[art.~46]{loibatiment} ; exemption pour l'autoconstruction d'une unifamiliale à usage personnel, sauf gaz, pétrole et électricité \parencite[art.~49]{loibatiment}. Plan de garantie GCR obligatoire pour les unifamiliales, les immeubles de deux à cinq logements et les copropriétés d'au plus quatre parties privatives superposées \parencite[art.~2]{reglgarantie} ; couvertures d'un, trois et cinq ans et plafonds de \dollars{300000} par unifamiliale et de \dollars{200000} par logement pour un multifamilial \parencite[art.~10, 13 et 14]{reglgarantie,gcrprotections}. Frais d'adhésion GCR de \dollars{556.48} taxes comprises (page d'accréditation, consultée le 31 octobre 2026) ; frais d'enregistrement par bâtiment et cautionnement selon la cote de qualité, non chiffrés publiquement. | |
| 490 | + | |
| 491 | +\emph{Code de construction.} Chapitre I fondé sur le CNB 2020 modifié Québec, en vigueur depuis le 17 avril 2025, transition jusqu'au 17 octobre 2027 \parencite{codeConstruction,rbqtransition2026} ; chaque mise à jour renchérit le coût de remplacement. | |
| 492 | + | |
| 493 | +\emph{Taxes de vente.} TPS 5 \% et TVQ 9,975 \% (ARC, table des taux, page modifiée le 1\ier{} avril 2025). Remboursement TPS habitation neuve : 36 \% de la TPS, maximum \dollars{6300}, plein jusqu'à \dollars{350000} de JVM, réduit entre 350 001 et 449 999 \$, nul à \dollars{450000} et plus ; premiers acheteurs : 100 \% de la TPS jusqu'à 1 M\$, réduit graduellement, nul à 1,5 M\$, pour les constructions commencées le 20 mars 2025 ou après et avant 2031 \parencite{arcRC4028}. Remboursement TVQ : 50 \%, maximum \dollars{9975}, réduit au-delà de \dollars{200000}, nul à \dollars{300000} (Revenu Québec ; page inaccessible le 31 octobre 2026, paramètres lus par source intermédiaire : partiellement vérifiés). | |
| 494 | + | |
| 495 | +\emph{Contribution pour fins de parcs.} LAU art.~117.1 à 117.16.1 : terrain, servitude ou somme, au plus 10 \% de la superficie et de la valeur du site ; valeur établie à la réception de la demande de permis, par le rôle ou par un évaluateur agréé mandaté par la municipalité, contestable devant le TAQ (guide ministériel de la prise de décision en urbanisme, mis à jour le 7 octobre 2026) \parencite{lau,loi2023c12}. | |
| 496 | + | |
| 497 | +\emph{Taux de référence.} Taux hypothécaire affiché 5 ans, prêt conventionnel : 6,19 \% au 28 octobre 2026 ; fonds avancés d'août 2026 : non assuré fixe 5 ans et plus 4,58 \%, non assuré total 4,34 \%, variable non assuré 3,90 \% ; taux directeur 2,50 \% depuis le 28 octobre 2026 \parencite{bdcvalet,bdctauxhypothecaires2026,bdc20261028}. Aucun taux de prêt de construction n'est publié par une source officielle. | |
| 498 | +\end{quebec} | |
| 499 | + | |
| 500 | +\begin{erreurs} | |
| 501 | +\begin{itemize} | |
| 502 | +\item \emph{Comparer des taux d'indirects mesurés sous des conventions différentes.} Le devis du cas 1 donne 20,95 \% ou 9,00 \% selon que la supervision est classée dans les indirects ou dans les frais de chantier ; appliquer l'un à un bâtiment mesuré selon l'autre convention fausse le coût neuf de plus de 10 \%. | |
| 503 | +\item \emph{Confondre le forfait de financement et les intérêts d'un échéancier.} La formule $L\,i\,T/2$ vaut pour un tirage uniforme ; un chantier long ou un profil de tirages concentré exige l'échéancier. Oublier la mise de fonds surestime les intérêts ; oublier la période qui précède et suit le chantier les sous-estime. | |
| 504 | +\item \emph{Compter les intérêts sur le terrain deux fois.} Ils sont soit dans les indirects, soit dans l'incitatif, soit dans la valeur du terrain, jamais à deux endroits. | |
| 505 | +\item \emph{Appliquer une marge sans son assiette.} Dix pour cent des directs, de $D+I$, du coût total ou du prix ne sont pas le même montant ; l'\cref{eq:23:marges} convertit, mais il faut d'abord savoir ce que la source mesurait. | |
| 506 | +\item \emph{Prendre le profit d'un projet pour l'incitatif.} L'IPLN montréalais n'a progressé que de 1,2 \% en 2026 alors que l'IPCB progressait de 8,6 \% : les profits réalisés des constructeurs ont baissé, l'incitatif requis par le marché n'a pas changé pour autant. | |
| 507 | +\item \emph{Traiter les taxes de vente sans profil d'acheteur.} Un occupant subséquent, un premier acheteur et un investisseur inscrit supportent respectivement 14,98, 9,98 et 0 \% de taxes nettes sur l'habitation neuve équivalente au cas 1 ; comparer une maison existante exonérée à un substitut neuf taxable exige de dire lequel. | |
| 508 | +\item \emph{Compter une prime de garantie GCR pour un bâtiment non visé.} Le plan obligatoire ne couvre pas les immeubles de plus de cinq logements hors copropriété. | |
| 509 | +\item \emph{Indexer avec la variation annuelle d'une autre année.} La hausse annuelle de l'IPCB de la maison individuelle à Montréal est passée de 18,9 \% (T1 2022) à 0,9 \% (T1 2024) puis à 8,6 \% (T3 2026) ; seule la série lue à la date d'évaluation est valable. | |
| 510 | +\end{itemize} | |
| 511 | +\end{erreurs} | |
| 512 | + | |
| 513 | +\begin{limites} | |
| 514 | +\begin{itemize} | |
| 515 | +\item Le devis du cas 1 est synthétique ; sa structure d'indirects (cinq postes, supervision classée en indirect) est une convention de l'exemple et non une statistique de marché. La transposition au cas 3 est une hypothèse pédagogique déclarée ; aucun coût multilogement public n'a pu être vérifié. | |
| 516 | +\item Le taux de 6,19 \% est le taux hypothécaire affiché à cinq ans de la Banque du Canada, non un taux de prêt de construction ; celui-ci, variable et fondé sur le taux préférentiel, n'est publié par aucune source officielle et doit être obtenu des prêteurs. | |
| 517 | +\item La part de la main-d'œuvre dans les coûts directs (35 à 50 \%) et la valeur du terrain (\dollars{180000}) sont des hypothèses ; le \cref{ch:25} établira la seconde. | |
| 518 | +\item Les paramètres du remboursement de la TVQ (50 \%, \dollars{9975}, seuils de 200 000 et 300 000 \$) ont été lus par l'intermédiaire d'un moteur de recherche reproduisant la page de Revenu Québec, inaccessible directement (HTTP 403) le 31 octobre 2026 ; la règle de réduction du remboursement fédéral entre 350 001 et 449 999 \$ n'est pas écrite dans le guide RC4028 et a été appliquée comme linéaire ; la base de calcul de la TVQ (prix hors TPS) n'a pas été vérifiée sur une source primaire. Le régime de remboursement pour immeubles locatifs neufs n'a pas été examiné. | |
| 519 | +\item Les taux horaires de la CCQ ne sont pas reproduits ; les majorations 2026-2028 du secteur résidentiel issues de l'arbitrage n'ont été lues que sur la page des taux de la CCQ (5,5 et 5 \% au 26 avril 2026), sans le texte de la sentence. La grille 8/5/5/4 \% provient d'un document patronal (ACQ, 25 avril 2025) et de communiqués, non du texte des conventions. | |
| 520 | +\item Les frais d'enregistrement GCR par bâtiment, les tarifs des permis de construction et les éventuels frais d'infrastructure municipaux n'ont pas été vérifiés et ne sont pas chiffrés. Le texte de l'art.~117.6 LAU n'a pas pu être lu sur LégisQuébec (accès refusé) ; le rôle de l'évaluateur agréé dans l'établissement de la valeur du site est rapporté d'après le guide ministériel. | |
| 521 | +\item L'IPCB ne couvre pas Gatineau ; la partie ontarienne d'Ottawa--Gatineau et les séries de Québec (depuis 2023 seulement) sont des repères, non des substituts. Les poids des divisions ne sont pas publiés, de sorte que les variations par division ne sont pas des contributions. | |
| 522 | +\end{itemize} | |
| 523 | +\end{limites} | |
| 524 | + | |
| 525 | +\begin{synthese} | |
| 526 | +\begin{itemize} | |
| 527 | +\item $C_N = \sum_k D_k + \sum_j I_j + E$ ; la frontière entre directs et indirects est une convention à déclarer, et un taux d'indirects n'est comparable qu'à un taux mesuré sous la même convention (20,95 \% ou 9,00 \% pour le même devis du cas 1). | |
| 528 | +\item Le prix installé agrège matériaux avec pertes, heures au coût horaire chargé, équipement et marge ; une hausse salariale $g$ se transmet au coût direct en proportion de la part de main-d'œuvre, $\Delta D/D = \lambda g$. Au Québec, les taux sont fixés par les conventions collectives sectorielles de la CCQ (résidentiel : +8 \% au 27 juillet 2025). | |
| 529 | +\item Intérêts intérimaires sous tirage uniforme : $I_{\text{fin}} = L\,i\,T/2$, facteur $(n+1)/n$ en mensuel, réduction $(1 - Q/C)$ avec mise de fonds d'abord ; le forfait du cas 1 (\dollars{8530}) correspond à 9,4 mois au taux de référence de 6,19 \%. | |
| 530 | +\item Taxes : TPS 5 \% et TVQ 9,975 \% sur l'habitation neuve ; remboursements généraux nuls au-dessus de 450 000 \$ (fédéral) et de 300 000 \$ (TVQ) ; remboursement intégral de la TPS pour les premiers acheteurs jusqu'à 1 M\$ ; le traitement dépend du profil de l'acheteur typique et doit être déclaré. | |
| 531 | +\item L'incitatif est une rémunération anticipée du risque, tirée du marché par $E = P - V_L - D - I$ ; son assiette doit être déclarée ($m_p = m_c/(1+m_c)$) ; il s'interprète comme un rendement du capital engagé, 13,4 \% par année pour le cas 1 sur neuf mois. | |
| 532 | +\item Infrastructures et contribution pour fins de parcs (au plus 10 \% de la valeur du site, LAU 117.4) sont des coûts du site déjà contenus dans la valeur d'un terrain viabilisé ; ne pas les remettre dans le bâtiment. | |
| 533 | +\item 2020-2026 : +62 \% pour le résidentiel montréalais depuis le T1 2020, flambée des matériaux (bois +85 \%) en 2020-2022, puis reprise en 2025-2026 menée par le béton, l'acier et la maçonnerie et par les salaires ; Montréal et Québec (+8,6 et +9,2 \% sur un an au T3 2026) devancent nettement le reste du Canada (+2,7 \%). | |
| 534 | +\item Pour une maison, la durée et le taux du financement pèsent 2 à 3 \% du coût neuf ; les conventions d'assiette (indirects, incitatif) pèsent 8 à 9 \% ; pour un immeuble, le financement devient de premier ordre et exige un échéancier. | |
| 535 | +\end{itemize} | |
| 536 | +\end{synthese} | |
| 537 | + | |
| 538 | +\section*{Exercices} | |
| 539 | + | |
| 540 | +\begin{exercice}[1]{Classer et mesurer}{ex:23:1} | |
| 541 | +Un devis de maison neuve comprend les postes suivants : excavation \dollars{12000} ; charpente \dollars{48000} ; honoraires du technologue \dollars{9500} ; permis de construction \dollars{2800} ; électricité \dollars{16000} ; assurance de chantier \dollars{3200} ; intérêts du prêt de construction \dollars{7400} ; nettoyage et conteneurs \dollars{2600}. Classez chaque poste en coût direct ou indirect selon la \cref{def:directs-indirects}, calculez $D$, $I$, le taux d'indirects en proportion des directs et en proportion de $D + I$, puis le coût neuf avec un incitatif de 10 \% de $D + I$. Indiquez quel poste pourrait raisonnablement changer de catégorie et l'effet sur le taux d'indirects. | |
| 542 | +\end{exercice} | |
| 543 | + | |
| 544 | +\begin{exercice}[1]{Intérêts intérimaires}{ex:23:2} | |
| 545 | +Un prêt de construction de \dollars{300000} est tiré uniformément sur neuf mois à un taux annuel de 6 \%. Calculez les intérêts par la formule continue de l'\cref{eq:23:interets}, par la formule mensuelle de l'\cref{eq:23:interets-mensuel} et, à l'aide de \texttt{traite.finance.interets\_intermediaires}, avec capitalisation mensuelle des intérêts. Déduisez le produit $i\,T$ implicite d'un forfait de \dollars{6750} et commentez l'écart entre les trois variantes. | |
| 546 | +\end{exercice} | |
| 547 | + | |
| 548 | +\begin{exercice}[2]{Taxes de vente selon le profil de l'acheteur}{ex:23:3} | |
| 549 | +Une maison neuve est vendue \dollars{520000}, terrain compris, par un constructeur dont les travaux ont commencé en septembre 2025. Calculez la TPS et la TVQ, les remboursements auxquels auraient droit un acheteur occupant subséquent, un acheteur d'une première habitation et un investisseur inscrit aux taxes qui destine le bien à une activité taxable, puis le coût toutes taxes comprises de chacun. Reprenez le calcul du remboursement fédéral général pour une habitation de \dollars{400000} en précisant quelle partie du calcul repose sur une interprétation de la règle de réduction. | |
| 550 | +\end{exercice} | |
| 551 | + | |
| 552 | +\begin{exercice}[2]{Extraction de l'incitatif et conversion des marges}{ex:23:4} | |
| 553 | +Un constructeur a vendu une maison neuve \dollars{640000} ; il avait payé le terrain \dollars{170000} et ses coûts directs et indirects, financement compris, se sont élevés à \dollars{410000}. Extrayez le profit par l'\cref{eq:23:extraction}, exprimez-le en marge sur le coût total et en marge sur le prix, vérifiez l'\cref{eq:23:marges}, puis calculez le rendement annuel implicite du capital par l'\cref{eq:23:rendement} pour un projet de dix mois. Expliquez pourquoi ce profit réalisé n'est pas, à lui seul, l'incitatif requis. | |
| 554 | +\end{exercice} | |
| 555 | + | |
| 556 | +\begin{exercice}[2]{Hausses salariales et indice des coûts}{ex:23:5} | |
| 557 | +Les taux horaires du secteur résidentiel ont été majorés de 8 \% le 27 juillet 2025 et le résidentiel léger de 5,5 \% le 26 avril 2026. Pour le devis du cas 1 ($D = \dollars{298826.17}$, $\tau_I = 20{,}95$ \%, $\tau_E = 10$ \%) et une part de main-d'œuvre de 40 \%, calculez l'effet cumulé des deux majorations sur les coûts directs et sur le coût neuf par la \cref{prop:salaires}. Comparez à l'effet d'une indexation de $D$ par la variation annuelle de l'IPCB de la maison individuelle à Montréal (8,57 \% au T3 2026) et expliquez ce que mesure l'écart. | |
| 558 | +\end{exercice} | |
| 559 | + | |
| 560 | +\begin{exercice}[3]{Mise de fonds, capitalisation et échéancier}{ex:23:6} | |
| 561 | +Les coûts hors financement du cas 1 s'élèvent à \dollars{352895.22}. Le constructeur finance le premier quart des déboursés par sa mise de fonds et emprunte le reste, tiré uniformément, sur un chantier de douze mois au taux de référence de 6,19 \%. Calculez les intérêts par l'\cref{eq:23:interets-mise} ; comparez-les à ceux d'un prêt couvrant la totalité des coûts sur douze mois et à ceux d'un prêt de 75 \% tiré dès le premier jour ; recalculez-les avec des tirages mensuels et des intérêts capitalisés ; puis recalculez le coût neuf en remplaçant le forfait du devis par le montant de l'\cref{eq:23:interets-mise}. Démontrez enfin, à partir de la \cref{prop:interets}, que pour un profil de tirages quelconque les intérêts valent $i$ fois l'intégrale du solde, et discutez l'effet d'un profil en S. | |
| 562 | +\end{exercice} | |
| 563 | + | |
| 564 | +\begin{exercice}[3]{Structure des coûts d'un petit immeuble}{ex:23:7} | |
| 565 | +Reprenez la transposition du cas 3 (\cref{tab:23:multi}) avec un chantier de dix-huit mois et un taux intérimaire de 7 \%, toutes les autres hypothèses étant inchangées. Calculez les intérêts, les indirects, leur taux en proportion des directs, le coût neuf, le coût par logement et par mètre carré locatif, et la part du financement dans les indirects. Expliquez pourquoi aucune prime de garantie GCR n'est comptée, pourquoi les ratios d'indirects d'une maison sont une hypothèse fragile pour un immeuble, et quelles données un mandat réel exigerait. | |
| 566 | +\end{exercice} | |
| 567 | + | |
| 568 | +\section*{Pour aller plus loin} | |
| 569 | + | |
| 570 | +Le vocabulaire des coûts directs, indirects et de l'incitatif, ainsi que la distinction entre incitatif et profit, sont fixés par \textcite{appraisal2026} et par le glossaire de \textcite{aiDictionary2022} ; \textcite{achour1992} en donne la terminologie québécoise, et \textcite{wyatt2022} la perspective britannique de la méthode de l'entrepreneur. Pour le financement de la construction et la logique du promoteur, \textcite{geltnerMillerClaytonEichholtz2014} développent l'analyse de faisabilité d'un projet de développement, dans laquelle intérêts intérimaires, mise de fonds et profit du promoteur apparaissent comme les flux d'un même investissement ; \textcite{brueggemanFisher2022} présentent la mécanique des prêts de construction, tirages, réserves d'intérêts et conversion en prêt permanent. La théorie des options réelles appliquée au terrain, de \textcite{titman1985} à \textcite{quigg1993} et \textcite{cunningham2006}, éclaire la composante de risque de l'incitatif et la raison pour laquelle le promoteur exige une prime pour renoncer à attendre ; \textcite{capozzaHelsley1989} décomposent le prix du terrain urbain et situent le coût de conversion, c'est-à-dire les infrastructures et contributions, parmi ses composantes. Du côté des sources, la méthodologie de l'IPCB est documentée par \textcite{statcanIPCB}, celle de l'indice des prix des logements neufs par \textcite{statcanipln} ; les conventions collectives de la construction et les taux de salaire sont diffusés par la Commission de la construction du Québec \parencite{ccqSalaires} ; le guide RC4028 de l'Agence du revenu du Canada \parencite{arcRC4028} est la source des remboursements fédéraux pour habitation neuve. Enfin, le Manuel d'évaluation foncière du Québec \parencite{mefq2026} fixe, pour l'évaluation de masse, la structure des coûts que l'évaluateur municipal applique, et le règlement sur le plan de garantie \parencite{reglgarantie} décrit la protection dont le coût est l'un des indirects propres au Québec. | |
modified
manuscript/chapters/ch24.tex
+536 −1
@@ -1,2 +1,537 @@ | ||
| 1 | 1 | \chapter{Dépréciation et désuétudes}\label{ch:24} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +Le coût neuf établi au \cref{ch:21} dit ce que coûterait le bâtiment s'il sortait de terre aujourd'hui ; il ne dit rien de ce que vaut le bâtiment qui s'y trouve réellement, vieux de vingt-huit ans, usé par endroits, conçu selon les habitudes d'une autre décennie et planté dans un marché qui n'est pas celui d'un chantier. La dépréciation est le pont entre les deux : elle mesure tout ce qui sépare le coût d'un substitut neuf de la contribution que le bâtiment existant apporte au prix du bien. C'est le maillon le plus fragile de la méthode du coût, parce qu'il repose sur des conventions, des durées de vie que personne n'observe et des comparaisons avec un marché qui n'isole jamais le bâtiment du terrain. Le présent chapitre pose d'abord les concepts, âge chronologique, âge effectif, vie économique, puis traite tour à tour des trois familles de dépréciation que la pratique nord-américaine distingue, physique, fonctionnelle et externe, en insistant sur ce qui est curable et ce qui ne l'est pas. Il montre ensuite comment extraire la dépréciation du marché lui-même et confronte les courbes ainsi obtenues à celles que livre un modèle hédonique et au profil, connu dans ce cas, qui a servi à engendrer les données synthétiques. L'exemple intégral poursuit le dossier du cottage de Hull : il part du coût neuf de \dollars{397567} et de la fiche d'état du \cref{ch:11}, mesure chaque dépréciation, en discute l'ordre et les doubles comptages, et aboutit à une indication de valeur par le coût dont le \cref{ch:25}, pour le terrain, et le \cref{ch:45}, pour la réconciliation, reprendront les chiffres. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +À la fin de ce chapitre, le lecteur sait : | |
| 7 | +\begin{itemize} | |
| 8 | +\item distinguer l'âge chronologique, l'âge effectif, la vie économique, la vie physique et la vie restante d'un bâtiment, et relier l'âge effectif aux constats de l'inspection ; | |
| 9 | +\item classer une perte de valeur en dépréciation physique, désuétude fonctionnelle ou désuétude externe, puis en composante curable ou incurable, selon un critère économique explicite ; | |
| 10 | +\item appliquer et comparer les méthodes âge-vie, âge-vie modifiée et ventilée par composantes de courte et de longue durée ; | |
| 11 | +\item mesurer une désuétude fonctionnelle par le coût de correction ou par la capitalisation d'une perte de loyer, et une désuétude externe par ventes appariées ou par la capitalisation d'une perte de revenu, en répartissant la perte entre le terrain et le bâtiment ; | |
| 12 | +\item extraire la dépréciation totale du marché à partir de ventes dont on connaît le prix, le terrain et le coût neuf, et en tirer une courbe de dépréciation en fonction de l'âge ; | |
| 13 | +\item ordonner les déductions pour éviter tout double comptage et conduire le calcul intégral jusqu'à l'indication de valeur par le coût, avec son analyse de sensibilité. | |
| 14 | +\end{itemize} | |
| 15 | +\end{objectifs} | |
| 16 | + | |
| 17 | +\section{Les concepts : âges, vies et pertes de valeur}\label{sec:24:concepts} | |
| 18 | + | |
| 19 | +\subsection{Une définition par différence} | |
| 20 | + | |
| 21 | +Le mot « dépréciation » désigne, en comptabilité, une charge qui répartit le coût historique d'un actif sur sa durée d'utilisation ; en économie, la baisse de la valeur d'un actif qui vieillit ; en évaluation, une grandeur plus précise encore, qui n'est ni une charge ni une variation dans le temps mais un écart mesuré à une date donnée. La dépréciation de l'évaluateur est la différence entre le coût neuf des améliorations et la contribution de ces améliorations à la valeur du bien, à la date d'évaluation. Cette définition, celle de \textcite{appraisal2026} et du glossaire de \textcite{aiDictionary2022}, a deux conséquences qui gouvernent tout le chapitre. La première est que la dépréciation dépend de la base de coût retenue : mesurée contre un coût de reproduction, elle inclut la perte attribuable aux éléments que le remplacement aurait éliminés ; mesurée contre un coût de remplacement, elle ne les inclut pas, comme l'a établi la \cref{prop:equivalence}. La seconde est que la dépréciation n'est pas observable directement : la contribution du bâtiment ne l'est pas, parce que le marché vend des biens entiers, terrain compris ; elle se déduit, et toute méthode de dépréciation est une façon d'organiser cette déduction. | |
| 22 | + | |
| 23 | +\begin{definition}{Dépréciation}{depreciation} | |
| 24 | +À la date d'évaluation, la \emph{dépréciation} $D$ des améliorations est l'écart entre leur coût neuf $C_N$ et leur contribution $C_B$ à la valeur du bien : | |
| 25 | +\begin{equation}\label{eq:24:definition} | |
| 26 | +D = C_N - C_B, \qquad C_B = \hat V - V_L , | |
| 27 | +\end{equation} | |
| 28 | +où $V_L$ est la valeur du terrain réputé vacant. Elle se décompose en dépréciation physique, désuétude fonctionnelle et désuétude externe, $D = D_{\text{phys}} + D_{\text{fonc}} + D_{\text{ext}}$, chacune pouvant comporter une part curable et une part incurable. Le \emph{taux de dépréciation} est $\delta = D/C_N$. | |
| 29 | +\end{definition} | |
| 30 | + | |
| 31 | +La terminologie française hésite entre « dépréciation » et « désuétude ». La pratique québécoise, à la suite de \textcite{achour1992}, réserve volontiers « dépréciation » à la détérioration physique et « désuétude » (\emph{obsolescence}) aux pertes qui ne tiennent pas à l'usure, qu'elles viennent de la conception du bâtiment, désuétude fonctionnelle, ou de ce qui l'entoure, désuétude externe. L'ouvrage suit cet usage et emploie « dépréciation » tout court pour le total. \textcite{baum1991} a proposé, pour l'immobilier d'investissement britannique, une taxonomie plus fine qui distingue la détérioration, inévitable et liée au temps, de l'obsolescence, qui tient au décalage entre le bâtiment et ce que les utilisateurs attendent ; cette distinction éclaire pourquoi la première se mesure par des durées de vie et la seconde par des comparaisons avec le marché. | |
| 32 | + | |
| 33 | +\subsection{Âge chronologique, âge effectif, vies et vie restante} | |
| 34 | + | |
| 35 | +L'âge chronologique (\emph{actual age}) est le nombre d'années écoulées depuis la fin de la construction ; c'est un fait, qui se lit dans le rôle, le permis ou l'acte. L'âge effectif (\emph{effective age}) est l'âge qu'indiquent l'état et l'utilité du bâtiment, compte tenu de son entretien, de ses rénovations et de sa conception ; c'est un jugement, et c'est lui qui entre dans les calculs de dépréciation. Une maison de quarante ans dont la toiture, les fenêtres, la cuisine et les systèmes ont été renouvelés peut avoir un âge effectif de vingt ans ; une maison de quinze ans négligée peut en avoir vingt-cinq. La vie économique (\emph{economic life}) est la période pendant laquelle les améliorations contribuent à la valeur du bien ; elle s'achève lorsque la contribution du bâtiment devient nulle, c'est-à-dire lorsque le bien vaut son terrain, et elle est en général plus courte que la vie physique (\emph{physical life}), période pendant laquelle le bâtiment peut rester debout et utilisable moyennant entretien. La vie économique restante (\emph{remaining economic life}) est la différence entre la vie économique totale et l'âge effectif : | |
| 36 | +\begin{equation}\label{eq:24:vie-restante} | |
| 37 | +L_r = \max\{L - a_{\mathrm{eff}},\ 0\}, | |
| 38 | +\end{equation} | |
| 39 | +où $L$ est la vie économique totale et $a_{\mathrm{eff}}$ l'âge effectif. La relation est tautologique si l'on connaît $L$ et $a_{\mathrm{eff}}$, mais elle est souvent lue dans l'autre sens : l'évaluateur estime d'abord la vie restante, parce que c'est elle que l'inspection et le marché renseignent le mieux, puis en déduit l'âge effectif implicite. | |
| 40 | + | |
| 41 | +Le \cref{ch:11} a fixé la convention de l'ouvrage pour passer des constats d'inspection à l'âge effectif. Chaque composante reçoit une note d'état $c$ sur une échelle de 1 à 5, à laquelle correspond une fraction de vie utile consommée $\varphi(c)$, et l'âge effectif combine l'âge chronologique $a$ et la lecture de l'état selon | |
| 42 | +\begin{equation}\label{eq:24:age-effectif} | |
| 43 | +a_{\mathrm{eff}} = \min\big\{\max\{(1-\lambda)\,a + \lambda\,\varphi(c)\,L,\ 0\},\ L\big\}, \qquad \lambda = 0{,}5, | |
| 44 | +\end{equation} | |
| 45 | +ce qui est l'\cref{eq:11:aeff}. L'encadré qui suit rappelle ce que cette convention donne pour le sujet du cas 1 ; le présent chapitre en hérite sans la modifier, de sorte que l'inspection, la dépréciation et la réconciliation finale reposent sur une seule fiche d'état. | |
| 46 | + | |
| 47 | +\begin{pratique}[{De l'inspection à l'âge effectif : ce que le \cref{ch:11} transmet au \cref{ch:24}}] | |
| 48 | +L'inspection synthétique du cottage de Hull (\cref{sec:11:etat}, \cref{tab:11:fiche}) classe dix-neuf composantes de courte ou moyenne durée et un bloc de longue durée (structure, fondations, dalle, drain, isolation, cloisons). Les notes d'état vont de 2 à 5 ; l'indice d'état pondéré par les coûts neufs est de 2,81, soit un bâtiment un peu meilleur que la moyenne de son âge. Le bloc de longue durée, noté 3 pour une fissure de retrait fine et une charpente droite, reçoit par l'\cref{eq:24:age-effectif} un âge effectif de $0{,}5 \times 28 + 0{,}5 \times 0{,}5 \times 60 = 29$ ans, contre 28 ans d'âge chronologique ; avec une vie économique de 60 ans, la vie restante est de 31 ans. Pondéré par les coûts neufs, le ratio âge effectif sur vie utile de l'ensemble des composantes vaut 0,547, soit l'équivalent de 32,8 ans sur 60 : les composantes de courte durée sont, en moyenne, plus avancées dans leur vie que la structure. Cinq travaux immédiats ont été relevés (entrée asphaltée en fin de vie, fissure de fondation à injecter, deux thermos embués, balcon à réparer, solin et gouttière), pour un coût de \dollars{10479.98} (\cref{tab:11:travaux}) : c'est la dépréciation physique curable dont la \cref{sec:24:physique} part. Toute modification de la fiche d'état doit se faire au \cref{ch:11} et se propager ici par le script \texttt{analysis/python/cases/ch11\_inspection.py}, que le script du présent chapitre importe. | |
| 49 | +\end{pratique} | |
| 50 | + | |
| 51 | +\subsection{Trois familles, deux régimes} | |
| 52 | + | |
| 53 | +La dépréciation physique (\emph{physical deterioration}) est la perte due à l'usure, aux intempéries, aux dommages et au vieillissement des matériaux. La désuétude fonctionnelle (\emph{functional obsolescence}) est la perte due à un défaut de conception, de matériaux ou d'équipement par rapport à ce que le marché attend aujourd'hui d'un bâtiment du même type : elle prend la forme d'une carence (\emph{deficiency}), lorsqu'un élément manque ou est insuffisant, ou d'une surabondance (\emph{superadequacy}), lorsqu'un élément coûte plus qu'il ne rapporte. La désuétude externe (\emph{external obsolescence}) est la perte due à des causes extérieures au bien : une nuisance de voisinage, un zonage, une conjoncture, une offre excédentaire. La première est propre au bâtiment et augmente avec le temps ; la deuxième est propre au bâtiment mais tient à sa conception plutôt qu'à son âge ; la troisième n'est pas propre au bâtiment et frappe aussi le terrain, ce qui oblige à en répartir l'effet. | |
| 54 | + | |
| 55 | +À cette classification par cause se superpose une classification par remède. Une perte est curable lorsqu'il est économiquement rationnel d'y remédier, c'est-à-dire lorsque le coût de la correction est au plus égal à la valeur qu'elle ajoute ; elle est incurable dans le cas contraire, ou lorsque la correction est matériellement impossible. Le critère n'est pas technique mais économique : on peut toujours refaire une fondation, mais si le coût excède le gain, la perte est incurable et se mesure autrement. Formellement, avec $K$ le coût de la correction et $\Delta V$ la valeur ajoutée par la correction, | |
| 56 | +\begin{equation}\label{eq:24:curabilite} | |
| 57 | +\text{curable} \iff K \le \Delta V, \qquad | |
| 58 | +D^{\text{cur}} = K, \qquad | |
| 59 | +D^{\text{incur}} = \Delta V \quad\text{si } K > \Delta V , | |
| 60 | +\end{equation} | |
| 61 | +de sorte qu'une perte curable est mesurée par ce qu'il en coûte de la faire disparaître, et une perte incurable par ce qu'elle retire effectivement à la valeur. La dépréciation physique curable est l'entretien différé ; la dépréciation physique incurable est l'usure normale des composantes qu'il ne serait pas rentable de remplacer avant leur terme. Le \cref{tab:24:taxonomie} croise les deux classifications et indique, pour chaque case, la méthode de mesure que le chapitre développe. La désuétude externe est par nature incurable, puisque le propriétaire n'a pas prise sur sa cause. | |
| 62 | + | |
| 63 | +\begin{table}[tbp] | |
| 64 | +\caption{Taxonomie des dépréciations : cause, régime, méthode de mesure et exemples résidentiels.}\label{tab:24:taxonomie} | |
| 65 | +\centering\small | |
| 66 | +\begin{tabularx}{\textwidth}{@{}L{24mm}L{18mm}YY@{}} | |
| 67 | +\toprule | |
| 68 | +Famille & Régime & Mesure & Exemples \\ | |
| 69 | +\midrule | |
| 70 | +Physique & Curable & Coût de la correction (entretien différé), \cref{eq:24:curabilite} & Entrée asphaltée à refaire, thermos embués, garde-corps lâche \\ | |
| 71 | +Physique & Incurable, courte durée & Coût neuf de la composante × âge effectif / vie utile, \cref{eq:24:ventilee} & Toiture, fenêtres, armoires, thermopompe, chauffe-eau \\ | |
| 72 | +Physique & Incurable, longue durée & Base restante × âge effectif / vie économique & Structure, fondations, dalle, isolation, cloisons \\ | |
| 73 | +Fonctionnelle & Curable (carence) & Coût d'ajout ou de remplacement a posteriori − coût si inclus à neuf, \cref{eq:24:fonc-curable} & Salle d'eau manquante, entrée électrique insuffisante \\ | |
| 74 | +Fonctionnelle & Curable (surabondance) & Solde non déprécié de l'élément (base de reproduction) + coût d'enlèvement − récupération & Deuxième cuisine inutile, chauffage surdimensionné \\ | |
| 75 | +Fonctionnelle & Incurable & Perte de loyer × multiplicateur, \cref{eq:24:fonc-loyer} ; perte de RNE / taux, \cref{eq:24:fonc-rne} ; ventes appariées & Plan cloisonné, plafonds bas, chambre traversante \\ | |
| 76 | +Externe & Incurable & Ventes appariées × part du bâtiment, \cref{eq:24:ext-paires} ; perte de RNE capitalisée × part du bâtiment, \cref{eq:24:ext-rne} & Autoroute, ligne à haute tension, zonage, offre excédentaire \\ | |
| 77 | +\bottomrule | |
| 78 | +\end{tabularx} | |
| 79 | +\tabsource{synthèse de l'auteur d'après \textcite{appraisal2026}, \textcite{aiDictionary2022} et \textcite{baum1991} ; conventions de \texttt{analysis/python/traite/cout.py}.} | |
| 80 | +\end{table} | |
| 81 | + | |
| 82 | +\section{La dépréciation physique}\label{sec:24:physique} | |
| 83 | + | |
| 84 | +\subsection{La méthode âge-vie} | |
| 85 | + | |
| 86 | +La méthode âge-vie (\emph{age-life method}) est la plus simple et la plus répandue : elle suppose que le bâtiment perd sa valeur de façon linéaire sur sa vie économique et mesure la dépréciation par le ratio de l'âge effectif à la vie économique totale, appliqué au coût neuf : | |
| 87 | +\begin{equation}\label{eq:24:age-vie} | |
| 88 | +D_{\text{phys}} = C_N\,\min\!\left\{\frac{a_{\mathrm{eff}}}{L},\ 1\right\}. | |
| 89 | +\end{equation} | |
| 90 | +Le plafonnement à $C_N$ traduit le fait qu'un bâtiment ne peut contribuer négativement, sauf à devoir être démoli, cas que la méthode du coût traite à part en déduisant le coût de la démolition de la valeur du terrain. Pour le sujet, avec $a_{\mathrm{eff}} = 29$ et $L = 60$, l'\cref{eq:24:age-vie} donne $\dollars{397567.33} \times 29/60 = \dollars{192157.55}$, soit \pct{48.33} du coût neuf ; avec l'âge chronologique de 28 ans, elle donnerait \dollars{185531.42} (\pct{46.67}). La méthode a trois faiblesses, que la suite du chapitre documente. Elle traite toutes les composantes du bâtiment comme si elles vieillissaient au même rythme, alors qu'une toiture dure vingt ans et une charpente plus d'un siècle. Elle compte dans la même proportion les éléments déjà renouvelés et ceux qui ne l'ont jamais été, à moins que l'âge effectif n'en tienne compte, ce qui reporte tout le poids du jugement sur un seul nombre. Et elle suppose linéaire un profil que les études empiriques décrivent comme concave puis convexe, plus rapide au début que ne le dit la droite et plus lent ensuite \parencite{hultenWykoff1981,malpezziOzanneThibodeau1987}. Son mérite est sa transparence : deux évaluateurs qui s'entendent sur $L$ et sur $a_{\mathrm{eff}}$ obtiennent le même résultat, et le désaccord, s'il y en a, porte sur des quantités que l'on peut discuter. | |
| 91 | + | |
| 92 | +\subsection{La méthode âge-vie modifiée} | |
| 93 | + | |
| 94 | +La méthode âge-vie modifiée (\emph{modified age-life method}) corrige la première faiblesse en retirant d'abord les éléments curables, qu'elle mesure à leur coût de correction, puis en appliquant le ratio âge-vie au reste : | |
| 95 | +\begin{equation}\label{eq:24:age-vie-modifiee} | |
| 96 | +D_{\text{phys}} = D^{\text{cur}} + \big(C_N - D^{\text{cur}}\big)\,\min\!\left\{\frac{a_{\mathrm{eff}}}{L},\ 1\right\}. | |
| 97 | +\end{equation} | |
| 98 | +La soustraction préalable évite de déprécier deux fois les éléments que le coût de correction remplace à neuf : si l'entrée asphaltée est refaite, son coût neuf ne doit pas aussi être déprécié par le ratio. En toute rigueur, l'âge effectif devrait être réestimé après correction, puisque les travaux curables rajeunissent le bâtiment ; la pratique conserve en général l'âge effectif constaté, parce que les travaux curables sont de faible ampleur et que leur effet est déjà dans la note d'état des composantes concernées. Pour le sujet, $D^{\text{cur}} = \dollars{10479.98}$ et la part incurable vaut $(\dollars{397567.33} - \dollars{10479.98}) \times 29/60 = \dollars{187092.22}$, d'où un total de \dollars{197572.20} ou \pct{49.70} : la modification ajoute \dollars{5414.65} à l'âge-vie simple, c'est-à-dire la part du curable que le ratio n'aurait pas comptée, $D^{\text{cur}}(1 - 29/60)$. | |
| 99 | + | |
| 100 | +\subsection{La méthode ventilée} | |
| 101 | + | |
| 102 | +La méthode ventilée (\emph{breakdown method}) corrige les deux premières faiblesses en traitant séparément trois blocs : les éléments curables, mesurés à leur coût de correction ; les composantes incurables de courte durée (\emph{short-lived items}), dont la vie utile est inférieure à la vie économique du bâtiment et qui seront remplacées au moins une fois avant son terme, chacune dépréciée selon son propre ratio âge effectif sur vie utile ; et les éléments incurables de longue durée (\emph{long-lived items}), structure et ouvrages de base, dépréciés par le ratio âge-vie du bâtiment appliqué à la base restante. En notant $C_k$ le coût neuf de la composante de courte durée $k$, $a_k$ son âge effectif et $L_k$ sa vie utile, | |
| 103 | +\begin{equation}\label{eq:24:ventilee} | |
| 104 | +D_{\text{phys}} = \underbrace{D^{\text{cur}}}_{\text{curable}} | |
| 105 | ++ \underbrace{\sum_{k} C_k\,\min\!\left\{\frac{a_k}{L_k},\ 1\right\}}_{\text{courte durée}} | |
| 106 | ++ \underbrace{\Big(C_N - D^{\text{cur}} - \sum_k C_k\Big)\min\!\left\{\frac{a_S}{L},\ 1\right\}}_{\text{longue durée}}, | |
| 107 | +\end{equation} | |
| 108 | +où $a_S$ est l'âge effectif de la structure. La base de longue durée est le coût neuf diminué du curable et du coût neuf des composantes de courte durée, de sorte que chaque dollar du coût neuf est déprécié exactement une fois : c'est la garantie d'absence de double comptage interne à la méthode, implémentée telle quelle par la fonction \texttt{depreciation\_ventilee} de la bibliothèque. Une composante entièrement remplacée au titre du curable, comme l'entrée asphaltée du sujet, est retirée de la liste des composantes de courte durée, sans quoi elle serait comptée dans le curable et de nouveau dans la courte durée. | |
| 109 | + | |
| 110 | +La proposition suivante relie la méthode ventilée à la méthode âge-vie simple et explique pourquoi la première donne presque toujours davantage dans un bâtiment d'âge moyen. | |
| 111 | + | |
| 112 | +\begin{proposition}{Écart entre la méthode ventilée et la méthode âge-vie}{ecart-ventilee} | |
| 113 | +Soit $r_S = \min\{a_S/L, 1\}$ le ratio âge-vie de la structure et $r_k = \min\{a_k/L_k, 1\}$ celui de la composante $k$. L'écart entre la dépréciation ventilée de l'\cref{eq:24:ventilee} et la dépréciation âge-vie simple de l'\cref{eq:24:age-vie} calculée avec $a_{\mathrm{eff}} = a_S$ vaut | |
| 114 | +\begin{equation}\label{eq:24:ecart} | |
| 115 | +D^{\text{vent}}_{\text{phys}} - D^{\text{âge-vie}}_{\text{phys}} = D^{\text{cur}}\,(1 - r_S) + \sum_k C_k\,(r_k - r_S). | |
| 116 | +\end{equation} | |
| 117 | +Il est positif dès que le curable est non nul et que les composantes de courte durée sont, en moyenne pondérée par leurs coûts, plus avancées dans leur vie utile que la structure dans sa vie économique. | |
| 118 | +\end{proposition} | |
| 119 | +\begin{proof} | |
| 120 | +En développant l'\cref{eq:24:ventilee}, $D^{\text{vent}} = D^{\text{cur}} + \sum_k C_k r_k + C_N r_S - D^{\text{cur}} r_S - r_S\sum_k C_k$, et $D^{\text{âge-vie}} = C_N r_S$. La différence est $D^{\text{cur}}(1 - r_S) + \sum_k C_k (r_k - r_S)$. Le premier terme est positif puisque $r_S \le 1$ ; le second l'est si $\sum_k C_k r_k > r_S \sum_k C_k$, c'est-à-dire si la moyenne des $r_k$ pondérée par les $C_k$ excède $r_S$. | |
| 121 | +\end{proof} | |
| 122 | + | |
| 123 | +Pour le sujet, la fiche d'état du \cref{ch:11} compte dix-huit composantes de courte durée une fois l'entrée asphaltée retirée, dont le coût neuf total est de \dollars{221517.66}, soit \pct{55.7} du coût neuf ; leur dépréciation s'élève à \dollars{130584.55}, soit \pct{58.9} de leur coût neuf, contre un ratio de $29/60 = \pct{48.3}$ pour la structure. La base de longue durée est $\dollars{397567.33} - \dollars{10479.98} - \dollars{221517.66} = \dollars{165569.69}$, dépréciée de $29/60$, soit \dollars{80025.35}. Le total ventilé atteint \dollars{221089.88}, soit \pct{55.61} du coût neuf, et l'écart avec l'âge-vie simple à âge effectif égal est de \dollars{28932.33}, que l'\cref{eq:24:ecart} décompose en $\dollars{10479.98} \times (1 - 0{,}4833) = \dollars{5414.66}$ pour le curable et $\dollars{130584.55} - \dollars{221517.66} \times 0{,}4833 = \dollars{23517.67}$ pour les composantes de courte durée. Le \cref{tab:24:composantes} et la \cref{fig:24:composantes} détaillent les dix-huit composantes ; les trois qui pèsent le plus sont le revêtement extérieur, les armoires de cuisine et les fenêtres, et les quatre dont le ratio dépasse \pct{90} (VRC, aménagement paysager, balcon, gouttières) sont celles que l'inspection a notées 4 ou 5 sans qu'un travail immédiat ait été inscrit au curable, parce qu'elles fonctionnent encore. Le \cref{tab:24:lectures} rapproche les quatre lectures. | |
| 124 | + | |
| 125 | +\begin{table}[tbp] | |
| 126 | +\caption{Dépréciation ventilée des composantes de courte durée du sujet du cas 1 : coût neuf (devis majoré des indirects et de l'incitatif, facteur 1,33043), année d'installation, note d'état, âge effectif, vie utile et dépréciation imputée. L'entrée asphaltée, remplacée intégralement au titre du curable, n'y figure pas.}\label{tab:24:composantes} | |
| 127 | +\centering\footnotesize | |
| 128 | +\begin{tabular}{@{}L{46mm} S[table-format=4.0] S[table-format=1.0] S[table-format=2.1] S[table-format=2.0] S[table-format=5.2] S[table-format=5.2] S[table-format=3.1]@{}} | |
| 129 | +\toprule | |
| 130 | +Composante & {Année} & {État} & {$a_k$} & {$L_k$} & {Coût neuf (\$)} & {Dépréciation (\$)} & {Ratio (\%)} \\ | |
| 131 | +\midrule | |
| 132 | +Revêtement extérieur (brique, fibrociment) & 1998 & 2 & 19.0 & 40 & 38083.30 & 18089.57 & 47.5 \\ | |
| 133 | +Armoires de cuisine et comptoirs & 1998 & 3 & 21.5 & 30 & 23080.82 & 16541.25 & 71.7 \\ | |
| 134 | +Fenêtres (PVC, double vitrage) & 1998 & 3 & 21.5 & 30 & 22311.42 & 15989.85 & 71.7 \\ | |
| 135 | +Électricité (entrée 200 A, filage, éclairage) & 1998 & 2 & 20.2 & 50 & 22792.32 & 9230.89 & 40.5 \\ | |
| 136 | +Plomberie (cuivre et PEX) & 1998 & 2 & 20.2 & 50 & 22215.26 & 8997.18 & 40.5 \\ | |
| 137 | +Balcon et perron & 1998 & 4 & 23.4 & 25 & 8751.44 & 8182.59 & 93.5 \\ | |
| 138 | +Thermopompe centrale et plinthes & 2016 & 3 & 8.8 & 15 & 13944.66 & 8134.39 & 58.3 \\ | |
| 139 | +Ventilateur récupérateur de chaleur & 1998 & 4 & 20.0 & 20 & 7501.27 & 7501.27 & 100.0 \\ | |
| 140 | +Planchers de bois franc & 1998 & 3 & 24.0 & 40 & 10963.14 & 6577.89 & 60.0 \\ | |
| 141 | +Couverture (bardeaux d'asphalte) & 2012 & 3 & 12.0 & 20 & 10217.70 & 6130.62 & 60.0 \\ | |
| 142 | +Aménagement paysager & 1998 & 3 & 19.0 & 20 & 6251.05 & 5938.50 & 95.0 \\ | |
| 143 | +Portes extérieures et porte de garage & 1998 & 3 & 21.5 & 30 & 7982.10 & 5720.51 & 71.7 \\ | |
| 144 | +Peinture intérieure & 2021 & 2 & 3.8 & 10 & 8347.65 & 3130.37 & 37.5 \\ | |
| 145 | +Planchers flottants (sous-sol) & 2009 & 4 & 16.0 & 20 & 3702.85 & 2962.28 & 80.0 \\ | |
| 146 | +Vanités et accessoires (2 salles de bain) & 2015 & 2 & 8.6 & 25 & 7212.75 & 2488.40 & 34.5 \\ | |
| 147 | +Planchers de céramique & 1998 & 2 & 18.4 & 35 & 4543.82 & 2385.50 & 52.5 \\ | |
| 148 | +Gouttières et solins & 1998 & 4 & 23.4 & 25 & 2077.39 & 1942.36 & 93.5 \\ | |
| 149 | +Chauffe-eau électrique & 2019 & 2 & 5.0 & 12 & 1538.72 & 641.13 & 41.7 \\ | |
| 150 | +\midrule | |
| 151 | +Total, 18 composantes & & & & & 221517.66 & 130584.55 & 58.9 \\ | |
| 152 | +\bottomrule | |
| 153 | +\end{tabular} | |
| 154 | +\tabsource{\synth{\texttt{analysis/python/cases/ch11\_inspection.py} (fiche d'état, graine 20261031) et \texttt{ch24\_depreciation.py}} ; vies utiles et notes d'état : hypothèses pédagogiques du \cref{ch:11} ; âges effectifs selon l'\cref{eq:24:age-effectif}.} | |
| 155 | +\end{table} | |
| 156 | + | |
| 157 | +\begin{figure}[tbp] | |
| 158 | +\centering | |
| 159 | +\includegraphics[width=\linewidth]{ch24/ch24-fig-composantes.pdf} | |
| 160 | +\caption{Coût neuf et dépréciation ventilée des dix-huit composantes de courte durée du sujet, triées par coût neuf. Les composantes d'origine notées 3 ou 4 (armoires, fenêtres, balcon, VRC) perdent de 70 à 100 \% de leur coût neuf, tandis que les systèmes de longue vie utile (électricité, plomberie) et les éléments renouvelés (peinture, vanités, chauffe-eau) restent sous 45 \% ; au total, la courte durée est dépréciée de 58,9 \%, dix points de plus que la structure.}\label{fig:24:composantes} | |
| 161 | +\figsource{\synth{script \texttt{analysis/python/figures/ch24\_composantes.py}, graine 20261031}.} | |
| 162 | +\end{figure} | |
| 163 | + | |
| 164 | +\begin{table}[tbp] | |
| 165 | +\caption{Quatre lectures de la dépréciation physique du sujet du cas 1 ($C_N = \dollars{397567.33}$, vie économique 60 ans).}\label{tab:24:lectures} | |
| 166 | +\centering\small | |
| 167 | +\begin{tabular}{@{}l l S[table-format=6.2] S[table-format=2.2]@{}} | |
| 168 | +\toprule | |
| 169 | +Méthode & Paramètres & {$D_{\text{phys}}$ (\$)} & {Taux (\%)} \\ | |
| 170 | +\midrule | |
| 171 | +Âge-vie, âge chronologique & $28/60$ & 185531.42 & 46.67 \\ | |
| 172 | +Âge-vie, âge effectif & $29/60$ & 192157.55 & 48.33 \\ | |
| 173 | +Âge-vie modifiée & curable \dollars{10479.98} + reste $\times 29/60$ & 197572.20 & 49.70 \\ | |
| 174 | +Ventilée & curable + 18 composantes + base \dollars{165569.69} $\times 29/60$ & 221089.88 & 55.61 \\ | |
| 175 | +\bottomrule | |
| 176 | +\end{tabular} | |
| 177 | +\tabsource{\synth{\texttt{analysis/python/cases/ch24\_depreciation.py}, fonction \texttt{variantes\_physique}} ; fonctions \texttt{depreciation\_age\_vie}, \texttt{depreciation\_age\_vie\_modifiee}, \texttt{depreciation\_ventilee} de \texttt{traite.cout}.} | |
| 178 | +\end{table} | |
| 179 | + | |
| 180 | +Il faut lire ces quatre nombres pour ce qu'ils sont : des mesures de l'usure physique rapportée au coût de remplacement, sous des conventions de durée de vie qui ne proviennent pas du marché. Qu'une cuisine de 1998 ait consommé \pct{72} de sa vie utile de trente ans est une proposition sur la cuisine, pas sur ce que l'acheteur retranche du prix pour en tenir compte ; la \cref{sec:24:extraction} montrera que le marché synthétique du cas 1 retranche beaucoup moins, et la \cref{sec:24:exemple} dira comment arbitrer. La méthode ventilée reste indispensable pour deux usages que l'extraction ne remplit pas : identifier et chiffrer le curable, que l'acheteur déduit dollar pour dollar, et établir le calendrier et le budget des remplacements à venir, dont les réserves des immeubles de revenu dépendent (\cref{ch:28}). | |
| 181 | + | |
| 182 | +\section{La désuétude fonctionnelle}\label{sec:24:fonctionnelle} | |
| 183 | + | |
| 184 | +\subsection{Carence, surabondance et base de coût} | |
| 185 | + | |
| 186 | +La désuétude fonctionnelle naît d'un écart entre le bâtiment tel qu'il est et le bâtiment que le marché attendrait aujourd'hui pour le même usage. L'écart peut être une carence, un élément absent ou insuffisant, comme une seule salle de bain dans une maison de quatre chambres, une entrée électrique de 100 ampères, une isolation inférieure aux attentes, un plan cloisonné là où le marché veut une aire ouverte ; ou une surabondance, un élément qui a coûté plus qu'il ne rapporte, comme une deuxième cuisine au sous-sol, un chauffage surdimensionné, des finitions de luxe dans un quartier modeste, une piscine creusée que les acheteurs du secteur ne paient pas. La mesure dépend de la base de coût. Si le coût neuf est un coût de remplacement, les surabondances en sont déjà exclues et seules subsistent les carences et, pour les surabondances, l'excès de coûts d'exploitation qu'elles engendrent ; si c'est un coût de reproduction, les surabondances y figurent et doivent être retranchées, nettes de la dépréciation physique déjà imputée, ce qu'établit la \cref{prop:equivalence}. L'ouvrage travaille au coût de remplacement ; les exemples qui suivent le rappellent lorsque c'est nécessaire. | |
| 187 | + | |
| 188 | +\subsection{La désuétude fonctionnelle curable} | |
| 189 | + | |
| 190 | +Une carence est curable si l'ajout de l'élément manquant coûte moins qu'il ne rapporte. Sa mesure n'est pas le coût de l'ajout mais l'excès de ce coût sur ce que l'élément aurait coûté s'il avait été prévu à la construction, car ce dernier montant est déjà dans le coût de remplacement d'un bâtiment conforme aux attentes ; le déduire de nouveau compterait l'élément deux fois. La pratique nord-américaine formule la règle en trois temps \parencite{appraisal2026} : coût de la correction installée, moins coût de l'élément s'il avait été inclus à neuf, plus la dépréciation physique déjà imputée à l'élément existant s'il y en a un à remplacer, ce dernier terme corrigeant le fait que la dépréciation physique a déjà retranché une part de l'élément remplacé. La bibliothèque code cette règle sous la forme | |
| 191 | +\begin{equation}\label{eq:24:fonc-curable} | |
| 192 | +D^{\text{cur}}_{\text{fonc}} = K_{\text{corr}} - C^{\text{neuf}}_{\text{élément}} - D^{\text{déjà}}_{\text{phys}} , | |
| 193 | +\end{equation} | |
| 194 | +où $K_{\text{corr}}$ est le coût installé de la correction a posteriori, $C^{\text{neuf}}_{\text{élément}}$ le coût de l'élément s'il avait été inclus dans le bâtiment neuf et $D^{\text{déjà}}_{\text{phys}}$ la dépréciation déjà imputée à l'élément existant. Pour une carence pure, il n'y a pas d'élément existant et $D^{\text{déjà}}_{\text{phys}} = 0$ : la désuétude est l'excès de coût du rattrapage. Pour une carence qui exige de remplacer un élément existant, par exemple une entrée électrique de 100 ampères par une de 200, le coût neuf de l'ancien élément a déjà été déprécié ; on soustrait cette dépréciation pour ne pas la compter deux fois. Le signe de la convention mérite attention : la fonction \texttt{desuetude\_fonctionnelle\_curable} soustrait le troisième terme parce que son argument est la dépréciation déjà comptée, dont la contribution résiduelle de l'ancien élément a déjà été amputée. | |
| 195 | + | |
| 196 | +Le sujet du cas 1 fournit un exemple, ajouté ici à la fiche d'état du \cref{ch:11} comme constat propre au présent chapitre et tout aussi fictif qu'elle : les deux salles de bain sont à l'étage et le rez-de-chaussée ne comporte aucune salle d'eau, alors que les cottages construits ou rénovés aujourd'hui dans le secteur en ont une. Une soumission fictive pour ajouter une salle d'eau sous l'escalier, plomberie, ventilation, cloisons et finition comprises, s'établit à $K_{\text{corr}} = \dollars{16000}$. Si l'élément avait été prévu à la construction, il aurait coûté, aux prix unitaires du devis du \cref{ch:21}, deux appareils de plomberie, une demi-vanité, une porte, douze mètres carrés de gypse et de peinture et trois mètres carrés de céramique, soit \dollars{6309.76} de coûts directs et, majorés des indirects et de l'incitatif, $C^{\text{neuf}}_{\text{élément}} = \dollars{8394.69}$. La désuétude fonctionnelle curable vaut donc $\dollars{16000} - \dollars{8394.69} = \dollars{7605.31}$. Elle n'est retenue qu'à la condition de curabilité : la valeur ajoutée par une salle d'eau au rez-de-chaussée doit atteindre au moins \dollars{16000}, ce que les données du cas 1 ne permettent pas de tester, faute d'une variable correspondante dans le modèle hédonique ; l'exemple intégral déclare cette hypothèse et l'analyse de sensibilité en mesure le poids, qui est faible. | |
| 197 | + | |
| 198 | +Une surabondance curable, sous la base de reproduction, se mesure par le coût de reproduction de l'élément surabondant net de la dépréciation physique déjà imputée, plus le coût de son enlèvement, moins la valeur de récupération éventuelle ; sous la base de remplacement, seuls subsistent le coût d'enlèvement et la récupération, puisque l'élément n'est pas dans le coût neuf. L'exercice~\ref{ex:24:3} applique les deux bases à une deuxième cuisine. | |
| 199 | + | |
| 200 | +\subsection{La désuétude fonctionnelle incurable} | |
| 201 | + | |
| 202 | +Lorsque la correction coûte plus qu'elle ne rapporte ou qu'elle est impossible, la désuétude se mesure par ce qu'elle retire effectivement à la valeur, et le marché en est le seul juge. Deux procédés sont classiques. Le premier, propre aux immeubles de revenu, capitalise la perte de loyer imputable au défaut : si un logement se loue $\Delta\ell$ de moins par mois qu'un logement comparable sans le défaut, et si le marché valorise les immeubles de ce type à un multiplicateur de loyer brut mensuel $M_m$, | |
| 203 | +\begin{equation}\label{eq:24:fonc-loyer} | |
| 204 | +D^{\text{incur}}_{\text{fonc}} = \Delta\ell \times M_m, \qquad M_m = 12\,M_a , | |
| 205 | +\end{equation} | |
| 206 | +où $M_a$ est le multiplicateur du revenu brut annuel du \cref{ch:29}. Le second capitalise la perte de revenu net d'exploitation au taux global du marché, $\Delta\NOI / R$, en imputant au bâtiment la part de la perte qui lui revient : | |
| 207 | +\begin{equation}\label{eq:24:fonc-rne} | |
| 208 | +D^{\text{incur}}_{\text{fonc}} = \frac{\Delta\NOI}{R}\times \omega_B , | |
| 209 | +\end{equation} | |
| 210 | +où $\omega_B$ est la part du bâtiment dans la valeur ; pour une désuétude fonctionnelle, qui tient au bâtiment seul, $\omega_B = 1$, et la répartition ne devient nécessaire que pour la désuétude externe, qui frappe aussi le terrain. Un troisième procédé, applicable aux maisons comme aux immeubles, consiste à comparer des ventes appariées qui ne diffèrent que par le défaut ; il est identique dans sa forme à l'\cref{eq:24:ext-paires} de la section suivante, avec une part du bâtiment égale à un. | |
| 211 | + | |
| 212 | +Deux illustrations, aux paramètres hypothétiques et déclarés comme tels, fixent les ordres de grandeur. Dans le marché des plex de Québec du deuxième dossier de cas, le multiplicateur médian du revenu brut des triplex est de 19,82 (\cref{ch:32}) ; un logement dépourvu d'entrée de laveuse-sécheuse qui se loue \dollars{75} de moins par mois que ses voisins souffre, par l'\cref{eq:24:fonc-loyer}, d'une désuétude incurable de $75 \times 12 \times 19{,}82 = \dollars{17838}$. Pour un immeuble dont le plan fait perdre \dollars{6000} de revenu net par année et dont le marché capitalise les revenus à \pct{4.50}, milieu de la fourchette publiée pour les immeubles de faible hauteur de classe B à Montréal au troisième trimestre de 2026 \parencite{cbrecaprates2026q3}, l'\cref{eq:24:fonc-rne} donne $\dollars{6000}/0{,}045 = \dollars{133333}$. La différence entre les deux procédés n'est pas que de forme : la capitalisation du loyer brut suppose que les dépenses ne changent pas avec le défaut, alors que la capitalisation du revenu net les prend en compte ; lorsque le défaut modifie aussi l'inoccupation ou l'entretien, c'est la seconde qu'il faut préférer. | |
| 213 | + | |
| 214 | +\section{La désuétude externe}\label{sec:24:externe} | |
| 215 | + | |
| 216 | +\subsection{Localisation et conjoncture} | |
| 217 | + | |
| 218 | +La désuétude externe provient de causes extérieures au bien. On en distingue deux sources. La désuétude de localisation (\emph{locational obsolescence}) tient à un élément du voisinage qui nuit à la valeur : une autoroute, une ligne à haute tension, une industrie bruyante, un terrain contaminé voisin, un zonage qui autorise un usage incompatible ; elle est en principe durable. La désuétude économique (\emph{economic obsolescence}) tient aux conditions du marché : offre excédentaire, chute de la demande, hausse des taux, perte d'un employeur régional ; elle peut être temporaire et sa mesure doit dire si elle est censée persister. Dans les deux cas, la perte frappe le bien entier, et c'est l'une des difficultés propres à cette désuétude : une partie de la perte revient au terrain, dont la valeur est estimée séparément dans la méthode du coût et reflète déjà, si elle est tirée de ventes de terrains du même voisinage, la nuisance en question. Déduire la perte totale du bâtiment alors que le terrain l'a déjà subie la compterait deux fois ; il faut répartir. | |
| 219 | + | |
| 220 | +\subsection{Mesure par ventes appariées et par capitalisation} | |
| 221 | + | |
| 222 | +La première mesure compare le prix de biens exposés à la cause externe au prix de biens comparables qui ne le sont pas, toutes autres différences ajustées selon les méthodes du \cref{ch:17}, puis impute au bâtiment sa part de l'écart : | |
| 223 | +\begin{equation}\label{eq:24:ext-paires} | |
| 224 | +D_{\text{ext}} = \big(P^{\text{aj}}_{\text{sans}} - P^{\text{aj}}_{\text{avec}}\big)\,\omega_B , | |
| 225 | +\end{equation} | |
| 226 | +où $\omega_B$ est la part du bâtiment dans la valeur du bien, usuellement estimée par le rapport de la contribution du bâtiment à la valeur totale ou, à défaut, par la répartition terrain-bâtiment des biens comparables. Si une maison vaudrait \dollars{520000} sans la nuisance et \dollars{490000} avec, et si le bâtiment représente \pct{60} de la valeur, la désuétude externe imputable au bâtiment est de $\dollars{30000} \times 0{,}60 = \dollars{18000}$, les \dollars{12000} restants étant réputés déjà pris en compte dans une valeur de terrain tirée du même voisinage. La seconde mesure, propre aux immeubles de revenu, capitalise la perte de revenu net attribuable à la cause externe et la répartit de même : | |
| 227 | +\begin{equation}\label{eq:24:ext-rne} | |
| 228 | +D_{\text{ext}} = \frac{\Delta\NOI_{\text{ext}}}{R}\times \omega_B . | |
| 229 | +\end{equation} | |
| 230 | +Avec la perte de \dollars{6000} par année et le taux de \pct{4.50} de la section précédente, mais une cause cette fois externe et une part du bâtiment de \pct{70}, la désuétude vaut $\dollars{133333} \times 0{,}70 = \dollars{93333}$ ; si le taux de capitalisation était de \pct{5.50}, elle tomberait à \dollars{76364}, ce qui rappelle que la capitalisation d'une perte est aussi sensible au taux que la capitalisation d'un revenu. | |
| 231 | + | |
| 232 | +La répartition par $\omega_B$ repose sur l'hypothèse que la nuisance réduit le terrain et le bâtiment dans la même proportion. Ce n'est pas toujours le cas : une nuisance qui rend un terrain moins constructible frappe surtout le terrain ; une conjoncture qui fait baisser les loyers frappe surtout le bâtiment, parce que la valeur du terrain reflète sa meilleure utilisation à long terme. \textcite{clappSalavei2010} ont montré, plus fondamentalement, que la relation entre le prix et l'âge que l'on mesure sur un marché incorpore la valeur de l'option de redévelopper, qui appartient au terrain ; là où le terrain domine, une part de ce que l'on prend pour de la dépréciation du bâtiment est en réalité une propriété du terrain, et la méthode du coût, qui les sépare, s'en trouve fragilisée. La leçon pratique est que la part $\omega_B$ doit être tirée du marché local et déclarée, et que la désuétude externe ne doit jamais être mesurée par un pourcentage forfaitaire. | |
| 233 | + | |
| 234 | +\subsection{Le cas inverse : un marché au-dessus du coût} | |
| 235 | + | |
| 236 | +La désuétude externe a un pendant que la pratique nomme rarement : lorsque la demande excède l'offre, les prix des bâtiments existants peuvent dépasser la somme de la valeur du terrain et du coût neuf déprécié. L'écart est alors une prime de rareté ou d'immédiateté, et non une désuétude négative ; la méthode du coût, qui raisonne du côté de l'offre, ne la capte pas, ce qui fait d'elle, dans de tels marchés, une borne inférieure plutôt qu'une estimation centrale. Le \cref{ch:21} a signalé le phénomène ; la \cref{sec:24:extraction} le rencontre concrètement, puisque la dépréciation extraite de certaines ventes récentes du cas 1 est négative. L'évaluateur qui observe des dépréciations extraites négatives doit en conclure que le marché paie une prime, ou que la valeur du terrain est sous-estimée, et non que les bâtiments s'apprécient physiquement. | |
| 237 | + | |
| 238 | +\begin{quebec}[{État de l'unité, rôle d'évaluation et dépréciation au Québec}] | |
| 239 | +La Loi sur la fiscalité municipale fonde la valeur réelle sur « l'état de l'unité d'évaluation » à la date de référence, et précise que cet état « comprend, outre son état physique, sa situation au point de vue économique et juridique » ainsi que « l'environnement dans lequel elle se trouve » \parencite[art.~46 al.~3]{lfm} : la loi reconnaît ainsi, sans employer ces mots, les trois familles de dépréciation du présent chapitre, l'état physique pour la dépréciation physique, la situation économique et juridique pour les désuétudes fonctionnelle et externe, l'environnement pour la désuétude de localisation. Lorsque le coût est la méthode la plus pertinente, l'évaluateur municipal applique la partie 3E du Manuel d'évaluation foncière du Québec, rendue obligatoire par le Règlement sur le rôle d'évaluation foncière \parencite[art.~8]{reglrole} ; la valeur du bâtiment qui figure au rôle est donc un coût de remplacement déprécié, calibré à la date de référence du rôle, le 1\ier{} juillet 2025 pour le rôle 2027-2029 de Gatineau \parencite[art.~46 al.~1]{lfm}, et non à la date d'une évaluation privée \parencite{mefq2026}. Les barèmes et les tables de dépréciation du Manuel sont librement consultables mais protégés par le droit d'auteur du gouvernement du Québec ; ils ne sont ni reproduits ni paraphrasés dans leurs valeurs ici, et leur contenu détaillé n'a pas été dépouillé pour ce chapitre, ce qui est signalé dans les limites. Pour l'évaluateur privé, la répartition terrain-bâtiment du rôle, diffusée en données ouvertes sous licence CC-BY 4.0 avec interdiction de réidentification \parencite{dqroles}, est une source utile pour estimer la part du bâtiment $\omega_B$ d'un voisinage et pour recouper une valeur de terrain extraite du marché, à la condition de se souvenir qu'elle date de la date de référence et qu'elle résulte d'une évaluation de masse (\cref{ch:09}). Enfin, les normes de pratique de l'OEAQ exigent que le rapport expose le raisonnement qui conduit à la conclusion \parencite{oeaqNormes} : les durées de vie, les âges effectifs, les parts du bâtiment et la source de toute dépréciation extraite du marché font partie de ce raisonnement et doivent y figurer, de même que les IVS demandent que l'approche par le coût soit documentée et justifiée \parencite[IVS 103, sect.~70]{ivs2025}. | |
| 240 | +\end{quebec} | |
| 241 | + | |
| 242 | +\section{L'extraction de marché}\label{sec:24:extraction} | |
| 243 | + | |
| 244 | +\subsection{Principe} | |
| 245 | + | |
| 246 | +Toutes les méthodes précédentes mesurent la dépréciation à partir du bâtiment ; l'extraction de marché (\emph{market extraction}) la mesure à partir des ventes. Pour une vente dont on connaît le prix $P$, la valeur du terrain $V_L$ et le coût neuf $C_N$ du bâtiment à la date de la vente, la \cref{def:depreciation} donne directement la dépréciation totale, toutes familles confondues : | |
| 247 | +\begin{equation}\label{eq:24:extraction} | |
| 248 | +D = C_N - (P - V_L), \qquad \delta = \frac{D}{C_N}, \qquad \bar\delta_a = \frac{\delta}{a}, | |
| 249 | +\end{equation} | |
| 250 | +où $\bar\delta_a$ est le taux annuel moyen de dépréciation, rapporté à l'âge chronologique $a$ ou, si on le connaît, à l'âge effectif. Répétée sur un ensemble de ventes d'âges différents, l'extraction livre une courbe de dépréciation en fonction de l'âge qui reflète ce que le marché retranche réellement, ce que \textcite{bowes2011} tient pour la seule façon de rendre la méthode du coût crédible. La méthode exige trois ingrédients que l'on n'a pas toujours : des ventes de bâtiments comparables au sujet par le type et la qualité ; une valeur de terrain par vente, estimée par comparaison avec des terrains vacants ou, à défaut, par allocation ou par extraction sur des bâtiments neufs (\cref{ch:25}) ; et un coût neuf par vente, transposé du sujet ou d'un barème selon la superficie et la qualité de chaque bâtiment. Chacun de ces ingrédients est une estimation, et l'erreur de la dépréciation extraite est la somme de leurs erreurs ; c'est pourquoi l'extraction se fait sur de nombreuses ventes et s'interprète par des médianes et des ajustements plutôt que vente par vente. | |
| 251 | + | |
| 252 | +\subsection{Application aux 600 ventes du cas 1} | |
| 253 | + | |
| 254 | +Le marché synthétique du cas 1 permet de dérouler la méthode de bout en bout, avec des choix tous déclarés. Les prix des 600 ventes sont d'abord ramenés à la date d'évaluation par la tendance mensuelle du modèle hédonique de référence, \pct{0.364} par mois (\cref{ch:17,ch:18}), afin que toutes les ventes soient exprimées aux conditions du marché du 1\ier{} septembre 2026. Le coût neuf de chaque bâtiment est transposé de celui du sujet par l'élasticité de taille du \cref{ch:21}, $C_{N,i} = C_N (S_i/165)^{1+\varepsilon}$ avec $\varepsilon = -0{,}10$, et corrigé de la classe de qualité à raison de \pct{5} par échelon autour de la classe 3, hypothèse pédagogique ; le garage, le sous-sol fini et la piscine ne sont pas distingués, ce qui ajoute du bruit mais pas de biais systématique lié à l'âge. La valeur du terrain est extraite, secteur par secteur, des ventes de bâtiments de dix ans ou moins, pour lesquels la dépréciation est faible et peut être approchée par l'âge-vie : $V_{L,i} = P^{\text{aj}}_i - C_{N,i}(1 - a_i/60)$, et la médiane par secteur est retenue pour toutes les ventes du secteur. Le \cref{tab:24:terrain} donne le résultat : à Hull, treize ventes récentes indiquent une valeur de terrain médiane de \dollars{276953.99}, soit \pct{50.5} du prix de ces maisons récentes, ou environ \parmsq{505} pour un terrain médian de \msq{548} ; les secteurs périphériques, Buckingham et Masson-Angers, ont des terrains beaucoup plus grands et moins chers. Ces valeurs sont des allocations implicites du marché synthétique, non des observations de terrains vacants ; le \cref{ch:25} les confronte aux méthodes propres au terrain. Pour le sujet, la valeur de terrain retenue est la médiane de Hull arrondie au millier, $V_L = \dollars{277000}$, soit \parmsq{447} pour \msq{620} ; c'est la valeur que les \cref{ch:25,ch:45} doivent reprendre ou réviser explicitement. | |
| 255 | + | |
| 256 | +\begin{table}[tbp] | |
| 257 | +\caption{Valeur du terrain extraite des ventes récentes (âge de dix ans ou moins) par secteur, cas 1 : $V_L = P^{\text{aj}} - C_N(1 - a/60)$, médiane par secteur, part médiane du prix et valeur par mètre carré du terrain médian.}\label{tab:24:terrain} | |
| 258 | +\centering\small | |
| 259 | +\begin{tabular}{@{}l S[table-format=2.0] S[table-format=6.0] S[table-format=5.0] S[table-format=2.1] S[table-format=4.0] S[table-format=3.0]@{}} | |
| 260 | +\toprule | |
| 261 | +Secteur & {Ventes} & {$V_L$ médiane (\$)} & {Écart-type (\$)} & {Part du prix (\%)} & {Terrain médian (m²)} & {\$/m²} \\ | |
| 262 | +\midrule | |
| 263 | +Aylmer & 4 & 321579 & 19824 & 47.2 & 550 & 585 \\ | |
| 264 | +Buckingham & 5 & 182678 & 45365 & 38.7 & 1790 & 102 \\ | |
| 265 | +Gatineau & 9 & 270089 & 47817 & 47.1 & 647 & 417 \\ | |
| 266 | +Hull & 13 & 276954 & 50814 & 50.5 & 548 & 505 \\ | |
| 267 | +Masson-Angers & 2 & 175657 & 122053 & 30.2 & 2098 & 84 \\ | |
| 268 | +\bottomrule | |
| 269 | +\end{tabular} | |
| 270 | +\tabsource{\synth{\texttt{analysis/python/cases/ch24\_depreciation.py}, fonction \texttt{valeur\_terrain\_par\_secteur} ; \texttt{data/synthetic/cas1\_gatineau\_ventes.csv}, graine 20261031}.} | |
| 271 | +\end{table} | |
| 272 | + | |
| 273 | +Munie de ces trois ingrédients, l'\cref{eq:24:extraction} fournit une dépréciation pour chacune des 600 ventes. Le \cref{tab:24:tranches} en donne les médianes par tranche d'âge et la \cref{fig:24:courbes}(a) le nuage complet. La dispersion est considérable, avec un écart-type de quatorze à dix-huit points de pourcentage dans chaque tranche, et des valeurs négatives apparaissent chez les bâtiments récents : c'est la somme des erreurs d'estimation du terrain et du coût neuf, à laquelle s'ajoute, pour les ventes les plus chères, la prime de marché évoquée plus haut. Les médianes, elles, dessinent une courbe nette : \pct{3.8} de dépréciation avant dix ans, \pct{19.2} entre vingt et trente ans, \pct{30.5} entre quarante et cinquante ans, \pct{40.3} au-delà de soixante ans. Trois ajustements résument cette courbe. La droite par l'origine donne un taux annuel moyen de \pct{0.619} du coût neuf par année, ce qui correspond à une vie économique linéaire implicite de 162 ans, c'est-à-dire que le marché synthétique ne déprécie les bâtiments qu'à un rythme très inférieur à celui qu'une vie économique de 60 ans suppose. La droite avec constante, $\delta = 0{,}0878 + 0{,}00447\,a$, a une constante positive qui trahit la courbure. Le polynôme du second degré, | |
| 274 | +\begin{equation}\label{eq:24:extraction-quad} | |
| 275 | +\hat\delta(a) = 0{,}0107 + 0{,}00891\,a - 0{,}0000514\,a^2, \qquad R^2 = 0{,}250 , | |
| 276 | +\end{equation} | |
| 277 | +dont la constante n'est pas significativement différente de zéro, décrit une dépréciation rapide au début, de l'ordre de \pct{0.9} par année dans la première décennie, puis de plus en plus lente, et il est retenu pour la suite. À 28 ans, il donne $\hat\delta(28) = \pct{22.00}$ ; à 60 ans, \pct{36.05}, là où l'âge-vie dit \pct{100}. | |
| 278 | + | |
| 279 | +\begin{table}[tbp] | |
| 280 | +\caption{Taux de dépréciation extrait du marché par tranche d'âge chronologique, 600 ventes du cas 1 ramenées au 1\ier{} septembre 2026.}\label{tab:24:tranches} | |
| 281 | +\centering\small | |
| 282 | +\begin{tabular}{@{}l S[table-format=3.0] S[table-format=2.1] S[table-format=2.1] S[table-format=2.1]@{}} | |
| 283 | +\toprule | |
| 284 | +Tranche d'âge (ans) & {Ventes} & {Médiane (\%)} & {Moyenne (\%)} & {Écart-type (points)} \\ | |
| 285 | +\midrule | |
| 286 | +0 à 10 & 33 & 3.8 & 4.4 & 14.5 \\ | |
| 287 | +11 à 20 & 47 & 14.3 & 15.0 & 16.4 \\ | |
| 288 | +21 à 30 & 76 & 19.2 & 21.2 & 16.1 \\ | |
| 289 | +31 à 40 & 115 & 24.4 & 25.4 & 15.0 \\ | |
| 290 | +41 à 50 & 124 & 30.5 & 29.9 & 13.6 \\ | |
| 291 | +51 à 60 & 101 & 33.1 & 35.5 & 15.5 \\ | |
| 292 | +61 à 98 & 104 & 40.3 & 38.2 & 18.3 \\ | |
| 293 | +\bottomrule | |
| 294 | +\end{tabular} | |
| 295 | +\tabsource{\synth{\texttt{analysis/python/cases/ch24\_depreciation.py}, fonctions \texttt{extraction} et \texttt{tranches}}.} | |
| 296 | +\end{table} | |
| 297 | + | |
| 298 | +L'écart entre les \pct{22} extraits et les \pct{48} à \pct{56} des méthodes fondées sur le bâtiment n'est pas une anomalie du jeu synthétique : c'est la tension que la littérature empirique documente depuis quarante ans et que la section suivante examine. Mais il faut d'abord en dire la cause mécanique dans le cas 1. Le générateur des données a été calibré sur des prix médians observés à Gatineau et sur des coûts unitaires publiés pour Montréal, et il associe à l'âge un effet sur le prix total de l'ordre de \pct{0.55} par année ; or, le prix total comprend le terrain, qui ne se déprécie pas, de sorte que l'effet sur le bâtiment est plus fort, mais pas au point de rejoindre une vie de 60 ans. Dans un marché réel, l'évaluateur qui obtiendrait un tel écart devrait se demander si sa vie économique est trop courte, si ses vies utiles de composantes sont des vies physiques plutôt que des vies perçues par le marché, si la valeur de terrain est sous-estimée, ou si le marché paie une prime ; les quatre explications se cumulent souvent. | |
| 299 | + | |
| 300 | +\section{Les courbes de dépréciation empiriques}\label{sec:24:courbes} | |
| 301 | + | |
| 302 | +\subsection{Ce que dit la littérature} | |
| 303 | + | |
| 304 | +L'estimation de la dépréciation économique à partir des prix d'actifs d'âges différents remonte aux travaux de \textcite{hultenWykoff1981}, qui ont montré, en appliquant une transformation de Box et Cox à des prix de bâtiments de millésimes variés, que le profil de perte de valeur est bien approché par une forme géométrique, c'est-à-dire par un taux constant appliqué à une valeur décroissante, plutôt que par la droite de la méthode âge-vie. Pour le logement, \textcite{malpezziOzanneThibodeau1987} ont estimé sur données microéconomiques américaines des taux de dépréciation brute, avant entretien, de l'ordre d'un demi à un pour cent par année de la valeur du logement, et ont insisté sur la dépendance de ce taux à l'entretien et à la localisation. \textcite{shillingSirmansDombrow1991} et \textcite{knightSirmans1996} ont établi que le statut d'occupation et l'effort d'entretien modifient sensiblement le rythme de la dépréciation, les logements locatifs se dépréciant plus vite que les logements occupés par leur propriétaire ; \textcite{wilhelmsson2008} a confirmé sur données suédoises que le niveau d'entretien explique une large part des écarts de taux entre logements du même âge. \textcite{hardingRosenthalSirmans2007} ont séparé, dans un modèle de ventes répétées, la dépréciation du capital-logement, l'effet de l'entretien et l'inflation des prix, et montré que la dépréciation nette d'entretien est nettement plus faible que la dépréciation brute. \textcite{smith2004} a analysé la dépréciation économique résidentielle dans l'espace et le temps à une échelle fine et montré qu'elle varie selon le quartier et la période. Du côté des difficultés d'identification, \textcite{coulsonMcmillen2008} ont rappelé que l'âge, le millésime de construction et la date de vente sont liés par une identité comptable, de sorte qu'un effet d'âge estimé en coupe confond le vieillissement et les différences de conception entre générations de bâtiments ; \textcite{clappGiaccotto1998} ont interprété les effets d'âge des modèles hédoniques dans un cadre d'anticipations rationnelles, et \textcite{clappSalavei2010} ont montré qu'ils incorporent la valeur de l'option de redéveloppement. Pour l'immobilier commercial et multirésidentiel, \textcite{bokhariGeltner2018} ont mesuré des profils qui dépendent de l'âge et du marché et qui concernent la valeur du bien entier, terrain compris, ce qui oblige, comme ici, à convertir avant de comparer avec une dépréciation du bâtiment. | |
| 305 | + | |
| 306 | +Trois enseignements se dégagent pour l'évaluateur. La dépréciation que le marché retranche est, pour un logement entretenu, de l'ordre de un pour cent par année ou moins de la valeur, bien en deçà de ce qu'une vie économique conventionnelle de cinquante ou soixante ans implique ; elle n'est pas linéaire, mais rapide au début et lente ensuite, et peut même s'inverser pour les bâtiments très anciens, rénovés ou patrimoniaux, dont le millésime devient une qualité ; et elle est mesurée sur des prix totaux, de sorte que sa conversion en dépréciation du bâtiment exige une hypothèse sur la part du terrain. | |
| 307 | + | |
| 308 | +\subsection{De la courbe hédonique à la courbe de dépréciation du bâtiment} | |
| 309 | + | |
| 310 | +Le modèle hédonique de référence du cas 1 (\cref{ch:18}) contient un polynôme du second degré en âge dont les coefficients estimés sont $\hat\beta_1 = -0{,}005097$ pour l'âge et $\hat\beta_2 = 0{,}002642$ pour l'âge au carré divisé par cent, soit $0{,}00002642$ par année au carré. Toutes autres caractéristiques égales, le prix d'une maison d'âge $a$ rapporté à celui d'une maison neuve vaut $\exp(\hat\beta_1 a + \hat\beta_2 a^2)$, et la baisse du prix total avec l'âge est | |
| 311 | +\begin{equation}\label{eq:24:profil-hedonique} | |
| 312 | +d_{\text{tot}}(a) = 1 - \exp\big(\hat\beta_1\,a + \hat\beta_2\,a^2\big) . | |
| 313 | +\end{equation} | |
| 314 | +Ce profil porte sur le prix du bien entier. Si le terrain représente une part $\alpha$ du prix d'un bien neuf et ne se déprécie pas, la baisse du prix total est entièrement supportée par le bâtiment, dont la dépréciation en proportion de son propre coût neuf est | |
| 315 | +\begin{equation}\label{eq:24:conversion} | |
| 316 | +d_B(a) = \frac{d_{\text{tot}}(a)}{1 - \alpha}, \qquad \alpha = \frac{V_L}{P_{\text{neuf}}} , | |
| 317 | +\end{equation} | |
| 318 | +où $P_{\text{neuf}}$ est le prix du bien s'il était neuf. La conversion suppose que la valeur du terrain est la même pour le bien neuf et pour le bien âgé, ce qui est l'hypothèse de la méthode du coût elle-même. Pour le sujet, le modèle prédit un prix de \dollars{720727} s'il était neuf, avec la correction de Duan et à la date d'évaluation ; avec $V_L = \dollars{277000}$, la part du terrain est $\alpha = 0{,}384$. À 28 ans, le profil hédonique donne $d_{\text{tot}} = \pct{11.48}$ et, converti, $d_B = \pct{18.65}$ ; à 60 ans, \pct{19.0} et \pct{30.9}. | |
| 319 | + | |
| 320 | +Le jeu de données étant synthétique, on connaît aussi la loi qui l'a engendré : d'après \texttt{data/synthetic/README.md}, le logarithme du prix contient le terme $-0{,}0055\,a + 0{,}00003\,a^2$, de sorte que le « vrai » profil est $1 - \exp(-0{,}0055\,a + 0{,}00003\,a^2)$, soit \pct{12.23} à 28 ans et \pct{19.86} une fois converti au bâtiment. Le modèle hédonique estimé sur 600 ventes le retrouve à un point près, ce qui est une validation de la procédure d'estimation plutôt qu'une information sur le marché réel de Gatineau. La \cref{fig:24:courbes}(b) superpose les quatre profils : la droite âge-vie de 60 ans, la courbe extraite du marché par l'\cref{eq:24:extraction-quad}, la courbe hédonique convertie et le profil du générateur converti. Les trois derniers sont proches les uns des autres, à \pct{18.7}, \pct{19.9} et \pct{22.0} à 28 ans, et tous très en dessous de la droite, à \pct{46.7} ; la dépréciation ventilée du sujet, \pct{55.6}, est plus haute encore. La cohérence des trois courbes de marché n'est pas un hasard : l'extraction et le modèle hédonique lisent le même marché par deux voies, l'une en passant par un coût neuf et une valeur de terrain, l'autre en estimant directement l'effet de l'âge, et le fait qu'elles concordent indique que les hypothèses de transposition du coût neuf et d'allocation du terrain sont compatibles avec les prix. L'extraction est légèrement au-dessus de la courbe hédonique convertie parce qu'elle mesure la dépréciation totale, désuétudes comprises, de bâtiments dont la qualité moyenne de construction n'est pas exactement celle du sujet, et parce que le polynôme ajusté sur les taux individuels n'est pas la transformation exacte du polynôme ajusté sur les logarithmes de prix. | |
| 321 | + | |
| 322 | +\begin{figure}[tbp] | |
| 323 | +\centering | |
| 324 | +\includegraphics[width=\linewidth]{ch24/ch24-fig-courbes.pdf} | |
| 325 | +\caption{Courbes de dépréciation du bâtiment, cas 1. (a) Taux extraits du marché pour les 600 ventes, médianes par tranche de dix ans et ajustement quadratique de l'\cref{eq:24:extraction-quad} ; la droite âge-vie de 60 ans est très au-dessus du nuage dès vingt ans. (b) Profils comparés sur 80 ans : la courbe extraite, la courbe hédonique convertie au bâtiment par l'\cref{eq:24:conversion} et le profil du générateur converti sont voisins et concaves, tandis que la droite âge-vie et, plus encore, la lecture ventilée du sujet (55,6 \% à 28 ans) retranchent deux à trois fois plus.}\label{fig:24:courbes} | |
| 326 | +\figsource{\synth{script \texttt{analysis/python/figures/ch24\_courbes.py}, graine 20261031 ; coefficients d'âge de \texttt{traite.cas1.hedonique} ; loi de génération de \texttt{data/synthetic/README.md}}.} | |
| 327 | +\end{figure} | |
| 328 | + | |
| 329 | +\subsection{Conséquences pour la pratique} | |
| 330 | + | |
| 331 | +La confrontation des courbes conduit à une règle de méthode. La vie économique et les vies utiles qu'un évaluateur utilise dans les méthodes âge-vie et ventilée ne sont pas des faits physiques ; ce sont des paramètres qui devraient être calibrés pour que la dépréciation du bâtiment reproduise celle que le marché retranche, ce que l'extraction de marché permet de vérifier. Lorsque l'extraction est possible, la pratique nord-américaine la tient pour la méthode la plus fiable de la dépréciation totale et réserve la méthode ventilée à la mesure du curable et au diagnostic des composantes \parencite{appraisal2026,bowes2011}. Lorsqu'elle ne l'est pas, faute de ventes ou de valeurs de terrain, la méthode âge-vie reste acceptable à condition d'utiliser une vie économique cohérente avec ce que l'on sait du marché, et non une durée empruntée à la comptabilité ou à l'assurance. Dans le cas 1, une vie économique linéaire de 60 ans conduirait à une indication de valeur inférieure de plus de \dollars{130000} à celle que le marché justifie, ce que l'exemple intégral chiffre. | |
| 332 | + | |
| 333 | +\section{Ordre des déductions et double comptage}\label{sec:24:ordre} | |
| 334 | + | |
| 335 | +\subsection{Pourquoi l'ordre compte} | |
| 336 | + | |
| 337 | +Les conventions de calcul de l'ouvrage, fixées à l'annexe des conventions et dans la bibliothèque \texttt{traite.cout}, déduisent les dépréciations dans l'ordre physique curable, physique incurable, fonctionnelle, externe, chacune étant mesurée sur la base restante après les précédentes. L'ordre n'est pas une simple convention de présentation ; il détermine le résultat dès qu'une dépréciation est exprimée en proportion plutôt qu'en dollars. La raison est que la désuétude fonctionnelle et la désuétude externe ne peuvent frapper que ce qui reste du bâtiment : un élément dont l'usure a déjà retranché la moitié du coût ne peut perdre, du fait d'un défaut de conception, que la moitié de ce qu'il aurait perdu s'il était neuf. La proposition suivante le formalise pour la désuétude externe, qui est le cas le plus fréquent de dépréciation exprimée en pourcentage. | |
| 338 | + | |
| 339 | +\begin{proposition}{Désuétude externe proportionnelle et ordre des déductions}{ordre} | |
| 340 | +Soit une désuétude externe mesurée par ventes appariées comme une proportion $\theta$ de la contribution du bâtiment, et soit $B = C_N - D_{\text{phys}} - D_{\text{fonc}}$ la base restante après les dépréciations physique et fonctionnelle. Appliquée dans l'ordre des conventions, la désuétude externe vaut $D_{\text{ext}} = \theta B$ ; appliquée sur le coût neuf, elle vaudrait $\theta C_N$, et l'écart, $\theta\,(D_{\text{phys}} + D_{\text{fonc}})$, est la part de la désuétude externe comptée sur des dollars déjà déduits. La contribution finale du bâtiment est $B(1-\theta)$ dans le premier cas et $B - \theta C_N$ dans le second, inférieure de $\theta(D_{\text{phys}} + D_{\text{fonc}})$. | |
| 341 | +\end{proposition} | |
| 342 | +\begin{proof} | |
| 343 | +Par définition $B(1 - \theta) - (B - \theta C_N) = \theta(C_N - B) = \theta(D_{\text{phys}} + D_{\text{fonc}})$, quantité positive dès que $\theta > 0$ et qu'une dépréciation a été déduite avant. | |
| 344 | +\end{proof} | |
| 345 | + | |
| 346 | +L'ordre inverse, externe puis physique, produit le même écart en sens contraire si la dépréciation physique est exprimée en proportion : le ratio âge-vie appliqué à $C_N(1-\theta)$ au lieu de $C_N$ réduit la dépréciation physique de $\theta D_{\text{phys}}$. Seule une convention fixe rend les dossiers comparables entre eux, et celle de l'ouvrage place en premier la dépréciation qui est la plus propre au bâtiment et la mieux documentée par l'inspection. Pour le sujet, une désuétude externe hypothétique de \pct{10} appliquée au coût neuf retrancherait \dollars{39756.73} ; appliquée à la contribution du bâtiment après dépréciation physique extraite et désuétude fonctionnelle, \dollars{302500.97}, elle retrancherait \dollars{30250.10}, soit \dollars{9506.64} de moins : c'est l'ampleur de l'erreur d'ordre dans un cas courant. | |
| 347 | + | |
| 348 | +\subsection{Les doubles comptages typiques} | |
| 349 | + | |
| 350 | +Le \cref{tab:24:doubles} recense les doubles comptages les plus fréquents dans les dossiers de dépréciation, avec le mécanisme et la parade. Les cinq premiers sont internes au chapitre ; les deux derniers relient la dépréciation au coût neuf du \cref{ch:21} et à la valeur du terrain du \cref{ch:25}. Le plus insidieux est celui qui mêle la méthode ventilée et l'extraction de marché : la dépréciation extraite est une dépréciation totale, toutes familles et tous régimes confondus, parce que le marché ne distingue pas ce qu'il retranche ; lui ajouter le curable, les composantes de courte durée ou une désuétude fonctionnelle déjà typique des bâtiments du même âge revient à les compter deux fois. Seules les pertes propres au sujet et atypiques pour son âge et son secteur peuvent s'ajouter à une dépréciation extraite ; l'exemple intégral n'en retient qu'une, la carence de salle d'eau, et justifie pourquoi le curable n'est pas ajouté. | |
| 351 | + | |
| 352 | +\begin{table}[tbp] | |
| 353 | +\caption{Doubles comptages fréquents dans la mesure de la dépréciation, mécanisme et parade.}\label{tab:24:doubles} | |
| 354 | +\centering\small | |
| 355 | +\begin{tabularx}{\textwidth}{@{}L{38mm}YY@{}} | |
| 356 | +\toprule | |
| 357 | +Double comptage & Mécanisme & Parade \\ | |
| 358 | +\midrule | |
| 359 | +Curable et courte durée & Une composante remplacée au titre du curable reste dans la liste des composantes de courte durée & Retirer du coût neuf des composantes de courte durée tout élément remplacé à neuf (\cref{eq:24:ventilee}) \\ | |
| 360 | +Courte durée et longue durée & La base de longue durée est le coût neuf entier au lieu du reste & Base de longue durée $= C_N - D^{\text{cur}} - \sum_k C_k$ \\ | |
| 361 | +Physique et fonctionnelle & Un élément vétuste (fenêtres de 1998) est déprécié par son âge puis de nouveau comme « désuet » & Une seule cause par élément ; la désuétude fonctionnelle ne vise que les défauts de conception, nets de la dépréciation physique déjà imputée (\cref{eq:24:fonc-curable}) \\ | |
| 362 | +Base de remplacement et surabondance & Le coût de remplacement exclut déjà la surabondance, que l'on déduit encore & \cref{prop:equivalence} : sous la base de remplacement, seul l'excès de coûts d'exploitation ou d'enlèvement est déduit \\ | |
| 363 | +Extraction et ventilée & On ajoute à une dépréciation extraite, déjà totale, le curable ou les composantes de courte durée & N'ajouter que les pertes atypiques propres au sujet ; justifier \\ | |
| 364 | +Externe et terrain & La perte de valeur due à une nuisance est déduite en entier du bâtiment alors que le terrain, estimé dans le même voisinage, l'a déjà subie & Répartir par la part du bâtiment $\omega_B$ (\cref{eq:24:ext-paires,eq:24:ext-rne}) \\ | |
| 365 | +Ordre des déductions & Une désuétude proportionnelle est appliquée au coût neuf plutôt qu'à la base restante & \cref{prop:ordre} ; ordre physique curable, physique incurable, fonctionnelle, externe \\ | |
| 366 | +\bottomrule | |
| 367 | +\end{tabularx} | |
| 368 | +\tabsource{synthèse de l'auteur ; conventions de \texttt{analysis/python/traite/cout.py} et de l'annexe des conventions de calcul.} | |
| 369 | +\end{table} | |
| 370 | + | |
| 371 | +\section{Exemple intégral : la dépréciation du sujet du cas 1}\label{sec:24:exemple} | |
| 372 | + | |
| 373 | +\begin{synthetique} | |
| 374 | +Le sujet est la maison fictive du premier dossier de cas : cottage à étages de \msq{165} habitables construit en 1998 sur un terrain de \msq{620} du secteur Hull de Gatineau, qualité moyenne, garage simple, sous-sol fini, évalué au 1\ier{} septembre 2026 (\texttt{data/synthetic/cas1\_gatineau\_sujet.json}). Le coût neuf de \dollars{397567.33} provient du \cref{ch:21} (\texttt{ch21\_cout\_neuf.py}) ; la fiche d'état, les âges effectifs et les travaux curables proviennent du \cref{ch:11} (\texttt{ch11\_inspection.py}, constats fictifs, vies utiles hypothétiques) ; la carence de salle d'eau et sa soumission de \dollars{16000} sont des hypothèses du présent chapitre ; la valeur du terrain est extraite du marché synthétique des 600 ventes (\texttt{cas1\_gatineau\_ventes.csv}, graine 20261031). Aucun chiffre ne décrit une propriété ou un marché réels. Tous les résultats sont imprimés par \texttt{analysis/python/cases/ch24\_depreciation.py} et vérifiés par \texttt{analysis/python/tests/test\_ch24.py}. | |
| 375 | +\end{synthetique} | |
| 376 | + | |
| 377 | +\begin{exemple}{Dépréciations et valeur par le coût d'un cottage de 28 ans à Hull}{depreciation-cas1} | |
| 378 | +L'estimation procède en sept étapes : âges et vies, dépréciation physique par les méthodes fondées sur le bâtiment, désuétude fonctionnelle, désuétude externe, extraction de marché, rapprochement des deux lectures, et indication de valeur. | |
| 379 | + | |
| 380 | +\emph{Étape 1 : âges et vies.} L'âge chronologique est de 28 ans. La fiche d'état du \cref{ch:11} donne à la structure un âge effectif de 29 ans par l'\cref{eq:24:age-effectif}, pour une vie économique de 60 ans ; la vie restante est de 31 ans. L'indice d'état pondéré est de 2,81 et l'âge effectif moyen des composantes pondéré par leurs coûts neufs équivaut à 32,8 ans sur 60. Le bâtiment est donc, pris dans son ensemble, dans un état typique de son âge, légèrement meilleur pour la structure et les systèmes, légèrement moins bon pour les finitions et les éléments extérieurs. | |
| 381 | + | |
| 382 | +\emph{Étape 2 : dépréciation physique.} Les quatre lectures du \cref{tab:24:lectures} s'échelonnent de \dollars{185531.42} (âge-vie à l'âge chronologique, \pct{46.67}) à \dollars{221089.88} (ventilée, \pct{55.61}), en passant par \dollars{192157.55} (âge-vie à l'âge effectif) et \dollars{197572.20} (âge-vie modifiée). La ventilée se décompose en \dollars{10479.98} de curable, \dollars{130584.55} pour dix-huit composantes de courte durée et \dollars{80025.35} pour la longue durée, et l'\cref{eq:24:ecart} explique son écart de \dollars{28932.33} avec l'âge-vie à âge effectif égal. Toutes ces lectures mesurent l'usure au coût de remplacement sous des vies utiles conventionnelles. | |
| 383 | + | |
| 384 | +\emph{Étape 3 : désuétude fonctionnelle.} La seule carence retenue est l'absence de salle d'eau au rez-de-chaussée, curable sous l'hypothèse que la valeur ajoutée atteint le coût de la correction ; l'\cref{eq:24:fonc-curable} donne $\dollars{16000} - \dollars{8394.69} = \dollars{7605.31}$. Aucune surabondance n'est relevée, et le coût neuf étant un coût de remplacement, il n'y aurait de toute façon rien à déduire à ce titre hors frais d'enlèvement. Aucune désuétude fonctionnelle incurable n'est retenue : le plan, les hauteurs et les équipements du cottage sont typiques des bâtiments de 1998 du secteur, et leurs effets sur le prix sont déjà dans la dépréciation que le marché retranche aux bâtiments de cet âge. | |
| 385 | + | |
| 386 | +\emph{Étape 4 : désuétude externe.} Le secteur est établi, sans nuisance identifiée ; le marché, loin d'être en offre excédentaire, paie pour les bâtiments récents un prix supérieur à la somme du terrain et du coût neuf déprécié. Il n'y a donc pas de désuétude externe, $D_{\text{ext}} = 0$, et l'on ne déduit pas non plus de « désuétude négative » : la prime de marché n'entre pas dans la méthode du coût, qui restera de ce fait une indication prudente. | |
| 387 | + | |
| 388 | +\emph{Étape 5 : extraction de marché.} La \cref{sec:24:extraction} a extrait des 600 ventes une valeur de terrain de \dollars{277000} pour le sujet et une courbe de dépréciation totale, \cref{eq:24:extraction-quad}, qui vaut $\hat\delta(28) = \pct{22.00}$ à l'âge chronologique du sujet, soit $D_{\text{extraite}} = 0{,}2200 \times \dollars{397567.33} = \dollars{87461.05}$. Cette dépréciation est totale : elle contient l'usure, le curable et les désuétudes typiques des cottages de 28 ans du marché synthétique. L'âge chronologique est utilisé parce que la courbe a été estimée sur des âges chronologiques ; le sujet étant d'état typique pour son âge, aucun ajustement d'état ne s'impose, et c'est précisément ce que l'indice d'état de 2,81 et l'âge effectif de 29 ans contre 28 indiquent. | |
| 389 | + | |
| 390 | +\emph{Étape 6 : rapprochement des deux lectures.} La lecture ventilée donne une dépréciation totale de $\dollars{221089.88} + \dollars{7605.31} = \dollars{228695.19}$, soit \pct{57.52} du coût neuf, et une contribution du bâtiment de \dollars{168872.14}. La lecture extraite donne $\dollars{87461.05} + \dollars{7605.31} = \dollars{95066.36}$, soit \pct{23.91}, et une contribution de \dollars{302500.97}. L'écart de \dollars{133628.83} n'est pas une erreur de calcul mais une divergence de méthode : la première mesure ce que le bâtiment a perdu de sa substance au coût de remplacement, la seconde ce que le marché retranche. Trois raisons conduisent à retenir la seconde pour l'indication de valeur. L'extraction, le modèle hédonique et le profil du générateur concordent à quelques points près (\cref{fig:24:courbes}), alors que la ventilée est seule à son niveau ; les vies utiles de la ventilée sont des hypothèses sans source de marché, déclarées comme telles au \cref{ch:11} ; et la valeur marchande que l'on cherche est, par définition, ce que le marché paierait, non ce qu'il en coûterait de remettre à neuf. La ventilée conserve son utilité : elle a identifié les \dollars{10479.98} de travaux immédiats, que l'acheteur prudent déduira, et dressé le calendrier des remplacements des dix prochaines années (balcon, VRC, gouttières, armoires, fenêtres), qui justifie, dans la réconciliation du \cref{ch:45}, de situer l'indication dans la moitié basse de la fourchette plutôt qu'en son centre. Le curable n'est pas ajouté à la dépréciation extraite parce que l'entretien différé du sujet est typique de son âge et donc déjà contenu dans la courbe ; la carence de salle d'eau est ajoutée parce qu'elle est atypique. | |
| 391 | + | |
| 392 | +\emph{Étape 7 : indication de valeur par le coût.} Par la fonction \texttt{valeur\_par\_cout} et dans l'ordre des conventions, | |
| 393 | +\begin{equation}\label{eq:24:valeur-cas1} | |
| 394 | +\hat V = V_L + C_N - D_{\text{extraite}} - D_{\text{fonc}} - D_{\text{ext}} | |
| 395 | += \dollars{277000} + \dollars{397567.33} - \dollars{87461.05} - \dollars{7605.31} - 0 = \dollars{579500.97}, | |
| 396 | +\end{equation} | |
| 397 | +arrondie à \dollars{580000}. La dépréciation totale retenue est de \dollars{95066.36}, soit \pct{23.91} du coût neuf, et la contribution du bâtiment de \dollars{302500.97}, soit \pct{52.2} de l'indication, le terrain en représentant \pct{47.8}. Sous la lecture ventilée, l'indication n'aurait été que de \dollars{445872.14}. Le \cref{tab:24:recapitulatif} et la \cref{fig:24:decomposition} résument les deux chemins. L'indication de \dollars{580000} est la contribution du présent chapitre à la réconciliation du \cref{ch:45}, où elle sera confrontée à la moyenne des prix ajustés des comparables du \cref{ch:17}, \dollars{581595}, et à la prédiction hédonique du \cref{ch:18}, \dollars{637953} ; la valeur de terrain de \dollars{277000} est l'hypothèse que le \cref{ch:25} doit reprendre ou réviser explicitement. | |
| 398 | +\end{exemple} | |
| 399 | + | |
| 400 | +\begin{table}[tbp] | |
| 401 | +\caption{Récapitulatif des deux lectures de la dépréciation du sujet du cas 1 et indication de valeur par le coût (ordre des conventions : physique, fonctionnelle, externe ; $V_L = \dollars{277000}$).}\label{tab:24:recapitulatif} | |
| 402 | +\centering\small | |
| 403 | +\begin{tabular}{@{}l S[table-format=6.2] S[table-format=6.2]@{}} | |
| 404 | +\toprule | |
| 405 | +Poste & {Lecture ventilée (\$)} & {Lecture retenue (\$)} \\ | |
| 406 | +\midrule | |
| 407 | +Coût neuf $C_N$ (\cref{ch:21}) & 397567.33 & 397567.33 \\ | |
| 408 | +Dépréciation physique curable & -10479.98 & {incluse} \\ | |
| 409 | +Dépréciation physique incurable, courte durée (18 composantes) & -130584.55 & {incluse} \\ | |
| 410 | +Dépréciation physique incurable, longue durée (base $\times 29/60$) & -80025.35 & {incluse} \\ | |
| 411 | +Dépréciation totale extraite du marché, $\hat\delta(28) = \pct{22.00}$ & {—} & -87461.05 \\ | |
| 412 | +Désuétude fonctionnelle curable (salle d'eau) & -7605.31 & -7605.31 \\ | |
| 413 | +Désuétude externe & 0.00 & 0.00 \\ | |
| 414 | +\midrule | |
| 415 | +Dépréciation totale & 228695.19 & 95066.36 \\ | |
| 416 | +Taux de dépréciation (\% de $C_N$) & 57.52 & 23.91 \\ | |
| 417 | +Contribution du bâtiment & 168872.14 & 302500.97 \\ | |
| 418 | +Valeur du terrain $V_L$ & 277000.00 & 277000.00 \\ | |
| 419 | +\midrule | |
| 420 | +Indication de valeur par le coût & 445872.14 & 579500.97 \\ | |
| 421 | +\bottomrule | |
| 422 | +\end{tabular} | |
| 423 | +\tabsource{\synth{\texttt{analysis/python/cases/ch24\_depreciation.py}, fonction \texttt{valeur\_sujet} ; \texttt{traite.cout.valeur\_par\_cout}}.} | |
| 424 | +\end{table} | |
| 425 | + | |
| 426 | +\begin{figure}[tbp] | |
| 427 | +\centering | |
| 428 | +\includegraphics[width=\linewidth]{ch24/ch24-fig-decomposition.pdf} | |
| 429 | +\caption{Du coût neuf à l'indication de valeur, sujet du cas 1. (a) Lecture ventilée : le coût neuf perd 57,5 \% en curable, courte durée, longue durée et désuétude fonctionnelle. (b) Lecture retenue : la dépréciation extraite du marché à 28 ans (22,0 \%) et la désuétude fonctionnelle propre au sujet laissent une contribution du bâtiment de \dollars{302501}, à laquelle s'ajoute le terrain de \dollars{277000} pour une indication de \dollars{579501}, arrondie à \dollars{580000}.}\label{fig:24:decomposition} | |
| 430 | +\figsource{\synth{script \texttt{analysis/python/figures/ch24\_decomposition.py}, graine 20261031}.} | |
| 431 | +\end{figure} | |
| 432 | + | |
| 433 | +\section{Analyse de sensibilité}\label{sec:24:sensibilite} | |
| 434 | + | |
| 435 | +L'indication par le coût du sujet dépend de cinq hypothèses que l'évaluateur contrôle imparfaitement : la valeur du terrain, le choix de la méthode de dépréciation, les paramètres de l'extraction, la date des prix du coût neuf et la désuétude fonctionnelle. La \cref{fig:24:sensibilite} et le \cref{tab:24:sens-extraction} en mesurent les effets. | |
| 436 | + | |
| 437 | +La première sensibilité est celle des méthodes fondées sur le bâtiment à leurs deux paramètres. La \cref{fig:24:sensibilite}(a) croise la vie économique, de 50 à 100 ans, et l'âge effectif de la structure, de 20 à 37 ans, pour la méthode âge-vie modifiée à curable fixé : le taux de dépréciation parcourt de \pct{22.1} (vie de 100 ans, âge effectif de 20 ans) à \pct{74.7} (vie de 50 ans, âge effectif de 37 ans). Avec la vie conventionnelle de 60 ans, il faudrait un âge effectif de 20 ans, c'est-à-dire un bâtiment en excellent état, pour descendre à \pct{35.1} ; avec l'âge effectif constaté de 29 ans, il faudrait une vie économique de 100 ans pour approcher les \pct{30.9}, encore au-dessus des \pct{22} extraits. Aucune combinaison raisonnable des deux paramètres ne rejoint le marché : c'est le signe que le désaccord ne porte pas sur l'âge effectif mais sur la forme même de la méthode, linéaire sur une vie courte, face à un marché concave sur une vie longue. | |
| 438 | + | |
| 439 | +La deuxième sensibilité est celle de l'extraction à ses choix de construction (\cref{tab:24:sens-extraction}). Restreindre les ventes servant à extraire le terrain à cinq ans ou moins abaisse la valeur de terrain de Hull à \dollars{271528} et le taux à 28 ans à \pct{19.68} ; l'élargir à quinze ans la relève à \dollars{303775} et le taux à \pct{27.20}, parce que des bâtiments plus âgés, donc plus dépréciés, sont alors traités comme s'ils l'étaient à peine, ce qui gonfle la valeur de terrain et, par ricochet, la dépréciation de tous les autres. L'élasticité de taille et la correction de qualité ont des effets inférieurs à un point. Le taux à 28 ans varie ainsi de \pct{19.68} à \pct{27.20}, et l'indication de valeur, à terrain constant, de \dollars{558807} à \dollars{588716}, soit une étendue de \pct{5.2}. Le choix de la fenêtre d'âge pour l'extraction du terrain est donc le paramètre le plus sensible de la procédure, et il doit être déclaré. | |
| 440 | + | |
| 441 | +\begin{table}[tbp] | |
| 442 | +\caption{Sensibilité de l'extraction de marché à ses choix de construction : valeur du terrain extraite pour Hull, taux de dépréciation à 28 ans selon l'ajustement quadratique et taux annuel moyen par la droite par l'origine.}\label{tab:24:sens-extraction} | |
| 443 | +\centering\small | |
| 444 | +\begin{tabular}{@{}l S[table-format=6.0] S[table-format=2.2] S[table-format=1.2]@{}} | |
| 445 | +\toprule | |
| 446 | +Variante & {$V_L$ Hull (\$)} & {$\hat\delta(28)$ (\%)} & {Taux annuel (\%/an)} \\ | |
| 447 | +\midrule | |
| 448 | +Cas de base (ventes $\le$ 10 ans, $\varepsilon = -0{,}10$, qualité $\pm$ 5 \%) & 276954 & 22.00 & 0.62 \\ | |
| 449 | +Ventes récentes $\le$ 5 ans & 271528 & 19.68 & 0.57 \\ | |
| 450 | +Ventes récentes $\le$ 15 ans & 303775 & 27.20 & 0.72 \\ | |
| 451 | +Élasticité de taille $-0{,}05$ & 279814 & 22.46 & 0.63 \\ | |
| 452 | +Élasticité de taille $-0{,}15$ & 274069 & 21.47 & 0.61 \\ | |
| 453 | +Sans correction de qualité & 278242 & 21.79 & 0.62 \\ | |
| 454 | +Correction de qualité $\pm$ 10 \% & 276954 & 21.20 & 0.60 \\ | |
| 455 | +\bottomrule | |
| 456 | +\end{tabular} | |
| 457 | +\tabsource{\synth{\texttt{analysis/python/cases/ch24\_depreciation.py}, fonction \texttt{sensibilite\_extraction}}.} | |
| 458 | +\end{table} | |
| 459 | + | |
| 460 | +La troisième sensibilité, résumée par la tornade de la \cref{fig:24:sensibilite}(b), compare les effets sur l'indication de \dollars{579501}. La substitution de la lecture ventilée à l'extraction domine tout : elle abaisse l'indication à \dollars{445872}, soit \pct{23.1} de moins. Vient ensuite la valeur du terrain, dont une variation de \pct{15} dans un sens ou l'autre déplace l'indication de \dollars{537951} à \dollars{621051}, étendue de \pct{14.3} : parce que le terrain représente près de la moitié de l'indication, toute erreur sur lui se transmet presque intégralement. La date des prix du coût neuf, une année d'indice de construction à \pct{8.6} comme au \cref{ch:21}, déplace l'indication de \dollars{554944} à \dollars{606170} (\pct{8.8}), moins que proportionnellement parce que la dépréciation extraite, exprimée en taux, suit le coût neuf. Les paramètres de l'extraction pèsent \pct{5.2} et la désuétude fonctionnelle, doublée ou annulée, \pct{2.6}. La hiérarchie est claire : la méthode de dépréciation d'abord, le terrain ensuite, le coût neuf après, les raffinements de l'extraction et des désuétudes enfin. Elle fixe l'ordre dans lequel l'évaluateur doit investir son temps. | |
| 461 | + | |
| 462 | +\begin{figure}[tbp] | |
| 463 | +\centering | |
| 464 | +\includegraphics[width=\linewidth]{ch24/ch24-fig-sensibilite.pdf} | |
| 465 | +\caption{Sensibilité, sujet du cas 1. (a) Taux de dépréciation par la méthode âge-vie modifiée selon la vie économique et l'âge effectif de la structure : aucune combinaison raisonnable ne descend aux 22 \% extraits du marché. (b) Tornade de l'indication par le coût autour de \dollars{579501} : la méthode de dépréciation pèse plus que tout, puis la valeur du terrain et la date des prix du coût neuf ; les paramètres de l'extraction et la désuétude fonctionnelle sont de second ordre.}\label{fig:24:sensibilite} | |
| 466 | +\figsource{\synth{script \texttt{analysis/python/figures/ch24\_sensibilite.py}, graine 20261031} ; variation annuelle de l'indice de construction : Statistique Canada, tableau 18-10-0289-01, via le \cref{ch:21}.} | |
| 467 | +\end{figure} | |
| 468 | + | |
| 469 | +\begin{erreurs} | |
| 470 | +\begin{itemize} | |
| 471 | +\item \emph{Prendre l'âge chronologique pour l'âge effectif, ou l'inverse.} L'âge-vie exige l'âge effectif, qui provient de l'inspection ; une courbe extraite sur des âges chronologiques s'applique à l'âge chronologique, avec un ajustement d'état seulement si le sujet est atypique. | |
| 472 | +\item \emph{Emprunter une vie économique à la comptabilité ou à l'assurance.} Une durée d'amortissement fiscal ou une vie « technique » n'est pas une vie économique ; celle-ci se vérifie sur le marché, et l'exemple montre qu'une vie de 60 ans retranche deux fois ce que le marché retranche. | |
| 473 | +\item \emph{Additionner la dépréciation extraite et la ventilée.} La dépréciation extraite est totale ; n'y ajouter que les pertes atypiques propres au sujet. | |
| 474 | +\item \emph{Déduire la surabondance d'un coût de remplacement.} Il l'a déjà exclue (\cref{prop:equivalence}). | |
| 475 | +\item \emph{Déprécier deux fois le même élément.} Une composante remplacée au titre du curable sort de la courte durée ; un élément usé n'est pas aussi « désuet » ; la base de longue durée est le reste, non le coût neuf. | |
| 476 | +\item \emph{Imputer au bâtiment toute la désuétude externe.} Le terrain, estimé dans le même voisinage, en a déjà subi sa part ; répartir par $\omega_B$. | |
| 477 | +\item \emph{Appliquer un pourcentage au coût neuf plutôt qu'à la base restante.} L'ordre des déductions change le résultat dès qu'une dépréciation est proportionnelle (\cref{prop:ordre}). | |
| 478 | +\item \emph{Lire une dépréciation extraite négative comme une appréciation du bâtiment.} C'est une prime de marché ou une sous-estimation du terrain ; la méthode du coût ne la capte pas. | |
| 479 | +\end{itemize} | |
| 480 | +\end{erreurs} | |
| 481 | + | |
| 482 | +\begin{limites} | |
| 483 | +\begin{itemize} | |
| 484 | +\item Le marché du cas 1 est synthétique ; sa courbe de dépréciation découle d'une loi de génération déclarée (effet d'âge de $-0{,}0055\,a + 0{,}00003\,a^2$ sur le logarithme du prix total) et ne mesure pas le marché réel de Gatineau. La concordance entre extraction, modèle hédonique et profil du générateur valide la procédure, non les chiffres. | |
| 485 | +\item Les vies utiles des composantes, les fractions $\varphi(c)$ et la vie économique de 60 ans sont des hypothèses pédagogiques du \cref{ch:11}, sans source publique ; la carence de salle d'eau et sa soumission de \dollars{16000} sont des hypothèses du présent chapitre, de même que la condition de curabilité, que les données ne permettent pas de tester. | |
| 486 | +\item La valeur de terrain de \dollars{277000} est une allocation implicite extraite de treize ventes récentes de Hull, avec un coût neuf transposé du sujet (élasticité $-0{,}10$, correction de qualité de 5 \% par classe) ; elle n'est pas tirée de ventes de terrains vacants. Le \cref{ch:25} doit la confronter aux méthodes propres au terrain et le \cref{ch:45} la réconcilier. | |
| 487 | +\item Les exemples de désuétude incurable (perte de loyer de \dollars{75}, perte de RNE de \dollars{6000}, parts du bâtiment de 60 et 70 \%, paires à \dollars{520000} et \dollars{490000}) sont des illustrations aux paramètres hypothétiques ; seul le multiplicateur de 19,82 provient du cas 2 et le taux de \pct{4.50} de la fourchette publiée pour Montréal. | |
| 488 | +\item Les tables de dépréciation et les durées de vie de la partie 3E du Manuel d'évaluation foncière du Québec n'ont pas été dépouillées ; le chapitre renvoie au Manuel sans en reproduire les valeurs (droit d'auteur, pas de licence ouverte). La pratique municipale de l'âge apparent n'est pas documentée ici. | |
| 489 | +\item Les taux de dépréciation cités de la littérature (de l'ordre d'un demi à un pour cent par année) sont des ordres de grandeur tirés d'études américaines et suédoises des années 1980 à 2000 ; aucune étude arbitrée sur la dépréciation des logements québécois n'a été repérée dans les notes du dépôt. | |
| 490 | +\item La courbe extraite est estimée sur des âges chronologiques ; faute d'âges effectifs pour les 600 ventes, l'effet de l'état n'est pas isolé, et la dispersion des taux individuels (écart-type de 14 à 18 points) en porte la trace. | |
| 491 | +\end{itemize} | |
| 492 | +\end{limites} | |
| 493 | + | |
| 494 | +\begin{synthese} | |
| 495 | +\begin{itemize} | |
| 496 | +\item La dépréciation est l'écart, à la date d'évaluation, entre le coût neuf et la contribution du bâtiment à la valeur ; elle se décompose en physique, fonctionnelle et externe, chacune curable ou incurable selon que le coût de la correction est ou non inférieur à la valeur qu'elle ajoute. | |
| 497 | +\item L'âge effectif provient de l'inspection selon la convention du \cref{ch:11}, $a_{\mathrm{eff}} = (1-\lambda)a + \lambda\varphi(c)L$ ; la vie restante est $L - a_{\mathrm{eff}}$. Pour le sujet : 28 ans chronologiques, 29 ans effectifs, 31 ans de vie restante. | |
| 498 | +\item Âge-vie, âge-vie modifiée et ventilée mesurent l'usure au coût de remplacement sous des vies conventionnelles ; pour le sujet, de \pct{46.7} à \pct{55.6} du coût neuf, l'écart entre ventilée et âge-vie valant $D^{\text{cur}}(1 - r_S) + \sum_k C_k(r_k - r_S)$. | |
| 499 | +\item La désuétude fonctionnelle curable est l'excès du coût de correction sur le coût à neuf ; l'incurable se capitalise (perte de loyer × multiplicateur, perte de RNE / taux) ou se mesure par paires. La désuétude externe se répartit entre terrain et bâtiment par $\omega_B$ et se déduit après les autres. | |
| 500 | +\item L'extraction de marché, $D = C_N - (P - V_L)$ sur de nombreuses ventes, livre la dépréciation totale que le marché retranche ; sur le cas 1, \pct{0.62} par année en moyenne, \pct{22.0} à 28 ans, courbe concave concordante avec le modèle hédonique converti au bâtiment ($d_B = d_{\text{tot}}/(1-\alpha)$, $\alpha = 0{,}384$). | |
| 501 | +\item Sujet du cas 1 : $V_L = \dollars{277000}$, $C_N = \dollars{397567}$, dépréciation totale retenue \dollars{95066} (\pct{23.9}), contribution du bâtiment \dollars{302501}, indication par le coût \dollars{580000} ; la lecture ventilée aurait donné \dollars{445872}. La méthode de dépréciation est le premier facteur d'incertitude, le terrain le deuxième. | |
| 502 | +\end{itemize} | |
| 503 | +\end{synthese} | |
| 504 | + | |
| 505 | +\section*{Exercices} | |
| 506 | + | |
| 507 | +\begin{exercice}[1]{Âge-vie et vie restante}{ex:24:1} | |
| 508 | +Un bungalow a un coût neuf de \dollars{320000}, une vie économique de 60 ans et un âge effectif de 15 ans. Calculez la dépréciation physique par la méthode âge-vie et la vie économique restante. L'inspection relève des travaux immédiats de \dollars{9000} ; recalculez la dépréciation par la méthode âge-vie modifiée et expliquez d'où vient l'écart avec la méthode simple. Que deviennent les deux résultats si l'âge effectif est réévalué à 20 ans ? | |
| 509 | +\end{exercice} | |
| 510 | + | |
| 511 | +\begin{exercice}[1]{Méthode ventilée}{ex:24:2} | |
| 512 | +Reprenez le bungalow de l'exercice précédent (coût neuf \dollars{320000}, curable \dollars{9000}, structure à 15 ans sur 60). Trois composantes de courte durée sont identifiées : toiture (coût neuf \dollars{9000}, âge effectif 12 ans, vie utile 20 ans), fenêtres (\dollars{18000}, 10 ans, 30 ans) et chauffe-eau (\dollars{1500}, 8 ans, 12 ans). Calculez la dépréciation de chaque composante, la base de longue durée, la dépréciation de longue durée et le total ventilé ; comparez avec l'âge-vie modifiée et vérifiez l'écart à l'aide de la \cref{prop:ecart-ventilee}. | |
| 513 | +\end{exercice} | |
| 514 | + | |
| 515 | +\begin{exercice}[2]{Carence et surabondance}{ex:24:3} | |
| 516 | +(a) Une maison n'a pas de salle d'eau au rez-de-chaussée ; une soumission pour en ajouter une s'élève à \dollars{16000}, et l'élément aurait coûté \dollars{8394.69} s'il avait été prévu à la construction. Des ventes appariées indiquent qu'une salle d'eau au rez-de-chaussée ajoute \dollars{12000} au prix dans ce secteur. La carence est-elle curable ? Quelle désuétude faut-il déduire, et pourquoi ? (b) La même maison comporte une deuxième cuisine au sous-sol que le marché ne paie pas ; son coût de reproduction est de \dollars{22000}, la dépréciation physique déjà imputée est de 40 \%, son enlèvement coûterait \dollars{3000} et sa valeur de récupération est nulle. Mesurez la désuétude sous la base de reproduction puis sous la base de remplacement, en vous appuyant sur la \cref{prop:equivalence}. | |
| 517 | +\end{exercice} | |
| 518 | + | |
| 519 | +\begin{exercice}[2]{Désuétudes incurables capitalisées}{ex:24:4} | |
| 520 | +(a) Dans un triplex du marché de Québec, un logement sans entrée de laveuse-sécheuse se loue \dollars{75} de moins par mois que les logements comparables ; le multiplicateur médian du revenu brut des triplex est de 19,82. Mesurez la désuétude fonctionnelle incurable. (b) Un immeuble de six logements situé en bordure d'une artère bruyante perd \dollars{6000} de revenu net par année par rapport aux immeubles comparables du quartier ; le taux global du marché est de \pct{4.50} et la part du bâtiment dans la valeur de \pct{70}. Mesurez la désuétude externe imputable au bâtiment, puis refaites le calcul avec un taux de \pct{5.50}. Expliquez pourquoi, dans le cas (a), la part du bâtiment est de 100 \% et pourquoi, dans le cas (b), elle ne l'est pas. | |
| 521 | +\end{exercice} | |
| 522 | + | |
| 523 | +\begin{exercice}[2]{Extraction de marché sur quatre ventes}{ex:24:5} | |
| 524 | +Quatre ventes de maisons comparables au sujet ont été analysées : (1) prix \dollars{610000}, terrain \dollars{260000}, coût neuf \dollars{420000}, 12 ans ; (2) \dollars{545000}, \dollars{250000}, \dollars{390000}, 25 ans ; (3) \dollars{480000}, \dollars{240000}, \dollars{380000}, 41 ans ; (4) \dollars{520000}, \dollars{255000}, \dollars{410000}, 33 ans. Pour chaque vente, calculez la contribution du bâtiment, la dépréciation, le taux et le taux annuel moyen. Calculez la moyenne et la médiane des taux annuels, la vie économique linéaire implicite, puis la dépréciation d'un sujet de 30 ans dont le coût neuf est de \dollars{400000}. Refaites le calcul si chaque valeur de terrain avait été sous-estimée de \dollars{20000}, et commentez la sensibilité de l'extraction à la valeur du terrain. | |
| 525 | +\end{exercice} | |
| 526 | + | |
| 527 | +\begin{exercice}[3]{De la courbe hédonique à la dépréciation du bâtiment}{ex:24:6} | |
| 528 | +Le modèle hédonique du cas 1 donne $\hat\beta_1 = -0{,}005097$ pour l'âge et $\hat\beta_2 = 0{,}00002642$ pour l'âge au carré ; la part du terrain dans le prix d'une maison neuve est $\alpha = 0{,}384$. (a) Calculez la baisse du prix total et la dépréciation du bâtiment à 10, 28 et 50 ans par les \cref{eq:24:profil-hedonique,eq:24:conversion}. (b) Calculez le taux marginal annuel de dépréciation du prix total à 28 ans, $-(\hat\beta_1 + 2\hat\beta_2 a)$, et convertissez-le au bâtiment. (c) À quel âge la courbe hédonique atteint-elle son minimum, et comment interpréter ce qui se passe au-delà à la lumière de \textcite{coulsonMcmillen2008} et de \textcite{clappSalavei2010} ? (d) Quelle part du terrain $\alpha$ faudrait-il pour que la méthode âge-vie à 60 ans et la courbe hédonique coïncident à 28 ans, et que conclure de ce nombre ? | |
| 529 | +\end{exercice} | |
| 530 | + | |
| 531 | +\begin{exercice}[3]{Double comptage et ordre des déductions}{ex:24:7} | |
| 532 | +Un évaluateur reprend le dossier du sujet du cas 1 ($C_N = \dollars{397567.33}$, $V_L = \dollars{277000}$). Il retient la dépréciation ventilée du \cref{tab:24:composantes}, mais il ajoute une « désuétude fonctionnelle » de \dollars{6130.62} pour la couverture jugée vétuste et de \dollars{15989.85} pour les fenêtres d'origine, puis il applique une désuétude externe de \pct{10} au coût neuf au motif que le marché serait « incertain ». (a) Identifiez chaque double comptage et chiffrez la surestimation de la dépréciation qu'il entraîne. (b) Recalculez la désuétude externe de \pct{10} dans l'ordre des conventions, sur la base restante après la dépréciation extraite du marché (\dollars{87461.05}) et la désuétude fonctionnelle (\dollars{7605.31}), et chiffrez l'erreur d'ordre à l'aide de la \cref{prop:ordre}. (c) Expliquez pourquoi, dans le marché du cas 1, aucune désuétude externe ne devrait être déduite, et ce que l'évaluateur aurait dû faire de son constat d'« incertitude ». | |
| 533 | +\end{exercice} | |
| 534 | + | |
| 535 | +\section*{Pour aller plus loin} | |
| 536 | + | |
| 537 | +La présentation de référence des trois familles de dépréciation, des méthodes âge-vie, ventilée et d'extraction de marché, et des procédures de mesure de la désuétude fonctionnelle demeure celle de \textcite{appraisal2026}, dont le vocabulaire est fixé par le glossaire de \textcite{aiDictionary2022} ; l'édition canadienne de \textcite{appraisalCdn} en adapte la présentation et \textcite{achour1992} en donne la terminologie française. \textcite{bowes2011} consacre un ouvrage entier à la dépréciation des immeubles commerciaux et défend l'extraction de marché comme seule méthode capable de rendre la méthode du coût crédible ; sa lecture prolonge directement la \cref{sec:24:extraction}. Pour la taxonomie de l'obsolescence et ses liens avec l'investissement, \textcite{baum1991} reste la référence britannique, que \textcite{wyatt2022} et \textcite{scarrettOsborn2014} résument. Du côté de l'économétrie, \textcite{hultenWykoff1981} ont fondé l'estimation de la dépréciation économique par les prix d'actifs de millésimes différents ; \textcite{malpezziOzanneThibodeau1987}, \textcite{shillingSirmansDombrow1991}, \textcite{knightSirmans1996}, \textcite{hardingRosenthalSirmans2007} et \textcite{wilhelmsson2008} forment le noyau des études sur la dépréciation du logement et le rôle de l'entretien ; \textcite{smith2004} en donne une lecture spatio-temporelle fine, \textcite{coulsonMcmillen2008} et \textcite{clappGiaccotto1998} en discutent l'identification et l'interprétation, \textcite{clappSalavei2010} y introduisent l'option de redéveloppement, et \textcite{bokhariGeltner2018} étendent l'analyse aux immeubles commerciaux et multirésidentiels. Enfin, le lien entre la part du terrain et la fiabilité de la méthode du coût, qui sous-tend la conversion de la \cref{sec:24:courbes}, est éclairé par \textcite{davisHeathcote2007}. | |
modified
manuscript/chapters/ch26.tex
+570 −1
@@ -1,2 +1,571 @@ | ||
| 1 | 1 | \chapter{Baux et loyers}\label{ch:26} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +L'approche du revenu commence par une lecture de contrats. Avant de projeter un revenu, de le normaliser ou de le capitaliser, l'évaluateur doit savoir ce que chaque bail oblige le locateur à fournir et ce qu'il l'autorise à percevoir, pendant combien de temps et à quelles conditions de renouvellement. Au Québec, cette lecture est gouvernée par un régime d'ordre public que le Code civil réserve au bail de logement : formulaire obligatoire, reconduction de plein droit, avis à délais fixes, fixation du loyer par un tribunal administratif qui ignore la valeur locative de marché, droit au maintien dans les lieux opposable à l'acquéreur. Ce régime fait du loyer contractuel une grandeur distincte du loyer de marché, et de l'écart entre les deux une variable dont la durée, plus que le niveau, détermine la valeur. Le présent chapitre expose le bail de logement tel que l'évaluateur doit le lire, définit les notions de loyer contractuel, de loyer de marché et de loyer économique, construit la méthode d'analyse de l'état locatif, montre comment la reconduction et la fixation façonnent la trajectoire des loyers, et traite de la normalisation des loyers selon les services inclus, de la cession et de la vente de l'immeuble, puis des baux commerciaux des immeubles mixtes. Il prépare les \cref{ch:27,ch:28}, qui transforment l'état locatif en revenu brut effectif puis en revenu net, et le \cref{ch:34}, qui détaille la méthode de fixation du Tribunal administratif du logement. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +\begin{itemize} | |
| 7 | +\item Décrire le bail de logement québécois : champ d'application, formulaire obligatoire, durée, reconduction de plein droit, avis et délais, obligations d'habitabilité, et en citer les articles du Code civil. | |
| 8 | +\item Distinguer le loyer contractuel, le loyer de marché, le loyer effectif et le loyer économique, et savoir lequel entre dans chaque étape de l'approche du revenu. | |
| 9 | +\item Construire et vérifier un état locatif, en calculer les indicateurs synthétiques et repérer les baux qui exigent une analyse particulière. | |
| 10 | +\item Expliquer comment la reconduction, l'avis de modification, la fixation et les restrictions de l'article 1955 déterminent la trajectoire des loyers, et modéliser la convergence vers le marché par la rotation des locataires. | |
| 11 | +\item Calculer la valeur actuelle espérée de l'écart entre loyer contractuel et loyer de marché, logement par logement, et en mesurer la sensibilité à la rotation, à la croissance et au taux d'actualisation. | |
| 12 | +\item Normaliser des loyers qui incluent des services différents en loyers « nus » équivalents, à l'aide d'un exemple chiffré fondé sur la structure tarifaire d'Hydro-Québec. | |
| 13 | +\item Reconnaître les bases d'un bail commercial au rez-de-chaussée d'un immeuble mixte et les raisons pour lesquelles il s'analyse autrement qu'un bail de logement. | |
| 14 | +\end{itemize} | |
| 15 | +\end{objectifs} | |
| 16 | + | |
| 17 | +\section{Le bail de logement au Québec}\label{sec:26:bail} | |
| 18 | + | |
| 19 | +\subsection{Du louage au bail de logement} | |
| 20 | + | |
| 21 | +Le bail est « le contrat par lequel une personne, le locateur, s'engage envers une autre personne, le locataire, à lui procurer, moyennant un loyer, la jouissance d'un bien » pendant un certain temps \parencite[art.~1851]{ccq}. Le locateur est tenu de délivrer le bien en bon état de réparation, d'en procurer la jouissance paisible et d'effectuer toutes les réparations nécessaires, à l'exception des menues réparations d'entretien \parencite[art.~1854 et 1864]{ccq}. Ces deux articles, que le \cref{ch:06} a situés dans l'ensemble du droit des biens, portent déjà la structure comptable de l'approche du revenu : le loyer est la contrepartie d'une jouissance que le locateur doit maintenir à ses frais, et les dépenses d'exploitation comme les dépenses en capital que le \cref{ch:28} impute au propriétaire sont des obligations légales avant d'être des conventions d'évaluation. | |
| 22 | + | |
| 23 | +Le droit commun du louage laisse aux parties une grande liberté. Le bail à durée fixe « cesse de plein droit à l'arrivée du terme » et le bail à durée indéterminée cesse lorsqu'il est résilié par l'une ou l'autre des parties \parencite[art.~1877]{ccq} ; la reconduction d'un bail à durée fixe doit être expresse, sauf pour le bail d'un immeuble, où elle peut être tacite \parencite[art.~1878]{ccq}, et le bail est reconduit tacitement, pour un an ou pour la durée du bail initial si elle était inférieure à un an, lorsque le locataire continue d'occuper les lieux plus de dix jours après l'expiration sans opposition du locateur \parencite[art.~1879]{ccq}. La durée d'un bail ne peut excéder cent ans \parencite[art.~1880]{ccq}. Ce régime général est celui des locaux commerciaux, dont la \cref{sec:26:commercial} donne les bases. | |
| 24 | + | |
| 25 | +Le bail de logement obéit à un régime différent. Les articles 1892 à 2000 du Code civil forment une section d'ordre public : « est sans effet la clause d'un bail de logement » qui y déroge \parencite[art.~1893]{ccq}. Le champ est large. Sont assimilés au bail de logement le bail d'une chambre, celui d'une maison mobile et celui du terrain destiné à la recevoir, et les dispositions de la section régissent aussi les baux relatifs aux services, accessoires et dépendances du logement, de même que les services rattachés à la personne du locataire \parencite[art.~1892]{ccq}. Sont exclus, notamment, le logement loué à des fins de villégiature, le logement dont « plus du tiers de la superficie totale » est utilisé à une autre fin que l'habitation, la chambre d'un établissement hôtelier, la chambre située dans la résidence principale du locateur lorsque deux chambres au plus y sont louées, et la chambre d'un établissement de santé \parencite[art.~1892]{ccq}. Pour l'évaluateur, cette délimitation n'est pas un détail : elle décide quels revenus de l'immeuble sont soumis à la reconduction de plein droit et à la fixation, et lesquels relèvent de la liberté contractuelle. Dans un immeuble mixte, le local du rez-de-chaussée n'est pas un logement ; dans une maison de chambres, chaque chambre en est un. | |
| 26 | + | |
| 27 | +\begin{table}[htbp] | |
| 28 | +\caption{Dispositions du Code civil du Québec qui gouvernent la lecture d'un état locatif (sélection ; texte à jour au 15 octobre 2026)}\label{tab:26:dispositions} | |
| 29 | +\centering | |
| 30 | +\footnotesize | |
| 31 | +\begin{tabularx}{\textwidth}{lYY} | |
| 32 | +\toprule | |
| 33 | +Article & Règle & Conséquence pour l'évaluateur \\ | |
| 34 | +\midrule | |
| 35 | +1851, 1854, 1864 & Définition du bail ; délivrance, jouissance paisible, réparations nécessaires à la charge du locateur & Le loyer rémunère une jouissance que le locateur entretient ; fondement des dépenses d'exploitation et du CAPEX \\ | |
| 36 | +1892--1893 & Champ du bail de logement et ordre public & Détermine quels revenus sont encadrés ; les clauses contraires n'ont aucune valeur \\ | |
| 37 | +1895--1896 & Formulaire obligatoire ; avis du loyer le plus bas des douze mois précédents (section G) ; dommages-intérêts punitifs en cas de fausse déclaration & Le loyer précédent est connu du nouveau locataire, qui peut demander la fixation (1950) \\ | |
| 38 | +1904, 1906 & Pas de dépôt ni de chèques postdatés ; pas de réajustement dans un bail de douze mois ou moins & Aucun dépôt de garantie n'entre dans l'analyse ; indexation au plus annuelle \\ | |
| 39 | +1910, 1912--1913 & Bon état d'habitabilité ; normes de salubrité et de sécurité & Les travaux de mise aux normes sont une obligation, non une amélioration \\ | |
| 40 | +1936--1937 & Droit au maintien dans les lieux ; l'aliénation de l'immeuble ne permet pas de résilier le bail & L'acquéreur achète les baux : les loyers en place sont la base du revenu immédiat \\ | |
| 41 | +1941--1947 & Reconduction de plein droit ; avis de modification de trois à six mois avant le terme ; refus dans le mois ; demande de fixation dans le mois du refus & Mécanique annuelle qui borne la trajectoire des loyers en place \\ | |
| 42 | +1950, 1952--1953 & Fixation à la demande du nouveau locataire (dix jours) ; fixation selon les normes réglementaires, au plus douze mois & Le loyer de relocation peut être révisé ; le loyer fixé n'est pas le loyer de marché \\ | |
| 43 | +1955 & Exclusion de la fixation pendant cinq ans (immeuble neuf, changement d'affectation, coopérative) si le bail le prévoit et indique le loyer maximal & Trajectoire bornée par le loyer maximal inscrit au bail \\ | |
| 44 | +1957--1970 & Reprise et éviction : avis six mois avant le terme, motifs, protection des aînés (1959.1), indemnité (1965), autorisation du tribunal & Déterminants de la rotation ; aucune stratégie de repositionnement rapide dans la valeur marchande \\ | |
| 45 | +1870--1873, 1978.1--1978.4 & Cession et sous-location ; refus possible sans motif sérieux, bail alors résilié ; aucune contrepartie pour le cédant & La cession ne transmet plus les loyers bas ; accélère le retour au marché au départ du locataire \\ | |
| 46 | +\bottomrule | |
| 47 | +\end{tabularx} | |
| 48 | +\tabsource{\parencite{ccq}, LégisQuébec, consulté le 31 octobre 2026 ; matrice \texttt{sources/normes-A.csv} (NRM-A-070 à NRM-A-093) ; modifications de 2024 \parencite{loi31_2024,loi65_2024} et de 2026 \parencite{loi111_2026}.} | |
| 49 | +\end{table} | |
| 50 | + | |
| 51 | +\subsection{Le formulaire obligatoire et le contenu du bail} | |
| 52 | + | |
| 53 | +Le bail d'un logement doit être fait sur le formulaire dont l'utilisation est rendue obligatoire par règlement, et le locateur doit en remettre un exemplaire au locataire dans les dix jours de la conclusion ; en cas de bail verbal, il doit remettre un écrit qui en reproduit les mentions prescrites et qui fait partie du bail \parencite[art.~1895]{ccq}. Le règlement qui prescrit ces formulaires, pris sous la Loi sur le Tribunal administratif du logement, en distingue plusieurs selon le type de logement, prévoit une annexe pour les services offerts au locataire, fixe à \dollars{2.99} le prix de détail maximal du formulaire et autorise l'usage des anciens formulaires pendant un an à compter du 1\ier{} janvier 2026 \parencite{reglFormulairesBail}. Le formulaire est le document que l'évaluateur lit en premier. Il contient le loyer et sa périodicité, la durée du bail, la liste des services, accessoires et dépendances inclus dans le loyer, les restrictions au droit à la fixation du loyer lorsque l'article 1955 s'applique, et l'avis au nouveau locataire du loyer le plus bas payé au cours des douze mois précédents. | |
| 54 | + | |
| 55 | +Cet avis mérite une attention particulière. Le locateur doit, lors de la conclusion du bail, remettre au nouveau locataire « un avis indiquant le loyer le plus bas payé au cours des 12 mois précédant le début du bail ou, le cas échéant, le loyer fixé par le tribunal au cours de la même période » ; si aucun loyer n'a été payé pendant ces douze mois, l'avis indique le dernier loyer payé et sa date \parencite[art.~1896]{ccq}. Depuis le 21 février 2024, une fausse déclaration ou l'omission délibérée de remettre l'avis expose le locateur à des dommages-intérêts punitifs \parencite[art.~1896, mod.\ 2024, c.~2, a.~3]{ccq,loi31_2024}. Cette obligation est l'articulation entre la relocation et la fixation : le nouveau locataire qui paie plus que le loyer le moins élevé des douze mois précédents peut demander au tribunal de fixer le loyer dans les dix jours de la conclusion du bail, ou dans les deux mois s'il n'a pas reçu l'avis \parencite[art.~1950]{ccq}. En pratique, les usagers appellent « section G » la partie du formulaire qui porte cet avis ; la désignation est d'usage, les annexes du règlement n'étant pas reproduites par LégisQuébec, et le Tribunal lui-même s'y réfère dans ses résumés de décisions, où il relève par exemple qu'une section G non remplie prive le locataire de l'information qui fonde son recours \parencite{talResumesDecisions}. | |
| 56 | + | |
| 57 | +Deux autres règles touchent directement les flux de trésorerie. Le locateur ne peut exiger que chaque versement excède un mois de loyer, ne peut exiger d'avance que le paiement du premier terme, et ne peut exiger « une somme d'argent autre que le loyer, sous forme de dépôt ou autrement », ni la remise de chèques postdatés \parencite[art.~1904]{ccq}. Il n'existe donc pas, au Québec, de dépôt de garantie à inscrire au passif ou à l'actif de l'exploitation, contrairement à la pratique de la plupart des provinces canadiennes et des États américains ; l'analyse des revenus ne comporte aucun poste de dépôts et la couverture des mauvaises créances passe entièrement par la provision pour pertes du \cref{ch:27}. Par ailleurs, la clause stipulant le réajustement du loyer en cours de bail est sans effet dans un bail à durée fixe de douze mois ou moins et, dans un bail plus long, elle ne peut jouer ni pendant les douze premiers mois ni plus d'une fois par période de douze mois \parencite[art.~1906]{ccq}. Les baux pluriannuels de logements, rares, ne peuvent donc être indexés qu'annuellement. | |
| 58 | + | |
| 59 | +\subsection{Durée, reconduction et calendrier} | |
| 60 | + | |
| 61 | +Le bail de logement est le plus souvent un bail à durée fixe de douze mois. Pour le locataire qui a droit au maintien dans les lieux, il se reconduit de plein droit à son terme « aux mêmes conditions et pour la même durée ou, si la durée du bail initial excède 12 mois, pour une durée de 12 mois », les parties pouvant convenir d'un terme différent \parencite[art.~1941]{ccq}. Le locateur peut modifier les conditions du bail lors de la reconduction, notamment la durée et le loyer, mais seulement par un avis donné « au moins trois mois, mais pas plus de six mois, avant l'arrivée du terme » ; le délai est d'un à deux mois si le bail est de moins de douze mois ou à durée indéterminée, et de dix à vingt jours pour une chambre \parencite[art.~1942]{ccq}. L'avis doit informer le locataire de ses droits, contenir les mentions prescrites par règlement, et indiquer le nouveau loyer en dollars ou l'augmentation en dollars ou en pourcentage \parencite[art.~1943]{ccq}. Le locataire qui refuse doit en aviser le locateur dans le mois de la réception de l'avis, faute de quoi il est réputé avoir accepté ; s'il refuse, il demeure dans les lieux, sauf pour un logement visé à l'article 1955, auquel cas il doit quitter à la fin du bail \parencite[art.~1945]{ccq}. Le locateur dispose alors d'un mois à compter du refus pour demander au tribunal de fixer le loyer ; s'il ne le fait pas, « le bail est reconduit de plein droit aux conditions antérieures » \parencite[art.~1947]{ccq}. | |
| 62 | + | |
| 63 | +\begin{table}[htbp] | |
| 64 | +\caption{Délais légaux attachés au bail de logement selon la durée du bail (Code civil du Québec, à jour au 15 octobre 2026)}\label{tab:26:delais} | |
| 65 | +\centering | |
| 66 | +\footnotesize | |
| 67 | +\begin{tabularx}{\textwidth}{lYYY} | |
| 68 | +\toprule | |
| 69 | +Acte & Bail de 12 mois ou plus & Bail de moins de 12 mois ou à durée indéterminée & Chambre \\ | |
| 70 | +\midrule | |
| 71 | +Avis de modification du bail (art.~1942) & 3 à 6 mois avant le terme & 1 à 2 mois avant le terme & 10 à 20 jours \\ | |
| 72 | +Réponse du locataire à l'avis de modification (art.~1945) & 1 mois de la réception & 1 mois & 1 mois \\ | |
| 73 | +Demande de fixation par le locateur (art.~1947) & 1 mois du refus & 1 mois & 1 mois \\ | |
| 74 | +Avis de reprise ou d'éviction (art.~1960) & 6 mois avant le terme & 6 mois (1 mois si bail de 6 mois ou moins) ; 6 mois avant la date de reprise pour un bail à durée indéterminée & idem \\ | |
| 75 | +Réponse du locataire à l'avis de reprise ou d'éviction (art.~1962) & 1 mois ; le silence vaut refus & 1 mois & 1 mois \\ | |
| 76 | +Demande d'autorisation au tribunal (art.~1963) & 1 mois du refus & 1 mois & 1 mois \\ | |
| 77 | +Fixation demandée par le nouveau locataire (art.~1950) & 10 jours de la conclusion ; 2 mois du début du bail sans avis & idem & idem \\ | |
| 78 | +Réponse du locateur à un avis de cession ou de sous-location (art.~1871) & 15 jours & 15 jours & 15 jours \\ | |
| 79 | +\bottomrule | |
| 80 | +\end{tabularx} | |
| 81 | +\tabsource{\parencite{ccq}, art.~1871, 1942, 1945, 1947, 1950, 1960, 1962, 1963, LégisQuébec, consulté le 31 octobre 2026.} | |
| 82 | +\end{table} | |
| 83 | + | |
| 84 | +La \cref{fig:26:chronologie} traduit ces règles en calendrier pour le bail type des immeubles du cas 3, qui court du 1\ier{} juillet 2026 au 30 juin 2027. L'avis de modification doit être reçu entre le 30 décembre 2026 et le 30 mars 2027, le locataire a jusqu'au 30 avril pour refuser si l'avis a été donné au dernier jour permis, et le locateur jusqu'au 30 mai pour saisir le tribunal ; l'avis de reprise ou d'éviction doit, lui, être donné au plus tard le 30 décembre 2026. Si le logement est reloué le 1\ier{} juillet 2027, le nouveau locataire peut demander la fixation jusqu'au 11 juillet, ou jusqu'au 1\ier{} septembre s'il n'a pas reçu l'avis de l'article 1896. Ces dates sont calculées par le script \texttt{analysis/python/cases/ch26\_etat\_locatif.py} en décomptant des mois civils à partir du terme ; le Tribunal présente habituellement la fenêtre d'avis d'un bail du 1\ier{} juillet comme courant du 1\ier{} janvier au 31 mars, convention que l'évaluateur retrouvera dans la pratique et qui ne change rien à l'analyse. | |
| 85 | + | |
| 86 | +\begin{figure}[htbp] | |
| 87 | +\centering | |
| 88 | +\begin{tikzpicture}[x=9.2mm, y=1mm, font=\sffamily\scriptsize, | |
| 89 | + evt/.style={draw=brandPrimary, fill=brandLight, rounded corners=1pt, align=center, inner sep=2.2pt, text width=21mm}, | |
| 90 | + evtb/.style={evt, draw=brandSecondary, fill=white}, | |
| 91 | + tick/.style={brandDark, thick}] | |
| 92 | + % axe du temps : juillet 2026 (x=0) → septembre 2027 (x=14) | |
| 93 | + \draw[-{Stealth[length=2.2mm]}, very thick, brandDark] (0,0) -- (14.6,0); | |
| 94 | + \foreach \i/\m in {0/juil.,1/août,2/sept.,3/oct.,4/nov.,5/déc.,6/janv.,7/févr.,8/mars,9/avr.,10/mai,11/juin,12/juil.,13/août,14/sept.}{ | |
| 95 | + \draw[tick] (\i,0) -- (\i,-2); \node[below=1pt, text=brandGray] at (\i,-2) {\m};} | |
| 96 | + \node[below=9pt, text=brandGray] at (2.5,-2) {2026}; \node[below=9pt, text=brandGray] at (9,-2) {2027}; | |
| 97 | + % fenêtre d'avis de modification (30 déc. → 30 mars) : art. 1942 | |
| 98 | + \fill[brandSecondary, opacity=0.25] (5.97,0) rectangle (8.97,8); | |
| 99 | + \node[evtb, above=22mm of {(7.5,0)}, anchor=south] (avis) {Avis de modification\\ du loyer (art.~1942)\\ 30 déc.~2026 → 30 mars 2027}; | |
| 100 | + \draw[brandSecondary] (avis.south) -- (7.47,8); | |
| 101 | + % début du bail | |
| 102 | + \draw[tick] (0,0) -- (0,8); \node[evt, above=9mm of {(0,0)}, anchor=south] (deb) {Début du bail\\ 1\ier{} juillet 2026}; | |
| 103 | + \draw[brandPrimary] (deb.south) -- (0,8); | |
| 104 | + % avis reprise / éviction au plus tard 30 déc. | |
| 105 | + \draw[tick] (5.97,0) -- (5.97,8); | |
| 106 | + \node[evt, above=9mm of {(4.2,0)}, anchor=south, text width=24mm] (rep) {Dernier jour pour l'avis de reprise ou d'éviction (art.~1960)\\ 30 déc.~2026}; | |
| 107 | + \draw[brandPrimary] (rep.south) -- (5.9,8); | |
| 108 | + % réponse du locataire et demande TAL | |
| 109 | + \draw[tick] (9.97,0) -- (9.97,8); \draw[tick] (10.97,0) -- (10.97,8); | |
| 110 | + \node[evt, above=9mm of {(10.0,0)}, anchor=south, text width=20mm] (rep2) {Refus du locataire\\ au plus tard\\ 30 avr.~(art.~1945)}; | |
| 111 | + \draw[brandPrimary] (rep2.south) -- (9.97,8); | |
| 112 | + \node[evt, above=22mm of {(11.6,0)}, anchor=south, text width=20mm] (tal) {Demande de fixation\\ au TAL au plus tard\\ 30 mai (art.~1947)}; | |
| 113 | + \draw[brandPrimary] (tal.south) -- (10.97,8); | |
| 114 | + % échéance et nouveau bail | |
| 115 | + \draw[tick] (12,0) -- (12,8); | |
| 116 | + \node[evt, above=9mm of {(13.3,0)}, anchor=south, text width=23mm] (fin) {Terme : 30 juin 2027\\ reconduction (art.~1941)\\ ou nouveau bail 1\ier{} juillet}; | |
| 117 | + \draw[brandPrimary] (fin.south) -- (12.05,8); | |
| 118 | + % nouveau locataire | |
| 119 | + \draw[tick] (12.33,0) -- (12.33,4); \draw[tick] (14,0) -- (14,4); | |
| 120 | + \node[evtb, below=14mm of {(13.2,0)}, anchor=north, text width=30mm] (nl) {Nouveau locataire : demande de fixation dans les 10 jours (11 juillet) ou dans les 2 mois sans avis du loyer précédent (1\ier{} sept.) — art.~1950}; | |
| 121 | + \draw[brandSecondary] (nl.north) -- (12.33,-3.5); \draw[brandSecondary] (nl.north) -- (14,-3.5); | |
| 122 | +\end{tikzpicture} | |
| 123 | +\caption{Chronologie des avis pour un bail de logement de douze mois courant du 1\ier{} juillet 2026 au 30 juin 2027 : fenêtre de l'avis de modification, date limite de l'avis de reprise ou d'éviction, délais de réponse du locataire et de saisine du Tribunal, puis délais ouverts au nouveau locataire. Les dates sont décomptées en mois civils à partir du terme.}\label{fig:26:chronologie} | |
| 124 | +\figsource{Code civil du Québec, art.~1941, 1942, 1945, 1947, 1950, 1960 \parencite{ccq}, consulté le 31 octobre 2026 ; dates calculées par \texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{calendrier}) ; schéma TikZ.} | |
| 125 | +\end{figure} | |
| 126 | + | |
| 127 | +\begin{quebec}[Le 1\ier{} juillet et la synchronisation des baux] | |
| 128 | +La concentration des échéances au 30 juin, qui fait du 1\ier{} juillet la journée du déménagement au Québec, n'est pas prescrite par le Code civil actuel : elle est l'héritage d'une date légale de fin des baux, longtemps fixée au 1\ier{} mai sous le régime seigneurial puis déplacée, et de la loi de 1973 qui a aboli la date légale tout en prolongeant les baux en cours jusqu'au 30 juin 1974, après quoi l'habitude s'est maintenue par reconduction \parencite{patterson2024demenagement}. Pour l'évaluateur, cette synchronisation a trois conséquences. Les douze baux du cas 3 échoient le même jour, de sorte que la fenêtre d'avis, les refus et les demandes de fixation se concentrent sur un seul trimestre et que la vacance de relocation se produit presque toujours en juillet. Les loyers demandés que l'on observe sur le marché sont, pour l'essentiel, des loyers de baux du 1\ier{} juillet, ce qui facilite la comparaison à une même date mais rend les observations rares le reste de l'année. Et l'ancienneté d'un locataire se compte en nombre entier de reconductions, ce qui justifie la convention adoptée dans l'état locatif du cas 3, où l'ancienneté est la différence entre l'année d'évaluation et l'année d'entrée dans les lieux. Source secondaire pour l'historique ; texte du Code consulté le 31 octobre 2026. | |
| 129 | +\end{quebec} | |
| 130 | + | |
| 131 | +\subsection{Habitabilité, salubrité et obligations du locateur} | |
| 132 | + | |
| 133 | +Le locateur « est tenu de délivrer un logement en bon état d'habitabilité ; il est aussi tenu de le maintenir ainsi pendant toute la durée du bail », et toute clause contraire est sans effet \parencite[art.~1910]{ccq}. Le manquement aux obligations imposées par la loi relativement à la sécurité et à la salubrité d'un logement constitue un manquement aux obligations du bail, et il est interdit de louer un logement impropre à l'habitation \parencite[art.~1912 et 1913]{ccq}. Ces dispositions tracent une frontière que l'analyse des dépenses du \cref{ch:28} doit respecter : les travaux qui rétablissent l'habitabilité ou la conformité aux normes de salubrité ne sont pas des améliorations dont le locateur pourrait attendre une hausse de loyer discrétionnaire, mais l'exécution d'une obligation ; en fixation, le Règlement sur les critères de fixation de loyer les traite néanmoins comme des dépenses d'immobilisation lorsqu'il s'agit de réparations majeures, et le \cref{ch:34} en discute le rendement réglementaire de cinq pour cent \parencite[art.~3, par.~5\textsuperscript{o}]{reglCriteresFixation}. L'évaluateur qui relève, à l'inspection, un logement dont l'état contreviendrait à l'article 1912 doit en tirer deux conséquences : une dépense à venir et un risque de réduction de loyer ou de résiliation, que le Code ouvre au locataire. | |
| 134 | + | |
| 135 | +\section{Loyer contractuel, loyer de marché et loyer économique}\label{sec:26:notions} | |
| 136 | + | |
| 137 | +\subsection{Trois grandeurs distinctes} | |
| 138 | + | |
| 139 | +Le vocabulaire des loyers est source de confusions que l'approche du revenu ne tolère pas, parce que chacune de ses étapes appelle une grandeur précise. Les définitions suivantes sont celles de l'ouvrage ; elles correspondent aux notions de \emph{contract rent}, \emph{market rent} et \emph{effective rent} de la littérature nord-américaine \parencite{appraisal2026,fisherMartin2007}, et précisent le sens que nous donnons à l'expression ambiguë de loyer économique. | |
| 140 | + | |
| 141 | +\begin{definition}{Loyer contractuel, loyer de marché, loyer effectif}{loyers} | |
| 142 | +Le \motcle{loyer contractuel} $L^c_j$ d'un logement $j$ est le loyer que le bail en vigueur oblige le locataire à payer à la date d'évaluation, services inclus tels que le bail les définit. Le \terme{loyer de marché}{market rent} $L^m_j$ est le loyer le plus probable qu'un nouveau bail du même logement, conclu à la date d'évaluation entre un locateur et un locataire prudents, informés et sans lien entre eux, stipulerait pour les mêmes services, après une mise en marché d'une durée raisonnable. Le \terme{loyer effectif}{effective rent} est le loyer contractuel corrigé des concessions consenties au locataire, gratuités, rabais temporaires ou biens remis, étalées sur la durée du bail. L'\motcle{écart contractuel} du logement $j$ et son \motcle{ratio contractuel} sont | |
| 143 | +\begin{equation}\label{eq:26:ecart} | |
| 144 | +\Delta_j = L^m_j - L^c_j, \qquad \kappa_j = \frac{L^c_j}{L^m_j}, | |
| 145 | +\end{equation} | |
| 146 | +un écart positif signalant un loyer inférieur au marché. | |
| 147 | +\end{definition} | |
| 148 | + | |
| 149 | +Le loyer contractuel est une donnée ; il se lit au bail et se vérifie aux encaissements. Le loyer de marché est une estimation ; il se construit par comparaison avec les loyers de baux récents de logements semblables, par les moyennes publiées par la Société canadienne d'hypothèques et de logement pour la zone, le nombre de chambres, l'année de construction et la taille de l'immeuble \parencite{schlLocatif2025,schlrmltables2025}, et par les loyers demandés dans les annonces, corrigés de l'écart habituel entre loyer demandé et loyer conclu. La définition exige « les mêmes services » : un loyer de marché chauffé-éclairé n'est pas comparable à un loyer contractuel nu, et la \cref{sec:26:normalisation} règle cette difficulté. Elle exige aussi « un nouveau bail » : le loyer de marché est celui d'une relocation, non celui qu'un locataire en place accepterait, et c'est précisément parce que le régime du bail de logement empêche d'imposer au locataire en place le loyer d'une relocation que l'écart \eqref{eq:26:ecart} persiste. | |
| 150 | + | |
| 151 | +Le loyer effectif importe surtout pour les immeubles récents et les grands ensembles, où les concessions sont fréquentes dans les marchés détendus : un mois gratuit sur un bail de douze mois à \dollars{1800} équivaut à un loyer effectif de \dollars{1650}, et c'est ce dernier qui mesure le marché. Si un bail de $n$ mois au loyer nominal $L$ comporte des concessions d'une valeur totale $C$, | |
| 152 | +\begin{equation}\label{eq:26:effectif} | |
| 153 | +L^{\text{eff}} = \frac{n\,L - C}{n}, | |
| 154 | +\end{equation} | |
| 155 | +sans actualisation lorsque la durée est courte ; sur un bail commercial de plusieurs années, les concessions s'actualisent (\cref{sec:26:commercial}). Au Québec, l'interdiction du dépôt et la rareté des baux pluriannuels de logements limitent les formes que prennent les concessions ; elles se concentrent sur les gratuités de premier mois, les stationnements offerts et les électroménagers fournis, que l'évaluateur relève dans les annonces et interroge auprès des gestionnaires. | |
| 156 | + | |
| 157 | +\subsection{Le loyer économique} | |
| 158 | + | |
| 159 | +L'expression \motcle{loyer économique} a reçu plusieurs sens. En économie classique, la rente économique est le surplus qu'un facteur reçoit au-delà de son coût d'opportunité, notion que le \cref{ch:05} a appliquée au sol ; dans la littérature d'évaluation plus ancienne, « economic rent » a servi de synonyme à loyer de marché, usage que le dictionnaire de l'Appraisal Institute juge désormais désuet \parencite{aiDictionary2022}. Nous réservons le terme à une troisième notion, utile à l'analyse de faisabilité et à la lecture critique d'un état locatif : le loyer qui, compte tenu des dépenses d'exploitation normalisées, de la réserve de remplacement, des autres revenus et de l'inoccupation, procure au capital investi le rendement que le marché exige. | |
| 160 | + | |
| 161 | +\begin{definition}{Loyer économique}{economique} | |
| 162 | +Le \terme{loyer économique}{feasibility rent} d'un immeuble de $N$ logements est le loyer mensuel moyen $L^e$ tel que le revenu net d'exploitation après réserve rémunère une valeur de référence $V$ au taux global $R$ du marché. Avec des dépenses hors gestion $DE_{\text{hg}}$, une réserve $RR$, des autres revenus $A$, une gestion imputée à la fraction $m$ du revenu brut effectif et une provision $v$ pour inoccupation et mauvaises créances, | |
| 163 | +\begin{equation}\label{eq:26:economique} | |
| 164 | +\NOI^{*} = R\,V, \qquad RBE^{*} = \frac{\NOI^{*} + DE_{\text{hg}} + RR}{1 - m}, \qquad RBP^{*} = \frac{RBE^{*} - A}{1 - v}, \qquad L^e = \frac{RBP^{*}}{12\,N}. | |
| 165 | +\end{equation} | |
| 166 | +\end{definition} | |
| 167 | + | |
| 168 | +La valeur de référence $V$ est le coût de production pour un projet neuf, le prix payé ou envisagé pour une acquisition, la valeur au rôle lorsqu'on veut mesurer ce que le rôle suppose. Le loyer économique n'est pas le loyer de marché : il peut lui être supérieur, auquel cas le projet n'est pas faisable ou l'acquisition est trop chère, ou inférieur, auquel cas l'immeuble dégage une rente. Appliqué à une valeur obtenue par capitalisation directe du revenu net contractuel, il redonne exactement le loyer contractuel, puisque la chaîne \eqref{eq:26:economique} est alors parcourue à l'envers ; cette identité, vérifiée par le test du chapitre, rappelle que le loyer économique n'apporte d'information que si $V$ vient d'ailleurs que du revenu lui-même. La \cref{sec:26:exemple} le calcule pour le cas 3 sur la valeur au rôle. | |
| 169 | + | |
| 170 | +\subsection{Quelle grandeur à quelle étape} | |
| 171 | + | |
| 172 | +Le revenu brut potentiel de l'approche du revenu se construit, pour les logements occupés, à partir des loyers contractuels, et pour les logements vacants ou occupés par le propriétaire, à partir des loyers de marché ; le \cref{ch:27} en fait la règle de base et discute l'inoccupation. Le loyer de marché intervient ensuite trois fois : pour mesurer l'écart contractuel et sa valeur actuelle, qui distinguent le droit du locateur de la pleine propriété (\cref{ch:02}) ; pour projeter les loyers des logements qui seront reloués au cours de l'horizon de projection (\cref{ch:30}) ; et pour estimer les loyers des logements comparables lorsque l'on extrait des taux de capitalisation ou des multiplicateurs à partir de ventes (\cref{ch:29}). Le loyer effectif remplace le loyer contractuel partout où des concessions existent. Le loyer économique ne sert ni au revenu ni à la capitalisation : il sert au jugement, en disant si le niveau des loyers en place ou au marché est compatible avec le prix que l'on s'apprête à payer ou avec le coût de construire. Confondre ces grandeurs produit les erreurs les plus coûteuses de l'approche du revenu, celles que le \cref{ch:29} a appelées « capitaliser le marché avec des baux en place » et que l'encadré des erreurs fréquentes reprend. | |
| 173 | + | |
| 174 | +\section{L'analyse de l'état locatif}\label{sec:26:etat} | |
| 175 | + | |
| 176 | +\subsection{Ce que contient un état locatif et comment le vérifier} | |
| 177 | + | |
| 178 | +\begin{definition}{État locatif}{etat-locatif} | |
| 179 | +L'\terme{état locatif}{rent roll} est le tableau qui recense, à une date donnée, chaque unité louable de l'immeuble avec son type, sa superficie, le nom ou le numéro du bail, la date d'entrée du locataire, le terme du bail en cours, le loyer contractuel et sa périodicité, les services, accessoires et dépendances inclus, le stationnement et les rangements attribués, les avis de modification transmis et les réponses reçues, les demandes pendantes devant le Tribunal administratif du logement, les arriérés et les ententes de paiement, et, pour les unités vacantes ou occupées par le propriétaire, le loyer demandé ou estimé. Il est complété par l'estimation du loyer de marché de chaque unité. | |
| 180 | +\end{definition} | |
| 181 | + | |
| 182 | +L'état locatif que remet le vendeur ou le gestionnaire est une déclaration, non une preuve. L'évaluateur le confronte aux baux signés, dont il lit le formulaire et les annexes, aux relevés bancaires ou au grand livre des encaissements des douze derniers mois, aux avis de modification et aux décisions du Tribunal, et, lorsque le locateur a déposé une demande de fixation, au formulaire de renseignements nécessaires qu'il a dû produire dans les quatre-vingt-dix jours \parencite[art.~56.3]{loiTAL}, dont les lignes de revenus donnent les loyers de décembre multipliés par douze et distinguent les locaux non résidentiels \parencite{talFormulaireRN2026}. Pour un immeuble de moins de cinq logements vendu par un particulier, le formulaire obligatoire de déclarations du vendeur de l'Organisme d'autoréglementation du courtage immobilier du Québec recueille les loyers annuels, les avis reçus et les dossiers devant le Tribunal \parencite{oaciqFormulaireDV,oaciqContexteDV} ; pour un immeuble plus grand, aucune déclaration normalisée n'existe et l'évaluateur doit obtenir lui-même ces renseignements, comme le dossier du \cref{ch:47} le signale. | |
| 183 | + | |
| 184 | +\begin{pratique}[Lecture critique d'un état locatif] | |
| 185 | +Six situations appellent un traitement particulier. Un \emph{loyer de faveur}, consenti à un parent, à un allié ou à un employé du locateur, ne mesure ni le marché ni le revenu durable ; le Règlement sur les critères de fixation de loyer prévoit d'ailleurs que le tribunal fixe alors le loyer d'après les logements comparables \parencite[art.~1 et 6]{reglCriteresFixation}. Un \emph{logement occupé par le propriétaire} ou par un concierge entre au revenu potentiel à son loyer de marché, avec en contrepartie la rémunération du concierge en dépense. Un \emph{logement vacant} y entre au loyer de marché, non au loyer demandé si celui-ci est manifestement hors marché. Un \emph{bail dont l'avis de modification a été refusé} et qui fait l'objet d'une demande de fixation a un loyer provisoire : l'analyse retient le loyer en vigueur et traite l'issue en scénario. Un \emph{bail comportant la clause de l'article 1955} a une trajectoire bornée par le loyer maximal indiqué. Enfin, les \emph{services inclus} diffèrent souvent d'un bail à l'autre dans un même immeuble, le chauffage étant inclus dans les baux anciens et exclu des récents ; la normalisation de la \cref{sec:26:normalisation} s'impose avant toute comparaison. | |
| 186 | +\end{pratique} | |
| 187 | + | |
| 188 | +\subsection{Indicateurs synthétiques} | |
| 189 | + | |
| 190 | +Un état locatif de douze lignes se lit d'un coup d'\oe il ; un état de cent vingt lignes exige des indicateurs. Quatre d'entre eux résument la position des loyers en place par rapport au marché. L'\motcle{écart moyen pondéré} rapporte la somme des écarts à la somme des loyers de marché, | |
| 191 | +\begin{equation}\label{eq:26:ecart-pondere} | |
| 192 | +\bar\delta = \frac{\sum_j (L^m_j - L^c_j)}{\sum_j L^m_j} = 1 - \bar\kappa, \qquad \bar\kappa = \frac{\sum_j L^c_j}{\sum_j L^m_j}, | |
| 193 | +\end{equation} | |
| 194 | +et mesure la part du revenu potentiel de marché que les baux en place laissent sur la table ; il diffère de la moyenne simple des ratios $\kappa_j$ lorsque les écarts se concentrent sur les grands ou sur les petits logements. La \motcle{part des baux sous le marché} au seuil $s$ compte les logements dont le ratio est inférieur à $1 - s$, | |
| 195 | +\begin{equation}\label{eq:26:part-sous-marche} | |
| 196 | +\pi(s) = \frac{1}{N}\sum_{j=1}^{N} \mathbf{1}\!\left[\kappa_j < 1 - s\right], | |
| 197 | +\end{equation} | |
| 198 | +et se lit à plusieurs seuils, cinq, dix et vingt pour cent par exemple, pour distinguer un retard diffus d'un retard concentré sur quelques baux anciens. La \motcle{concentration de l'écart} est la part de l'écart total portée par les trois baux les plus éloignés du marché ; lorsqu'elle est élevée, la valeur de l'écart dépend du comportement de quelques locataires, et l'analyse de la rotation doit être individuelle. L'\motcle{ancienneté} des locataires, moyenne, médiane et maximale, complète le tableau, parce qu'elle est à la fois la cause du retard, par l'accumulation des reconductions, et un indice de la probabilité de départ, les locataires anciens à loyer bas ayant le plus à perdre à déménager. Le loyer au mètre carré, contractuel et de marché, permet enfin de comparer des logements de tailles différentes et de repérer les unités dont le loyer de marché estimé est hors de la fourchette des autres. | |
| 199 | + | |
| 200 | +Les données publiques fournissent des points de repère pour interpréter ces indicateurs. Dans la région métropolitaine de Montréal, le loyer moyen des appartements d'initiative privée de deux chambres atteignait \dollars{1346} en octobre 2025, en hausse de \pct{7.2} sur un an, et le loyer moyen de l'ensemble des appartements \dollars{1290}, en hausse de \pct{7.4} ; dans la zone Rosemont, le loyer moyen de deux chambres était de \dollars{1348} \parencite{schlLocatif2025,schlrmltables2025}. Dans le même temps, le pourcentage de base applicable à la fixation des loyers pour 2026 est de \pct{3.1}, après \pct{4.5} pour 2025 \parencite{talIndices2026,talCommunique2026}, et le Tribunal indiquait avoir accordé en moyenne \pct{3.8} d'ajustement de 2015 à 2024 \parencite{talCommunique2025}. Lorsque les loyers de marché croissent de sept pour cent et les loyers en place de trois à quatre, l'écart d'un bail reconduit s'élargit d'environ trois points par an, et un locataire de dix ans peut se trouver vingt à trente pour cent sous le marché sans qu'aucune des parties n'ait rien fait d'inhabituel. Ce mécanisme est la signature des régimes de contrôle des loyers dits de deuxième génération, qui encadrent la hausse des baux en cours sans fixer le loyer des nouvelles locations \parencite{arnott1995}, et la littérature empirique en documente la conséquence prévisible, une dispersion croissante des loyers entre locataires anciens et récents pour des logements semblables \parencite{kholodilin2024,glaeserLuttmer2003}. | |
| 201 | + | |
| 202 | +\subsection{L'état locatif du cas 3} | |
| 203 | + | |
| 204 | +\begin{synthetique} | |
| 205 | +L'immeuble de douze logements du cas 3 est fictif. Son état locatif (\texttt{data/synthetic/cas3\_montreal\_etat\_locatif.csv}) et ses hypothèses de projection (\texttt{cas3\_montreal\_hypotheses\_dcf.json}) ont été générés par \texttt{analysis/python/traite/synth.py} avec la graine 20261031 selon les lois déclarées dans \texttt{data/synthetic/README.md} : les loyers de marché sont calibrés sur les loyers moyens de la zone Rosemont publiés par la SCHL pour octobre 2025 \parencite{schlLocatif2025}, et les loyers contractuels suivent la loi « loyer de marché $\times\ 0{,}98^{\text{ancienneté}}$ ». Tous les chiffres des \cref{sec:26:etat,sec:26:reconduction,sec:26:normalisation,sec:26:exemple,sec:26:sensibilite} sont produits par \texttt{analysis/python/cases/ch26\_etat\_locatif.py}, qui obtient les revenus du module partagé \texttt{traite.cas3} (fonctions \texttt{charger} et \texttt{revenus}) : le revenu brut potentiel contractuel de \dollars{165540}, le revenu au marché de \dollars{186036} et l'écart de \dollars{20496} sont ceux des \cref{ch:02,ch:27,ch:29,ch:30,ch:47}. Le triplex du cas 2 (\texttt{cas2\_quebec\_loyers.csv}, module \texttt{traite.cas2}) est fictif au même titre. Le profil de consommation d'électricité de la \cref{sec:26:normalisation} et le loyer du comparable chauffé-éclairé sont des hypothèses de travail déclarées, non des statistiques. | |
| 206 | +\end{synthetique} | |
| 207 | + | |
| 208 | +Le \cref{tab:26:etat} présente l'état locatif du cas 3 au 1\ier{} septembre 2026 sous l'angle qui intéresse ce chapitre : l'ancienneté, l'écart et l'échéance. Le \cref{ch:47} en a donné la lecture complète dans le dossier du cas et nous n'y revenons pas ; la \cref{fig:26:contrat-marche} range les logements du bail le plus récent au plus ancien et fait apparaître la structure de l'écart. Les douze baux échoient le 30 juin 2027, dans 9,9 mois ; aucun n'inclut le chauffage ; six comportent un stationnement. Les trois indicateurs synthétiques du \cref{tab:26:indicateurs} disent l'essentiel. L'écart moyen pondéré est de \pct{11.0}, soit un ratio contractuel de \num{0.890}, légèrement supérieur à la moyenne simple des ratios, \num{0.884}, parce que les deux baux les plus en retard sont des 3½ dont le loyer de marché est bas. Huit logements sur douze sont à plus de cinq pour cent sous le marché, six à plus de dix pour cent et deux à plus de vingt pour cent ; les trois baux les plus éloignés du marché, ceux des logements 103, 302 et 102, portent \pct{44.2} de l'écart total. L'ancienneté moyenne est de 6,3 ans, la médiane de 6,5 ans et le maximum de 18 ans ; les cinq baux signés en 2018 forment une cohorte homogène à \pct{14.9} sous le marché après huit reconductions. Le loyer contractuel moyen est de \dollars{1149.58} par mois et le loyer de marché moyen de \dollars{1291.92}, soit \num{16.72} et \num{18.79} dollars par mètre carré ; l'écart mensuel moyen est de \dollars{142.33}. | |
| 209 | + | |
| 210 | +\begin{table}[htbp] | |
| 211 | +\caption{État locatif du cas 3 au 1\ier{} septembre 2026 : ancienneté, écart contractuel et échéance de chaque bail (données synthétiques)}\label{tab:26:etat} | |
| 212 | +\centering | |
| 213 | +\footnotesize\setlength{\tabcolsep}{3pt} | |
| 214 | +\begin{tabular}{lcS[table-format=2.0]S[table-format=4.0]S[table-format=4.0]S[table-format=3.0]S[table-format=2.1]S[table-format=4.0]S[table-format=1.3]cc} | |
| 215 | +\toprule | |
| 216 | +Log. & Type & {Anc. (ans)} & {Contrat (\$/mois)} & {Marché (\$/mois)} & {Écart (\$/mois)} & {Écart (\%)} & {Écart (\$/an)} & {Ratio $\kappa_j$} & Échéance & Stat. \\ | |
| 217 | +\midrule | |
| 218 | +104 & 3½ & 1 & 1068 & 1090 & 22 & 2.0 & 264 & 0.980 & 2027-06-30 & oui \\ | |
| 219 | +301 & 4½ & 1 & 1328 & 1356 & 28 & 2.1 & 336 & 0.979 & 2027-06-30 & non \\ | |
| 220 | +202 & 4½ & 2 & 1191 & 1240 & 49 & 4.0 & 588 & 0.960 & 2027-06-30 & oui \\ | |
| 221 | +304 & 5½ & 2 & 1616 & 1683 & 67 & 4.0 & 804 & 0.960 & 2027-06-30 & non \\ | |
| 222 | +303 & 5½ & 3 & 1526 & 1622 & 96 & 5.9 & 1152 & 0.941 & 2027-06-30 & oui \\ | |
| 223 | +101 & 3½ & 5 & 917 & 1015 & 98 & 9.7 & 1176 & 0.903 & 2027-06-30 & oui \\ | |
| 224 | +201 & 4½ & 8 & 1144 & 1345 & 201 & 14.9 & 2412 & 0.851 & 2027-06-30 & non \\ | |
| 225 | +203 & 4½ & 8 & 1167 & 1372 & 205 & 14.9 & 2460 & 0.851 & 2027-06-30 & non \\ | |
| 226 | +204 & 4½ & 8 & 1064 & 1251 & 187 & 14.9 & 2244 & 0.851 & 2027-06-30 & oui \\ | |
| 227 | +302 & 4½ & 8 & 1258 & 1478 & 220 & 14.9 & 2640 & 0.851 & 2027-06-30 & non \\ | |
| 228 | +102 & 3½ & 12 & 788 & 1004 & 216 & 21.5 & 2592 & 0.785 & 2027-06-30 & oui \\ | |
| 229 | +103 & 3½ & 18 & 728 & 1047 & 319 & 30.5 & 3828 & 0.695 & 2027-06-30 & non \\ | |
| 230 | +\midrule | |
| 231 | +Total & & 6.3 & 13795 & 15503 & 1708 & 11.0 & 20496 & 0.890 & & 6 \\ | |
| 232 | +\bottomrule | |
| 233 | +\end{tabular} | |
| 234 | +\tabsource{\synth{\texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{tableau\_etat}, revenus par \texttt{traite.cas3.revenus}), graine 20261031 ; ligne « Total » : ancienneté moyenne, sommes mensuelles et annuelles, écart pondéré et ratio pondéré ; chauffage non inclus dans tous les baux ; classement par ancienneté.}} | |
| 235 | +\end{table} | |
| 236 | + | |
| 237 | +\begin{figure}[htbp] | |
| 238 | +\centering | |
| 239 | +\includegraphics[width=\textwidth]{ch26/ch26-fig-contrat-marche.pdf} | |
| 240 | +\caption{Loyer contractuel et loyer de marché estimé des douze logements du cas 3, classés du bail le plus récent au plus ancien ; l'écart relatif inscrit à droite de chaque paire passe de \pct{2.0} pour les locataires arrivés en 2025 à \pct{30.5} pour le locataire en place depuis 2008, et les cinq baux de 2018 forment un palier homogène à \pct{14.9}.}\label{fig:26:contrat-marche} | |
| 241 | +\figsource{\synth{\texttt{analysis/python/figures/ch26\_figures.py}, graine 20261031}} | |
| 242 | +\end{figure} | |
| 243 | + | |
| 244 | +\begin{table}[htbp] | |
| 245 | +\caption{Indicateurs synthétiques de l'état locatif du cas 3 et points de repère publics (1\ier{} septembre 2026)}\label{tab:26:indicateurs} | |
| 246 | +\centering | |
| 247 | +\footnotesize | |
| 248 | +\begin{tabular}{lS[table-format=6.2]l} | |
| 249 | +\toprule | |
| 250 | +Indicateur & {Valeur} & Lecture \\ | |
| 251 | +\midrule | |
| 252 | +Revenu brut potentiel contractuel (\$/an) & 165540 & douze loyers mensuels $\times$ 12 \\ | |
| 253 | +Revenu brut potentiel au marché (\$/an) & 186036 & loyers de marché estimés $\times$ 12 \\ | |
| 254 | +Écart contractuel total (\$/an) & 20496 & \eqref{eq:26:ecart}, sommé \\ | |
| 255 | +Écart moyen pondéré $\bar\delta$ (\%) & 11.02 & \eqref{eq:26:ecart-pondere} \\ | |
| 256 | +Ratio contractuel pondéré $\bar\kappa$ & 0.890 & $1 - \bar\delta$ \\ | |
| 257 | +Moyenne simple des ratios $\kappa_j$ & 0.884 & inférieure à $\bar\kappa$ : retards concentrés sur de petits logements \\ | |
| 258 | +Part des baux à plus de 5 / 10 / 20 \% sous le marché (\%) & {66,7 / 50,0 / 16,7} & \eqref{eq:26:part-sous-marche} ; 8, 6 et 2 logements \\ | |
| 259 | +Concentration de l'écart (trois baux les plus en retard) (\%) & 44.2 & logements 103, 302, 102 \\ | |
| 260 | +Ancienneté moyenne / médiane / maximale (ans) & {6,3 / 6,5 / 18} & cinq baux de 2018 \\ | |
| 261 | +Loyer moyen contractuel / de marché (\$/mois) & {1 149,58 / 1 291,92} & écart mensuel moyen \dollars{142.33} \\ | |
| 262 | +Loyer au m\textsuperscript{2} contractuel / de marché (\$/m\textsuperscript{2}/mois) & {16,72 / 18,79} & 825 m\textsuperscript{2} locatifs \\ | |
| 263 | +Mois avant l'échéance commune & 9.9 & 30 juin 2027 \\ | |
| 264 | +\midrule | |
| 265 | +Repère : loyer moyen 2 ch., RMR Montréal, oct.\ 2025 (\$/mois) & 1346 & SCHL, $+\pct{7.2}$ sur un an \\ | |
| 266 | +Repère : loyer moyen 2 ch., zone Rosemont, oct.\ 2025 (\$/mois) & 1348 & SCHL \\ | |
| 267 | +Repère : taux de rotation, RMR Montréal, 2025 (\%) & 9.4 & SCHL (\pct{11.1} en 2024) ; 6 à 19 logements : \pct{8.5} \\ | |
| 268 | +Repère : pourcentage de base TAL 2026 (\%) & 3.1 & avis donnés dès le 1\ier{} janvier 2026 (\pct{4.5} pour 2025) \\ | |
| 269 | +\bottomrule | |
| 270 | +\end{tabular} | |
| 271 | +\tabsource{\synth{\texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{indicateurs}), graine 20261031} ; repères : \parencite{schlLocatif2025,schlrmltables2025} (tableaux 1.1.2, 1.1.6 et 1.3.4 de la RMR de Montréal, données d'octobre 2025, consultés le 31 octobre 2026) ; \parencite{talIndices2026}.} | |
| 272 | +\end{table} | |
| 273 | + | |
| 274 | +La \cref{fig:26:anciennete} replace cette structure dans une perspective probabiliste que la \cref{sec:26:reconduction} formalise. Le volet (a) superpose la distribution de l'ancienneté des douze locataires et la courbe de survie théorique d'une cohorte de locataires soumise à une rotation annuelle constante, pour trois valeurs du taux de rotation : \pct{8.5}, le taux observé par la SCHL en octobre 2025 pour les immeubles de six à dix-neuf logements de la région de Montréal, \pct{9.4}, le taux de l'ensemble des appartements de la région, et \pct{15}, l'hypothèse retenue dans le dossier du cas 3 \parencite{schlrmltables2025}. Le volet (b) montre que l'écart mensuel croît avec l'ancienneté, ce qui est ici la loi de génération du jeu synthétique, mais aussi, dans un régime de deuxième génération, une régularité attendue. L'enseignement est double : plus de la moitié des locataires du cas 3 ont une ancienneté supérieure à la durée médiane d'une occupation sous les rotations observées, et c'est chez eux que se concentre l'écart. | |
| 275 | + | |
| 276 | +\begin{figure}[htbp] | |
| 277 | +\centering | |
| 278 | +\includegraphics[width=\textwidth]{ch26/ch26-fig-anciennete.pdf} | |
| 279 | +\caption{Cas 3 : (a) part des douze logements selon l'ancienneté du locataire et part théorique d'une cohorte encore en place après $t$ années, $(1-\rho)^t$, pour des rotations de \pct{8.5}, \pct{9.4} et \pct{15} ; (b) écart mensuel entre loyer de marché et loyer contractuel selon l'ancienneté, par type de logement. L'écart est porté par les locataires dont l'ancienneté dépasse la durée médiane d'occupation.}\label{fig:26:anciennete} | |
| 280 | +\figsource{\synth{\texttt{analysis/python/figures/ch26\_figures.py}, graine 20261031} ; taux de rotation : \parencite{schlrmltables2025}, RMR de Montréal, tableaux 1.1.6 et 1.3.4, octobre 2025.} | |
| 281 | +\end{figure} | |
| 282 | + | |
| 283 | +\section{Reconduction, avis et fixation : le mécanisme et la trajectoire des loyers}\label{sec:26:reconduction} | |
| 284 | + | |
| 285 | +\subsection{Ce que le mécanisme juridique autorise} | |
| 286 | + | |
| 287 | +La reconduction de plein droit et la fixation forment ensemble un mécanisme dont il faut comprendre la logique avant d'en modéliser l'effet. Le locateur propose ; le locataire accepte ou refuse ; en cas de refus, le locateur renonce ou saisit le tribunal ; le tribunal fixe le loyer « en tenant compte des normes fixées par les règlements », pour la durée du bail reconduit et au plus douze mois \parencite[art.~1953]{ccq}. Ces normes sont celles du Règlement sur les critères de fixation de loyer, profondément remanié par le décret 1455-2025 entré en vigueur le 1\ier{} janvier 2026 : six critères, dont un pourcentage de base égal à la moyenne des trois dernières variations annuelles de l'indice des prix à la consommation du Québec, la variation des taxes municipales et scolaires et des primes d'assurance selon la part attribuable au logement, et un rendement de cinq pour cent sur les dépenses d'immobilisation de la période de référence \parencite[art.~3 et 3.1]{reglCriteresFixation,decret1455_2025}. Le \cref{ch:34} en expose la méthode et les calculs ; ce qui importe ici est ce que le mécanisme ne contient pas. La valeur locative de marché n'y figure pas : le Tribunal l'a rappelé dans une décision résumée sur son site, « la valeur marchande locative n'est pas un critère à prendre en considération » \parencite{talResumesDecisions}. La fixation vaut pour le logement, non pour l'immeuble, et chaque bail suit sa propre trajectoire. Le Tribunal connaît de ces demandes à l'exclusion de tout autre tribunal \parencite[art.~28]{loiTAL} et ses décisions en fixation ne sont pas susceptibles d'appel \parencite[art.~91]{loiTAL}, de sorte que la pratique est stable et prévisible. | |
| 288 | + | |
| 289 | +Le mécanisme a une asymétrie qui favorise le locataire en place. Le locateur qui laisse passer la fenêtre d'avis, ou qui ne saisit pas le tribunal dans le mois du refus, voit le bail reconduit aux conditions antérieures pour une année entière. Le locataire qui refuse reste dans les lieux. La seule issue qui mette fin à cette asymétrie est le départ volontaire du locataire, après quoi le loyer de relocation est libre, sous la réserve du recours du nouveau locataire de l'article 1950 et de l'obligation d'information de l'article 1896. Le régime produit donc, pour chaque logement, une trajectoire de loyer en deux régimes : tant que le locataire reste, le loyer croît au rythme qu'autorisent les critères ou qu'accepte le locataire ; lorsqu'il part, le loyer rejoint le marché. Si l'on note $g_{c,s}$ le taux d'ajustement effectivement obtenu l'année $s$ et $n_j$ l'année du départ du locataire du logement $j$, | |
| 290 | +\begin{equation}\label{eq:26:trajectoire} | |
| 291 | +L^c_{jt} = L^c_{j0}\prod_{s=1}^{t}(1 + g_{c,s}) \quad \text{pour } t < n_j, \qquad L^c_{jt} = L^m_{jt} \quad \text{pour } t \geq n_j . | |
| 292 | +\end{equation} | |
| 293 | +Dans les projections de l'ouvrage, $g_{c,s}$ est approché par le pourcentage de base du Tribunal, \pct{3.1} pour 2026, la part attribuable aux taxes, aux assurances et aux immobilisations étant traitée en sensibilité (\cref{ch:30,ch:34}) ; le pourcentage pour 2027 n'était pas publié à la date du présent chapitre \parencite{talIndices2026}. | |
| 294 | + | |
| 295 | +\subsection{Les restrictions de l'article 1955 et le loyer maximal des cinq ans} | |
| 296 | + | |
| 297 | +L'article 1955 soustrait certains logements à la fixation. Ni le locateur ni le locataire d'un logement loué par une coopérative d'habitation, ni ceux d'un logement situé dans un immeuble nouvellement bâti ou dont l'utilisation à des fins locatives résulte d'un changement d'affectation récent, ne peuvent faire fixer le loyer « dans les cinq années qui suivent la date à laquelle l'immeuble est prêt pour l'usage auquel il est destiné » \parencite[art.~1955]{ccq}. Deux modifications récentes en ont précisé la portée. Depuis le 21 février 2024, la restriction n'est opposable au locataire que si elle est prévue au bail et « que si le bail indique le loyer maximal que le locateur pourra imposer dans les cinq années » \parencite[art.~1955, mod.\ 2024, c.~2, a.~9]{ccq,loi31_2024} ; depuis le 24 février 2026, l'exclusion vise tout logement loué par une coopérative d'habitation, et non plus seulement celui loué à l'un de ses membres \parencite[art.~152]{loi111_2026}. Le Tribunal a eu à appliquer l'exception des cinq ans à un immeuble récent dans une décision résumée sur son site \parencite{talResumesDecisions}. | |
| 298 | + | |
| 299 | +Pour l'évaluateur d'un immeuble neuf ou converti, le loyer maximal inscrit au bail est l'indicateur central de l'état locatif. Pendant cinq ans, le locataire qui refuse une hausse doit quitter le logement à la fin du bail \parencite[art.~1945]{ccq} : la trajectoire du loyer n'est bornée ni par les critères du règlement ni par le marché, mais par le loyer maximal $L^{\max}_j$ et par la disposition du locataire à payer. Le taux de croissance annuel composé maximal compatible avec ce plafond est | |
| 300 | +\begin{equation}\label{eq:26:gmax} | |
| 301 | +\bar g_j = \left(\frac{L^{\max}_j}{L^c_{j0}}\right)^{1/5} - 1, | |
| 302 | +\end{equation} | |
| 303 | +et deux trajectoires bornent la projection : la croissance régulière au taux $\bar g_j$ et le saut au loyer maximal dès la première reconduction, qui est la borne haute que la clause autorise. L'\cref{ex:26:6} compare ces trajectoires à l'indexation au pourcentage de base. Lorsque le bail ne contient pas la clause, ou qu'il ne mentionne pas le loyer maximal, la restriction est inopposable au locataire et le logement neuf retombe dans le régime général, de sorte que l'absence de la mention est une information d'évaluation à part entière. | |
| 304 | + | |
| 305 | +\subsection{La rotation des locataires et la durée espérée de l'écart} | |
| 306 | + | |
| 307 | +L'\cref{eq:26:trajectoire} fait de la date de départ $n_j$ la variable décisive, et elle est inconnue. Le \cref{ch:02} l'a modélisée par une rotation annuelle constante ; nous reprenons ce cadre en le précisant. Si une fraction $\rho$ des locataires en place quitte chaque année, indépendamment de leur ancienneté, la probabilité qu'un locataire soit encore dans les lieux après $t$ années et la durée espérée de son occupation restante sont | |
| 308 | +\begin{equation}\label{eq:26:survie} | |
| 309 | +S(t) = (1-\rho)^{t}, \qquad \E[n] = \sum_{t=1}^{\infty} t\,\rho\,(1-\rho)^{t-1} = \frac{1}{\rho}, | |
| 310 | +\end{equation} | |
| 311 | +la seconde identité résultant de la dérivation de la série géométrique $\sum_t (1-\rho)^t = (1-\rho)/\rho$ par rapport à $\rho$ ; le départ est compté à la fin de l'année où il survient. Une rotation de \pct{9.4} correspond ainsi à une occupation espérée de 10,6 années supplémentaires, une rotation de \pct{8.5} à 11,8 années, une rotation de \pct{15} à 6,7 années. Les taux de rotation publiés par la SCHL pour octobre 2025 s'étagent, pour l'ensemble des appartements d'initiative privée, de \pct{9.4} dans la région de Montréal à \pct{13.0} dans celle de Québec, \pct{12.0} à Sherbrooke, \pct{10.1} à Trois-Rivières et \pct{12.6} au Saguenay ; dans la région de Montréal, ils décroissent avec la taille du logement, de \pct{14.2} pour les studios à \pct{6.9} pour les logements de trois chambres et plus, et ils sont de \pct{8.5} dans les immeubles de six à dix-neuf logements \parencite{schlrmltables2025}. Ces taux portent sur l'ensemble du parc ; dans un immeuble où la moitié des locataires paient nettement moins que le marché, la rotation est vraisemblablement plus faible, puisque ces locataires ont le plus à perdre à partir. L'hypothèse d'indépendance entre rotation et ancienneté est donc une simplification favorable au locateur, que la \cref{sec:26:sensibilite} relâche en faisant varier $\rho$. | |
| 312 | + | |
| 313 | +\begin{proposition}{Valeur actuelle espérée de l'écart contractuel d'un logement sous rotation géométrique}{va-ecart} | |
| 314 | +Soit un logement dont l'écart contractuel net de l'inoccupation vaut $\Delta_{j1}$ la première année, reçu avec certitude parce que le bail court jusqu'à son terme, et dont l'écart croît ensuite au taux $g$ tant que le locataire reste, la probabilité qu'il reste une année de plus étant $1-\rho$. Si $(1-\rho)(1+g) < 1+r$, la valeur actuelle espérée de l'écart, au taux $r$, est | |
| 315 | +\begin{equation}\label{eq:26:va-ecart} | |
| 316 | +\E[VA_j] = \sum_{t=1}^{\infty} \frac{\Delta_{j1}\left[(1-\rho)(1+g)\right]^{t-1}}{(1+r)^{t}} = \frac{\Delta_{j1}}{r - g + \rho\,(1+g)} . | |
| 317 | +\end{equation} | |
| 318 | +\end{proposition} | |
| 319 | +\begin{proof} | |
| 320 | +L'écart de l'année $t$ vaut $\Delta_{j1}(1+g)^{t-1}$ s'il est encore versé, ce qui survient avec probabilité $(1-\rho)^{t-1}$ puisque le premier écart est certain ; son espérance est donc $\Delta_{j1}[(1-\rho)(1+g)]^{t-1}$. La somme actualisée est une série géométrique de premier terme $\Delta_{j1}/(1+r)$ et de raison $q = (1-\rho)(1+g)/(1+r) < 1$, dont la somme est $\Delta_{j1}/[(1+r)(1-q)]$. Or $(1+r)(1-q) = 1 + r - (1-\rho)(1+g) = r - g + \rho(1+g)$, ce qui établit le résultat. Lorsque $\rho = 0$, la formule redonne la capitalisation perpétuelle $\Delta_{j1}/(r-g)$ ; lorsque $\rho = 1$, elle redonne le seul premier écart actualisé, $\Delta_{j1}/(1+r)$. | |
| 321 | +\end{proof} | |
| 322 | + | |
| 323 | +L'\cref{eq:26:va-ecart} est celle du \cref{ch:02} pour l'écart agrégé ; son application logement par logement n'ajoute rien à la somme, puisque la formule est linéaire en $\Delta_{j1}$, mais elle permet d'attribuer la décote à chaque bail et de la confronter à la situation de chaque locataire, ancienneté, âge, loyer, protection éventuelle de l'article 1959.1. Elle se lit comme une capitalisation à un taux majoré de la rotation : le dénominateur $r - g + \rho(1+g)$ vaut \num{0.0375} sans rotation pour les paramètres du cas 3, \num{0.1348} à \pct{9.4} et \num{0.1928} à \pct{15}. Elle se compare aussi à l'annuité certaine d'une durée égale à l'espérance $1/\rho$, c'est-à-dire à la formule du \cref{ch:02} appliquée avec $n_j = \E[n]$ : les deux ne coïncident pas, parce que l'actualisation est convexe et que l'écart croît, et l'\cref{ex:26:4} en mesure la différence. | |
| 324 | + | |
| 325 | +\subsection{Les déterminants juridiques de la rotation} | |
| 326 | + | |
| 327 | +La rotation n'est pas qu'un paramètre statistique : le droit la façonne, et quatre évolutions récentes doivent entrer dans le jugement de l'évaluateur. La première concerne la cession de bail. Le droit commun permet au locataire de sous-louer ou de céder son bail avec l'avis et le consentement du locateur, qui ne peut refuser sans motif sérieux et doit indiquer ses motifs dans les quinze jours \parencite[art.~1870 et 1871]{ccq}, ne peut exiger que le remboursement de ses dépenses raisonnables \parencite[art.~1872]{ccq}, la cession déchargeant l'ancien locataire \parencite[art.~1873]{ccq}. Pendant des années, ce mécanisme a permis la transmission des baux anciens à loyer bas d'un locataire à l'autre, de sorte qu'un départ n'entraînait pas de retour au marché. Depuis le 21 février 2024, l'avis de cession d'un bail de logement doit indiquer la date prévue de la cession, et le locateur « peut refuser d'y consentir pour un motif autre qu'un motif sérieux », auquel cas « le bail est alors résilié à la date de cession indiquée » \parencite[art.~1978.1 et 1978.2]{ccq,loi31_2024} ; le locataire qui cède ne peut exiger de contrepartie \parencite[art.~1978.3]{ccq} et celui qui sous-loue ne peut exiger plus que le loyer qu'il verse, outre les services et l'usage de ses meubles \parencite[art.~1978.4]{ccq}. Les avis transmis avant le 21 février 2024 demeurent régis par l'ancien droit \parencite[art.~86]{loi31_2024}. Pour l'analyse de l'état locatif, l'effet est net : un départ par cession devient, au choix du locateur, un départ tout court, et la rotation effective des loyers se rapproche de la rotation des occupants. | |
| 328 | + | |
| 329 | +La deuxième concerne la reprise et l'éviction, qui sont les seuls départs que le locateur puisse provoquer en dehors de la résiliation pour défaut. Le locateur personne physique peut reprendre un logement pour l'habiter ou y loger un ascendant ou un descendant au premier degré, un parent ou un allié dont il est le principal soutien, ou un ex-conjoint \parencite[art.~1957]{ccq} ; le propriétaire d'une part indivise ne le peut que si l'unique autre indivisaire est son conjoint \parencite[art.~1958]{ccq}, ce qui ferme la reprise aux immeubles détenus par une société ou par plusieurs investisseurs. Le locateur peut évincer pour subdiviser le logement, l'agrandir substantiellement ou en changer l'affectation \parencite[art.~1959]{ccq}, mais non lorsque le locataire ou son conjoint est âgé de 65 ans ou plus, occupe le logement depuis au moins dix ans et a un revenu égal ou inférieur à 125 pour cent du revenu maximal d'admissibilité à un logement à loyer modique, sous réserve d'exceptions \parencite[art.~1959.1, mod.\ 2024, c.~23]{ccq,loi65_2024}. Les avis doivent être donnés six mois avant l'expiration d'un bail à durée fixe \parencite[art.~1960]{ccq}, indiquer la date, le bénéficiaire et le motif et reproduire l'article 1959.1 \parencite[art.~1961]{ccq} ; depuis le 21 février 2024, le silence du locataire dans le mois vaut refus \parencite[art.~1962]{ccq}, et le locateur doit alors obtenir l'autorisation du tribunal en démontrant qu'il entend réellement reprendre le logement ou l'évincer pour la fin indiquée \parencite[art.~1963]{ccq}. Le logement repris ou libéré par éviction ne peut être loué ou utilisé à une autre fin sans l'autorisation du tribunal, qui fixe alors le loyer \parencite[art.~1970]{ccq}. | |
| 330 | + | |
| 331 | +La troisième est le moratoire. « Malgré l'article 1959 du Code civil, aucun locataire ne peut être évincé d'un logement avant le 6 juin 2027 aux fins prévues à cet article » \parencite[art.~1]{loi65_2024} ; le gouvernement peut soustraire des territoires à cette règle, et le moratoire prend fin par anticipation soixante jours après un avis ministériel si le taux d'inoccupation mesuré par la SCHL pour les centres de dix mille habitants et plus atteint trois pour cent \parencite[art.~2 et 11]{loi65_2024}. Au 31 octobre 2026, aucun avis de fin anticipée n'avait été repéré. La quatrième est l'indemnité d'éviction. Lorsqu'une éviction est permise, le locateur paie au locataire des frais raisonnables de déménagement et « une indemnité équivalente à un mois de loyer pour chaque année de location ininterrompue », qui ne peut être inférieure à trois mois ni excéder vingt-quatre mois de loyer, le tribunal pouvant accorder davantage \parencite[art.~1965, mod.\ 2024, c.~2]{ccq}. Pour un locataire d'ancienneté $a$ années et de loyer mensuel $L$, l'indemnité minimale est donc | |
| 332 | +\begin{equation}\label{eq:26:indemnite} | |
| 333 | +I = L \cdot \min\{24,\ \max\{3,\ a\}\} + F, | |
| 334 | +\end{equation} | |
| 335 | +où $F$ désigne les frais de déménagement ; pour le locataire du logement 103 du cas 3, en place depuis dix-huit ans à \dollars{728}, elle serait de dix-huit mois de loyer, soit \dollars{13104}, avant les frais. Ces règles ont une conséquence que le \cref{ch:47} a tirée pour le dossier du cas 3 : aucune stratégie de repositionnement fondée sur des évictions ne peut être valorisée dans la valeur marchande d'un immeuble occupé ; le scénario de base est la continuation de l'exploitation avec rattrapage au gré des départs volontaires, et la rotation retenue doit refléter la composition du locatariat, notamment la part des locataires âgés protégés. | |
| 336 | + | |
| 337 | +\section{Services inclus et normalisation des loyers}\label{sec:26:normalisation} | |
| 338 | + | |
| 339 | +\subsection{Le problème et la règle} | |
| 340 | + | |
| 341 | +Deux loyers ne sont comparables que s'ils rémunèrent les mêmes prestations. Le formulaire de bail distingue les services, accessoires et dépendances inclus dans le loyer, chauffage, eau chaude, électricité, stationnement, rangement, électroménagers, accès à une buanderie, déneigement d'une case, et le Code soumet ces accessoires au régime du bail de logement \parencite[art.~1892]{ccq}. Dans un même immeuble ancien, il est courant que les baux les plus vieux incluent le chauffage, parce que l'immeuble était chauffé à l'eau chaude par une chaudière centrale, et que les baux récents l'excluent après la conversion à des plinthes électriques payées par le locataire. Comparer les loyers de ces baux entre eux, ou avec des loyers de marché observés sous une convention différente, exige de les ramener à une base commune. La base de l'ouvrage est le \motcle{loyer nu}, c'est-à-dire le loyer qui ne comprend aucun service dont le coût dépend de la consommation du locataire ni aucun accessoire optionnel ; le stationnement en est retranché lorsqu'il est facturé séparément sur le marché local, et conservé lorsqu'il est d'usage inclus. | |
| 342 | + | |
| 343 | +La règle de normalisation est additive. Si le bail du logement $j$ inclut l'ensemble de services $s \in \mathcal{S}$, repérés par des indicatrices $\delta_{js}$, et que chaque service a une valeur mensuelle $c_s$, | |
| 344 | +\begin{equation}\label{eq:26:normalise} | |
| 345 | +L^{\text{nu}}_j = L_j - \sum_{s \in \mathcal{S}} \delta_{js}\,c_s , | |
| 346 | +\end{equation} | |
| 347 | +et l'opération inverse, qui reconstitue un loyer « tout inclus » à partir d'un loyer nu, additionne les mêmes valeurs. La question difficile est celle de $c_s$. En principe, l'ajustement devrait mesurer ce que le marché paie pour le service, c'est-à-dire la différence de loyer entre deux logements identiques dont l'un inclut le service et l'autre non, mesurée par paires ou par régression selon les méthodes du \cref{ch:17}. En pratique, cette différence est rarement observable avec précision, et l'on se rabat sur le coût que le service représente pour celui qui le paie, le locateur ou le locataire, en gardant à l'esprit que le coût sous-estime la valeur lorsque le service est inclus, parce que le locataire qui ne paie pas sa consommation consomme davantage, phénomène bien documenté pour le chauffage. Pour l'électricité, le coût est calculable avec une précision suffisante à partir de la structure tarifaire publique ; pour le chauffage au gaz ou au mazout, à partir des factures du locateur ; pour le stationnement, à partir des loyers de cases facturées séparément dans le quartier. | |
| 348 | + | |
| 349 | +\subsection{Un exemple chiffré : le tarif D d'Hydro-Québec} | |
| 350 | + | |
| 351 | +Le tarif domestique D d'Hydro-Québec en vigueur le 1\ier{} avril 2026 comporte une redevance d'abonnement de \qty{46.154}{\cent} par jour, un prix de \qty{7.065}{\cent} par kilowattheure pour l'énergie consommée jusqu'à concurrence de 40 kilowattheures par jour, et un prix de \qty{11.142}{\cent} par kilowattheure au-delà \parencite{hydrotarifs2026} ; la Régie de l'énergie a autorisé une hausse de \pct{3.0} pour la clientèle domestique en 2026 et annoncé des hausses de \pct{3.0} en 2027 et de \pct{2.6} en 2028 \parencite{regieenergie2026}. Pour une période de facturation de $d$ jours et une consommation $q$, | |
| 352 | +\begin{equation}\label{eq:26:tarifD} | |
| 353 | +C(q, d) = a\,d + p_1 \min\{q,\ 40\,d\} + p_2 \max\{q - 40\,d,\ 0\}, | |
| 354 | +\end{equation} | |
| 355 | +avec $a = 0{,}46154$, $p_1 = 0{,}07065$ et $p_2 = 0{,}11142$ dollars, hors taxes de vente. La structure à deux tranches est essentielle : un logement chauffé à l'électricité dépasse le seuil de 40 kilowattheures par jour en hiver et paie alors une part de sa consommation au prix supérieur, de sorte que le coût annuel n'est pas proportionnel à la consommation et qu'un calcul fondé sur un prix moyen se trompe. | |
| 356 | + | |
| 357 | +Aucune statistique officielle de la facture moyenne d'un logement n'a pu être vérifiée pour ce chapitre, la Régie ne publiant que les hausses mensuelles estimées. L'exemple repose donc sur une hypothèse de travail déclarée : un 4½ d'environ 70 mètres carrés chauffé à l'électricité consomme 12 000 kilowattheures par an selon un profil mensuel pointu en hiver, de 1 900 kilowattheures en janvier à 500 en juillet et en août. Le \cref{tab:26:electricite} et la \cref{fig:26:normalisation} donnent le coût mensuel qui en résulte. Trois mois dépassent le seuil de la première tranche, pour 1 400 kilowattheures facturés au prix supérieur ; le coût annuel est de \dollars{1073.34}, soit \dollars{89.45} par mois en moyenne, \qty{8.94}{\cent} par kilowattheure toutes composantes comprises, et la redevance représente \pct{15.7} du total. Le coût de janvier, \dollars{175.45}, est trois fois et demie celui de juillet, \dollars{49.63}. Si un comparable de 4½ est offert à \dollars{1450} par mois chauffé et éclairé, son loyer nu équivalent est de $1450 - 89{,}45 = \dollars{1360.55}$ ; c'est ce chiffre, et non \dollars{1450}, qui se compare aux loyers de marché nus de \dollars{1240} à \dollars{1478} estimés pour les 4½ du cas 3. Pour une projection, le coût mensuel indexé de la hausse de \pct{3.0} de 2027 serait de \dollars{92.13}, approximation qui applique la hausse moyenne à toutes les composantes du tarif. | |
| 358 | + | |
| 359 | +\begin{table}[htbp] | |
| 360 | +\caption{Coût mensuel de l'électricité d'un 4½ chauffé à l'électricité au tarif D du 1\ier{} avril 2026, pour un profil hypothétique de \num{12000} kWh par an (hors taxes de vente)}\label{tab:26:electricite} | |
| 361 | +\centering | |
| 362 | +\footnotesize | |
| 363 | +\begin{tabular}{lS[table-format=4.0]S[table-format=2.0]S[table-format=2.2]S[table-format=4.0]S[table-format=3.0]S[table-format=2.2]S[table-format=2.2]S[table-format=3.2]} | |
| 364 | +\toprule | |
| 365 | +Mois & {kWh} & {Jours} & {Redevance (\$)} & {1\textsuperscript{re} tranche (kWh)} & {2\textsuperscript{e} tranche (kWh)} & {1\textsuperscript{re} tranche (\$)} & {2\textsuperscript{e} tranche (\$)} & {Total (\$)} \\ | |
| 366 | +\midrule | |
| 367 | +Janvier & 1900 & 31 & 14.31 & 1240 & 660 & 87.61 & 73.54 & 175.45 \\ | |
| 368 | +Février & 1700 & 28 & 12.92 & 1120 & 580 & 79.13 & 64.62 & 156.67 \\ | |
| 369 | +Mars & 1400 & 31 & 14.31 & 1240 & 160 & 87.61 & 17.83 & 119.74 \\ | |
| 370 | +Avril & 1000 & 30 & 13.85 & 1000 & 0 & 70.65 & 0.00 & 84.50 \\ | |
| 371 | +Mai & 700 & 31 & 14.31 & 700 & 0 & 49.46 & 0.00 & 63.76 \\ | |
| 372 | +Juin & 550 & 30 & 13.85 & 550 & 0 & 38.86 & 0.00 & 52.70 \\ | |
| 373 | +Juillet & 500 & 31 & 14.31 & 500 & 0 & 35.33 & 0.00 & 49.63 \\ | |
| 374 | +Août & 500 & 31 & 14.31 & 500 & 0 & 35.33 & 0.00 & 49.63 \\ | |
| 375 | +Septembre & 600 & 30 & 13.85 & 600 & 0 & 42.39 & 0.00 & 56.24 \\ | |
| 376 | +Octobre & 850 & 31 & 14.31 & 850 & 0 & 60.05 & 0.00 & 74.36 \\ | |
| 377 | +Novembre & 1150 & 30 & 13.85 & 1150 & 0 & 81.25 & 0.00 & 95.09 \\ | |
| 378 | +Décembre & 1150 & 31 & 14.31 & 1150 & 0 & 81.25 & 0.00 & 95.56 \\ | |
| 379 | +\midrule | |
| 380 | +Année & 12000 & 365 & 168.46 & 10600 & 1400 & 748.89 & 155.99 & 1073.34 \\ | |
| 381 | +\bottomrule | |
| 382 | +\end{tabular} | |
| 383 | +\tabsource{Structure tarifaire : \parencite{hydrotarifs2026}, section 2.5, consulté le 31 octobre 2026 ; profil de consommation : hypothèse de travail de l'auteur ; calculs \texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{normalisation\_electricite}).} | |
| 384 | +\end{table} | |
| 385 | + | |
| 386 | +\begin{figure}[htbp] | |
| 387 | +\centering | |
| 388 | +\includegraphics[width=\textwidth]{ch26/ch26-fig-normalisation.pdf} | |
| 389 | +\caption{Décomposition du coût mensuel d'électricité d'un 4½ chauffé à l'électricité au tarif D entre la redevance d'abonnement, la première tranche et la seconde tranche, pour un profil hypothétique de \num{12000} kWh par an ; la seconde tranche n'apparaît qu'en janvier, février et mars, et la moyenne annuelle de \dollars{89.45} par mois est le montant à retrancher d'un loyer « chauffé-éclairé » pour obtenir le loyer nu équivalent.}\label{fig:26:normalisation} | |
| 390 | +\figsource{Structure tarifaire : \parencite{hydrotarifs2026} ; profil de consommation : hypothèse de travail ; \texttt{analysis/python/figures/ch26\_figures.py}.} | |
| 391 | +\end{figure} | |
| 392 | + | |
| 393 | +L'exemple enseigne une méthode plus qu'un chiffre. Le coût d'un service inclus se calcule à partir de sa structure tarifaire et d'un profil de consommation qui doit être déclaré, idéalement tiré des factures du logement ou de logements semblables ; la hausse tarifaire annoncée s'applique à la projection ; et la normalisation se fait avant toute comparaison, qu'il s'agisse d'estimer le loyer de marché d'un logement du sujet à partir de comparables ou de comparer les loyers des logements du sujet entre eux. Lorsque le chauffage est fourni par une installation centrale du locateur, le coût à retrancher est la part du logement dans la facture de l'immeuble, et le \cref{ch:28} en traite la projection comme dépense d'exploitation ; lorsqu'il est à la charge du locataire, le loyer est déjà nu et aucune correction ne s'applique, mais la dépense d'électricité de l'immeuble se limite aux aires communes. Le même raisonnement vaut pour le stationnement, dont la valeur se lit dans les loyers de cases facturées séparément lorsque le marché local en offre, et pour les électroménagers fournis, dont la valeur mensuelle est le coût de remplacement amorti sur leur durée de vie. | |
| 394 | + | |
| 395 | +\section{Vente de l'immeuble, cession et autres événements du bail}\label{sec:26:evenements} | |
| 396 | + | |
| 397 | +L'aliénation volontaire ou forcée d'un immeuble comportant un logement, ou l'extinction du titre du locateur, « ne permet pas au nouveau locateur de résilier le bail », qui est continué et peut être reconduit comme tout autre bail, le nouveau locateur ayant envers le locataire les droits et obligations résultant du bail \parencite[art.~1937]{ccq}. Cette règle, que le \cref{ch:02} a placée au fondement de la distinction entre le droit du locateur et la pleine propriété, a pour l'analyse de l'état locatif trois conséquences pratiques. L'acquéreur hérite des baux tels qu'ils sont, y compris des avis de modification déjà transmis par le vendeur pour le terme à venir, des refus reçus et des demandes pendantes devant le Tribunal ; un avis transmis en janvier pour un terme du 30 juin produit ses effets au profit de l'acquéreur qui prend possession en avril, et un vendeur qui n'a transmis aucun avis a reconduit les baux aux conditions antérieures pour l'année qui suit, ce qui doit se lire dans la projection. L'acquéreur hérite aussi des services inclus et des accessoires que les baux promettent, même si le vendeur les fournissait de façon informelle. Et il hérite des situations litigieuses, arriérés, demandes de réduction de loyer pour perte de services, ordonnances d'exécution de travaux. L'ajustement des loyers perçus d'avance et des dépôts n'existe pas au Québec au-delà du prorata du loyer du mois de la signature, puisque le dépôt est interdit \parencite[art.~1904]{ccq}. | |
| 398 | + | |
| 399 | +L'hypothèque des loyers mérite une vérification distincte. L'hypothèque immobilière peut grever les loyers présents et à venir de l'immeuble ainsi que les indemnités d'assurance qui les remplacent ; elle est publiée au registre foncier \parencite[art.~2695]{ccq}. En présence d'un préavis d'exercice d'un droit hypothécaire, le créancier peut percevoir les loyers, et l'état locatif doit indiquer à qui les locataires paient. Pour l'évaluation de la pleine propriété, l'hypothèque ne réduit pas la valeur, comme le \cref{ch:02} l'a rappelé, mais la consultation de l'index des immeubles fait partie de la vérification des titres pour les immeubles de six logements et plus, où ces hypothèques sont courantes \parencite[\S~2.2]{ccq}. | |
| 400 | + | |
| 401 | +Parmi les autres événements du bail, deux concernent directement la lecture des loyers. La sous-location, qui laisse le locataire principal dans le bail, ne change rien au loyer que le locateur perçoit, mais le sous-locataire peut demander la fixation dans les conditions de l'article 1950 et le locataire qui a sous-loué plus de douze mois perd son droit au maintien dans les lieux, le locateur pouvant alors demander au tribunal de mettre fin au bail \parencite[art.~1947]{ccq}. La cohabitation et le décès emportent, pour le conjoint ou le proche qui habitait avec le locataire depuis au moins six mois, le droit au maintien dans les lieux et la qualité de locataire aux mêmes conditions \parencite[art.~1938]{ccq} ; un tel occupant n'est pas un nouveau locataire au sens de l'article 1950 \parencite[art.~1951]{ccq}, et son loyer ne rejoint pas le marché. Ces règles rappellent que la durée de l'écart contractuel n'est pas celle de la vie du locataire nommé au bail, mais celle de l'occupation du ménage. | |
| 402 | + | |
| 403 | +\begin{quebec}[Le registre des loyers et la section G] | |
| 404 | +Le Québec ne tient pas de registre public des loyers ; l'information sur le loyer précédent circule par l'avis de l'article 1896, dont la fausse déclaration ou l'omission délibérée est sanctionnée depuis 2024 par des dommages-intérêts punitifs \parencite[art.~1896]{ccq,loi31_2024}. Pour l'évaluateur, cela signifie que la relocation au loyer de marché n'est jamais certaine : le nouveau locataire informé du loyer précédent peut demander la fixation dans les dix jours \parencite[art.~1950]{ccq}, et le Tribunal fixe alors le loyer selon les critères du règlement à partir du loyer précédent, sans égard à la valeur locative de marché \parencite{talResumesDecisions}. La pratique montre que ce recours est peu exercé dans les marchés tendus, où le nouveau locataire craint pour sa relation avec le locateur, et davantage dans les marchés détendus. La projection d'une relocation au loyer de marché est donc une hypothèse, raisonnable dans la plupart des cas, qu'un évaluateur prudent documente et dont il teste la sensibilité ; le dossier du cas 3 au \cref{ch:47} la soumet à une simulation. Les textes cités ont été consultés le 31 octobre 2026 sur LégisQuébec et sur le site du Tribunal. | |
| 405 | +\end{quebec} | |
| 406 | + | |
| 407 | +\section{Baux commerciaux au rez-de-chaussée : les bases}\label{sec:26:commercial} | |
| 408 | + | |
| 409 | +Les immeubles mixtes des artères commerçantes de Montréal, de Québec ou de Sherbrooke comportent un ou deux locaux au rez-de-chaussée et des logements aux étages. Le local commercial n'est pas un logement : son bail relève du droit commun du louage et de la liberté contractuelle, hors du régime d'ordre public des articles 1892 et suivants, et il n'est ni reconduit de plein droit au sens de l'article 1941 ni soumis à la fixation. Le bail à durée fixe cesse de plein droit à l'arrivée du terme \parencite[art.~1877]{ccq} ; il est reconduit tacitement, pour un an ou pour la durée initiale si elle était inférieure à un an, si le locataire demeure plus de dix jours après l'expiration sans opposition du locateur \parencite[art.~1879]{ccq} ; la cession et la sous-location suivent les articles 1870 à 1873, et les parties peuvent convenir que la cession ne décharge pas l'ancien locataire \parencite[art.~1873]{ccq}. Cette liberté explique que les baux commerciaux soient longs, de trois à dix ans, assortis d'options de renouvellement à des conditions prédéterminées ou « au loyer du marché alors en vigueur », et qu'ils répartissent entre les parties les dépenses de l'immeuble de manières très variées. | |
| 410 | + | |
| 411 | +Le vocabulaire de cette répartition est le premier obstacle. Le \terme{loyer brut}{gross rent} comprend toutes les dépenses de l'immeuble, que le locateur assume ; le \terme{loyer net}{net rent} laisse au locataire une partie des dépenses, et la pratique distingue des degrés, le locataire assumant les taxes foncières, puis les assurances, puis l'entretien et les frais d'exploitation des aires communes, jusqu'au bail dit « net net net » où il assume la quasi-totalité des charges d'exploitation et parfois les réparations structurales. Le loyer stipulé au bail se compose alors d'un \emph{loyer de base}, souvent exprimé en dollars par pied carré ou par mètre carré de superficie locative par année, et d'un \emph{loyer additionnel} qui rembourse au locateur la part du locataire dans les dépenses récupérables, taxes, assurances et frais d'exploitation. Pour comparer des baux de structures différentes, l'évaluateur les ramène tous à une base nette équivalente, | |
| 412 | +\begin{equation}\label{eq:26:loyer-net} | |
| 413 | +L^{\text{net}} = L^{\text{brut}} - E_r, \qquad \ell^{\text{net}} = \frac{L^{\text{net}}}{S}, | |
| 414 | +\end{equation} | |
| 415 | +où $E_r$ désigne les dépenses que le locateur assume dans un bail brut et qu'il récupérerait dans un bail net, et $S$ la superficie locative ; le loyer net au mètre carré $\ell^{\text{net}}$ est l'unité de comparaison usuelle. Le bail stipule aussi, fréquemment, un \emph{loyer en pourcentage} des ventes du commerce au-delà d'un seuil, des périodes de gratuité au début du bail, des allocations d'aménagement versées par le locateur, et des clauses d'indexation annuelle sur l'indice des prix à la consommation ou à taux fixe. Les concessions s'actualisent sur la durée du bail pour obtenir un loyer effectif comparable, l'\cref{eq:26:effectif} devenant une annuité. | |
| 416 | + | |
| 417 | +L'analyse d'un bail commercial diffère de celle d'un bail de logement par ses risques autant que par ses règles. Le revenu est fixé contractuellement pour plusieurs années, ce qui le rend plus certain que celui des logements tant que le locataire est solvable, et plus incertain au-delà, puisque le local peut rester vacant des mois et exiger des travaux d'aménagement à la relocation ; la qualité du crédit du locataire, la pertinence de son commerce pour l'artère, la durée résiduelle du bail et le caractère des options de renouvellement sont des déterminants de valeur qui n'ont pas d'équivalent résidentiel. Du côté des dépenses, le local commercial est exclu de la répartition des dépenses d'immobilisation en fixation des loyers des logements : le règlement ne lui attribue « aucune part » \parencite[art.~5]{reglCriteresFixation}, et le formulaire de renseignements nécessaires isole les revenus des locaux non résidentiels sur des lignes distinctes \parencite{talFormulaireRN2026}. Les taxes foncières, enfin, frappent la partie non résidentielle à un taux différent dans les municipalités à taux variés, question que le \cref{ch:09} a traitée et que le \cref{ch:28} applique aux dépenses. Le chapitre s'en tient à ces bases : aucun loyer commercial de marché n'y est avancé, parce qu'aucune source publique vérifiable n'en publie pour les artères québécoises, et l'évaluateur qui en a besoin les extrait des baux comparables qu'il peut consulter. L'\cref{ex:26:7} illustre le passage du brut au net et la comparaison de la valeur actuelle d'un flux commercial fixe avec celle d'un flux résidentiel indexé. | |
| 418 | + | |
| 419 | +\section{Exemple intégral : analyser l'état locatif du cas 3 et du cas 2}\label{sec:26:exemple} | |
| 420 | + | |
| 421 | +\begin{exemple}{Analyse de l'état locatif d'un immeuble de douze logements à Montréal et d'un triplex à Québec}{cas3-etat} | |
| 422 | +L'exemple reprend le cas 3 à la date d'évaluation du 1\ier{} septembre 2026 et le prolonge par le triplex du cas 2. Les paramètres de projection sont ceux du dossier : taux d'actualisation de \pct{7.25}, croissance des loyers de marché de \pct{3.5}, inoccupation et mauvaises créances de \pct{3.9}, rotation de \pct{15} par an. L'analyse procède en six étapes ; chaque chiffre est produit par \texttt{analysis/python/cases/ch26\_etat\_locatif.py}. | |
| 423 | + | |
| 424 | +\emph{Étape 1 : la position des loyers en place.} Les \cref{tab:26:etat,tab:26:indicateurs} ont établi que le revenu brut potentiel contractuel est de \dollars{165540} contre \dollars{186036} au marché, soit un écart de \dollars{20496} par an, \pct{11.0} du revenu de marché, et un écart mensuel moyen de \dollars{142.33} par logement. La distribution est bimodale : quatre baux récents à deux pour cent du marché ou moins, cinq baux de 2018 à quinze pour cent, deux baux anciens à vingt-deux et trente pour cent. L'évaluateur retient de cette lecture que le retard n'est pas diffus mais structuré par l'année d'entrée, ce qui oriente l'analyse de la rotation vers les cohortes. | |
| 425 | + | |
| 426 | +\emph{Étape 2 : la durée espérée de l'écart.} Sous une rotation constante, l'\cref{eq:26:survie} donne une occupation restante espérée de 6,7 années pour la rotation de \pct{15} du dossier, de 10,6 années pour la rotation de \pct{9.4} observée dans la région de Montréal et de 11,8 années pour celle de \pct{8.5} des immeubles de six à dix-neuf logements \parencite{schlrmltables2025}. Le volet (a) de la \cref{fig:26:anciennete} montre que sept des douze locataires ont déjà une ancienneté égale ou supérieure à la durée médiane d'occupation que ces rotations impliquent ; le modèle géométrique, qui ignore l'ancienneté, traite pourtant ces locataires comme les autres, et l'évaluateur doit se demander si les locataires de 2008 et de 2014, qui économisent respectivement \dollars{319} et \dollars{216} par mois, partiront au rythme moyen. | |
| 427 | + | |
| 428 | +\emph{Étape 3 : la valeur actuelle de l'écart par logement.} Le \cref{tab:26:va} applique l'\cref{eq:26:va-ecart} à chaque logement, l'écart annuel de la première année étant pris net de l'inoccupation, $\Delta_{j1} = 12\,(L^m_j - L^c_j)(1 - 0{,}039)$, soit \dollars{19697} pour l'immeuble. À la rotation de \pct{15}, la valeur agrégée de l'écart est de \dollars{102188}, le chiffre que le \cref{ch:02} avait obtenu par la formule agrégée ; à \pct{9.4}, elle est de \dollars{146128} et à \pct{8.5} de \dollars{156977}, contre \dollars{525244} sans aucune rotation. Le logement 103 porte à lui seul \dollars{19085} à \pct{15} et \dollars{27292} à \pct{9.4} ; le logement 104, reloué en 2025, \dollars{1316} et \dollars{1882}. La \cref{fig:26:va-ecart} met ces montants en regard. Ces valeurs sont celles de la décote du droit du locateur par rapport à la pleine propriété libre de baux, sous l'hypothèse que les dépenses ne dépendent pas du niveau des loyers ; la projection logement par logement du module partagé, qui reloue d'abord les logements les plus en retard et fait varier la gestion avec le revenu, donne \dollars{27146} au \cref{ch:02}, et l'écart entre les deux chiffres mesure l'effet de l'ordre des départs, question sur laquelle les données ne tranchent pas. | |
| 429 | + | |
| 430 | +\emph{Étape 4 : le loyer économique.} Avec le taux global médian extrait des quarante ventes comparables du cas 3, \pct{4.415} (\cref{ch:29}), et la valeur au rôle de \dollars{2200000} comme valeur de référence, l'\cref{eq:26:economique} exige un revenu net de \dollars{97130}. Les dépenses normalisées hors gestion et hors réserve sont de \dollars{63647.43}, la réserve de \dollars{8103}, la gestion imputée à quatre pour cent du revenu brut effectif et les autres revenus de \dollars{9360} ; le revenu brut effectif requis est de \dollars{175917} et le revenu brut potentiel requis de \dollars{173316}, soit un loyer économique de \dollars{1203.59} par mois et par logement. Le loyer contractuel moyen, \dollars{1149.58}, lui est inférieur de \dollars{54} ; le loyer de marché moyen, \dollars{1291.92}, lui est supérieur de \dollars{88}. La lecture est immédiate : au taux du marché, la valeur au rôle n'est soutenue que par des loyers situés entre les loyers en place et les loyers de marché, ce qui est cohérent avec la règle de l'article 45.1 de la Loi sur la fiscalité municipale, qui évalue l'immeuble au rôle comme si le vendeur détenait les droits des locataires (\cref{ch:02,ch:09}), et avec une date de référence antérieure de vingt-six mois. Appliquée à la valeur par capitalisation directe du revenu contractuel, \dollars{2037503}, la même chaîne redonne exactement \dollars{1149.58}, ce que le test du chapitre vérifie. | |
| 431 | + | |
| 432 | +\emph{Étape 5 : la normalisation d'un comparable.} Pour estimer le loyer de marché des 4½ du cas 3, l'évaluateur dispose d'un comparable fictif offert à \dollars{1450} par mois chauffé et éclairé. Avec le profil de consommation du \cref{tab:26:electricite}, le coût mensuel moyen de l'électricité au tarif D est de \dollars{89.45} et le loyer nu équivalent de \dollars{1360.55}, qui se situe dans la fourchette des loyers de marché nus retenus pour les 4½, de \dollars{1240} à \dollars{1478}, et au-dessus de leur moyenne. Si le comparable incluait en outre un stationnement que les baux du sujet facturent séparément, sa valeur mensuelle, extraite des cases louées isolément dans le quartier, se retrancherait de même ; aucune valeur de stationnement n'est avancée ici faute de source vérifiable. | |
| 433 | + | |
| 434 | +\emph{Étape 6 : le calendrier.} Les douze baux échoient le 30 juin 2027. Si l'acquéreur prend possession le 1\ier{} septembre 2026, c'est lui qui transmettra les avis de modification entre le 30 décembre 2026 et le 30 mars 2027 et qui recevra les refus éventuels jusqu'au 30 avril, et c'est lui qui devra saisir le tribunal avant le 30 mai pour les baux refusés (\cref{fig:26:chronologie}). La projection du \cref{ch:30} suppose une indexation de \pct{3.1} des loyers en place à compter du 1\ier{} juillet 2027 ; l'évaluateur note que ce pourcentage est celui de 2026 et que celui de 2027 n'est pas publié, et qu'un acquéreur qui laisserait passer la fenêtre d'avis reconduirait les douze baux aux conditions de 2026, perdant une année d'indexation, soit environ \dollars{5100} de revenu. | |
| 435 | + | |
| 436 | +\emph{Le triplex du cas 2.} Le \cref{tab:26:cas2} applique la même lecture au triplex de Limoilou. Le revenu brut potentiel contractuel est de \dollars{41832} contre \dollars{49332} au marché, soit un écart de \dollars{7500} par an et de \pct{15.2}, plus élevé que celui du cas 3 parce que le bail du rez-de-chaussée, en place depuis 2019, est à \pct{26.8} sous le marché estimé ; le logement du troisième étage, reloué en 2025, est au marché. L'ancienneté moyenne est de quatre ans et deux baux sur trois sont à plus de dix pour cent sous le marché. Avec trois logements, la rotation ne se modélise pas par une fraction annuelle : chaque départ est un événement discret, et l'évaluateur raisonne par scénarios de départ du locataire du rez-de-chaussée, dont l'écart de \dollars{383} par mois vaut, par l'\cref{eq:26:va-ecart} à \pct{7.25}, \pct{3.5} et une rotation de \pct{13.0}, celle de la région de Québec \parencite{schlrmltables2025}, environ \dollars{26000}. Le \cref{ch:32} reprend le triplex dans l'optique de l'acheteur occupant, pour qui le logement du rez-de-chaussée vaut aussi par la possibilité de reprise de l'article 1957, et le \cref{ch:46} en dresse le dossier complet. | |
| 437 | +\end{exemple} | |
| 438 | + | |
| 439 | +\begin{table}[htbp] | |
| 440 | +\caption{Cas 3 : valeur actuelle espérée de l'écart contractuel de chaque logement selon la rotation annuelle (taux d'actualisation \pct{7.25}, croissance de l'écart \pct{3.5}, écart net de l'inoccupation de \pct{3.9} ; données synthétiques)}\label{tab:26:va} | |
| 441 | +\centering | |
| 442 | +\footnotesize\setlength{\tabcolsep}{4pt} | |
| 443 | +\begin{tabular}{lS[table-format=2.0]S[table-format=4.0]S[table-format=6.0]S[table-format=6.0]S[table-format=6.0]S[table-format=6.0]} | |
| 444 | +\toprule | |
| 445 | +Logement & {Anc. (ans)} & {$\Delta_{j1}$ net (\$)} & {$\rho = \pct{8.5}$ (\$)} & {$\rho = \pct{9.4}$ (\$)} & {$\rho = \pct{15}$ (\$)} & {Sans rotation (\$)} \\ | |
| 446 | +\midrule | |
| 447 | +104 & 1 & 254 & 2022 & 1882 & 1316 & 6765 \\ | |
| 448 | +301 & 1 & 323 & 2573 & 2396 & 1675 & 8611 \\ | |
| 449 | +202 & 2 & 565 & 4503 & 4192 & 2932 & 15068 \\ | |
| 450 | +304 & 2 & 773 & 6158 & 5732 & 4009 & 20604 \\ | |
| 451 | +303 & 3 & 1107 & 8823 & 8213 & 5744 & 29522 \\ | |
| 452 | +101 & 5 & 1130 & 9007 & 8384 & 5863 & 30137 \\ | |
| 453 | +201 & 8 & 2318 & 18473 & 17197 & 12026 & 61812 \\ | |
| 454 | +203 & 8 & 2364 & 18841 & 17539 & 12265 & 63042 \\ | |
| 455 | +204 & 8 & 2156 & 17187 & 15999 & 11188 & 57506 \\ | |
| 456 | +302 & 8 & 2537 & 20219 & 18822 & 13162 & 67654 \\ | |
| 457 | +102 & 12 & 2491 & 19852 & 18480 & 12923 & 66424 \\ | |
| 458 | +103 & 18 & 3679 & 29318 & 27292 & 19085 & 98099 \\ | |
| 459 | +\midrule | |
| 460 | +Total & 6.3 & 19697 & 156977 & 146128 & 102188 & 525244 \\ | |
| 461 | +\bottomrule | |
| 462 | +\end{tabular} | |
| 463 | +\tabsource{\synth{\texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{va\_ecart\_logements}), graine 20261031 ; \eqref{eq:26:va-ecart} ; la colonne « sans rotation » est $\Delta_{j1}/(r-g)$. Les totaux à \pct{15} et sans rotation coïncident avec ceux du \cref{ch:02}.}} | |
| 464 | +\end{table} | |
| 465 | + | |
| 466 | +\begin{figure}[htbp] | |
| 467 | +\centering | |
| 468 | +\includegraphics[width=\textwidth]{ch26/ch26-fig-va-ecart.pdf} | |
| 469 | +\caption{Cas 3 : valeur actuelle espérée de l'écart contractuel de chaque logement pour des rotations de \pct{8.5}, \pct{9.4} et \pct{15}, les logements étant classés par ancienneté du locataire ; la décote agrégée passe de \dollars{156977} à \dollars{102188} lorsque la rotation passe du taux observé pour les immeubles de six à dix-neuf logements de Montréal à l'hypothèse du dossier, et le logement 103 en porte près du cinquième.}\label{fig:26:va-ecart} | |
| 470 | +\figsource{\synth{\texttt{analysis/python/figures/ch26\_figures.py}, graine 20261031} ; taux de rotation : \parencite{schlrmltables2025}.} | |
| 471 | +\end{figure} | |
| 472 | + | |
| 473 | +\begin{table}[htbp] | |
| 474 | +\caption{État locatif du triplex du cas 2 (Limoilou, Québec) au 1\ier{} septembre 2026 (données synthétiques)}\label{tab:26:cas2} | |
| 475 | +\centering | |
| 476 | +\footnotesize | |
| 477 | +\begin{tabular}{lccS[table-format=2.0]S[table-format=4.0]S[table-format=4.0]S[table-format=3.0]S[table-format=2.1]S[table-format=1.3]c} | |
| 478 | +\toprule | |
| 479 | +Logement & Type & Superficie (m\textsuperscript{2}) & {Anc. (ans)} & {Contrat (\$/mois)} & {Marché (\$/mois)} & {Écart (\$/mois)} & {Écart (\%)} & {Ratio} & Début du bail \\ | |
| 480 | +\midrule | |
| 481 | +Rez-de-chaussée & 5½ & 92 & 7 & 1047 & 1430 & 383 & 26.8 & 0.732 & 2019-07-01 \\ | |
| 482 | +2\textsuperscript{e} étage & 5½ & 92 & 4 & 1188 & 1430 & 242 & 16.9 & 0.831 & 2022-07-01 \\ | |
| 483 | +3\textsuperscript{e} étage & 4½ & 78 & 1 & 1251 & 1251 & 0 & 0.0 & 1.000 & 2025-07-01 \\ | |
| 484 | +\midrule | |
| 485 | +Total & & 262 & 4.0 & 3486 & 4111 & 625 & 15.2 & 0.848 & \\ | |
| 486 | +\bottomrule | |
| 487 | +\end{tabular} | |
| 488 | +\tabsource{\synth{\texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{cas2\_etat}, revenus par \texttt{traite.cas2.revenus}), graine 20261031 ; revenu brut potentiel annuel \dollars{41832} (contrat) et \dollars{49332} (marché) ; chauffage non inclus ; ligne « Total » : ancienneté moyenne, sommes, écart et ratio pondérés.}} | |
| 489 | +\end{table} | |
| 490 | + | |
| 491 | +\section{Sensibilité : rotation, croissance et taux}\label{sec:26:sensibilite} | |
| 492 | + | |
| 493 | +La valeur de l'écart contractuel dépend de trois paramètres que l'état locatif ne contient pas : la rotation $\rho$, la croissance $g$ de l'écart et le taux d'actualisation $r$. Le \cref{tab:26:sensibilite} fait varier la rotation de \pct{5} à \pct{25} pour trois taux d'actualisation et trois taux de croissance, l'écart net de première année étant fixé à \dollars{19697}. Le résultat principal est que la rotation domine : à \pct{7.25} et \pct{3.5}, la valeur agrégée de l'écart passe de \dollars{220691} à \pct{5} de rotation à \dollars{66487} à \pct{25}, un rapport de un à trois virgule trois, et à \dollars{525244} sans rotation. Le taux d'actualisation compte peu : à \pct{15} de rotation, l'écart vaut \dollars{107779} à \pct{6.25} et \dollars{97148} à \pct{8.25}, soit une variation de dix pour cent pour deux cents points de base, parce que la rotation raccourcit la durée effective des flux et que l'actualisation pèse peu sur des flux courts. La croissance de l'écart compte peu également, pour la même raison : à \pct{15} de rotation, l'écart vaut \dollars{97872} si l'écart croît de \pct{2.5} par an et \dollars{106902} s'il croît de \pct{4.5}. L'ordre d'importance s'inverse à faible rotation : à \pct{5}, deux points de croissance font varier la valeur de \dollars{199460} à \dollars{246980}. | |
| 494 | + | |
| 495 | +\begin{table}[htbp] | |
| 496 | +\caption{Sensibilité de la valeur actuelle agrégée de l'écart contractuel du cas 3 à la rotation annuelle, au taux d'actualisation et à la croissance de l'écart (écart net de première année \dollars{19697} ; données synthétiques)}\label{tab:26:sensibilite} | |
| 497 | +\centering | |
| 498 | +\footnotesize\setlength{\tabcolsep}{5pt} | |
| 499 | +\begin{tabular}{S[table-format=2.1]S[table-format=6.0]S[table-format=6.0]S[table-format=6.0]S[table-format=6.0]S[table-format=6.0]S[table-format=6.0]} | |
| 500 | +\toprule | |
| 501 | +& \multicolumn{3}{c}{Taux d'actualisation $r$ ($g = \pct{3.5}$)} & \multicolumn{3}{c}{Croissance de l'écart $g$ ($r = \pct{7.25}$)} \\ | |
| 502 | +\cmidrule(lr){2-4}\cmidrule(lr){5-7} | |
| 503 | +{Rotation $\rho$ (\%)} & {\pct{6.25} (\$)} & {\pct{7.25} (\$)} & {\pct{8.25} (\$)} & {\pct{2.5} (\$)} & {\pct{3.5} (\$)} & {\pct{4.5} (\$)} \\ | |
| 504 | +\midrule | |
| 505 | +5.0 & 248538 & 220691 & 198455 & 199460 & 220691 & 246980 \\ | |
| 506 | +8.5 & 170571 & 156977 & 145390 & 146308 & 156977 & 169324 \\ | |
| 507 | +9.4 & 157838 & 146128 & 136036 & 136925 & 146128 & 156658 \\ | |
| 508 | +15.0 & 107779 & 102188 & 97148 & 97872 & 102188 & 106902 \\ | |
| 509 | +25.0 & 68809 & 66487 & 64316 & 64845 & 66487 & 68214 \\ | |
| 510 | +\bottomrule | |
| 511 | +\end{tabular} | |
| 512 | +\tabsource{\synth{\texttt{analysis/python/cases/ch26\_etat\_locatif.py} (fonction \texttt{sensibilite\_va}), graine 20261031 ; \eqref{eq:26:va-ecart} appliquée à l'écart agrégé ; sans rotation, la valeur est de \dollars{525244} à $r = \pct{7.25}$ et $g = \pct{3.5}$.}} | |
| 513 | +\end{table} | |
| 514 | + | |
| 515 | +La leçon méthodologique est que l'effort d'analyse doit porter sur la rotation. Les données publiques en donnent l'ordre de grandeur par région, par taille de logement et par taille d'immeuble ; l'état locatif en donne l'historique propre à l'immeuble, par les dates d'entrée des locataires en place et, si le gestionnaire les conserve, par les dates de départ des locataires passés ; la composition du locatariat en module la projection, les locataires âgés protégés par l'article 1959.1 et les locataires à loyer très bas partant moins. L'évaluateur retient une rotation de base, la documente, et présente la valeur de l'écart pour une fourchette, exactement comme il le fait pour un taux de capitalisation. Lorsque la rotation est incertaine et l'écart important, le modèle géométrique peut être remplacé par une projection logement par logement avec des probabilités de départ propres à chaque bail, que le \cref{ch:40} traite par simulation. | |
| 516 | + | |
| 517 | +\begin{erreurs} | |
| 518 | +Capitaliser le revenu net calculé aux loyers de marché avec un taux extrait de ventes d'immeubles à baux en place, ou l'inverse, alors que l'acquéreur ne peut résilier les baux \parencite[art.~1937]{ccq} ; le \cref{ch:29} a chiffré l'erreur à plus de vingt pour cent sur le cas 3. Supposer que les loyers rejoindront le marché à la prochaine reconduction, alors que la fixation ne tient aucun compte de la valeur locative et que le locataire qui refuse reste dans les lieux. Traiter la rotation comme une donnée de marché transposable à tout immeuble, alors qu'elle dépend de la composition du locatariat et de l'écart lui-même. Comparer des loyers chauffés et des loyers nus sans normalisation, ou normaliser avec un prix moyen du kilowattheure qui ignore la seconde tranche du tarif. Inscrire un dépôt de garantie ou des loyers perçus d'avance dans l'analyse, alors que l'article 1904 les interdit. Confondre loyer demandé et loyer de marché, ou loyer fixé par le tribunal et loyer de marché. Omettre de vérifier les avis transmis et les demandes pendantes, de sorte que la projection suppose une indexation que le vendeur a déjà perdue en laissant passer la fenêtre d'avis. Valoriser un scénario de repositionnement fondé sur des évictions pendant le moratoire ou sans tenir compte des indemnités de l'article 1965. Attribuer une part des dépenses d'immobilisation au local commercial en fixation, alors que le règlement l'exclut. | |
| 519 | +\end{erreurs} | |
| 520 | + | |
| 521 | +\begin{limites} | |
| 522 | +Les douze baux du cas 3 et les trois du cas 2 sont synthétiques ; leur écart au marché suit une loi déclarée et ne mesure pas la dispersion réelle des loyers québécois. Le modèle de rotation géométrique suppose une probabilité de départ indépendante de l'ancienneté et de l'écart, hypothèse contredite par l'intuition économique et favorable au locateur ; les taux de rotation de la SCHL portent sur l'ensemble des appartements d'initiative privée et non sur les immeubles à loyers déprimés. La formule fermée de la valeur de l'écart suppose des dépenses indépendantes du niveau des loyers, ce qui n'est pas exact lorsque la gestion est imputée en pourcentage du revenu. Le profil de consommation d'électricité et le loyer du comparable chauffé-éclairé sont des hypothèses de travail, aucune facture moyenne officielle n'ayant pu être vérifiée ; les taxes de vente sont exclues et la hausse tarifaire de 2027 est appliquée uniformément à toutes les composantes du tarif, ce qui est une approximation. L'appellation « section G » du formulaire de bail est d'usage, les annexes du règlement sur les formulaires n'étant pas reproduites par LégisQuébec ; l'appellation « clause F » pour les restrictions de l'article 1955 n'a pas pu être vérifiée dans le règlement et n'est pas employée ici. Le pourcentage de base du Tribunal pour 2027 n'était pas publié au 31 octobre 2026, et l'état du moratoire de la Loi 65 doit être revérifié avant le 6 juin 2027. Aucun loyer commercial de marché n'est avancé, faute de source publique. Les dates du calendrier sont calculées en mois civils et peuvent différer d'un jour de la présentation usuelle du Tribunal. Enfin, le chapitre décrit le droit en vigueur au 15 octobre 2026 ; les règles du bail de logement ont été modifiées trois fois depuis 2024 et doivent être revérifiées à chaque mandat. | |
| 523 | +\end{limites} | |
| 524 | + | |
| 525 | +\begin{synthese} | |
| 526 | +\begin{itemize} | |
| 527 | +\item Le bail de logement est un régime d'ordre public : formulaire obligatoire, avis du loyer précédent, aucun dépôt, reconduction de plein droit, avis de modification de trois à six mois avant le terme, refus dans le mois, fixation par le Tribunal selon des critères qui ignorent la valeur locative de marché ; l'acquéreur achète les baux en place. | |
| 528 | +\item Le loyer contractuel se lit, le loyer de marché s'estime pour un nouveau bail et les mêmes services, le loyer effectif corrige les concessions, le loyer économique mesure ce qu'une valeur de référence exige ; chacun a sa place dans l'approche du revenu et aucun ne remplace l'autre. | |
| 529 | +\item L'état locatif s'analyse par l'écart moyen pondéré, la part des baux sous le marché à plusieurs seuils, la concentration de l'écart et l'ancienneté ; pour le cas 3, l'écart est de \pct{11.0}, porté à \pct{44.2} par trois baux, avec une ancienneté moyenne de 6,3 ans. | |
| 530 | +\item La trajectoire des loyers en place est en deux régimes : indexation bornée par la fixation tant que le locataire reste, retour au marché à son départ ; pour un immeuble neuf, le loyer maximal des cinq ans inscrit au bail borne la trajectoire. | |
| 531 | +\item La valeur actuelle espérée de l'écart d'un logement est $\Delta_{j1}/[r - g + \rho(1+g)]$ : la rotation domine, le taux et la croissance comptent peu ; la cession, la reprise, l'éviction, le moratoire et l'indemnité de l'article 1965 façonnent la rotation. | |
| 532 | +\item Les loyers se normalisent en loyers nus avant toute comparaison, à partir de la structure tarifaire des services inclus et d'un profil de consommation déclaré ; la seconde tranche du tarif D interdit l'usage d'un prix moyen. | |
| 533 | +\item Le local commercial du rez-de-chaussée relève du droit commun : baux longs, loyer de base et loyer additionnel, base nette équivalente, risques de crédit et de vacance propres, exclusion de la répartition des dépenses d'immobilisation en fixation. | |
| 534 | +\end{itemize} | |
| 535 | +\end{synthese} | |
| 536 | + | |
| 537 | +\section*{Exercices} | |
| 538 | +\addcontentsline{toc}{section}{Exercices} | |
| 539 | + | |
| 540 | +\begin{exercice}[1]{Calendrier des avis}{ex:26:1} | |
| 541 | +Un bail de douze mois court du 1\ier{} juillet 2026 au 30 juin 2027 ; un second bail, de six mois, court du 1\ier{} juillet au 31 décembre 2026. Pour chacun, indiquez la fenêtre pendant laquelle le locateur peut transmettre un avis de modification du loyer, la date limite de réponse du locataire si l'avis est reçu au dernier jour permis, la date limite de la demande de fixation en cas de refus à cette date, et la date limite d'un avis de reprise. Si le logement est reloué le lendemain du terme, jusqu'à quelle date le nouveau locataire peut-il demander la fixation du loyer, avec et sans l'avis de l'article 1896 ? Citez les articles. | |
| 542 | +\end{exercice} | |
| 543 | + | |
| 544 | +\begin{exercice}[1]{Indicateurs d'un état locatif}{ex:26:2} | |
| 545 | +Un immeuble de six logements présente les loyers contractuels mensuels suivants, avec entre parenthèses le loyer de marché estimé et l'année d'entrée du locataire : \dollars{850} (\dollars{1100}, 2012), \dollars{925} (\dollars{1100}, 2016), \dollars{1180} (\dollars{1300}, 2021), \dollars{1240} (\dollars{1300}, 2025), \dollars{1410} (\dollars{1550}, 2019), \dollars{1495} (\dollars{1550}, 2024). À la date d'évaluation du 1\ier{} septembre 2026, calculez le revenu brut potentiel contractuel et au marché, l'écart moyen pondéré \eqref{eq:26:ecart-pondere}, la moyenne simple des ratios, la part des baux à plus de cinq, dix et vingt pour cent sous le marché \eqref{eq:26:part-sous-marche}, la concentration de l'écart sur les trois baux les plus en retard et l'ancienneté moyenne. Commentez la différence entre l'écart pondéré et la moyenne simple des ratios. | |
| 546 | +\end{exercice} | |
| 547 | + | |
| 548 | +\begin{exercice}[2]{Normalisation d'un loyer chauffé-éclairé}{ex:26:3} | |
| 549 | +Un comparable de 4½ est offert à \dollars{1500} par mois, chauffage et électricité inclus. On suppose une consommation annuelle de \num{14000} kWh répartie selon le profil mensuel du \cref{tab:26:electricite} multiplié par $14/12$. À l'aide du tarif D du 1\ier{} avril 2026 \eqref{eq:26:tarifD}, calculez le coût mensuel de chaque mois, le nombre de mois où la seconde tranche s'applique, le coût annuel, le coût mensuel moyen et le loyer nu équivalent \eqref{eq:26:normalise}. Comparez au cas de \num{12000} kWh et \dollars{1450} du chapitre et expliquez pourquoi le coût ne croît pas proportionnellement à la consommation. | |
| 550 | +\end{exercice} | |
| 551 | + | |
| 552 | +\begin{exercice}[2]{Valeur de l'écart d'un bail ancien}{ex:26:4} | |
| 553 | +Le locataire du logement 103 du cas 3 paie \dollars{728} pour un logement dont le marché demande \dollars{1047}. Avec une inoccupation de \pct{3.9}, un taux d'actualisation de \pct{7.25} et une croissance de l'écart de \pct{3.5}, calculez la valeur actuelle espérée de l'écart \eqref{eq:26:va-ecart} pour des rotations de \pct{9.4} et de \pct{15}, puis la durée espérée d'occupation $1/\rho$ \eqref{eq:26:survie} et la valeur d'une annuité certaine de l'écart de première année sur cette durée. Expliquez pourquoi les deux approches diffèrent et laquelle est cohérente avec le chapitre 2. Que vaudrait l'écart s'il était perpétuel ? | |
| 554 | +\end{exercice} | |
| 555 | + | |
| 556 | +\begin{exercice}[2]{Loyer économique d'un triplex}{ex:26:5} | |
| 557 | +Pour le triplex du cas 2, le module partagé \texttt{traite.cas2} donne un revenu brut potentiel contractuel de \dollars{41832}, une inoccupation de \pct{3}, une gestion imputée à \pct{4} du revenu brut effectif, des dépenses normalisées hors gestion et hors réserve de \dollars{15120}, une réserve de \dollars{1800} et un taux global médian extrait des ventes de plex de \pct{3.17}. Calculez le loyer économique mensuel moyen \eqref{eq:26:economique} sur la valeur au rôle de \dollars{495000}, puis sur la valeur par capitalisation directe du revenu net contractuel. Comparez au loyer contractuel moyen et au loyer de marché moyen, et interprétez. | |
| 558 | +\end{exercice} | |
| 559 | + | |
| 560 | +\begin{exercice}[3]{Immeuble neuf et loyer maximal des cinq ans}{ex:26:6} | |
| 561 | +Un logement d'un immeuble livré en 2026 est loué \dollars{1600} par mois ; le bail contient la restriction de l'article 1955 et indique un loyer maximal de \dollars{1850} pour les cinq années. Calculez le taux de croissance annuel composé maximal \eqref{eq:26:gmax}. Comparez, sur les cinq premières années du bail et au taux de \pct{7.25}, la valeur actuelle des loyers de trois trajectoires : indexation au pourcentage de base de \pct{3.1} comme si le logement était soumis à la fixation, saut au loyer maximal dès la première reconduction, et croissance régulière au taux maximal. Le plafond est-il atteint par la trajectoire à \pct{3.1} avant la fin de la cinquième année ? Que se passe-t-il si le bail ne mentionne pas le loyer maximal ? Discutez ce que l'évaluateur doit retenir comme trajectoire de base et pourquoi. | |
| 562 | +\end{exercice} | |
| 563 | + | |
| 564 | +\begin{exercice}[3]{Bail commercial au rez-de-chaussée}{ex:26:7} | |
| 565 | +Le local commercial de \msq{110} au rez-de-chaussée d'un immeuble mixte est loué \dollars{36000} par an en loyer brut pour cinq ans, avec une option de renouvellement de cinq ans au loyer du marché ; les dépenses que le locateur assume et qu'un bail net ferait récupérer s'élèvent à \dollars{9500} par an. Calculez le loyer net équivalent et le loyer net au mètre carré \eqref{eq:26:loyer-net}. Comparez la valeur actuelle à \pct{7.25} des cinq loyers nets fixes à celle de cinq années de loyer d'un logement de marché moyen du cas 3, \dollars{1292} par mois net d'une inoccupation de \pct{3.9} et croissant de \pct{3.5} par an. Expliquez pourquoi ce rapport de valeur ne suffit pas à comparer les deux flux, en discutant la durée, le risque de crédit, la vacance à l'échéance, l'option et le traitement du local dans la fixation des loyers des logements \parencite[art.~5]{reglCriteresFixation}. | |
| 566 | +\end{exercice} | |
| 567 | + | |
| 568 | +\section*{Pour aller plus loin} | |
| 569 | +\addcontentsline{toc}{section}{Pour aller plus loin} | |
| 570 | + | |
| 571 | +Le texte de référence reste le Code civil du Québec lui-même, dont les articles 1851 à 2000 se lisent en quelques heures et dont la version consolidée de LégisQuébec signale les modifications récentes \parencite{ccq} ; les lois modificatrices de 2024 \parencite{loi31_2024,loi65_2024} et de 2026 \parencite{loi111_2026} se lisent dans la Gazette officielle. Le site du Tribunal administratif du logement publie les pourcentages applicables, les communiqués annuels sur l'ajustement des loyers et des résumés de décisions qui éclairent l'interprétation des articles 1896, 1950 et 1955 \parencite{talIndices2026,talCommunique2026,talResumesDecisions}. Sur l'analyse économique des régimes d'encadrement des loyers, \textcite{arnott1995} a proposé la distinction entre les contrôles de première et de deuxième génération qui situe le régime québécois, et \textcite{kholodilin2024} en recense les effets empiriques sur l'offre, la mobilité et la dispersion des loyers ; \textcite{glaeserLuttmer2003} mesurent la mauvaise allocation des logements sous contrôle, \textcite{sims2007} et \textcite{autorPalmerPathak2014} l'effet de la fin du contrôle au Massachusetts, et \textcite{diamondMcquadeQian2019} ses effets distributifs à San Francisco ; pour le Canada, \textcite{smith1988} et \textcite{fallisSmith1985} analysent le régime ontarien. Sur l'analyse des baux et du revenu locatif en évaluation, les chapitres consacrés aux revenus de \textcite{appraisal2026} et de \textcite{fisherMartin2007}, et le traitement des baux par \textcite{wyatt2022} et \textcite{baumCrosbyDevaney2021}, qui développent l'analyse des baux commerciaux, complètent le présent chapitre ; les données du marché locatif se lisent dans les rapports et tableaux annuels de la Société canadienne d'hypothèques et de logement \parencite{schlLocatif2025,schlrmltables2025}. | |
modified
manuscript/chapters/ch27.tex
+477 −1
@@ -1,2 +1,478 @@ | ||
| 1 | 1 | \chapter{Revenus potentiels, vacance et pertes}\label{ch:27} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +La méthode du revenu commence par une question que l'on croit simple : combien cet immeuble rapporte-t-il ? La réponse exige pourtant quatre décisions successives, et chacune pèse sur la valeur autant que le choix du taux de capitalisation qui viendra ensuite. Il faut d'abord fixer le revenu que les logements \emph{pourraient} produire, et savoir s'il s'agit des loyers inscrits aux baux, des loyers que le marché paierait aujourd'hui ou d'une combinaison des deux. Il faut ensuite estimer ce que ce revenu perdra en logements vides, en loyers impayés et en concessions, ce qui suppose de comprendre ce que mesure, et ce que ne mesure pas, le taux d'inoccupation publié chaque automne par la Société canadienne d'hypothèques et de logement. Il faut encore recenser les revenus accessoires qui ne sont pas des loyers, puis assembler le tout dans le revenu brut effectif, point de départ du revenu net d'exploitation que le \cref{ch:28} établira en déduisant les dépenses. Enfin, parce que l'acheteur paie pour les revenus futurs, il faut se prononcer sur la trajectoire des loyers, laquelle dépend au Québec d'un encadrement juridique singulier et de la rotation des locataires. Ce chapitre traite ces quatre décisions dans l'ordre, les applique à l'immeuble de douze logements de Rosemont (cas~3) et au triplex de Limoilou (cas~2), et prépare ainsi les chapitres~28 à~31 ainsi que les dossiers complets des chapitres~46 et~47. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +À la fin de ce chapitre, le lecteur sait : | |
| 7 | +\begin{itemize} | |
| 8 | +\item définir et calculer le revenu brut potentiel contractuel, le revenu brut potentiel au marché et le revenu brut potentiel mixte, et choisir celui qui convient au droit évalué et à la technique retenue ; | |
| 9 | +\item distinguer l'inoccupation physique, le taux de disponibilité et la vacance économique, lire les tableaux de l'Enquête sur les logements locatifs de la SCHL (univers, période, indicateurs de qualité, suppressions) et en tirer la borne inférieure d'une provision ; | |
| 10 | +\item dériver et appliquer le modèle de l'inoccupation frictionnelle $v_f = \rho\, d/12$ qui relie la rotation des locataires et la durée de vacance, et le compléter par les mauvaises créances et les concessions sans double comptage ; | |
| 11 | +\item traiter les autres revenus (stationnement, buanderie, rangement) et établir le revenu brut effectif selon la convention de l'ouvrage, en mesurant l'effet des conventions concurrentes ; | |
| 12 | +\item projeter les loyers d'un immeuble québécois selon trois trajectoires (indexation selon le Tribunal administratif du logement, relocation au marché au gré de la rotation, indice de marché) et expliquer pourquoi la rotation gouverne le rattrapage ; | |
| 13 | +\item reproduire chaque chiffre de l'exemple à partir des scripts du dossier et mesurer la sensibilité du revenu et de la valeur à la provision pour inoccupation, à la rotation et à la durée de vacance. | |
| 14 | +\end{itemize} | |
| 15 | +\end{objectifs} | |
| 16 | + | |
| 17 | +\section{Le revenu brut potentiel}\label{sec:27:rbp} | |
| 18 | + | |
| 19 | +\subsection{Trois bases pour un même revenu} | |
| 20 | + | |
| 21 | +Le revenu brut potentiel est le revenu annuel qu'un immeuble produirait si tous ses logements étaient loués toute l'année et si tous les loyers étaient encaissés. La définition semble univoque ; elle ne l'est pas, parce que le loyer de chaque logement peut être lu de deux façons. Le \emph{loyer contractuel} est celui que stipule le bail en vigueur ; le \emph{loyer de marché} est celui qu'un nouveau locataire accepterait aujourd'hui pour le même logement, dans les conditions du marché à la date d'évaluation. Dans un marché où les loyers des nouveaux baux ont progressé plus vite que les hausses accordées aux locataires en place, ce qui est la situation québécoise depuis 2021, les deux lectures divergent, et l'écart croît avec l'ancienneté du bail. La littérature professionnelle nord-américaine distingue en conséquence le revenu potentiel fondé sur les baux (\emph{contract rent}) et celui fondé sur le marché (\emph{market rent}), et rappelle que le choix entre les deux n'est pas une question de prudence mais de cohérence avec le droit évalué et avec la technique d'évaluation \parencite{appraisal2026,fisherMartin2007}. | |
| 22 | + | |
| 23 | +\begin{definition}{Revenu brut potentiel}{rbp} | |
| 24 | +Soit un immeuble de $n$ logements, $L_i$ le loyer mensuel contractuel du logement $i$ à la date d'évaluation et $M_i$ son loyer mensuel de marché estimé. Le \motcle{revenu brut potentiel} (RBP, \emph{potential gross income}) \emph{contractuel} et le RBP \emph{au marché} sont | |
| 25 | +\begin{equation}\label{eq:27:rbp} | |
| 26 | +RBP_c = 12 \sum_{i=1}^{n} L_i , \qquad RBP_m = 12 \sum_{i=1}^{n} M_i , | |
| 27 | +\end{equation} | |
| 28 | +et leur différence est le \motcle{déficit de loyer} (\emph{loss to lease}) de l'immeuble : | |
| 29 | +\begin{equation}\label{eq:27:deficit} | |
| 30 | +\Delta_L = RBP_m - RBP_c = 12 \sum_{i=1}^{n} (M_i - L_i), \qquad \delta_L = \frac{\Delta_L}{RBP_m}. | |
| 31 | +\end{equation} | |
| 32 | +Le RBP \emph{mixte} affecte le loyer contractuel aux logements occupés et le loyer de marché aux logements vacants à la date d'évaluation : $RBP_x = 12\big[\sum_{i \in \mathcal{O}} L_i + \sum_{i \in \mathcal{V}} M_i\big]$, où $\mathcal{O}$ et $\mathcal{V}$ sont les ensembles des logements occupés et vacants. | |
| 33 | +\end{definition} | |
| 34 | + | |
| 35 | +Le RBP mixte est la base la plus fréquente dans les dossiers réels, puisqu'un immeuble compte souvent un ou deux logements vacants ou en cours de relocation au moment de l'inspection ; le loyer de marché est alors la seule information disponible pour ces logements, et le loyer demandé par le propriétaire n'en est qu'un indice, à vérifier par comparaison. Dans le cas~3, tous les logements sont occupés et le RBP mixte coïncide avec le RBP contractuel. La notion de loyer de marché renvoie à l'étude du marché locatif du \cref{ch:15} et aux sources du \cref{ch:13} : loyers demandés dans le quartier pour des logements comparables, loyers des baux récents de l'immeuble lui-même, moyennes de la SCHL par zone et par taille de logement, corrigées de l'état intérieur, de l'étage et des services inclus. Un évaluateur qui reprend sans vérification la colonne « loyer potentiel » d'une fiche de courtier adopte l'opinion du vendeur ; la norme professionnelle lui impose au contraire d'exposer sa propre analyse des revenus et d'en indiquer la source \parencite{oeaqNormes,ivs2025}. | |
| 36 | + | |
| 37 | +\subsection{Ce que le loyer contient} | |
| 38 | + | |
| 39 | +Le RBP additionne des loyers, mais le mot « loyer » recouvre au Québec des réalités différentes selon ce que le bail inclut. Un loyer « tout compris » qui couvre le chauffage et l'électricité est plus élevé qu'un loyer où le locataire assume ces frais ; comparer les deux sans correction fausse à la fois le RBP et les dépenses, puisque l'énergie se retrouve alors du côté du locateur. L'état locatif doit donc préciser, pour chaque bail, les services inclus (chauffage, eau chaude, électricité, stationnement, rangement, électroménagers), afin que le loyer de marché soit estimé sur la même base et que les dépenses du \cref{ch:28} soient cohérentes. Dans le cas~3, aucun bail n'inclut le chauffage et six baux comprennent une case de stationnement ; les six autres cases sont louées séparément et leur produit figure dans les autres revenus (\cref{sec:27:autres}). Cette convention a une conséquence directe : si le stationnement est compris dans le loyer, il est soumis à la provision pour inoccupation avec le logement ; s'il est loué à part, il peut être traité comme un revenu accessoire dont le risque de vacance est propre. | |
| 40 | + | |
| 41 | +Le Tribunal administratif du logement a sa propre définition du revenu potentiel, qu'il est utile de connaître parce que les propriétaires la manient chaque hiver. Le formulaire « Renseignements nécessaires à la fixation du loyer » retient, pour la fixation 2026-2027, les loyers de décembre 2025 multipliés par douze, logement par logement, puis les revenus des locaux non résidentiels et les « autres revenus » de l'année \parencite{talFormulaireRN2026}. Il s'agit d'un RBP contractuel photographié en décembre, utilisé pour répartir les dépenses entre les logements ; il n'intègre ni inoccupation ni loyer de marché et ne doit pas être confondu avec le revenu de l'évaluateur. | |
| 42 | + | |
| 43 | +\subsection{L'état locatif et sa vérification} | |
| 44 | + | |
| 45 | +L'\motcle{état locatif} (\emph{rent roll}) est la pièce qui fonde le RBP contractuel : la liste des logements avec leur typologie, leur superficie, le loyer mensuel, la date de début du bail, son échéance, les services inclus et, idéalement, l'ancienneté du locataire. Le \cref{ch:26} a décrit le bail de logement et ses règles ; retenons ici ce que l'évaluateur doit vérifier. Les loyers déclarés doivent concorder avec les baux signés et avec les encaissements des derniers mois ; les hausses annoncées pour la prochaine reconduction ne sont acquises que si l'avis a été donné dans les délais et accepté, ou si le Tribunal a fixé le loyer \parencite[art.~1942 à 1947]{ccq}. Le loyer le plus bas payé au cours des douze mois précédant un nouveau bail doit avoir été déclaré au nouveau locataire dans la section~G du formulaire obligatoire, et celui-ci dispose de dix jours pour demander la fixation \parencite[art.~1896 et 1950]{ccq} ; un loyer fraîchement « remis au marché » après un départ n'est donc pas à l'abri d'une révision, et une concentration de baux récents à des loyers très supérieurs aux anciens mérite une question. Enfin, le locateur ne peut exiger aucun dépôt ni aucune somme autre que le loyer \parencite[art.~1904]{ccq} : contrairement à d'autres provinces, il n'existe au Québec aucune sûreté qui amortisse les mauvaises créances, ce qui justifie la provision discutée à la \cref{sec:27:vacance}. | |
| 46 | + | |
| 47 | +\begin{synthetique} | |
| 48 | +Les deux immeubles de ce chapitre sont les dossiers synthétiques des cas~3 et~2 : \texttt{data/synthetic/cas3\_montreal\_etat\_locatif.csv} (douze baux : quatre 3½, six 4½, deux 5½, tous échéant le 30~juin 2027, aucun chauffage inclus, six stationnements inclus), \texttt{cas3\_montreal\_hypotheses\_dcf.json} (provision d'inoccupation et de pertes de \pct{3.9}, autres revenus de \dollars{9360}, rotation de \pct{15}, croissance des loyers de \pct{3.1} pour les baux reconduits et de \pct{3.5} pour le marché) et \texttt{cas2\_quebec\_loyers.csv} (triplex de Limoilou : trois baux, loyer de marché estimé). Ils sont générés par \texttt{analysis/python/traite/synth.py} avec la graine~20261031 ; les loyers de marché sont calibrés sur les moyennes de la SCHL pour la zone Rosemont et la RMR de Québec en octobre 2025 \parencite{schlrmltables2025}, l'écart entre loyer contractuel et loyer de marché sur une décote pédagogique de deux pour cent par année d'ancienneté du bail, et la provision sur les ordres de grandeur discutés à la \cref{sec:27:vacance}. Tous les chiffres cités proviennent de \texttt{analysis/python/cases/ch27\_revenus.py}, qui appelle \texttt{traite.cas3.revenus}, \texttt{traite.cas2.revenus} et \texttt{traite.cas3.projection\_dcf} afin que les chapitres~29, 30, 32, 46 et~47 présentent les mêmes montants. Aucun immeuble, bail ou locataire réel n'est décrit. | |
| 49 | +\end{synthetique} | |
| 50 | + | |
| 51 | +Le \cref{tab:27:etat-type} résume l'état locatif du cas~3 par type de logement ; le détail bail par bail figure au \cref{ch:47}, qui en fait l'analyse complète, et n'est pas répété ici. Les loyers contractuels totalisent \dollars{13795} par mois, soit un RBP contractuel de \dollars{165540} ; les loyers de marché estimés totalisent \dollars{15503}, soit \dollars{186036}. Le déficit de loyer est de \dollars{20496} par année, \pct{11.0} du RBP au marché, et sa structure est éloquente : il atteint \pct{15.8} pour les quatre 3½, dont les locataires sont en place depuis neuf ans en moyenne, \pct{11.1} pour les six 4½ et seulement \pct{4.9} pour les deux 5½, reloués depuis moins de trois ans. C'est la signature d'un régime d'encadrement des loyers dits « de deuxième génération », qui plafonne les hausses des baux reconduits sans fixer le loyer des nouvelles locations : la dispersion entre anciens et nouveaux locataires s'accroît avec le temps \parencite{arnott1995,kholodilin2024}. | |
| 52 | + | |
| 53 | +\begin{table}[htbp] | |
| 54 | +\caption{Cas~3 : état locatif résumé par type de logement au 1\textsuperscript{er} septembre 2026 (loyers mensuels en dollars ; écart = loyer de marché moins loyer contractuel).} | |
| 55 | +\label{tab:27:etat-type} | |
| 56 | +\centering | |
| 57 | +\footnotesize\setlength{\tabcolsep}{4pt} | |
| 58 | +\begin{tabular}{l S[table-format=2.0] S[table-format=3.0] S[table-format=4.2] S[table-format=4.2] S[table-format=3.0] S[table-format=2.1] S[table-format=1.1] S[table-format=6.0] S[table-format=6.0]} | |
| 59 | +\toprule | |
| 60 | +{Type} & {Log.} & {Sup. (m\textsuperscript{2})} & {Contrat moyen (\$)} & {Marché moyen (\$)} & {Écart total (\$)} & {Écart (\%)} & {Anc. (ans)} & {RBP contrat (\$)} & {RBP marché (\$)} \\ | |
| 61 | +\midrule | |
| 62 | +3½ & 4 & 207 & 875.25 & 1039.00 & 655 & 15.8 & 9.0 & 42012 & 49872 \\ | |
| 63 | +4½ & 6 & 429 & 1192.00 & 1340.33 & 890 & 11.1 & 5.8 & 85824 & 96504 \\ | |
| 64 | +5½ & 2 & 189 & 1571.00 & 1652.50 & 163 & 4.9 & 2.5 & 37704 & 39660 \\ | |
| 65 | +\midrule | |
| 66 | +Total & 12 & 825 & 1149.58 & 1291.92 & 1708 & 11.0 & 6.3 & 165540 & 186036 \\ | |
| 67 | +\bottomrule | |
| 68 | +\end{tabular} | |
| 69 | +\tabsource{\synth{\texttt{analysis/python/cases/ch27\_revenus.py}, fonction \texttt{par\_type\_cas3} ; état locatif \texttt{cas3\_montreal\_etat\_locatif.csv}, graine 20261031}} | |
| 70 | +\end{table} | |
| 71 | + | |
| 72 | +\subsection{Quel revenu potentiel retenir ?} | |
| 73 | + | |
| 74 | +La question du RBP à retenir se tranche par le droit évalué et par la technique. L'acheteur d'un immeuble locatif acquiert le droit du locateur grevé des baux en vigueur : la vente ne permet pas au nouveau locateur de résilier les baux \parencite[art.~1937]{ccq}, les locataires ont droit au maintien dans les lieux et les loyers ne peuvent être modifiés qu'à la reconduction, dans les limites des critères de fixation. Le revenu que l'acheteur encaissera la première année est donc le revenu contractuel, et c'est lui qui entre dans la capitalisation directe du \cref{ch:29} : capitaliser le RBP au marché reviendrait à payer aujourd'hui pour des loyers que personne ne perçoit encore et que le droit ne permet pas d'exiger. Le \cref{ch:02} a rappelé la distinction entre la pleine propriété libre de baux et le droit du locateur ; pour un immeuble de douze logements dont les loyers sont en retard de onze pour cent sur le marché, les deux valeurs ne coïncident pas, et le \cref{ch:47} chiffre l'écart. | |
| 75 | + | |
| 76 | +Le RBP au marché n'est pas inutile pour autant. Il sert à mesurer le déficit de loyer, information que l'acheteur paie sous forme de taux de capitalisation plus bas ou qu'il modélise explicitement ; il fixe la borne supérieure de la trajectoire des loyers dans les flux actualisés du \cref{ch:30} ; il permet enfin la comparaison avec les ventes dont les loyers sont au marché, par exemple lorsqu'on extrait des taux ou des multiplicateurs. L'usage correct est donc de présenter les deux et de dire lequel sert à quoi, jamais de substituer silencieusement l'un à l'autre. Pour un triplex acheté par un occupant, le \cref{ch:32} ajoutera une nuance : la valeur du logement que l'acheteur occupera lui-même ne dépend pas de son loyer contractuel, mais de sa valeur d'usage, de sorte que le RBP « complet » aux trois loyers n'est qu'une convention de calcul. | |
| 77 | + | |
| 78 | +\section{Inoccupation et mauvaises créances}\label{sec:27:vacance} | |
| 79 | + | |
| 80 | +\subsection{Trois notions qu'il ne faut pas confondre} | |
| 81 | + | |
| 82 | +Le RBP est un plafond. Le revenu réellement encaissé en est séparé par trois pertes de nature différente : les logements vides pendant une partie de l'année, les loyers dus mais non payés, et les concessions consenties pour attirer ou retenir un locataire. La pratique regroupe les deux premières sous la provision pour « inoccupation et mauvaises créances » (\emph{vacancy and collection loss}), exprimée en proportion du RBP \parencite{brueggemanFisher2022,fisherMartin2007}. Avant de la chiffrer, il faut distinguer trois mesures qui portent des noms voisins. | |
| 83 | + | |
| 84 | +\begin{definition}{Inoccupation physique et vacance économique}{vacance} | |
| 85 | +Le \motcle{taux d'inoccupation physique} d'un parc ou d'un immeuble à une date $t$ est la proportion des logements vacants et offerts en location à cette date : $v^{\text{phys}}_t = N^{\text{vac}}_t / N$. Le \motcle{taux de disponibilité} y ajoute les logements occupés dont le locataire a donné son avis de départ. La \motcle{vacance économique} (ou inoccupation économique) d'un immeuble sur une période est la part du revenu brut potentiel qui n'a pas été encaissée, quelle qu'en soit la cause : | |
| 86 | +\begin{equation}\label{eq:27:vacance-eco} | |
| 87 | +v^{\text{éco}} = \frac{RBP - \text{loyers encaissés}}{RBP} = v^{\text{inocc}} + v^{\text{créances}} + v^{\text{concessions}} , | |
| 88 | +\end{equation} | |
| 89 | +où $v^{\text{inocc}}$ est la perte de loyer des périodes vacantes rapportée au RBP, $v^{\text{créances}}$ celle des loyers impayés nets des recouvrements et $v^{\text{concessions}}$ celle des mois gratuits et rabais non reflétés dans le loyer contractuel. C'est $v^{\text{éco}}$, noté $v$ dans la suite et dans l'annexe des conventions de calcul, qui entre dans le revenu brut effectif. | |
| 90 | +\end{definition} | |
| 91 | + | |
| 92 | +La première mesure est un état instantané du parc ; la troisième est un flux annuel propre à l'immeuble. Elles ne coïncident que dans un cas idéal où les logements vacants le resteraient toute l'année, où personne ne ferait défaut et où le loyer de chaque logement serait égal au loyer moyen. En pratique, la vacance économique excède presque toujours l'inoccupation physique mesurée à une date donnée, pour trois raisons que les sections suivantes développent : la mesure publique est prise à un moment de l'année où le marché québécois est au creux de son cycle saisonnier ; elle ne compte pas les loyers impayés ; et les logements vacants ne sont pas des logements quelconques. | |
| 93 | + | |
| 94 | +\subsection{Ce que mesure la SCHL} | |
| 95 | + | |
| 96 | +L'Enquête sur les logements locatifs de la SCHL est la seule mesure publique et régulière de l'inoccupation au Québec, et l'évaluateur doit en connaître les contours avant de s'en servir. Son univers est celui des appartements d'initiative privée situés dans des immeubles d'au moins trois logements, dans les centres de \num{10000} habitants et plus ; les duplex, les logements loués dans des maisons, les logements sociaux et les copropriétés offertes en location n'en font pas partie, ces dernières faisant l'objet d'une enquête distincte dont les tableaux~4 des fichiers rendent compte \parencite{schlLocatif2025,schlrmltables2025}. L'enquête a lieu en octobre, trois mois après la vague des déménagements du 1\textsuperscript{er} juillet, c'est-à-dire au moment où le plus grand nombre de logements libérés en été ont retrouvé preneur ; le taux d'octobre est donc un taux de basse saison pour un immeuble montréalais, et non une moyenne annuelle. Les tableaux publiés affectent à chaque estimation une lettre de qualité, de « a » (excellent) à « d » (passable, à utiliser avec prudence), suppriment les cellules dont l'échantillon ne permet pas d'estimation fiable (symbole « ** »), et signalent par une flèche les variations d'une année à l'autre qui sont statistiquement significatives, ce qui invite à ne pas commenter les autres. Le \cref{ch:04} a décrit la différence entre la variation brute des loyers moyens et la variation « même échantillon » ; la même prudence vaut pour l'inoccupation, dont la définition géographique suit celle du Recensement de 2021. | |
| 97 | + | |
| 98 | +\begin{table}[htbp] | |
| 99 | +\caption{Taux d'inoccupation et taux de rotation des appartements d'initiative privée (immeubles de trois logements et plus), six RMR du Québec, octobre 2024 et octobre 2025 (pourcentages).} | |
| 100 | +\label{tab:27:schl-rmr} | |
| 101 | +\centering | |
| 102 | +\begin{tabular}{l S[table-format=1.1] S[table-format=1.1] S[table-format=1.1] S[table-format=2.1] S[table-format=2.1]} | |
| 103 | +\toprule | |
| 104 | +{RMR} & {Inocc. 2024} & {Inocc. 2025} & {Inocc. 2 ch. 2025} & {Rotation 2024} & {Rotation 2025} \\ | |
| 105 | +\midrule | |
| 106 | +Montréal & 2.1 & 2.9 & 2.9 & 11.1 & 9.4 \\ | |
| 107 | +Québec & 0.9 & 2.4 & 2.5 & 13.9 & 13.0 \\ | |
| 108 | +Gatineau (partie du Québec) & 1.9 & 3.8 & 2.6 & 17.3 & 16.2 \\ | |
| 109 | +Sherbrooke & 1.4 & 2.7 & 3.0 & 10.4 & 12.0 \\ | |
| 110 | +Trois-Rivières & 0.9 & 2.7 & 2.5 & 10.2 & 10.1 \\ | |
| 111 | +Saguenay & 1.6 & 1.3 & 0.6 & 13.3 & 12.6 \\ | |
| 112 | +\bottomrule | |
| 113 | +\end{tabular} | |
| 114 | +\tabsource{SCHL, Enquête sur les logements locatifs, octobre 2025 (Rapport sur le marché locatif publié le 11~décembre 2025), tableaux 1.1.1 et 1.1.6 des tableaux de données par centre \parencite{schlrmltables2025}, consultés le 31~octobre 2026 ; chiffres cités avec attribution conformément aux conditions d'utilisation de la SCHL ; lecture par \texttt{analysis/python/cases/ch27\_revenus.py}. La rotation de Gatineau est de qualité « d ».} | |
| 115 | +\end{table} | |
| 116 | + | |
| 117 | +\begin{figure}[htbp] | |
| 118 | +\centering | |
| 119 | +\includegraphics[width=135mm]{ch27/ch27-fig-inoccupation-rmr.pdf} | |
| 120 | +\caption{Inoccupation des appartements d'initiative privée. À gauche, les six RMR du Québec en octobre 2024 et octobre 2025 : la détente est générale sauf à Saguenay, mais aucun marché ne dépasse \pct{4}. À droite, la RMR et l'île de Montréal en octobre 2025 selon la taille de l'immeuble : les petits immeubles de 3 à 19 logements, segment des plex et des immeubles de quartier, affichent \pct{2.1} à \pct{2.3}, contre \pct{5.1} à \pct{5.7} pour les immeubles de cent logements et plus.} | |
| 121 | +\figsource{SCHL, Enquête sur les logements locatifs, octobre 2025, tableaux 1.1.1 (fichier Québec, par centre) et 1.3.1 (fichier Montréal) \parencite{schlrmltables2025}, consultés le 31~octobre 2026 ; script \texttt{analysis/python/figures/ch27\_figures.py}.} | |
| 122 | +\label{fig:27:inoccupation-rmr} | |
| 123 | +\end{figure} | |
| 124 | + | |
| 125 | +Le \cref{tab:27:schl-rmr} et la \cref{fig:27:inoccupation-rmr} donnent la lecture d'octobre 2025. L'inoccupation s'établissait à \pct{2.9} dans la RMR de Montréal, \pct{2.4} à Québec, \pct{3.8} dans la partie québécoise de Gatineau, \pct{2.7} à Sherbrooke et à Trois-Rivières et \pct{1.3} à Saguenay ; un an plus tôt, cinq des six marchés étaient sous \pct{2}, et Québec comme Trois-Rivières sous \pct{1}. La détente est rapide, mais il faut la lire avec les lettres de qualité et les flèches : à Saguenay, la baisse de \pct{1.6} à \pct{1.3} n'est pas significative. Le taux de rotation, publié dans les mêmes tableaux, est la part des logements qui ont changé de locataire au cours des douze mois précédant l'enquête ; il était de \pct{9.4} à Montréal, \pct{13.0} à Québec et \pct{16.2} à Gatineau, et il a reculé dans les grands marchés en 2025, ce qui est cohérent avec des locataires qui conservent des baux devenus avantageux. La rotation est la clé de la \cref{sec:27:frictionnel} et de la \cref{sec:27:projection} : elle gouverne à la fois la vacance frictionnelle et le rythme auquel les loyers en place rejoignent le marché. | |
| 126 | + | |
| 127 | +Les ventilations de la SCHL par taille d'immeuble, par année de construction et par quartile de loyer, réunies au \cref{tab:27:schl-structure}, sont plus utiles encore pour l'évaluateur d'un immeuble donné que le taux global de la RMR. Trois régularités s'en dégagent. Premièrement, l'inoccupation croît avec la taille de l'immeuble : sur l'île de Montréal, \pct{2.2} pour les immeubles de 6 à 19 logements contre \pct{5.1} pour ceux de 100 logements et plus, et la rotation suit la même pente, de \pct{8.5} à \pct{14.2} dans la RMR. Les petits immeubles de quartier abritent des locataires plus stables, à des loyers plus bas, dans des logements souvent plus grands. Deuxièmement, l'inoccupation est concentrée dans les logements chers : dans la RMR, elle n'est que de \pct{1.3} dans le premier quartile de loyer, mais de \pct{4.9} dans le quatrième, et le loyer moyen des logements inoccupés de l'île (\dollars{1573}) dépasse de \pct{23} celui des logements occupés (\dollars{1275}), l'écart atteignant \pct{35} pour les deux chambres. Troisièmement, les immeubles construits depuis 2015 affichent \pct{5.6} d'inoccupation, contre \pct{2.2} à \pct{3.3} pour le parc d'avant 1990 : la détente de 2024-2025 est d'abord celle de l'offre neuve, chère, en cours d'absorption. Pour un immeuble de 1962 de douze logements à loyers modestes, la borne inférieure pertinente n'est donc pas le \pct{2.9} de la RMR mais le \pct{2.2} du segment ; pour une tour neuve du centre-ville, elle est bien au-dessus. | |
| 128 | + | |
| 129 | +\begin{table}[htbp] | |
| 130 | +\caption{Structure de l'inoccupation et de la rotation, Montréal, octobre 2025 : selon la taille de l'immeuble (RMR et île), selon le quartile de loyer (RMR) et selon l'année de construction (île) ; loyer moyen des logements inoccupés et occupés (île). Pourcentages et dollars par mois.} | |
| 131 | +\label{tab:27:schl-structure} | |
| 132 | +\centering | |
| 133 | +\footnotesize\setlength{\tabcolsep}{4.5pt} | |
| 134 | +\begin{tabular}{l S[table-format=1.1] S[table-format=1.1] S[table-format=2.1] l S[table-format=1.1] l S[table-format=1.1]} | |
| 135 | +\toprule | |
| 136 | +\multicolumn{4}{l}{\emph{Taille de l'immeuble}} & \multicolumn{2}{l}{\emph{Quartile de loyer (RMR)}} & \multicolumn{2}{l}{\emph{Année de construction (île)}} \\ | |
| 137 | +\cmidrule(lr){1-4}\cmidrule(lr){5-6}\cmidrule(lr){7-8} | |
| 138 | +{Logements} & {Inocc. RMR} & {Inocc. île} & {Rotation RMR} & {Quartile} & {Inocc.} & {Période} & {Inocc.} \\ | |
| 139 | +\midrule | |
| 140 | +3 à 5 & 2.1 & 2.3 & 7.6 & Q1 (loyers les plus bas) & 1.3 & Avant 1940 & 2.2 \\ | |
| 141 | +6 à 19 & 2.1 & 2.2 & 8.5 & Q2 & 1.9 & 1940 à 1959 & 2.6 \\ | |
| 142 | +20 à 49 & 3.4 & 3.9 & 9.4 & Q3 & 3.0 & 1960 à 1974 & 3.3 \\ | |
| 143 | +50 à 99 & 3.7 & 3.8 & 12.3 & Q4 (loyers les plus élevés) & 4.9 & 1975 à 1989 & 2.8 \\ | |
| 144 | +100 et plus & 5.7 & 5.1 & 14.2 & & & 2015 ou après & 5.6 \\ | |
| 145 | +Tous & 2.9 & 3.1 & 9.4 & & & Tous & 3.1 \\ | |
| 146 | +\midrule | |
| 147 | +\multicolumn{8}{l}{\emph{Loyer moyen (\$/mois), île de Montréal} : logements inoccupés \num{1573} contre occupés \num{1275} (tous les types, $+\pct{23.4}$) ; deux chambres \num{1815} contre \num{1349} ($+\pct{34.5}$).} \\ | |
| 148 | +\bottomrule | |
| 149 | +\end{tabular} | |
| 150 | +\tabsource{SCHL, Enquête sur les logements locatifs, octobre 2025, tableaux 1.3.1, 1.3.4, 1.4, 1.2.1 et 1.1.9 du fichier de la RMR de Montréal \parencite{schlrmltables2025}, consultés le 31~octobre 2026 ; chiffres cités avec attribution ; les cellules de 1990 à 2014 sont supprimées par la SCHL ; lecture par \texttt{analysis/python/cases/ch27\_revenus.py}.} | |
| 151 | +\end{table} | |
| 152 | + | |
| 153 | +\subsection{Inoccupation structurelle, cyclique et frictionnelle}\label{sec:27:frictionnel} | |
| 154 | + | |
| 155 | +L'économie urbaine décompose l'inoccupation d'un marché en une composante \emph{structurelle} ou « naturelle », qui subsiste à l'équilibre parce que la recherche d'un logement et d'un locataire prend du temps, et une composante \emph{cyclique}, écart entre le taux observé et le taux naturel, qui gouverne la pression sur les loyers : lorsque l'inoccupation descend sous son niveau naturel, les loyers réels accélèrent, et inversement \parencite{wheaton1999,dipasqualeWheaton1996}. Le taux naturel varie d'un marché à l'autre avec la mobilité des ménages, la taille des immeubles et le coût de la recherche ; \textcite{sivitanidouSivitanides1999} montrent qu'il se répercute jusque dans les taux de capitalisation, les marchés à vacance naturelle élevée exigeant des taux plus élevés. Le Québec de 2021-2024, avec des taux de \pct{1} à \pct{2} bien inférieurs à ce que la plupart des auteurs considèrent comme un équilibre, a connu la hausse des loyers « même échantillon » la plus forte en trente ans ; la remontée de 2025 vers \pct{3} s'accompagne déjà d'un ralentissement de cette hausse, comme le prédit la théorie. | |
| 156 | + | |
| 157 | +Pour l'évaluateur d'un immeuble, la composante la plus directement modélisable est l'inoccupation \emph{frictionnelle} : celle qui résulte mécaniquement du départ des locataires et du temps nécessaire pour relouer. Elle se dérive en quelques lignes. | |
| 158 | + | |
| 159 | +\begin{proposition}{Inoccupation frictionnelle et rotation}{frictionnel} | |
| 160 | +Soit un immeuble de $n$ logements dont une fraction $\rho$ change de locataire chaque année (taux de rotation annuel) et dont chaque logement libéré reste vacant en moyenne $d$ mois avant d'être reloué. En régime permanent, la part du revenu brut potentiel perdue en inoccupation frictionnelle est | |
| 161 | +\begin{equation}\label{eq:27:frictionnel} | |
| 162 | +v_f = \frac{\rho\, d}{12} . | |
| 163 | +\end{equation} | |
| 164 | +Si une fraction $\pi$ des départs donne lieu à une relocation sans interruption (cession de bail, nouveau bail débutant le lendemain du départ), la formule devient $v_f = \rho\,(1-\pi)\, d/12$. | |
| 165 | +\end{proposition} | |
| 166 | +\begin{proof} | |
| 167 | +Chaque année, $\rho n$ logements se libèrent. Chacun reste vide $d$ mois, soit $d/12$ année, de sorte que le nombre de logements-années vacants est $\rho n \cdot d/12$. Si les loyers des logements qui se libèrent sont en moyenne égaux au loyer moyen de l'immeuble $\bar L$, la perte de loyer annuelle est $12 \bar L \cdot \rho n \, d/12 = \rho n d \bar L$ et le RBP est $12 n \bar L$ ; le rapport est $\rho d/12$. Lorsque seule une fraction $1-\pi$ des départs crée une vacance, le nombre de logements-années vacants est multiplié par $1-\pi$. Si les logements qui se libèrent ont un loyer moyen différent de $\bar L$, par exemple parce que les locataires les plus anciens, aux loyers les plus bas, partent plus rarement, il faut remplacer $\bar L$ par le loyer moyen des logements libérés ; en régime d'encadrement, celui-ci dépasse $\bar L$ et la perte relative est un peu supérieure à $\rho d/12$, calculée sur les loyers de marché. | |
| 168 | +\end{proof} | |
| 169 | + | |
| 170 | +La formule a trois mérites. Elle relie la provision à deux grandeurs observables : la rotation, que la SCHL publie par RMR, par zone et par taille d'immeuble, et la durée de vacance, que l'évaluateur peut estimer à partir des registres de l'immeuble, des délais de location observés dans le quartier ou des annonces. Elle rend explicite la cohérence que doit respecter un dossier : on ne peut pas, dans la même évaluation, supposer une rotation élevée pour accélérer le rattrapage des loyers au marché (\cref{sec:27:projection}) et une inoccupation frictionnelle faible. Elle montre enfin que la provision est linéaire dans chacune des deux variables, ce que le \cref{tab:27:frictionnel} illustre : avec la rotation de \pct{9.4} de la RMR de Montréal et un mois de vacance par relocation, l'inoccupation frictionnelle n'est que de \pct{0.78} ; avec la rotation de \pct{13} de Québec et un mois et demi, elle atteint \pct{1.62} ; avec la rotation de \pct{15} retenue dans le dossier du cas~3 et un mois, \pct{1.25}. | |
| 171 | + | |
| 172 | +\begin{table}[htbp] | |
| 173 | +\caption{Inoccupation frictionnelle $v_f = \rho\,d/12$ (en pourcentage du RBP) selon le taux de rotation annuel $\rho$ et la durée moyenne de vacance $d$ entre deux baux.} | |
| 174 | +\label{tab:27:frictionnel} | |
| 175 | +\centering | |
| 176 | +\begin{tabular}{l S[table-format=1.2] S[table-format=1.2] S[table-format=1.2] S[table-format=1.2] S[table-format=1.2]} | |
| 177 | +\toprule | |
| 178 | +{Rotation $\rho$} & {$d = 0{,}5$ mois} & {$d = 1$ mois} & {$d = 1{,}5$ mois} & {$d = 2$ mois} & {$d = 3$ mois} \\ | |
| 179 | +\midrule | |
| 180 | +\pct{5} & 0.21 & 0.42 & 0.63 & 0.83 & 1.25 \\ | |
| 181 | +\pct{9.4} (Montréal, 2025) & 0.39 & 0.78 & 1.18 & 1.57 & 2.35 \\ | |
| 182 | +\pct{13} (Québec, 2025) & 0.54 & 1.08 & 1.62 & 2.17 & 3.25 \\ | |
| 183 | +\pct{15} (dossier du cas~3) & 0.62 & 1.25 & 1.88 & 2.50 & 3.75 \\ | |
| 184 | +\pct{20} & 0.83 & 1.67 & 2.50 & 3.33 & 5.00 \\ | |
| 185 | +\pct{25} & 1.04 & 2.08 & 3.12 & 4.17 & 6.25 \\ | |
| 186 | +\bottomrule | |
| 187 | +\end{tabular} | |
| 188 | +\tabsource{\cref{eq:27:frictionnel}, fonction \texttt{traite.finance.taux\_vacance\_frictionnelle} ; taux de rotation d'octobre 2025 : SCHL \parencite{schlrmltables2025} ; script \texttt{analysis/python/cases/ch27\_revenus.py}.} | |
| 189 | +\end{table} | |
| 190 | + | |
| 191 | +Le rapprochement de la formule avec la mesure de la SCHL éclaire aussi la saisonnalité. Dans un marché où la quasi-totalité des baux échoient le 30~juin, les départs se concentrent sur quelques semaines et les logements libérés sont pour la plupart reloués pour le 1\textsuperscript{er} juillet, parfois avec un chevauchement de baux qui annule la vacance ($\pi$ élevé). Le taux d'octobre capte ce qui reste : les logements qui n'ont pas trouvé preneur à l'été, auxquels s'ajoutent les quelques départs d'automne. La composante frictionnelle d'un immeuble à baux synchronisés peut donc être inférieure à ce que donnerait la formule avec $d = 1$, tandis que la composante structurelle, celle des logements que le marché ne veut plus au loyer demandé, apparaît en plein dans le taux d'octobre. C'est pourquoi la décomposition retenue pour le cas~3 (\pct{1.25} de frictionnel, \pct{2.65} de créances, de concessions et de risque structurel) est une convention déclarée et non une mesure ; aucune statistique publique n'établit la vacance économique des petits immeubles québécois, et les publications de l'industrie qui circulent sur ce point n'ont pas été retenues faute de méthodologie vérifiable. | |
| 192 | + | |
| 193 | +\subsection{Mauvaises créances et concessions} | |
| 194 | + | |
| 195 | +Les \motcle{mauvaises créances} sont les loyers exigibles qui ne seront jamais encaissés, nets des sommes recouvrées, auxquels s'ajoutent les frais de recouvrement et les loyers perdus pendant la procédure. Le droit québécois pèse sur leur ampleur de deux façons opposées. D'un côté, l'interdiction de tout dépôt de garantie \parencite[art.~1904]{ccq} prive le locateur de la sûreté qui, ailleurs, couvre un ou deux mois d'impayés. De l'autre, le Code civil permet au locateur de demander la résiliation du bail lorsque le locataire est en retard de plus de trois semaines dans le paiement du loyer \parencite[art.~1971]{ccq}, et le Tribunal administratif du logement traite ces demandes selon une procédure accélérée ; la perte typique d'un défaut est donc de quelques mois de loyer, non d'une année. Le niveau des créances irrécouvrables dépend ensuite du profil des locataires, de la rigueur de la sélection, du niveau des loyers par rapport aux revenus du quartier et de la conjoncture ; il n'existe pas de statistique publique par type d'immeuble, et la provision relève du jugement de l'évaluateur, fondé si possible sur l'historique de l'immeuble et sur celui d'immeubles comparables gérés par le même gestionnaire. Une provision de l'ordre d'un demi à un point de pourcentage du RBP est courante dans les dossiers de petits immeubles bien tenus ; il s'agit d'une pratique, non d'une norme, et l'évaluateur doit l'écrire comme telle. | |
| 196 | + | |
| 197 | +Les \motcle{concessions} (mois gratuits, rabais temporaires, électroménagers offerts) sont rares dans le parc ancien à loyers modestes mais fréquentes dans l'offre neuve en période d'absorption, ce que l'inoccupation de \pct{5.6} des immeubles construits depuis 2015 laisse deviner. Elles posent un problème de double comptage que la formule suivante règle. Si un bail de $T$ mois au loyer nominal $L$ comporte $m$ mois gratuits, le loyer mensuel effectif est | |
| 198 | +\begin{equation}\label{eq:27:concession} | |
| 199 | +L^{\text{eff}} = L \,\frac{T - m}{T}, | |
| 200 | +\end{equation} | |
| 201 | +et l'on a le choix entre inscrire $L^{\text{eff}}$ dans le RBP ou inscrire $L$ et traiter la concession dans $v^{\text{concessions}} = m/T$ ; les deux donnent le même revenu, mais faire les deux à la fois soustrait la concession deux fois. Un mois gratuit sur douze à \dollars{1300} donne un loyer effectif de \dollars{1191.67} et un revenu annuel de \dollars{14300} ; le compter aussi dans la provision ramènerait le revenu à \dollars{13108}, erreur de huit pour cent sur ce logement. La convention de l'ouvrage est d'inscrire les loyers nominaux dans le RBP et de porter les concessions dans $v$, parce que c'est ainsi que les ventes comparables sont généralement analysées ; l'essentiel est la symétrie avec le traitement des comparables, principe que le \cref{ch:29} érige en règle. | |
| 202 | + | |
| 203 | +\subsection{Choisir la provision}\label{sec:27:choix-v} | |
| 204 | + | |
| 205 | +La provision $v$ retenue pour un immeuble se construit par couches, chacune justifiée par une source ou par une hypothèse déclarée. La première couche est l'inoccupation physique du segment auquel appartient l'immeuble, lue dans les tableaux de la SCHL par taille d'immeuble, par zone et par année de construction ; c'est une borne inférieure, à la date de l'enquête. La deuxième est l'ajustement frictionnel cohérent avec l'hypothèse de rotation du dossier, par l'\cref{eq:27:frictionnel}, lorsque la rotation retenue s'écarte de celle du segment. La troisième est la provision pour mauvaises créances et concessions. La quatrième est prospective : le revenu capitalisé étant celui des douze mois à venir, et la projection courant sur dix ans, la provision doit refléter l'évolution attendue du marché ; la SCHL prévoyait, dans sa mise à jour de l'été 2026, une inoccupation de \pct{3.8} pour la RMR de Montréal en 2026, de \pct{4.5} en 2027 et de \pct{4.8} en 2028 \parencite{schlpmh2026ete}. La dernière vérification est la cohérence avec la méthode d'extraction des taux : si les taux de capitalisation ont été extraits de ventes dont le revenu a été reconstitué avec une provision de \pct{4}, appliquer \pct{2} au sujet revient à lui attribuer une prime que le marché n'a pas payée. | |
| 206 | + | |
| 207 | +Pour le cas~3, ces couches conduisent à \pct{3.9} du RBP contractuel : \pct{2.2} d'inoccupation pour les immeubles de 6 à 19 logements de l'île en octobre 2025, relevée pour tenir compte de la détente prévue, une composante frictionnelle de \pct{1.25} cohérente avec la rotation de \pct{15} et une durée de vacance d'un mois, et environ un point pour les créances. Pour le triplex du cas~2, la convention est de \pct{3} : l'inoccupation de \pct{2.4} de la RMR de Québec et quelque six dixièmes de point pour les créances, la rotation plus élevée de Québec (\pct{13}) étant compensée par la synchronisation des baux au 1\textsuperscript{er} juillet. Ces décompositions sont celles des dossiers synthétiques, et le \cref{ch:47} soumet la provision du cas~3 à un test de résistance où elle varie de \pct{2.4} à \pct{6.3}. | |
| 208 | + | |
| 209 | +\section{Les autres revenus}\label{sec:27:autres} | |
| 210 | + | |
| 211 | +Les \motcle{autres revenus} (\emph{other income}, \emph{miscellaneous income}) sont les produits de l'immeuble qui ne sont pas des loyers de logements : location de cases de stationnement non comprises dans les baux, machines de la buanderie commune, casiers de rangement, location d'un garage ou d'un local accessoire, redevances d'antennes ou de panneaux publicitaires sur les grands immeubles. Au Québec, où le locateur ne peut exiger de son locataire « une somme d'argent autre que le loyer » \parencite[art.~1904]{ccq}, les frais administratifs, pénalités de retard et autres suppléments que l'on rencontre ailleurs n'ont pas leur place dans cette rubrique, et un état des revenus qui en contiendrait devrait être épuré. Le formulaire du Tribunal administratif du logement réserve d'ailleurs une ligne distincte aux « autres revenus » de l'année \parencite{talFormulaireRN2026}, ce qui facilite leur repérage dans les documents du propriétaire. | |
| 212 | + | |
| 213 | +Trois règles gouvernent leur traitement. D'abord, les autres revenus retenus sont ceux que l'immeuble produit \emph{au marché} et de façon durable : un stationnement loué à un voisin au double du tarif courant, ou une antenne dont le contrat vient à échéance, n'est pas un revenu stabilisé. Ensuite, ils doivent être cohérents avec les dépenses : les revenus de buanderie s'accompagnent de frais d'électricité, d'entretien et de remplacement des machines qui doivent figurer au \cref{ch:28} ; un revenu de stationnement suppose du déneigement. Enfin, il faut décider s'ils sont soumis à la provision pour inoccupation. La convention de l'ouvrage, fixée à l'annexe des conventions de calcul, ne les y soumet pas, parce que les stationnements loués par bail distinct ont leur propre marché et que les revenus de buanderie et de rangement dépendent du nombre de locataires présents plus que de l'inoccupation marginale d'un logement ; l'alternative, qui applique $v$ à l'ensemble, est défendable et la \cref{sec:27:rbe} en mesure l'effet. Ce qui n'est pas défendable est d'appliquer une convention au sujet et l'autre aux comparables. | |
| 214 | + | |
| 215 | +Dans le cas~3, les autres revenus s'élèvent à \dollars{9360} par année, soit \dollars{65} par logement et par mois en moyenne et \pct{5.7} du RBP contractuel : les six cases de stationnement non comprises dans les baux, la buanderie commune et quelques casiers de rangement. C'est un niveau plausible pour un immeuble de quartier sans service ; les grands immeubles avec stationnement intérieur et locaux commerciaux au rez-de-chaussée en tirent une part beaucoup plus importante, et les plex presque rien, la case de stationnement y étant généralement comprise dans le bail, comme dans le cas~2, dont les autres revenus sont nuls. | |
| 216 | + | |
| 217 | +\section{Le revenu brut effectif}\label{sec:27:rbe} | |
| 218 | + | |
| 219 | +Le \motcle{revenu brut effectif} (RBE, \emph{effective gross income}) est le revenu que l'immeuble est censé encaisser au cours de la première année d'exploitation, toutes sources confondues, après déduction des pertes attendues. L'annexe des conventions de calcul fixe sa définition pour tout l'ouvrage : | |
| 220 | +\begin{equation}\label{eq:27:rbe} | |
| 221 | +RBE = RBP_c\,(1 - v) + R_{\text{autres}} , | |
| 222 | +\end{equation} | |
| 223 | +où $RBP_c$ est le revenu brut potentiel contractuel (ou mixte lorsqu'il y a des logements vacants), $v$ la provision combinée pour inoccupation, mauvaises créances et concessions, et $R_{\text{autres}}$ les autres revenus stabilisés. C'est le RBE, et non le RBP, qui sert d'assiette au revenu net d'exploitation du \cref{ch:28} : $\NOI = RBE - DE - RR$. La fonction \texttt{traite.finance.revenu\_brut\_effectif} implante l'\cref{eq:27:rbe} et toutes les fonctions des cas y recourent. | |
| 224 | + | |
| 225 | +Deux conventions concurrentes existent et il faut savoir les reconnaître dans un rapport ou une fiche de vente. La première applique la provision à l'ensemble des revenus, $RBE' = (RBP_c + R_{\text{autres}})(1-v)$ ; elle est plus prudente d'un montant $v\,R_{\text{autres}}$, soit \dollars{365} pour le cas~3, ce qui est négligeable ici mais ne l'est plus pour un immeuble où les autres revenus pèsent dix ou quinze pour cent. La seconde applique la provision au RBP de marché, $RBE'' = RBP_m(1-v) + R_{\text{autres}}$, et constitue une erreur lorsque les baux sont en place : pour le cas~3, elle donnerait \dollars{188141} au lieu de \dollars{168444}, soit \pct{11.7} de trop, et conduirait à une surévaluation du même ordre si le taux de capitalisation n'était pas ajusté en conséquence, comme le \cref{ch:29} le montre. L'écart entre ces conventions n'est pas une affaire de goût : il doit être le même pour le sujet et pour les comparables dont on extrait les taux et les multiplicateurs. | |
| 226 | + | |
| 227 | +Le RBE se prête à deux lectures complémentaires. La première est le rapport du RBE au RBP contractuel, $RBE/RBP_c = (1-v) + R_{\text{autres}}/RBP_c$, qui vaut \num{1.0175} pour le cas~3 : les autres revenus y font plus que compenser la provision, et le RBE dépasse légèrement le RBP, ce qui surprend parfois le lecteur d'un rapport et mérite une ligne d'explication. La seconde est ce que l'on peut appeler le \motcle{taux d'occupation économique}, rapport entre les loyers que l'immeuble encaisse effectivement et ceux qu'il encaisserait pleinement loué au marché : | |
| 228 | +\begin{equation}\label{eq:27:occupation-eco} | |
| 229 | +\theta = \frac{RBP_c\,(1-v)}{RBP_m} = (1-v)\,(1-\delta_L), | |
| 230 | +\end{equation} | |
| 231 | +où $\delta_L$ est le déficit de loyer relatif de l'\cref{eq:27:deficit}. Pour le cas~3, $\theta = \num{0.961} \times \num{0.890} = \pct{85.5}$ : l'immeuble encaisse 85 cents et demi par dollar de loyer de marché, et le manque à gagner tient pour les trois quarts au retard des baux et pour un quart à l'inoccupation et aux pertes. Pour le triplex du cas~2, $\theta = \pct{82.3}$, le déficit de loyer y étant de \pct{15.2}. Cet indicateur résume en un chiffre le potentiel que les techniques des chapitres~29 et~30 devront valoriser ; il est aussi l'un des premiers que regarde un prêteur. | |
| 232 | + | |
| 233 | +\section{La projection des loyers}\label{sec:27:projection} | |
| 234 | + | |
| 235 | +\subsection{Trois indices pour trois objets} | |
| 236 | + | |
| 237 | +Projeter le revenu d'un immeuble québécois suppose de distinguer ce que mesurent les trois indices publics de l'évolution des loyers, parce qu'ils ne décrivent pas le même objet. Le premier est la variation « même échantillon » des loyers moyens publiée par la SCHL, qui compare les loyers des mêmes logements d'un octobre à l'autre : \pct{7.2} pour les logements de deux chambres et \pct{7.4} pour l'ensemble des logements de la RMR de Montréal entre octobre 2024 et octobre 2025, et de \pct{4.5} à Gatineau à \pct{12.5} à Saguenay pour l'ensemble des RMR \parencite{schlrmltables2025}. Cet indice mélange les baux reconduits, dont la hausse est encadrée, et les logements reloués au marché ; il mesure la progression du revenu d'un parc existant, rotation comprise. Le deuxième est la composante « loyer » de l'indice des prix à la consommation du Québec, qui suit le loyer payé par un échantillon de ménages locataires : \pct{3.3} entre septembre 2025 et septembre 2026, après une croissance annuelle moyenne de \pct{4.0} sur dix ans et de \pct{6.5} sur cinq ans \parencite{statcanipc}. Il est plus lisse et plus bas que l'indice de la SCHL, parce que les ménages stables y pèsent davantage. Le troisième est le pourcentage de base du Tribunal administratif du logement, qui plafonne de fait la hausse des baux reconduits lorsque le locataire refuse l'augmentation : \pct{3.1} pour 2026 selon la méthode entrée en vigueur le 1\textsuperscript{er} janvier 2026, après \pct{4.5} pour 2025 \parencite{talIndices2026}. Sous l'ancienne méthode, le Tribunal indiquait avoir accordé en moyenne \pct{3.8} d'ajustement de 2015 à 2024 \parencite{talCommunique2025}. | |
| 238 | + | |
| 239 | +La nouvelle méthode rend le pourcentage de base prévisible, puisqu'il est défini par l'article~3.1 du Règlement sur les critères de fixation de loyer comme la moyenne des trois dernières variations annuelles de l'indice des prix à la consommation du Québec : | |
| 240 | +\begin{equation}\label{eq:27:tal-base} | |
| 241 | +g_c = \frac{1}{3}\left[\frac{A - B}{B} + \frac{B - C}{C} + \frac{C - D}{D}\right], \qquad g_c \geq 0, | |
| 242 | +\end{equation} | |
| 243 | +où $A$ est l'IPC moyen de la période de référence et $B$, $C$, $D$ ceux des trois périodes de douze mois antérieures, un résultat négatif étant réputé nul \parencite[art.~3.1]{reglCriteresFixation,decret1455_2025}. À ce pourcentage s'ajoutent, selon la part attribuable au logement, la variation des taxes municipales et scolaires et des primes d'assurance au-delà du pourcentage de base, et un rendement de \pct{5} sur les dépenses d'immobilisation de la période de référence \parencite[art.~3 et~4]{reglCriteresFixation}. Le \cref{ch:34} détaille le calcul et ses scénarios ; pour la projection, retenons que la trajectoire contractuelle suit l'inflation passée avec retard, qu'elle est bornée vers le bas par zéro et qu'elle ne tient aucun compte du loyer de marché, que le Tribunal a rappelé n'être « pas un critère à prendre en considération » \parencite{talResumesDecisions}. | |
| 244 | + | |
| 245 | +\subsection{Le modèle de projection} | |
| 246 | + | |
| 247 | +Le revenu brut potentiel d'un immeuble sous encadrement se projette logement par logement. Soit $L_{i,t}$ le loyer mensuel contractuel du logement $i$ l'année $t$, $M_{i,t}$ son loyer de marché, $g_c$ le taux d'indexation des baux reconduits et $g_m$ la croissance des loyers de marché. Chaque année, une fraction $\rho$ des logements se libère et chaque logement libéré est reloué à son loyer de marché ; les autres sont reconduits avec l'indexation : | |
| 248 | +\begin{equation}\label{eq:27:trajectoire} | |
| 249 | +M_{i,t} = M_{i,1}(1+g_m)^{t-1}, \qquad | |
| 250 | +L_{i,t} = \begin{cases} M_{i,t} & \text{si le logement } i \text{ est reloué l'année } t, \\ L_{i,t-1}(1+g_c) & \text{sinon,} \end{cases} \qquad | |
| 251 | +RBP_t = 12 \sum_{i=1}^{n} L_{i,t} . | |
| 252 | +\end{equation} | |
| 253 | +Trois trajectoires de référence découlent de ce modèle. Lorsque $\rho = 0$, le RBP croît au taux $g_c$ et, si $g_c < g_m$, s'éloigne indéfiniment du marché : c'est la trajectoire « TAL seul », plancher de la projection. Lorsque tous les logements sont au marché, $RBP_t = RBP_{m,1}(1+g_m)^{t-1}$ : c'est la trajectoire « indice de marché », plafond de la projection. Entre les deux, la trajectoire « rotation » dépend de $\rho$ et de l'ordre dans lequel les logements se libèrent ; l'hypothèse du cas~3, partagée avec les chapitres~30 et~47, est que les logements les plus sous le marché se libèrent en premier, ce qui est favorable au locateur et doit être testé. La fonction \texttt{traite.cas3.projection\_dcf} implante ce modèle, avec $g_c = \pct{3.1}$, $g_m = \pct{3.5}$ et $\rho = \pct{15}$ dans le dossier de base ; la valeur de $g_m$ est volontairement inférieure aux hausses de 2024-2025, qu'aucun analyste ne prolonge sur dix ans, et légèrement supérieure à l'inflation. | |
| 254 | + | |
| 255 | +Le choix de $\rho$ est le plus lourd de conséquences. La SCHL mesurait une rotation de \pct{9.4} dans la RMR de Montréal en 2025 et de \pct{8.5} pour les immeubles de 6 à 19 logements ; le dossier du cas~3 retient \pct{15}, soit environ deux logements par an, en posant que la composition de l'immeuble (quatre 3½ et six 4½ occupés par des ménages plus mobiles) justifie une rotation supérieure à la moyenne régionale. C'est une hypothèse favorable au propriétaire, que le \cref{ch:47} soumet au test de résistance ; le présent chapitre en mesure l'effet par une variante à \pct{9.4}. La Loi~31 de 2024, en permettant au locateur de refuser une cession de bail pour un motif autre qu'un motif sérieux, le bail étant alors résilié \parencite[art.~1978.2]{ccq,loi31_2024}, a supprimé le principal mécanisme par lequel un loyer bas se transmettait d'un locataire au suivant, ce qui soutient l'hypothèse de relocation au marché ; mais le droit du nouveau locataire de demander la fixation après avoir pris connaissance du loyer précédent \parencite[art.~1950]{ccq} la tempère, et un évaluateur prudent peut ne relouer qu'à une fraction du marché. | |
| 256 | + | |
| 257 | +\subsection{Quatre trajectoires pour le cas~3} | |
| 258 | + | |
| 259 | +Le \cref{tab:27:trajectoires} et la \cref{fig:27:trajectoires} présentent les trajectoires du RBP du cas~3 sur l'horizon de dix ans du dossier. Elles partent toutes du même point, \dollars{165540} en 2026, sauf la trajectoire de marché qui part de \dollars{186036}. Avec l'indexation seule, le RBP atteint \dollars{217887} en 2035, et l'écart au marché se creuse de \pct{11.0} à \pct{14.1} : un immeuble sans rotation voit son retard s'aggraver chaque année de la différence $g_m - g_c$. Avec la rotation de \pct{15} du dossier, le RBP atteint \dollars{251101} et l'écart au marché se referme à \pct{1.0} dès la septième année ; la croissance annuelle moyenne du RBP est alors de \pct{4.74}, soit l'indexation de \pct{3.1} augmentée d'un rattrapage d'environ \num{1.6} point par an qui s'épuise à mesure que les baux anciens disparaissent. Avec la rotation régionale de \pct{9.4}, le RBP atteint \dollars{247212} et l'écart résiduel est de \pct{2.5} en 2035 ; la croissance moyenne est de \pct{4.56}. La somme des RBP des dix années, qui est ce que l'actualisation pondère, est de \dollars{1906494} pour l'indexation seule, \dollars{2057623} pour la rotation régionale, \dollars{2113053} pour la rotation du dossier et \dollars{2182461} au marché. | |
| 260 | + | |
| 261 | +\begin{table}[htbp] | |
| 262 | +\caption{Cas~3 : revenu brut potentiel projeté selon quatre trajectoires (dollars courants) et écart au marché (pourcentage du RBP au marché) ; $g_c = \pct{3.1}$, $g_m = \pct{3.5}$, relocation au marché des logements les plus sous le marché en premier.} | |
| 263 | +\label{tab:27:trajectoires} | |
| 264 | +\centering | |
| 265 | +\footnotesize\setlength{\tabcolsep}{4pt} | |
| 266 | +\begin{tabular}{S[table-format=2.0] l S[table-format=6.0] S[table-format=6.0] S[table-format=6.0] S[table-format=6.0] S[table-format=2.1] S[table-format=2.1] S[table-format=2.1]} | |
| 267 | +\toprule | |
| 268 | +{Année} & {Exercice} & {TAL seul (\$)} & {Rotation 9,4 \% (\$)} & {Rotation 15 \% (\$)} & {Marché (\$)} & {Écart TAL (\%)} & {Écart 9,4 \% (\%)} & {Écart 15 \% (\%)} \\ | |
| 269 | +\midrule | |
| 270 | +1 & 2026-2027 & 165540 & 165540 & 165540 & 186036 & 11.0 & 11.0 & 11.0 \\ | |
| 271 | +2 & 2027-2028 & 170672 & 174669 & 177389 & 192547 & 11.4 & 9.3 & 7.9 \\ | |
| 272 | +3 & 2028-2029 & 175963 & 182938 & 188095 & 199286 & 11.7 & 8.2 & 5.6 \\ | |
| 273 | +5 & 2030-2031 & 187041 & 200200 & 209340 & 213481 & 12.4 & 6.2 & 1.9 \\ | |
| 274 | +7 & 2032-2033 & 198818 & 219817 & 226565 & 228686 & 13.1 & 3.9 & 0.9 \\ | |
| 275 | +10 & 2035-2036 & 217887 & 247212 & 251101 & 253548 & 14.1 & 2.5 & 1.0 \\ | |
| 276 | +\midrule | |
| 277 | +\multicolumn{2}{l}{Croissance annuelle moyenne, années 1 à 10} & {\pct{3.10}} & {\pct{4.56}} & {\pct{4.74}} & {\pct{3.50}} & & & \\ | |
| 278 | +\multicolumn{2}{l}{Somme des RBP, années 1 à 10} & 1906494 & 2057623 & 2113053 & 2182461 & & & \\ | |
| 279 | +\multicolumn{2}{l}{Valeur par flux actualisés (pour mémoire)} & 1756414 & 2140916 & 2208566 & {—} & & & \\ | |
| 280 | +\bottomrule | |
| 281 | +\end{tabular} | |
| 282 | +\tabsource{\synth{\texttt{traite.cas3.projection\_dcf} avec rotation 0, \pct{9.4} et \pct{15}, via \texttt{analysis/python/cases/ch27\_revenus.py} (fonction \texttt{trajectoires\_cas3}) ; valeur DCF : \texttt{traite.cas3.valeur\_dcf} avec les hypothèses du dossier (\cref{ch:30}) ; graine 20261031}} | |
| 283 | +\end{table} | |
| 284 | + | |
| 285 | +\begin{figure}[htbp] | |
| 286 | +\centering | |
| 287 | +\includegraphics[width=135mm]{ch27/ch27-fig-trajectoires.pdf} | |
| 288 | +\caption{Trajectoires du revenu brut potentiel du cas~3 sur dix ans. La zone grisée est l'écart entre l'indexation seule (pointillé) et le marché (carrés) ; il s'élargit sans rotation. La trajectoire de base (ronds, rotation de \pct{15}) rejoint le marché à un pour cent près en sept ans ; la variante à la rotation régionale de \pct{9.4} (triangles) laisse un écart de \pct{2.5} en 2035. Le rattrapage est entièrement porté par la relocation des logements libérés.} | |
| 289 | +\figsource{\synth{script \texttt{analysis/python/figures/ch27\_figures.py}, fonction \texttt{traite.cas3.projection\_dcf}, graine 20261031}} | |
| 290 | +\label{fig:27:trajectoires} | |
| 291 | +\end{figure} | |
| 292 | + | |
| 293 | +La dernière ligne du \cref{tab:27:trajectoires} donne, pour mémoire, la valeur par flux actualisés que le \cref{ch:30} obtient avec chacune de ces trajectoires et les hypothèses communes du dossier (dépenses, réserve, dépenses en capital, taux d'actualisation de \pct{7.25}, taux terminal de \pct{5.0}) : \dollars{2208566} avec la rotation du dossier, \dollars{2140916} avec la rotation régionale et \dollars{1756414} sans rotation. L'écart entre la première et la troisième, \dollars{452152} ou \pct{20} de la valeur, est le prix de l'hypothèse de rotation ; l'écart entre la première et la deuxième, \pct{3.1}, est celui de l'optimisme relatif du dossier par rapport aux données régionales. Aucune autre hypothèse du dossier n'a un effet comparable sur la valeur, ce que le diagramme en tornade du \cref{ch:30} et le test de résistance du \cref{ch:47} confirment. L'évaluateur qui projette un immeuble québécois ne peut donc pas se contenter d'un taux de croissance unique « des loyers » : il doit expliciter $g_c$, $g_m$, $\rho$ et l'ordre des départs, les justifier par les données de la SCHL et du Tribunal, et en déclarer la sensibilité. | |
| 294 | + | |
| 295 | +\section{Exemple intégral : du revenu brut potentiel au revenu brut effectif}\label{sec:27:exemple} | |
| 296 | + | |
| 297 | +\begin{exemple}{Revenus de première année du cas~3 et du cas~2}{cascade} | |
| 298 | +L'immeuble sujet du cas~3 est un bâtiment fictif de douze logements (825~m\textsuperscript{2} de superficie locative) construit en 1962 dans Rosemont--La Petite-Patrie, évalué au 1\textsuperscript{er} septembre 2026 ; ses douze baux échoient le 30~juin 2027, aucun n'inclut le chauffage, six comprennent une case de stationnement. Le triplex du cas~2 est un immeuble fictif de 1948 à Limoilou (Québec), évalué à la même date, dont trois baux (deux 5½ et un 4½) totalisent \dollars{3486} par mois. Il s'agit d'établir, pour chacun, le revenu brut effectif de la première année selon la convention de l'ouvrage, puis de le situer par rapport au marché. Chaque chiffre provient de \texttt{analysis/python/cases/ch27\_revenus.py} (fonctions \texttt{cascade\_cas3} et \texttt{cascade\_cas2}), qui appelle \texttt{traite.cas3.revenus} et \texttt{traite.cas2.revenus}. | |
| 299 | +\end{exemple} | |
| 300 | + | |
| 301 | +\subsection{Cas~3 : la cascade} | |
| 302 | + | |
| 303 | +Le \cref{tab:27:cascade} présente le calcul complet et la \cref{fig:27:cascade} en donne la lecture graphique. Le point de départ est le RBP au marché, \dollars{186036}, qui n'est pas un revenu encaissable mais la référence qui permet de mesurer le déficit de loyer de \dollars{20496} ; le RBP contractuel, \dollars{165540}, en découle et c'est lui qui entre dans la convention. La provision pour inoccupation et mauvaises créances, \pct{3.9} du RBP contractuel, retranche \dollars{6456.06} et laisse des loyers effectifs de \dollars{159083.94} ; les autres revenus ajoutent \dollars{9360} et le RBE s'établit à \dollars{168443.94}, soit \dollars{14037} par logement, \dollars{204.17} par mètre carré et \num{1.0175} fois le RBP contractuel. Le taux d'occupation économique est de \pct{85.5}. Les trois colonnes de droite du tableau expriment chaque poste en pourcentage du RBP contractuel, par logement et par mètre carré ; ces unités sont celles qui permettent la comparaison avec d'autres immeubles et avec les comparables du \cref{ch:29}. | |
| 304 | + | |
| 305 | +\begin{table}[htbp] | |
| 306 | +\caption{Cas~3 : du revenu brut potentiel au revenu brut effectif, première année d'exploitation (1\textsuperscript{er} septembre 2026 au 31~août 2027), dollars courants.} | |
| 307 | +\label{tab:27:cascade} | |
| 308 | +\centering | |
| 309 | +\footnotesize\setlength{\tabcolsep}{4.5pt} | |
| 310 | +\begin{tabular}{L{58mm} S[table-format=6.2] S[table-format=3.1] S[table-format=5.0] S[table-format=3.2]} | |
| 311 | +\toprule | |
| 312 | +{Poste} & {Montant (\$)} & {\% du RBP} & {Par logement (\$)} & {Par m\textsuperscript{2} (\$)} \\ | |
| 313 | +\midrule | |
| 314 | +\emph{Pour mémoire : RBP aux loyers de marché (12 × \dollars{15503})} & {\emph{186 036,00}} & {\emph{112,4}} & {\emph{15 503}} & {\emph{225,50}} \\ | |
| 315 | +\emph{Pour mémoire : déficit de loyer (\pct{11.0} du RBP au marché)} & {\emph{$-$20 496,00}} & {\emph{$-$12,4}} & {\emph{$-$1 708}} & {\emph{$-$24,84}} \\ | |
| 316 | +\midrule | |
| 317 | +Revenu brut potentiel contractuel (12 × \dollars{13795}) & 165540.00 & 100.0 & 13795 & 200.65 \\ | |
| 318 | +Moins : inoccupation et mauvaises créances (\pct{3.9}) & -6456.06 & -3.9 & -538 & -7.83 \\ | |
| 319 | +\quad dont composante frictionnelle ($\rho = \pct{15}$, $d = 1$ mois : \pct{1.25}) & -2069.25 & -1.3 & -172 & -2.51 \\ | |
| 320 | +\quad dont créances, concessions et structurel (\pct{2.65}) & -4386.81 & -2.6 & -366 & -5.32 \\ | |
| 321 | +Loyers effectifs & 159083.94 & 96.1 & 13257 & 192.83 \\ | |
| 322 | +Plus : autres revenus (stationnements non inclus, buanderie, rangement) & 9360.00 & 5.7 & 780 & 11.35 \\ | |
| 323 | +\midrule | |
| 324 | +\textbf{Revenu brut effectif (RBE)} & {\textbf{\num{168443.94}}} & {\textbf{101,8}} & {\textbf{\num{14037}}} & {\textbf{204,17}} \\ | |
| 325 | +\midrule | |
| 326 | +\multicolumn{5}{l}{Taux d'occupation économique $\theta = \num{0.961} \times \num{0.890} = \pct{85.5}$ ; RBE aux loyers de marché (même $v$, mêmes autres revenus) : \dollars{188140.60}.} \\ | |
| 327 | +\multicolumn{5}{l}{Variante « $v$ sur tous les revenus » : $(\dollars{165540} + \dollars{9360}) \times \num{0.961} = \dollars{168078.90}$, soit \dollars{365.04} de moins.} \\ | |
| 328 | +\bottomrule | |
| 329 | +\end{tabular} | |
| 330 | +\tabsource{\synth{\texttt{traite.cas3.revenus} via \texttt{analysis/python/cases/ch27\_revenus.py} ; décomposition de la provision : convention déclarée du dossier ; graine 20261031}} | |
| 331 | +\end{table} | |
| 332 | + | |
| 333 | +\begin{figure}[htbp] | |
| 334 | +\centering | |
| 335 | +\includegraphics[width=135mm]{ch27/ch27-fig-cascade.pdf} | |
| 336 | +\caption{Cascade des revenus du cas~3 pour la première année. Du RBP au marché au RBP contractuel, le déficit de loyer retranche \dollars{20496} ; la provision pour inoccupation et pertes retranche \dollars{6456} ; les autres revenus ajoutent \dollars{9360}. Le revenu brut effectif, \dollars{168444}, dépasse le RBP contractuel parce que les autres revenus excèdent la provision, mais reste inférieur de \pct{9.5} au RBP au marché.} | |
| 337 | +\figsource{\synth{script \texttt{analysis/python/figures/ch27\_figures.py}, graine 20261031}} | |
| 338 | +\label{fig:27:cascade} | |
| 339 | +\end{figure} | |
| 340 | + | |
| 341 | +Trois observations préparent les chapitres suivants. D'abord, le RBE de \dollars{168444} est le revenu que le \cref{ch:28} grèvera des dépenses normalisées pour obtenir le revenu net d'exploitation de \dollars{89956}, lequel sera capitalisé au \cref{ch:29} ; la gestion y étant imputée à \pct{4} du RBE, toute variation du RBE se répercute à \pct{96} sur le revenu net. Ensuite, le déficit de loyer de \dollars{20496} n'apparaît nulle part dans le RBE : il n'est ni un revenu ni une perte, mais un potentiel, que la capitalisation directe ne saisit que par le taux et que les flux actualisés modélisent par la rotation. Enfin, la décomposition de la provision en une composante frictionnelle de \pct{1.25}, cohérente avec la rotation de \pct{15}, et une composante résiduelle de \pct{2.65} est une convention du dossier ; elle est utile pour la discussion et pour la sensibilité, mais la seule grandeur que le marché observe est la provision totale. | |
| 342 | + | |
| 343 | +\subsection{Cas~2 : le triplex} | |
| 344 | + | |
| 345 | +Le triplex du cas~2 illustre la même cascade à petite échelle, avec deux particularités : il n'a pas d'autres revenus, la case de stationnement étant comprise dans un bail, et son déficit de loyer est plus prononcé. Le \cref{tab:27:cas2} présente les trois baux et le calcul. Le logement du rez-de-chaussée, occupé depuis 2019, et celui du deuxième, occupé depuis 2022, sont respectivement \pct{26.8} et \pct{16.9} sous le loyer de marché estimé de \dollars{1430} pour un 5½ de Limoilou, tandis que le 4½ du troisième, reloué en 2025, est au marché. Le RBP contractuel est de \dollars{41832}, le RBP au marché de \dollars{49332} et le déficit de \dollars{7500}, soit \pct{15.2}. Avec la provision de \pct{3} du dossier, le RBE est de \dollars{40577.04}, soit \dollars{13526} par logement, et le taux d'occupation économique de \pct{82.3}. Le \cref{ch:32} et le \cref{ch:46} discuteront la nuance propre aux plex achetés par un occupant : si l'acheteur habite le rez-de-chaussée, la provision n'a de sens que pour les deux logements loués, et le RBE de la convention « occupant » s'établit à \dollars{40953.96} ; mais la valeur du logement occupé ne se mesure alors plus par son loyer, et la méthode du revenu cède une partie du terrain à la comparaison. | |
| 346 | + | |
| 347 | +\begin{table}[htbp] | |
| 348 | +\caption{Cas~2 : état locatif du triplex de Limoilou au 1\textsuperscript{er} septembre 2026 et revenu brut effectif de première année (dollars courants).} | |
| 349 | +\label{tab:27:cas2} | |
| 350 | +\centering | |
| 351 | +\footnotesize | |
| 352 | +\begin{tabular}{l l S[table-format=2.0] S[table-format=4.0] S[table-format=4.0] S[table-format=2.1] l} | |
| 353 | +\toprule | |
| 354 | +{Logement} & {Type} & {m\textsuperscript{2}} & {Loyer contractuel (\$/mois)} & {Loyer de marché (\$/mois)} & {Écart (\%)} & {Locataire depuis} \\ | |
| 355 | +\midrule | |
| 356 | +Rez-de-chaussée & 5½ & 92 & 1047 & 1430 & 26.8 & 2019 \\ | |
| 357 | +Deuxième & 5½ & 92 & 1188 & 1430 & 16.9 & 2022 \\ | |
| 358 | +Troisième & 4½ & 78 & 1251 & 1251 & 0.0 & 2025 \\ | |
| 359 | +\midrule | |
| 360 | +Total mensuel & & 262 & 3486 & 4111 & 15.2 & \\ | |
| 361 | +\midrule | |
| 362 | +\multicolumn{7}{l}{RBP contractuel $12 \times \dollars{3486} = \dollars{41832}$ ; RBP au marché $\dollars{49332}$ ; déficit de loyer $\dollars{7500}$ (\pct{15.2}).} \\ | |
| 363 | +\multicolumn{7}{l}{Inoccupation et pertes (\pct{3} : SCHL Québec \pct{2.4} + créances $\approx \pct{0.6}$) : $-\dollars{1254.96}$ ; autres revenus : nuls (stationnement inclus au bail).} \\ | |
| 364 | +\multicolumn{7}{l}{\textbf{RBE = \dollars{40577.04}} (\dollars{13526} par logement) ; RBE aux loyers de marché \dollars{47852.04} ; $\theta = \pct{82.3}$ ; variante occupant (provision sur deux logements) \dollars{40953.96}.} \\ | |
| 365 | +\bottomrule | |
| 366 | +\end{tabular} | |
| 367 | +\tabsource{\synth{\texttt{traite.cas2.revenus} via \texttt{analysis/python/cases/ch27\_revenus.py} ; \texttt{cas2\_quebec\_loyers.csv}, graine 20261031 ; loyer de marché calibré sur la SCHL, RMR de Québec, octobre 2025 \parencite{schlrmltables2025}}} | |
| 368 | +\end{table} | |
| 369 | + | |
| 370 | +\section{Analyse de sensibilité}\label{sec:27:sensibilite} | |
| 371 | + | |
| 372 | +La provision $v$ entre linéairement dans le RBE, et, par la convention de gestion imputée à une fraction $\gamma$ du RBE, dans le revenu net ; elle entre donc linéairement dans la valeur par capitalisation directe à taux donné. De $RBE = RBP_c(1-v) + R_{\text{autres}}$ et $\NOI = RBE(1-\gamma) - DE' - RR$, où $DE'$ regroupe les dépenses qui ne dépendent pas du revenu, | |
| 373 | +\begin{equation}\label{eq:27:sensibilite} | |
| 374 | +\frac{\partial RBE}{\partial v} = -RBP_c, \qquad \frac{\partial \NOI}{\partial v} = -RBP_c\,(1-\gamma), \qquad \frac{\partial V}{\partial v} = -\frac{RBP_c\,(1-\gamma)}{R} . | |
| 375 | +\end{equation} | |
| 376 | +Pour le cas~3, avec $\gamma = \pct{4}$ et le taux global médian de \pct{4.415} extrait au \cref{ch:29}, chaque point de pourcentage de provision retranche \dollars{1655} au RBE, \dollars{1589} au revenu net et \dollars{35995} à la valeur, soit \pct{1.8} de la valeur de base. Le \cref{tab:27:sensibilite} et le panneau de droite de la \cref{fig:27:sensibilite} déroulent la grille : ramener la provision au taux d'inoccupation régional de \pct{2.9} ajouterait \dollars{35995} (\pct{1.8}) ; la porter à \pct{6}, niveau que la SCHL n'exclut pas pour les grands immeubles neufs mais qui serait sévère pour un petit immeuble de quartier, retrancherait \dollars{75590} (\pct{3.7}) ; à \pct{8}, \dollars{147580} (\pct{7.2}). La sensibilité est modérée en comparaison de celle du taux de capitalisation, dont un quart de point déplace la valeur de plus de cinq pour cent (\cref{ch:29}), et surtout de celle de la trajectoire des loyers (\cref{sec:27:projection}) ; elle n'est pas négligeable pour autant, et l'erreur la plus fréquente, qui consiste à reprendre le taux d'inoccupation régional comme provision complète, coûte ici près de deux pour cent de la valeur. | |
| 377 | + | |
| 378 | +\begin{table}[htbp] | |
| 379 | +\caption{Cas~3 : sensibilité du revenu brut effectif, du revenu net d'exploitation normalisé et de la valeur par capitalisation directe ($R = \pct{4.415}$) à la provision pour inoccupation et pertes $v$ ; dollars courants.} | |
| 380 | +\label{tab:27:sensibilite} | |
| 381 | +\centering | |
| 382 | +\begin{tabular}{S[table-format=1.1] S[table-format=5.2] S[table-format=6.2] S[table-format=5.2] S[table-format=7.0] S[table-format=+1.2]} | |
| 383 | +\toprule | |
| 384 | +{$v$ (\%)} & {Provision (\$)} & {RBE (\$)} & {$\NOI_1$ (\$)} & {Valeur (\$)} & {Écart (\%)} \\ | |
| 385 | +\midrule | |
| 386 | +2.0 & 3310.80 & 171589.20 & 92975.20 & 2105894 & +3.36 \\ | |
| 387 | +2.9 & 4800.66 & 170099.34 & 91544.94 & 2073498 & +1.77 \\ | |
| 388 | +3.9 & 6456.06 & 168443.94 & 89955.75 & 2037503 & 0.00 \\ | |
| 389 | +5.0 & 8277.00 & 166623.00 & 88207.65 & 1997908 & -1.94 \\ | |
| 390 | +6.0 & 9932.40 & 164967.60 & 86618.47 & 1961913 & -3.71 \\ | |
| 391 | +8.0 & 13243.20 & 161656.80 & 83440.10 & 1889923 & -7.24 \\ | |
| 392 | +\bottomrule | |
| 393 | +\end{tabular} | |
| 394 | +\tabsource{\synth{\texttt{traite.cas3.rne} avec $v$ modifié et \texttt{traite.cas3.taux\_extraits} (médiane de quarante ventes), via \texttt{analysis/python/cases/ch27\_revenus.py} (fonction \texttt{sensibilite\_v}) ; la gestion imputée à \pct{4} du RBE varie avec $v$ ; graine 20261031}} | |
| 395 | +\end{table} | |
| 396 | + | |
| 397 | +\begin{figure}[htbp] | |
| 398 | +\centering | |
| 399 | +\includegraphics[width=135mm]{ch27/ch27-fig-sensibilite.pdf} | |
| 400 | +\caption{À gauche, l'inoccupation frictionnelle $v_f = \rho\,d/12$ en fonction de la durée de vacance pour cinq taux de rotation, dont ceux mesurés par la SCHL à Montréal, Québec et Gatineau en 2025 ; l'étoile marque l'hypothèse du cas~3 et la ligne pointillée le taux d'inoccupation d'octobre 2025 de la RMR de Montréal. À droite, la valeur du cas~3 par capitalisation directe selon la provision : une droite de pente $-\dollars{35995}$ par point, soit \pct{1.8} de la valeur.} | |
| 401 | +\figsource{Panneau (a) : \cref{eq:27:frictionnel} et SCHL, Enquête sur les logements locatifs, octobre 2025 \parencite{schlrmltables2025} ; panneau (b) : \synth{\texttt{analysis/python/cases/ch27\_revenus.py}, graine 20261031} ; script \texttt{analysis/python/figures/ch27\_figures.py}.} | |
| 402 | +\label{fig:27:sensibilite} | |
| 403 | +\end{figure} | |
| 404 | + | |
| 405 | +Le panneau de gauche de la \cref{fig:27:sensibilite} et le \cref{tab:27:frictionnel} complètent l'analyse du côté des déterminants de la provision. Deux leçons s'en dégagent. La première est que, pour des durées de vacance d'un mois ou moins, l'inoccupation frictionnelle d'un petit immeuble reste sous un point et demi même avec une rotation élevée ; les provisions de trois à cinq pour cent que la pratique retient incorporent donc nécessairement des créances, des concessions ou un risque structurel, et le rapport doit le dire. La seconde est que la durée de vacance pèse autant que la rotation : passer d'un mois à deux mois double la composante frictionnelle, et c'est dans les marchés détendus, où les logements chers trouvent lentement preneur, que les deux variables se détériorent ensemble. L'évaluateur qui révise sa provision à la hausse parce que la SCHL prévoit une détente doit, par cohérence, réviser aussi la durée de relocation qu'il suppose dans sa projection, et éventuellement la rotation, puisque des locataires qui ont le choix déménagent davantage. | |
| 406 | + | |
| 407 | +\begin{quebec}[{{Au Québec : ce que le droit du bail fait au revenu}}] | |
| 408 | +Quatre règles du Code civil du Québec et de la législation sur le logement façonnent directement les grandeurs de ce chapitre. Premièrement, la vente de l'immeuble ne touche pas aux baux : le nouveau locateur ne peut les résilier \parencite[art.~1937]{ccq}, et le revenu brut potentiel que l'acheteur acquiert est le revenu contractuel, reconduit de plein droit sauf avis donné de trois à six mois avant le terme \parencite[art.~1941 et 1942]{ccq}. Deuxièmement, la hausse des baux reconduits est contestable devant le Tribunal administratif du logement, qui la fixe selon le Règlement sur les critères de fixation de loyer tel que modifié par le décret 1455-2025 : pourcentage de base égal à la moyenne des trois dernières variations annuelles de l'IPC du Québec (\pct{3.1} pour 2026), part des variations de taxes et d'assurances, \pct{5} des dépenses d'immobilisation \parencite{reglCriteresFixation,decret1455_2025,talIndices2026}. La trajectoire contractuelle de la \cref{sec:27:projection} en découle ; le loyer de marché n'y joue aucun rôle. Troisièmement, le loyer d'un nouveau bail est libre, mais le nouveau locataire doit être informé du loyer le plus bas payé dans les douze mois précédents (section~G du formulaire obligatoire) et peut demander la fixation dans les dix jours \parencite[art.~1896 et 1950]{ccq} ; les immeubles neufs échappent à la fixation pendant cinq ans à la condition que le bail indique le loyer maximal exigible \parencite[art.~1955]{ccq}. Quatrièmement, aucun dépôt ni aucune somme autre que le loyer ne peut être exigé \parencite[art.~1904]{ccq}, mais la résiliation peut être demandée dès que le retard de paiement excède trois semaines \parencite[art.~1971]{ccq} : les mauvaises créances sont sans sûreté, mais bornées dans le temps. | |
| 409 | + | |
| 410 | +Deux dispositions récentes modifient la rotation et donc le rattrapage. La Loi~31 permet au locateur de refuser une cession de bail pour un motif autre qu'un motif sérieux, auquel cas le bail est résilié à la date de cession \parencite[art.~1978.2]{ccq,loi31_2024} : le loyer bas ne se transmet plus d'un locataire au suivant. La Loi~65 interdit jusqu'au 6~juin 2027 toute éviction aux fins de subdivision, d'agrandissement ou de changement d'affectation, prévoit une fin anticipée du moratoire si le taux d'inoccupation mesuré par la SCHL dans les centres de \num{10000} habitants et plus atteint \pct{3}, et étend la protection des locataires aînés \parencite[art.~1 et~11]{loi65_2024} ; elle lie ainsi, pour la première fois, une règle de droit au taux d'inoccupation de l'Enquête sur les logements locatifs, ce qui donne à la lecture des tableaux de la SCHL une portée qui dépasse l'évaluation. À la date du 31~octobre 2026, aucun avis de fin anticipée n'avait été repéré. Pour l'évaluateur, la conséquence est qu'aucune stratégie de repositionnement par éviction ne peut entrer dans la valeur marchande : le scénario de base est la continuation de l'exploitation, avec rattrapage au gré des départs volontaires. | |
| 411 | +\end{quebec} | |
| 412 | + | |
| 413 | +\begin{erreurs} | |
| 414 | +\begin{itemize} | |
| 415 | +\item \textbf{Capitaliser le revenu brut potentiel au marché alors que les baux sont en place.} Le droit du locateur est grevé des baux ; le revenu de première année est le revenu contractuel. Pour le cas~3, la substitution gonfle le RBE de \pct{11.7} et la valeur d'autant si le taux n'est pas ajusté. | |
| 416 | +\item \textbf{Prendre le taux d'inoccupation de la SCHL pour la provision complète.} Il mesure les logements vides en octobre dans l'ensemble d'un parc ; il ignore les créances, les concessions, la saisonnalité et le segment. C'est une borne inférieure, à compléter par couches déclarées. | |
| 417 | +\item \textbf{Appliquer le taux global de la RMR à un immeuble dont le segment est documenté.} Les tableaux par taille d'immeuble, par année de construction et par quartile de loyer existent ; un 6-19 logements de l'île à \pct{2.2} n'est pas une tour neuve à \pct{5.6}. | |
| 418 | +\item \textbf{Supposer une rotation élevée pour accélérer le rattrapage des loyers et une inoccupation frictionnelle faible.} Les deux dépendent de $\rho$ ; l'\cref{eq:27:frictionnel} impose la cohérence. | |
| 419 | +\item \textbf{Compter une concession dans le loyer effectif et dans la provision.} Un mois gratuit sur douze se traite dans l'un ou dans l'autre, jamais dans les deux (\cref{eq:27:concession}). | |
| 420 | +\item \textbf{Inclure dans les autres revenus des frais que le droit québécois interdit} (frais de retard, dépôts, suppléments), ou des revenus non stabilisés ; et omettre les dépenses qui leur sont liées. | |
| 421 | +\item \textbf{Appliquer au sujet une convention de RBE différente de celle des comparables} ($v$ sur les loyers seuls ou sur tous les revenus ; autres revenus inclus ou non). L'écart est petit sur le revenu, systématique sur le taux extrait. | |
| 422 | +\item \textbf{Projeter les loyers à un taux unique.} La trajectoire d'un immeuble sous encadrement dépend de $g_c$, de $g_m$, de la rotation et de l'ordre des départs ; sans rotation, l'écart au marché se creuse, et la valeur du cas~3 baisse de \pct{20}. | |
| 423 | +\item \textbf{Reprendre les revenus du formulaire de fixation du Tribunal comme revenus d'évaluation.} Ce sont des loyers de décembre multipliés par douze, sans inoccupation ni loyers de marché, destinés à répartir des dépenses. | |
| 424 | +\end{itemize} | |
| 425 | +\end{erreurs} | |
| 426 | + | |
| 427 | +\begin{limites} | |
| 428 | +L'Enquête sur les logements locatifs de la SCHL ne couvre que les appartements d'initiative privée des immeubles de trois logements et plus dans les centres de \num{10000} habitants et plus ; les duplex, les logements dans des maisons, les copropriétés louées et les petites municipalités en sont exclus, et les cellules des petits segments sont souvent de qualité « c » ou « d » ou supprimées, ce qui limite la finesse de la borne inférieure. Le taux d'octobre est une mesure de basse saison pour les marchés à baux synchronisés au 1\textsuperscript{er} juillet. Aucune statistique publique ne mesure la vacance économique, les mauvaises créances ou la durée de relocation des petits immeubles québécois ; les décompositions de la provision présentées pour les cas~2 et~3 sont des conventions de dossiers synthétiques, et les ordres de grandeur « d'un demi à un point » pour les créances relèvent de la pratique, non d'une enquête. Les loyers de marché des cas sont des estimations calibrées sur des moyennes de zone de la SCHL, non des loyers demandés observés. Le pourcentage de base du Tribunal pour 2027 n'était pas publié au 31~octobre 2026 ; la croissance contractuelle de \pct{3.1} des projections est celle de 2026, maintenue constante faute de connaître les IPC futurs, et elle omet la part des taxes, des assurances et des immobilisations, qui relève du \cref{ch:34}. La règle de l'article~1971 C.c.Q. (retard de plus de trois semaines) est citée d'après sa formulation courante ; son texte à jour n'a pas été relu pour ce chapitre et figure comme partiellement vérifié au registre des affirmations. Enfin, les données des cas sont synthétiques : la concordance entre la provision de \pct{3.9} et les données de la SCHL résulte de la calibration et ne vaut pas validation. | |
| 429 | +\end{limites} | |
| 430 | + | |
| 431 | +\begin{synthese} | |
| 432 | +\begin{itemize} | |
| 433 | +\item $RBP_c = 12\sum L_i$ (baux en place), $RBP_m = 12\sum M_i$ (marché), déficit de loyer $\Delta_L = RBP_m - RBP_c$ ; le revenu de première année d'un immeuble grevé de baux est $RBP_c$ ; $RBP_m$ mesure le potentiel et borne la projection. Cas~3 : \dollars{165540} contre \dollars{186036}, déficit de \pct{11.0} concentré dans les baux anciens. | |
| 434 | +\item Inoccupation physique (état du parc à une date), disponibilité et vacance économique (part du RBP non encaissée sur l'année) sont trois notions ; la provision $v$ est la troisième. La SCHL mesure la première, en octobre, sur les immeubles de trois logements et plus ; c'est une borne inférieure à lire par segment (taille, âge, quartile), avec les lettres de qualité. | |
| 435 | +\item $v_f = \rho\,d/12$ : la vacance frictionnelle est le produit de la rotation et de la durée de vacance ; Montréal 2025 : $\rho = \pct{9.4}$ ; un mois de vacance donne moins d'un point. Les provisions usuelles de trois à cinq pour cent incluent donc créances, concessions et risque structurel, à déclarer. | |
| 436 | +\item $RBE = RBP_c(1-v) + R_{\text{autres}}$ (convention de l'ouvrage) ; les autres revenus sont stabilisés, au marché, cohérents avec les dépenses ; la convention doit être la même pour le sujet et les comparables. Cas~3 : $RBE = \dollars{168443.94}$, $\theta = \pct{85.5}$ ; cas~2 : $RBE = \dollars{40577.04}$, $\theta = \pct{82.3}$. | |
| 437 | +\item La projection distingue $g_c$ (TAL, \pct{3.1} en 2026, moyenne mobile de l'IPC), $g_m$ (marché) et $\rho$ (rotation) ; sans rotation l'écart au marché se creuse ; avec \pct{15}, il se referme en sept ans ; la valeur du cas~3 varie de \dollars{1756414} à \dollars{2208566} selon la rotation. | |
| 438 | +\item Sensibilité : $\partial V/\partial v = -RBP_c(1-\gamma)/R$, soit \dollars{35995} ou \pct{1.8} de la valeur par point de $v$ pour le cas~3 ; la trajectoire des loyers pèse dix fois plus. Déclarer $v$, $\rho$, $d$, $g_c$, $g_m$ et leur cohérence. | |
| 439 | +\end{itemize} | |
| 440 | +\end{synthese} | |
| 441 | + | |
| 442 | +\section*{Exercices} | |
| 443 | + | |
| 444 | +\begin{exercice}[1]{Revenu brut potentiel et déficit de loyer}{ex:27:1} | |
| 445 | +Un immeuble de six logements présente les loyers mensuels contractuels suivants : 895, 910, \num{1040}, \num{1150}, \num{1225} et \dollars{1310} ; les loyers de marché estimés sont de \num{1100}, \num{1100}, \num{1150}, \num{1250}, \num{1300} et \dollars{1350}. Calculer le RBP contractuel, le RBP au marché, le déficit de loyer en dollars et en pourcentage du RBP au marché, et l'écart relatif de chaque logement. Quel RBP retenir pour la capitalisation directe du \cref{ch:29}, et pourquoi ? | |
| 446 | +\end{exercice} | |
| 447 | + | |
| 448 | +\begin{exercice}[1]{Trois conventions de revenu brut effectif}{ex:27:2} | |
| 449 | +Pour l'immeuble de l'\cref{ex:27:1}, la provision pour inoccupation et pertes est de \pct{4} et les autres revenus (stationnement et buanderie) de \dollars{4800} par an. Calculer le RBE selon la convention de l'ouvrage, selon la convention qui applique la provision à l'ensemble des revenus et selon une convention intermédiaire où la moitié de la provision s'applique aux autres revenus. Commenter les écarts et dire quelle règle doit primer dans le choix d'une convention. | |
| 450 | +\end{exercice} | |
| 451 | + | |
| 452 | +\begin{exercice}[2]{Inoccupation frictionnelle à Québec}{ex:27:3} | |
| 453 | +La SCHL mesurait en octobre 2025 un taux de rotation de \pct{13} et un taux d'inoccupation de \pct{2.4} dans la RMR de Québec. Calculer l'inoccupation frictionnelle d'un immeuble dont les logements libérés restent vacants un mois, puis un mois et demi, en moyenne ; ajouter une provision de \pct{0.5} pour les mauvaises créances et comparer la provision totale au taux de la SCHL. Quelle durée moyenne de vacance reproduirait exactement \pct{2.4} avec la rotation de \pct{13} ? Expliquer pourquoi le taux d'octobre et la vacance frictionnelle annuelle ne mesurent pas la même chose. | |
| 454 | +\end{exercice} | |
| 455 | + | |
| 456 | +\begin{exercice}[2]{Concession et double comptage}{ex:27:4} | |
| 457 | +Un logement neuf est loué \dollars{1300} par mois sur un bail de douze mois avec un mois gratuit. Calculer le loyer mensuel effectif et le revenu annuel effectif. Un collègue inscrit le loyer effectif dans le RBP \emph{et} retranche une provision pour concession de un douzième : quel revenu obtient-il et quelle est l'erreur ? Montrer qu'un bail de vingt-quatre mois avec deux mois gratuits conduit au même loyer effectif, et discuter le traitement à retenir si les comparables ont été analysés sur loyers nominaux. | |
| 458 | +\end{exercice} | |
| 459 | + | |
| 460 | +\begin{exercice}[2]{Le triplex du cas~2}{ex:27:5} | |
| 461 | +À partir du fichier \texttt{cas2\_quebec\_loyers.csv}, reconstituer le RBP contractuel, le RBP au marché, le déficit de loyer, la provision de \pct{3} et le RBE du triplex de Limoilou, puis le RBE aux loyers de marché et le taux d'occupation économique. Calculer ensuite le RBE de la convention « occupant » dans laquelle l'acheteur habite le rez-de-chaussée et où la provision ne s'applique qu'aux deux logements loués. Expliquer pourquoi cette dernière convention ne suffit pas à évaluer un plex d'occupant. | |
| 462 | +\end{exercice} | |
| 463 | + | |
| 464 | +\begin{exercice}[3]{Projection d'un petit immeuble sous encadrement}{ex:27:6} | |
| 465 | +Un immeuble de quatre logements a des loyers mensuels de 900, 950, \num{1000} et \dollars{1100} ; le loyer de marché est de \dollars{1200} pour chacun. Les baux reconduits sont indexés de \pct{3.1} par an, le marché croît de \pct{3.5} par an et un logement se libère chaque année, toujours celui dont le rapport entre loyer contractuel et loyer de marché est le plus faible, pour être reloué au marché. Calculer, pour les années 1 à 4, les loyers de chaque logement, le RBP, le RBP au marché et l'écart relatif ; comparer avec la trajectoire d'indexation seule. En quoi l'ordre des départs est-il une hypothèse favorable au locateur ? | |
| 466 | +\end{exercice} | |
| 467 | + | |
| 468 | +\begin{exercice}[3]{Provision et valeur}{ex:27:7} | |
| 469 | +Pour le cas~3, en utilisant \texttt{traite.cas3.rne} et le taux global médian de \pct{4.415}, calculer le RBE, le revenu net normalisé et la valeur par capitalisation directe lorsque la provision est de \pct{2.9} (taux régional de la SCHL) et de \pct{5.9} (deux points au-dessus du dossier). Vérifier que la variation de valeur est exactement linéaire en $v$ et retrouver la pente par l'\cref{eq:27:sensibilite} en tenant compte de la gestion imputée à \pct{4} du RBE. Pourquoi la sensibilité à $v$ est-elle linéaire alors que celle au taux $R$ ne l'est pas ? | |
| 470 | +\end{exercice} | |
| 471 | + | |
| 472 | +\begin{exercice}[3]{Lire les tableaux de la SCHL pour un immeuble donné}{ex:27:8} | |
| 473 | +À partir du \cref{tab:27:schl-structure}, calculer le rapport entre l'inoccupation du quatrième et du premier quartile de loyer de la RMR de Montréal, et le rapport entre le loyer moyen des logements inoccupés et celui des logements occupés de l'île, pour l'ensemble des logements et pour les deux chambres. Un client vous soumet un immeuble de 2019 de quarante logements dont les loyers se situent dans le quartile supérieur, avec un loyer demandé pour les logements vacants supérieur de \pct{20} aux loyers en place. Quelles bornes et quelles mises en garde ces tableaux suggèrent-ils pour le loyer de marché des logements vacants, pour la provision $v$ et pour la durée de relocation ? Rédiger la justification en dix lignes. | |
| 474 | +\end{exercice} | |
| 475 | + | |
| 476 | +\section*{Pour aller plus loin} | |
| 477 | + | |
| 478 | +\textcite{appraisal2026} consacrent un chapitre à l'analyse des revenus (revenu potentiel, vacance et pertes, autres revenus, revenu effectif) qui reste la référence professionnelle nord-américaine, et l'édition canadienne de \textcite{appraisalCdn} en transpose le vocabulaire ; \textcite{fisherMartin2007} et \textcite{brueggemanFisher2022} présentent la même cascade avec de nombreux exemples et insistent sur la cohérence entre le revenu stabilisé et le taux. Pour comprendre d'où vient l'inoccupation et pourquoi elle ne tombe jamais à zéro, \textcite{dipasqualeWheaton1996} offrent le cadre du marché des espaces et du taux de vacance naturel, et \textcite{wheaton1999} relie la vacance au cycle immobilier ; \textcite{sivitanidouSivitanides1999} montrent que la vacance d'un marché se lit jusque dans ses taux de capitalisation. Du côté de l'encadrement des loyers, qui gouverne au Québec la trajectoire contractuelle, \textcite{arnott1995} donne la grille de lecture des contrôles de deuxième génération et \textcite{kholodilin2024} la revue quasi exhaustive de leurs effets empiriques sur les loyers, l'offre et la mobilité ; le \cref{ch:34} en tire les scénarios. Enfin, les sources publiques à consulter avant toute conclusion sur un revenu au Québec sont le Rapport sur le marché locatif de la \textcite{schlLocatif2025} et ses tableaux de données par centre \parencite{schlrmltables2025}, la page des pourcentages applicables du \textcite{talIndices2026} et le Règlement sur les critères de fixation de loyer dans sa version du décret 1455-2025 \parencite{reglCriteresFixation,decret1455_2025}. | |
modified
manuscript/chapters/ch28.tex
+522 −1
@@ -1,2 +1,523 @@ | ||
| 1 | 1 | \chapter{Dépenses, réserves, CAPEX et RNE}\label{ch:28} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +Le revenu net d'exploitation est le pivot de toute la méthode du revenu : c'est lui que la capitalisation directe convertit en valeur, lui qui ouvre la projection des flux actualisés, lui que le prêteur rapporte au service de la dette. Or ce chiffre n'existe pas dans les livres du propriétaire ; il faut le \emph{construire} à partir d'un revenu brut effectif établi au \cref{ch:27} et d'un ensemble de dépenses que l'évaluateur doit classer, vérifier, compléter et normaliser. Ce chapitre traite de la moitié « dépenses » de cette construction. Il fixe d'abord le périmètre du revenu net, c'est-à-dire ce qui entre dans les dépenses d'exploitation et ce qui en est exclu, puis il passe en revue les postes propres au marché québécois, où les taxes foncières se calculent sur une valeur au rôle triennale et où l'encadrement des loyers donne aux dépenses une portée réglementaire particulière. Il expose ensuite la normalisation des dépenses historiques, la question centrale de la réserve de remplacement et des dépenses en capital, et les ratios de référence disponibles, avant d'appliquer l'ensemble aux deux dossiers de l'ouvrage, l'immeuble de douze logements de Rosemont (cas~3) et le triplex de Limoilou (cas~2). Le \cref{ch:29} reprend le revenu net ainsi obtenu pour le capitaliser ; le \cref{ch:30} y ajoute les dépenses en capital dans les flux ; le \cref{ch:47} réunit le dossier complet. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +À la fin de ce chapitre, le lecteur sait : | |
| 7 | +\begin{itemize} | |
| 8 | +\item définir le revenu net d'exploitation, délimiter les dépenses d'exploitation par rapport au service de la dette, à l'impôt, à l'amortissement comptable, aux dépenses en capital et aux frais d'acquisition, et classer chaque poste comme fixe, variable ou réserve ; | |
| 9 | +\item identifier et vérifier les postes québécois (taxes municipales et scolaires calculées sur la valeur au rôle, assurances, énergie des aires communes, entretien, conciergerie, déneigement, gestion, honoraires, publicité) à partir des sources appropriées ; | |
| 10 | +\item normaliser un historique de dépenses poste par poste : règles de recalcul, indexation, élimination des événements non récurrents, imputation des dépenses qu'un propriétaire-occupant n'inscrit pas ; | |
| 11 | +\item distinguer la réserve de remplacement des dépenses en capital, calculer une réserve par la méthode linéaire et par le fonds d'amortissement, et démontrer pourquoi la convention retenue doit être la même pour le sujet et pour les ventes dont on extrait le taux ; | |
| 12 | +\item situer un ratio de dépenses par rapport aux références disponibles et expliquer ce qu'il mesure réellement ; | |
| 13 | +\item calculer le revenu net d'exploitation, le revenu net par logement et par mètre carré, et mesurer leur sensibilité à la réserve, au taux de taxe et au taux de gestion. | |
| 14 | +\end{itemize} | |
| 15 | +\end{objectifs} | |
| 16 | + | |
| 17 | +\section{Du revenu brut effectif au revenu net d'exploitation}\label{sec:28:perimetre} | |
| 18 | + | |
| 19 | +\subsection{Définition et périmètre} | |
| 20 | + | |
| 21 | +Le \cref{ch:27} a conduit du revenu brut potentiel ($RBP$), somme des loyers contractuels annualisés, au revenu brut effectif ($RBE$), qui en retranche l'inoccupation et les mauvaises créances et y ajoute les autres revenus. Le revenu net d'exploitation (RNE, \emph{net operating income}) s'obtient en déduisant du revenu brut effectif les dépenses nécessaires pour produire ce revenu et maintenir la capacité de l'immeuble à le produire : | |
| 22 | +\begin{equation}\label{eq:28:rne} | |
| 23 | +\NOI = RBE - DE - RR, | |
| 24 | +\end{equation} | |
| 25 | +où $DE$ désigne les dépenses d'exploitation normalisées et $RR$ la réserve de remplacement. L'annexe des conventions de calcul (\cref{app:conventions-calcul}) fixe la convention de l'ouvrage : la réserve est incluse dans le revenu net utilisé en capitalisation directe, et les dépenses en capital ponctuelles sont traitées explicitement dans les flux actualisés, jamais les deux à la fois. La \cref{sec:28:reserves} justifie cette convention et en démontre les conséquences. | |
| 26 | + | |
| 27 | +\begin{definition}{Dépenses d'exploitation}{depenses-exploitation} | |
| 28 | +Les \motcle{dépenses d'exploitation} (\emph{operating expenses}) sont les débours périodiques qu'un propriétaire typique doit engager pour maintenir le revenu brut effectif et l'état de l'immeuble à un niveau stable, pendant la période à laquelle se rapporte ce revenu. Elles comprennent les taxes foncières, les assurances, l'énergie et les services fournis par le propriétaire, l'entretien et les réparations courantes, la conciergerie, le déneigement et l'entretien des terrains, la gestion, les honoraires professionnels récurrents et les frais de location. Elles excluent le service de la dette, l'impôt sur le revenu du propriétaire, l'amortissement comptable, les dépenses en capital, les frais d'acquisition et de disposition, et toute dépense personnelle du propriétaire. | |
| 29 | +\end{definition} | |
| 30 | + | |
| 31 | +Le périmètre ainsi tracé est celui de la valeur marchande : le revenu net mesure ce que l'\emph{immeuble} produit, indépendamment de la façon dont son propriétaire actuel l'a financé et de sa situation fiscale. Le service de la dette en est exclu parce que la dette appartient au propriétaire et non à l'immeuble ; deux acheteurs du même bien peuvent l'acquérir l'un comptant, l'autre à 75~\% de dette, sans que la valeur marchande change. L'impôt sur le revenu en est exclu pour la même raison. L'amortissement comptable n'est pas une dépense mais une écriture, dont le montant dépend des règles fiscales et de la base d'acquisition ; la dépréciation réelle de l'immeuble est prise en compte, selon les cas, par la réserve de remplacement, par les dépenses en capital des flux actualisés ou par le taux de capitalisation lui-même (\cref{ch:29}). Enfin, les droits sur les mutations immobilières, les honoraires d'acquisition et les frais de notaire sont des coûts ponctuels de l'acquéreur ; ils interviennent dans l'analyse d'investissement et dans les flux actualisés au titre des coûts d'acquisition, jamais dans le revenu net récurrent. | |
| 32 | + | |
| 33 | +Les manuels nord-américains présentent cette construction sous la forme d'un \emph{état des résultats reconstitué} (\emph{reconstructed operating statement}), par opposition à l'état des résultats comptable du propriétaire \parencite{appraisal2026,fisherMartin2007}. L'adjectif compte : l'évaluateur ne reprend pas les chiffres du vendeur, il les reconstitue pour un propriétaire typique, à la date d'évaluation et pour les douze mois qui suivent. \textcite{geltnerMillerClaytonEichholtz2014} insistent sur le fait que le revenu net ainsi défini est une mesure de \emph{capacité}, non de trésorerie : le flux de trésorerie du propriétaire s'en écarte par le service de la dette, l'impôt et les dépenses en capital effectivement décaissées. | |
| 34 | + | |
| 35 | +\subsection{Les indicateurs dérivés} | |
| 36 | + | |
| 37 | +Trois rapports accompagnent systématiquement le revenu net. Le \motcle{ratio de dépenses} (\emph{operating expense ratio}), | |
| 38 | +\begin{equation}\label{eq:28:ratio} | |
| 39 | +\rho = \frac{DE + RR}{RBE}, | |
| 40 | +\end{equation} | |
| 41 | +mesure la part du revenu brut effectif absorbée par l'exploitation ; son complément $1 - \rho = \NOI/RBE$ est la marge nette. Le revenu net par logement, $\NOI/n$, et le revenu net par mètre carré de surface locative, $\NOI/S$, permettent de comparer des immeubles de tailles différentes ; de même, les dépenses par logement, $(DE + RR)/n$, se comparent aux barèmes de référence et aux ventes analysées. Ces indicateurs servent à la vérification (un ratio hors norme signale un oubli ou une anomalie), à la comparaison (les ventes dont on extrait un taux doivent avoir un ratio compatible) et à la communication, mais ils ne remplacent jamais la décomposition poste par poste, seule vérifiable. La \cref{sec:28:ratios} montre que le ratio dépend autant du niveau des loyers que de celui des dépenses, de sorte qu'un ratio « élevé » peut traduire des loyers bas plutôt qu'une exploitation coûteuse. | |
| 42 | + | |
| 43 | +\section{Classement des dépenses : fixes, variables, réserves}\label{sec:28:classement} | |
| 44 | + | |
| 45 | +\subsection{Trois comportements} | |
| 46 | + | |
| 47 | +Le classement traditionnel distingue les dépenses selon leur réaction au taux d'occupation et au niveau d'activité de l'immeuble. Les \motcle{dépenses fixes} ne varient pas, à court terme, avec l'occupation : les taxes foncières sont dues que l'immeuble soit plein ou vide, et la prime d'assurance couvre le bâtiment, non ses locataires. Les \motcle{dépenses variables} croissent avec l'occupation et l'usage : l'énergie des aires communes et surtout le chauffage inclus dans les baux, l'entretien, la conciergerie, les frais de location et la gestion lorsqu'elle est rémunérée en pourcentage des revenus perçus. La \motcle{réserve de remplacement} (\emph{replacement allowance}) forme une troisième catégorie : ce n'est pas un débours de l'exercice mais une dotation annuelle qui lisse le coût des composantes à vie courte, électroménagers, revêtements, chauffe-eau, peinture, dont le remplacement est certain mais irrégulier. | |
| 48 | + | |
| 49 | +Si $F$ désigne le total des dépenses fixes, $c$ le coût variable moyen par logement occupé et $n_o = n(1 - v)$ le nombre moyen de logements occupés, les dépenses d'exploitation hors réserve s'écrivent, en première approximation, | |
| 50 | +\begin{equation}\label{eq:28:fixes-variables} | |
| 51 | +DE = F + c\, n (1 - v) + m\, RBE, | |
| 52 | +\end{equation} | |
| 53 | +où $m$ est le taux de gestion appliqué au revenu brut effectif. Cette décomposition rend visible une propriété essentielle du revenu net : sa sensibilité au taux d'inoccupation est amplifiée par la part des dépenses fixes. Puisque $RBE \approx RBP(1-v)$, une hausse d'un point de l'inoccupation fait perdre un pour cent du revenu brut mais n'économise que le coût variable des logements vides ; la part fixe, qui ne bouge pas, pèse alors sur un revenu réduit. Pour le cas~3, les dépenses fixes représentent \pct{29.7} des dépenses totales ; pour le triplex du cas~2, \pct{52.7}, parce que les taxes et l'assurance pèsent lourd dans un petit immeuble dont le propriétaire fait lui-même une partie de l'entretien. Le \cref{tab:28:classement} résume le classement et son usage dans la normalisation. | |
| 54 | + | |
| 55 | +\begin{table}[htbp] | |
| 56 | +\caption{Classement des dépenses d'exploitation selon leur comportement, avec la règle de normalisation habituellement associée.} | |
| 57 | +\label{tab:28:classement} | |
| 58 | +\centering | |
| 59 | +\small | |
| 60 | +\begin{tabularx}{\textwidth}{L{24mm}YYY} | |
| 61 | +\toprule | |
| 62 | +Catégorie & Postes typiques & Comportement à court terme & Normalisation habituelle \\ | |
| 63 | +\midrule | |
| 64 | +Fixes & taxes municipales et scolaires, assurances, tarifications par logement & indépendantes de l'occupation ; révisées par des tiers (municipalité, ministre, assureur) & recalcul à partir des règles en vigueur (rôle $\times$ taux ; prime renouvelée) \\ | |
| 65 | +Variables & énergie des aires communes et chauffage inclus, entretien et réparations, conciergerie, déneigement et paysagement, honoraires, publicité et location, gestion & croissent avec l'occupation, l'usage et le niveau général des prix ; la gestion suit les revenus & dernière année indexée, ou moyenne indexée si la dernière année est atypique ; gestion en pourcentage du RBE \\ | |
| 66 | +Réserve de remplacement & électroménagers, chauffe-eau, revêtements de sol, peinture et finition & dotation lissée, indépendante des décaissements de l'exercice & montant par logement calculé par composantes ou retenu par convention, cohérent avec le taux extrait \\ | |
| 67 | +Exclus du revenu net & service de la dette, impôt sur le revenu, amortissement comptable, dépenses en capital, droits de mutation, frais d'acquisition, dépenses personnelles & non liés à l'exploitation de l'immeuble, ou ponctuels & retirés de l'état du propriétaire ; les CAPEX passent dans les flux actualisés \\ | |
| 68 | +\bottomrule | |
| 69 | +\end{tabularx} | |
| 70 | +\tabsource{synthèse de l'auteur d'après \textcite{appraisal2026,fisherMartin2007} et la convention de l'\cref{app:conventions-calcul}.} | |
| 71 | +\end{table} | |
| 72 | + | |
| 73 | +\subsection{Pourquoi le classement importe} | |
| 74 | + | |
| 75 | +Le classement n'est pas un exercice de taxonomie. Il détermine d'abord la \emph{règle de normalisation} de chaque poste : une dépense fixe se recalcule à partir des règles qui la fixent, une dépense variable s'indexe ou se compare à des barèmes, une réserve se dote. Il détermine ensuite la \emph{projection} : dans les flux actualisés du \cref{ch:30}, les dépenses fixes suivent leur propre calendrier (rôle triennal, renouvellement de la police), les dépenses variables suivent l'inflation des services et l'occupation prévue. Il structure enfin l'\emph{analyse de risque} : le ratio des dépenses fixes au revenu brut mesure le levier opérationnel de l'immeuble, c'est-à-dire la proportion dans laquelle une baisse de revenu se transmet au revenu net. Avec un ratio total de \pct{46.6} et des dépenses fixes de \pct{13.8} du revenu brut effectif, le cas~3 perd environ \num{1.87} dollar de revenu net pour chaque dollar de revenu brut effectif perdu lorsque seules les dépenses variables s'ajustent, ce que la \cref{sec:28:sensibilite} chiffre. | |
| 76 | + | |
| 77 | +\section{Les postes québécois}\label{sec:28:postes} | |
| 78 | + | |
| 79 | +Les postes d'un état de dépenses québécois ne diffèrent pas fondamentalement de ceux des autres marchés nord-américains, mais trois particularités les colorent : les taxes foncières sont calculées sur une valeur au rôle triennale et non sur le prix payé, l'assurance habitation a connu une inflation rapide, et l'encadrement des loyers par le Tribunal administratif du logement donne à plusieurs dépenses une seconde vie réglementaire, puisque leur variation entre dans le calcul des hausses de loyer. Le \cref{tab:28:postes} présente chaque poste, sa base de calcul et la source où l'évaluateur le vérifie, avec le montant normalisé du cas~3. | |
| 80 | + | |
| 81 | +\begin{table}[htbp] | |
| 82 | +\caption{Postes de dépenses d'un immeuble locatif au Québec : base de calcul, pièce ou source de vérification, et montant normalisé du cas~3 (douze logements, Montréal, première année).} | |
| 83 | +\label{tab:28:postes} | |
| 84 | +\centering | |
| 85 | +\small\setlength{\tabcolsep}{4pt} | |
| 86 | +\begin{tabularx}{\textwidth}{L{30mm}YYS[table-format=5.2]S[table-format=2.1]} | |
| 87 | +\toprule | |
| 88 | +Poste & Base de calcul & Vérification & {Cas~3 (\$)} & {\% RBE} \\ | |
| 89 | +\midrule | |
| 90 | +Taxes municipales & valeur au rôle $\times$ taux de la catégorie ; tarifications par logement selon la ville & compte de taxes, règlement annuel, rôle en ligne & 10188.20 & 6.0 \\ | |
| 91 | +Taxe scolaire & évaluation uniformisée ajustée $-$ \dollars{25000}, $\times$ taux provincial unique & compte du centre de services scolaire ; avis du ministre & 1737.78 & 1.0 \\ | |
| 92 | +Assurances & prime de la police incendie et responsabilité en vigueur & police, avis de renouvellement & 11391.80 & 6.8 \\ | |
| 93 | +Électricité des aires communes & kWh des compteurs communs $\times$ tarif D & factures Hydro-Québec & 4387.80 & 2.6 \\ | |
| 94 | +Chauffage des aires communes & gaz ou électricité des espaces communs ; chauffage inclus des logements le cas échéant & factures du distributeur ; baux (section « services ») & 2978.76 & 1.8 \\ | |
| 95 | +Entretien et réparations & travaux courants, fournitures, contrats & factures, grand livre ; barème de référence par logement & 11745.09 & 7.0 \\ | |
| 96 | +Conciergerie & salaires ou contrat, charges sociales, logement fourni valorisé & contrat, relevés de paie & 10139.32 & 6.0 \\ | |
| 97 | +Déneigement et paysagement & contrats saisonniers & contrats & 6886.58 & 4.1 \\ | |
| 98 | +Frais juridiques et comptables & honoraires récurrents (tenue de livres, TAL, recouvrement) & factures & 2833.53 & 1.7 \\ | |
| 99 | +Publicité et location & annonces, vérification des candidats, commissions & factures & 1358.57 & 0.8 \\ | |
| 100 | +Gestion & pourcentage du revenu brut effectif, imputé même en autogestion & contrat de gestion ou barème & 6737.76 & 4.0 \\ | |
| 101 | +Réserve de remplacement & dotation par logement (composantes à vie courte) & convention déclarée, calcul par composantes & 8103.00 & 4.8 \\ | |
| 102 | +\midrule | |
| 103 | +Total & & & 78488.19 & 46.6 \\ | |
| 104 | +\bottomrule | |
| 105 | +\end{tabularx} | |
| 106 | +\tabsource{\synth{\texttt{traite.cas3.depenses\_normalisees} via \texttt{analysis/python/cases/ch28\_depenses.py}, graine 20261031} ; taux de taxes : \textcite{ledevoirmtl2026,taxescolaire2026} ; aucune tarification distincte de l'eau dans le dossier.} | |
| 107 | +\end{table} | |
| 108 | + | |
| 109 | +\subsection{Taxes municipales et scolaires} | |
| 110 | + | |
| 111 | +Les taxes foncières sont la dépense fixe la plus importante et la plus facile à vérifier, à condition de respecter leur mécanique. Le \cref{ch:09} l'a établie en détail : la taxe municipale est le produit de la valeur inscrite au rôle d'évaluation par le taux de la catégorie à laquelle appartient l'unité, auquel s'ajoutent les taxes spéciales et les tarifications fixes par logement ; la taxe scolaire est le produit de l'évaluation uniformisée ajustée qui excède \dollars{25000} par un taux provincial unique \parencite[art.~303 à 303.6]{lip}. Pour l'évaluateur, trois conséquences en découlent. D'abord, la taxe se \emph{recalcule}, elle ne s'indexe pas : le compte de l'exercice précédent n'a d'intérêt que pour vérifier le recalcul, car un nouveau rôle ou un nouveau taux peut la faire varier de dix ou quinze pour cent d'un coup alors que l'inflation générale est de trois. Ensuite, la base est la valeur au rôle en vigueur, non la valeur que l'évaluateur est en train d'estimer ni le prix auquel l'immeuble pourrait se vendre, puisque la vente ne modifie pas en elle-même l'inscription au rôle (\cref{ch:09} et \cref{ch:29}). Enfin, le taux applicable dépend de la catégorie : plusieurs villes, dont Québec et Gatineau, appliquent aux immeubles de six logements et plus un taux distinct de celui des petits immeubles résidentiels, et le \cref{tab:9:taux} du \cref{ch:09} rassemble les taux vérifiés pour 2026. | |
| 112 | + | |
| 113 | +Pour le cas~3, la valeur au rôle 2026-2028 est de \dollars{2200000} et la taxe foncière générale résidentielle de Montréal pour 2026, telle que rapportée par la presse, est de \num{0.4631}~\$ par \dollars{100} \parencite{ledevoirmtl2026,mtltaux2026}, d'où une taxe municipale normalisée de $\dollars{2200000} \times \num{0.004631} = \dollars{10188.20}$. La taxe scolaire 2026-2027 est de \num{0.07899}~\$ par \dollars{100} \parencite{taxescolaire2026} ; appliquée à la valeur au rôle entière, elle donne \dollars{1737.78}, et l'exemption des premiers \dollars{25000} ne réduirait ce montant que de \dollars{19.75}, écart que la bibliothèque néglige par simplicité et que l'exercice~\ref{ex:28:3} chiffre. La taxe recalculée est \emph{inférieure} au compte de 2025 (\dollars{10631}), ce qui doit alerter : le compte réel comprend les taxes d'arrondissement et d'éventuelles taxes spéciales, dont le taux n'a pu être vérifié dans un document officiel lisible ; le dossier synthétique ne modélise que la taxe générale, et la \cref{sec:28:sensibilite} mesure ce qu'un compte indexé de la hausse moyenne annoncée pour Rosemont, \pct{5.3}, changerait au revenu net. Pour le triplex du cas~2, à Québec, le recalcul au taux de \num{0.7464}~\$ par \dollars{100} pour les immeubles de un à cinq logements, soit $\dollars{495000} \times \num{0.007464} = \dollars{3694.68}$, auquel s'ajoutent les tarifs de \dollars{386} par logement pour l'aqueduc et l'égout et de \dollars{195} par logement pour les matières résiduelles \parencite{vqtaux2026}, donne \dollars{5437.68} ; le compte déclaré du dossier est de \dollars{5900}, et la différence de \dollars{462} illustre la part des taxes spéciales et de secteur qu'un recalcul au seul taux général ne capte pas. | |
| 114 | + | |
| 115 | +\subsection{Assurances} | |
| 116 | + | |
| 117 | +La prime d'assurance couvre le bâtiment contre l'incendie et les autres risques, la responsabilité civile du propriétaire et, selon les contrats, la perte de revenus locatifs. C'est le poste fixe qui a le plus augmenté au cours de la dernière décennie : le Bureau d'assurance du Canada rapporte une prime moyenne d'assurance habitation de \dollars{1103} au Québec en 2024, en hausse de \pct{9} sur un an et de \pct{63} en dix ans \parencite{bacprimes2025}. Cette statistique porte sur les ménages, toutes formes d'habitation confondues, et non sur les immeubles locatifs ; aucune statistique publique ne décrit la prime d'un immeuble de douze logements, de sorte que la seule base de normalisation est la police en vigueur. Pour le cas~3, la prime de 2025 (\dollars{11060}, soit \dollars{922} par logement) a été retenue comme base et indexée de trois pour cent, parce que le propriétaire a changé d'assureur en 2025 après une hausse de \pct{9.9} en 2024 ; la moyenne indexée des trois exercices aurait donné \dollars{12437}, soit \dollars{1046} de plus, et le choix entre les deux conventions, discuté à la \cref{sec:28:normalisation}, dépend de la lecture que l'évaluateur fait de l'événement. | |
| 118 | + | |
| 119 | +\subsection{Énergie des aires communes et chauffage inclus} | |
| 120 | + | |
| 121 | +Dans la plupart des immeubles locatifs québécois construits après les années 1960, chaque logement a son propre compteur et le locataire paie son électricité, y compris le chauffage, ce que les douze baux du cas~3 confirment (aucun chauffage inclus). Le propriétaire n'assume alors que l'énergie des aires communes : éclairage des corridors et de l'extérieur, buanderie, chauffage du vestibule et des espaces de service, souvent au gaz dans les immeubles d'avant 1975. Lorsque le chauffage est inclus dans les baux, comme c'est fréquent dans les immeubles plus anciens et dans les logements chauffés à l'eau chaude ou au mazout, le poste devient le plus important des postes variables et le plus sensible aux prix de l'énergie et à la rigueur de l'hiver ; il faut alors normaliser sur plusieurs exercices, en degrés-jours si les données le permettent, et vérifier que le loyer contractuel reflète bien l'inclusion. Le \cref{ch:26} traite de la normalisation des loyers selon les services inclus. | |
| 122 | + | |
| 123 | +L'électricité se vérifie par les factures et se projette par le tarif. Le tarif~D d'Hydro-Québec en vigueur le 1\textsuperscript{er} avril 2026 comporte une redevance de \num{46.154}~¢ par jour, un prix de \num{7.065}~¢ par kilowattheure jusqu'à 40~kWh par jour et de \num{11.142}~¢ au-delà \parencite{hydrotarifs2026} ; la Régie de l'énergie a autorisé une hausse de \pct{3.0} pour la clientèle domestique en 2026 et prévoit \pct{3.0} en 2027 et \pct{2.6} en 2028 \parencite{regieenergie2026}. Ces hausses, voisines de l'inflation générale de \pct{3.1} mesurée par l'indice des prix à la consommation du Québec en septembre 2026 \parencite{statcanipc}, justifient que le dossier indexe l'énergie au même taux de trois pour cent que les autres postes variables. Le gaz naturel, en revanche, a connu des variations beaucoup plus amples : les pourcentages publiés par le Tribunal administratif du logement pour les avis donnés avant le 1\textsuperscript{er} janvier 2026 étaient de $-\pct{5.8}$ pour le gaz en 2025 et de $+\pct{13.7}$ en 2026 \parencite{talIndices2026}, ce qui rappelle que l'indexation uniforme est une simplification à déclarer. | |
| 124 | + | |
| 125 | +\subsection{Entretien, réparations, conciergerie et services extérieurs} | |
| 126 | + | |
| 127 | +L'entretien et les réparations regroupent les travaux courants qui maintiennent l'immeuble en état sans en prolonger la vie ni en augmenter la valeur : plomberie, serrurerie, réparations de surface, fournitures, petits contrats. La frontière avec les dépenses en capital est la question la plus fréquente de la normalisation, et la \cref{sec:28:reserves} y revient. Le barème de la Société canadienne d'hypothèques et de logement pour les immeubles locatifs du Québec, daté d'avril 2015 et fourni « à titre indicatif », retenait \dollars{500} par logement pour l'entretien et les réparations, \dollars{125} à \dollars{300} par logement pour les salaires selon la taille de l'immeuble, et \dollars{100} par logement de réserve pour la cuisinière et le réfrigérateur \parencite{schlfraisexploitation2015}. Ces montants sont vieux de plus de dix ans et aucune mise à jour publique n'a été trouvée ; ils ne peuvent servir qu'après indexation explicite et comme ordre de grandeur, ce que la \cref{sec:28:ratios} fait. Pour le cas~3, l'entretien normalisé de \dollars{11745} représente \dollars{979} par logement, soit près du double du barème de 2015 avant indexation, ce qui est plausible pour un immeuble de 1962. | |
| 128 | + | |
| 129 | +La conciergerie désigne la rémunération, en salaire ou en contrat, de la personne qui assure le ménage des aires communes, les menues réparations et la présence sur place ; dans les immeubles plus grands, elle comprend un logement fourni dont la valeur locative doit alors être ajoutée aux revenus et aux dépenses pour que les ratios restent comparables. Le déneigement et l'aménagement paysager sont des contrats saisonniers dont les prix ont progressé plus vite que l'inflation ces dernières années ; le cas~3 montre une hausse de \pct{12.2} entre 2023 et 2025. Ces postes se vérifient par les contrats et se normalisent par la dernière année indexée, sauf changement connu de fournisseur ou de périmètre. | |
| 130 | + | |
| 131 | +\subsection{Gestion, honoraires et frais de location} | |
| 132 | + | |
| 133 | +La gestion rémunère la perception des loyers, la relation avec les locataires, la supervision des travaux et des fournisseurs, la comptabilité et les démarches devant le Tribunal. Elle doit être imputée même lorsque le propriétaire gère lui-même, parce que la valeur marchande suppose un acheteur typique qui, soit paie un gestionnaire, soit consacre un temps qui a un coût d'opportunité. La fourchette de référence pour un immeuble de douze logements est étroite : le barème de 2015 de la SCHL situait la gestion et l'administration à \pct{3} du revenu brut pour cinq ou six logements, \pct{3} à \pct{4} pour sept à onze et \pct{5} pour douze et plus \parencite{schlfraisexploitation2015} ; le formulaire de calcul du Tribunal administratif du logement admettait, dans l'ancienne méthode de fixation, des frais de gestion forfaitaires de \pct{5} des revenus de l'immeuble, les frais réels n'étant admis que jusqu'à \pct{10} \parencite{talAugmentationLoyer,talFormulaireRN2026}. La convention des deux dossiers de l'ouvrage, \pct{4} du revenu brut effectif, se situe au milieu de cette fourchette ; elle représente \dollars{6737.76} pour le cas~3 et \dollars{1623.08} pour le triplex du cas~2, dont le propriétaire-occupant n'inscrit évidemment aucune gestion. Les honoraires juridiques et comptables récurrents et les frais de publicité et de location complètent la liste ; ils sont faibles en proportion mais révélateurs, car un immeuble dont les frais de location sont élevés est un immeuble qui roule. | |
| 134 | + | |
| 135 | +\begin{quebec}[Au Québec : dépenses de l'évaluateur et dépenses du Tribunal] | |
| 136 | +Les dépenses d'un immeuble locatif ont au Québec une portée que n'ont pas celles des autres provinces : elles entrent dans le calcul des augmentations de loyer que le Tribunal administratif du logement peut fixer lorsque locateur et locataire ne s'entendent pas (art.~1947 et 1953 C.c.Q.). Pour les avis de modification donnés à compter du 1\textsuperscript{er} janvier 2026, le Règlement sur les critères de fixation de loyer, modifié par le décret 1455-2025, retient six critères : un pourcentage de base fondé sur la moyenne de trois variations annuelles de l'indice des prix à la consommation du Québec, la variation des taxes foncières municipales et de services, la variation des taxes scolaires, la variation des primes d'assurance, un pourcentage de \pct{5} appliqué aux dépenses d'immobilisation réalisées pendant la période de référence, et les dépenses découlant de la mise en place d'un nouveau service \parencite[art.~3 et 3.1]{reglCriteresFixation}. Les critères 2 à 6 sont appliqués « selon la part attribuable au logement », c'est-à-dire au prorata du loyer du logement dans les revenus de l'immeuble (art.~5). Pour 2026, le pourcentage de base est de \pct{3.1} \parencite{talIndices2026}. Dans l'ancienne méthode, qui continue de s'appliquer aux avis donnés avant cette date, chaque groupe de dépenses d'exploitation (électricité, gaz, mazout, entretien, services, gestion) était ajusté par un pourcentage propre, la gestion étant admise au forfait de \pct{5} des revenus, et les dépenses d'immobilisation étaient amorties à un taux fondé sur les certificats de placement garanti ; le formulaire « Renseignements nécessaires à la fixation du loyer » de 2026-2027 détaille encore, ligne par ligne, les taxes, assurances, énergie, entretien, services, gestion et dépenses d'immobilisation de l'exercice \parencite{talFormulaireRN2026,talAugmentationLoyer}. | |
| 137 | + | |
| 138 | +L'évaluateur doit tenir les deux calculs séparés. Celui du Tribunal est un calcul de \emph{fixation}, qui répartit une variation de coûts entre des locataires en place ; celui de l'évaluateur est un calcul de \emph{valeur}, qui reconstitue le niveau prospectif des dépenses d'un propriétaire typique. Les deux ne coïncident ni dans le périmètre (la gestion imputée et la réserve de remplacement n'existent pas dans la fixation depuis 2026, et les dépenses d'immobilisation y donnent droit à une hausse de loyer plutôt qu'à une déduction du revenu), ni dans la temporalité (la fixation regarde la période de référence écoulée, l'évaluation regarde l'année à venir). Mais ils se rencontrent en un point : les dépenses admissibles à la fixation déterminent la vitesse à laquelle les hausses de taxes, d'assurances et de travaux pourront être répercutées sur les loyers, et donc la croissance du revenu brut que le \cref{ch:34} projette. Une taxe qui bondit de dix pour cent au nouveau rôle réduit le revenu net de l'année, puis se répercute partiellement sur les loyers des années suivantes ; l'évaluateur qui normalise la taxe sans tenir compte de cette répercussion dans sa projection sous-évalue l'immeuble, et celui qui compte la répercussion sans la taxe le surévalue. | |
| 139 | +\end{quebec} | |
| 140 | + | |
| 141 | +\section{Normalisation des dépenses historiques}\label{sec:28:normalisation} | |
| 142 | + | |
| 143 | +\subsection{Principes} | |
| 144 | + | |
| 145 | +La \motcle{normalisation} (\emph{stabilization}) transforme les dépenses déclarées des derniers exercices en dépenses prospectives de première année, représentatives d'un propriétaire typique exploitant l'immeuble dans des conditions stables. Quatre opérations la composent. La première est la \emph{vérification} : chaque poste déclaré est rapproché d'une pièce (compte de taxes, police, factures, contrats) et des revenus (un poste de conciergerie suppose des tâches, un poste de publicité suppose des départs). La deuxième est l'\emph{épuration} : les dépenses qui ne sont pas des dépenses d'exploitation sont retirées (intérêts, amortissement, travaux capitalisables, dépenses personnelles), et les événements non récurrents sont neutralisés (sinistre, litige, remplacement d'un équipement majeur comptabilisé en entretien). La troisième est le \emph{complément} : les postes qu'un propriétaire typique assume mais que le propriétaire actuel n'inscrit pas sont ajoutés, au premier chef la gestion imputée et la réserve de remplacement, parfois la conciergerie ou le déneigement lorsque le propriétaire-occupant les fait lui-même. La quatrième est la \emph{projection} à la première année : recalcul des postes régis par des règles (taxes), indexation des postes variables, application des taux convenus (gestion). | |
| 146 | + | |
| 147 | +\textcite{appraisal2026} et \textcite{brueggemanFisher2022} insistent sur le fait que l'état normalisé est une \emph{opinion} de l'évaluateur, non une moyenne mécanique : deux immeubles identiques peuvent avoir des historiques très différents selon la qualité de leur gestion, et c'est le niveau typique, non le niveau observé, qui détermine la valeur marchande. Un propriétaire négligent qui n'entretient pas son immeuble affiche un revenu net historique élevé, mais l'acheteur qui le paie sur cette base découvrira vite la vérité ; un propriétaire méticuleux qui sur-entretient affiche un revenu net bas que le marché ne pénalise pas entièrement. Le revenu net normalisé se situe entre les deux, au niveau que l'acheteur typique anticipe. | |
| 148 | + | |
| 149 | +\subsection{Règles poste par poste} | |
| 150 | + | |
| 151 | +La règle retenue pour chaque poste découle de son classement. Pour les postes \emph{régis par des règles} (taxes municipales et scolaires, tarifications par logement), la normalisation est un recalcul : valeur au rôle en vigueur multipliée par les taux de l'exercice, plus les tarifs par logement ; le compte historique ne sert qu'à vérifier le recalcul et à repérer les taxes spéciales que le taux général ne capte pas. Pour les postes \emph{contractuels} (assurances, conciergerie, déneigement, gestion confiée à un tiers), la base est le contrat en vigueur, indexé s'il doit être renouvelé en cours d'année. Pour les postes \emph{d'usage} (énergie, entretien et réparations, honoraires, publicité), deux conventions coexistent. La première, retenue par la bibliothèque de l'ouvrage, prend la dernière année observée et l'indexe d'un an : | |
| 152 | +\begin{equation}\label{eq:28:derniere} | |
| 153 | +DE^{\text{norm}}_k = DE_{k,\,2025}\,(1 + g), | |
| 154 | +\end{equation} | |
| 155 | +avec $g = \pct{3}$ pour le cas~3, taux cohérent avec l'inflation de \pct{3.1} et la hausse tarifaire de l'électricité. La seconde prend la moyenne des trois derniers exercices, chacun ramené en dollars de la première année : | |
| 156 | +\begin{equation}\label{eq:28:moyenne} | |
| 157 | +\overline{DE}^{\text{norm}}_k = \frac{1}{3}\sum_{a=2023}^{2025} DE_{k,a}\,(1+g)^{2026-a}. | |
| 158 | +\end{equation} | |
| 159 | +La moyenne indexée lisse les à-coups et convient aux postes irréguliers par nature (réparations, honoraires juridiques) ; la dernière année indexée suit mieux une tendance et convient aux postes dont le niveau a changé durablement (nouveau contrat, nouvelle police). Le \cref{tab:28:alternative} compare les deux conventions pour les principaux postes du cas~3 : les écarts sont de quelques centaines de dollars dans un sens ou dans l'autre, sauf pour les assurances, où la pointe de 2024 fait de la moyenne indexée une base supérieure de \dollars{1046} à la dernière année. Capitalisé au taux de \pct{4.415} du \cref{ch:29}, un écart de \dollars{1046} sur les dépenses vaut environ \dollars{23700} de valeur, soit un peu plus d'un pour cent : la convention compte, mais moins que la vérification des postes eux-mêmes. | |
| 160 | + | |
| 161 | +\begin{table}[htbp] | |
| 162 | +\caption{Deux conventions de normalisation des postes d'usage du cas~3 : dernière année indexée (règle de l'ouvrage) et moyenne des trois exercices indexée à la première année ($g = \pct{3}$).} | |
| 163 | +\label{tab:28:alternative} | |
| 164 | +\centering | |
| 165 | +\small | |
| 166 | +\begin{tabular}{L{44mm}S[table-format=5.2]S[table-format=5.2]S[table-format=-4.2]L{38mm}} | |
| 167 | +\toprule | |
| 168 | +Poste & {Dernière indexée (\$)} & {Moyenne indexée (\$)} & {Écart (\$)} & Lecture \\ | |
| 169 | +\midrule | |
| 170 | +Assurances & 11391.80 & 12437.31 & 1045.51 & pointe de 2024, changement d'assureur en 2025 \\ | |
| 171 | +Entretien et réparations & 11745.09 & 11614.34 & -130.75 & tendance régulière, écart faible \\ | |
| 172 | +Conciergerie & 10139.32 & 10270.56 & 131.24 & pointe de 2024 (remplacement temporaire) \\ | |
| 173 | +Déneigement et paysagement & 6886.58 & 6620.03 & -266.55 & hausse récente des contrats \\ | |
| 174 | +Frais juridiques et comptables & 2833.53 & 2669.84 & -163.69 & hausse récente \\ | |
| 175 | +Électricité des aires communes & 4387.80 & 4280.27 & -107.53 & hausse tarifaire régulière \\ | |
| 176 | +\bottomrule | |
| 177 | +\end{tabular} | |
| 178 | +\tabsource{\synth{\texttt{ch28\_depenses.normalisation\_alternative}, dépenses 2023-2025 du dossier cas~3, graine 20261031}} | |
| 179 | +\end{table} | |
| 180 | + | |
| 181 | +\subsection{Événements non récurrents et travaux déguisés} | |
| 182 | + | |
| 183 | +Trois situations exigent un jugement explicite. La première est l'\emph{événement non récurrent} : un dégât d'eau dont la franchise a gonflé l'entretien, un litige devant le Tribunal, une prime de départ ; le poste est ramené à son niveau courant et l'événement est mentionné dans le rapport. La deuxième est le \emph{travail capitalisable comptabilisé en entretien} : le propriétaire qui remplace un chauffe-eau, repeint un logement libéré ou refait un balcon inscrit souvent ces montants en « réparations », parce que la fiscalité ou la simplicité l'y invite. L'évaluateur les retire de l'entretien courant et les réaffecte, selon leur nature, à la réserve de remplacement (composantes à vie courte) ou aux dépenses en capital des flux actualisés (travaux lourds), faute de quoi la dépense sera comptée deux fois, une fois en entretien historique et une fois en réserve. C'est exactement la situation du cas~3 : la ligne « réserve de remplacement » déclarée par le propriétaire (\dollars{8103} en 2025) correspond en réalité aux achats d'électroménagers et de revêtements de l'exercice, et c'est pour cette raison qu'elle est traitée comme dotation normalisée et non comme dépense d'entretien. La troisième situation est l'\emph{omission du propriétaire-occupant}, fréquente dans les plex : aucune gestion, un entretien minimal parce que le propriétaire le fait lui-même, parfois aucun déneigement. Les postes manquants sont imputés à leur coût de marché. Pour le triplex du cas~2, la gestion est imputée à \pct{4} du revenu brut effectif (\dollars{1623}) ; l'entretien déclaré de \dollars{3200}, soit \dollars{1067} par logement, est conservé parce qu'il est déjà supérieur au barème indicatif. | |
| 184 | + | |
| 185 | +\subsection{Le revenu net historique n'est pas le revenu net} | |
| 186 | + | |
| 187 | +L'erreur la plus répandue dans les fiches de vente et les analyses sommaires consiste à soustraire les dépenses déclarées de l'exercice écoulé du revenu brut et à appeler le résultat « revenu net ». Pour le cas~3, les dépenses déclarées de 2025 totalisent \dollars{70693} ; rapportées au revenu brut effectif normalisé, elles donneraient un revenu net de \dollars{97751}, supérieur de \dollars{7795} au revenu net normalisé de \dollars{89956}. La différence tient à trois éléments : la gestion imputée (\dollars{6738}), l'indexation des postes variables et de l'assurance (environ \dollars{1500}) et, en sens inverse, le recalcul des taxes (\dollars{-449}). Capitalisée au taux du \cref{ch:29}, cette différence représente \dollars{176561}, soit \pct{8.7} de la valeur : un acheteur qui paierait sur le revenu net historique surpaierait de ce montant. La \cref{fig:28:evolution} met en regard, pour chaque groupe de postes, le montant déclaré de 2025 et le montant normalisé. | |
| 188 | + | |
| 189 | +\begin{figure}[htbp] | |
| 190 | +\centering | |
| 191 | +\includegraphics[width=135mm]{ch28/ch28-fig-evolution.pdf} | |
| 192 | +\caption{Cas~3 : à gauche, évolution 2023-2025 des groupes de dépenses déclarées en indice (2023 = 100), où la croissance régulière des postes variables et de l'énergie contraste avec la stabilité des taxes de la fin du rôle précédent et avec la pointe puis le recul de l'assurance ; à droite, montant déclaré de 2025 et montant normalisé de première année par groupe, où apparaissent l'ajout de la gestion imputée et la légère baisse des taxes recalculées au taux général.} | |
| 193 | +\figsource{\synth{script \texttt{analysis/python/figures/ch28\_figures.py}, graine 20261031}} | |
| 194 | +\end{figure} | |
| 195 | + | |
| 196 | +\section{Réserve de remplacement et dépenses en capital}\label{sec:28:reserves} | |
| 197 | + | |
| 198 | +\subsection{Deux objets différents} | |
| 199 | + | |
| 200 | +La \motcle{réserve de remplacement} et les \motcle{dépenses en capital} (CAPEX) répondent à la même réalité physique, l'usure de l'immeuble, mais à deux échelles différentes. La réserve couvre les composantes à vie courte et à remplacement régulier, dont le coût annuel moyen est prévisible et dont l'acheteur typique fait un poste de son budget : électroménagers fournis, chauffe-eau, revêtements de sol, peinture et finition des logements à la rotation des locataires. Les dépenses en capital couvrent les travaux lourds, discontinus, dont la date et le montant sont connus ou estimables à la date d'évaluation : toiture, maçonnerie, balcons, fenêtres, système de chauffage central, plomberie d'alimentation, mise aux normes. La réserve est une \emph{dotation} lissée qui entre dans le revenu net ; les dépenses en capital sont des \emph{décaissements} datés qui entrent dans les flux. | |
| 201 | + | |
| 202 | +\begin{definition}{Réserve de remplacement}{reserve} | |
| 203 | +La \motcle{réserve de remplacement} (\emph{replacement allowance}), notée $RR$, est la dotation annuelle qui représente le coût moyen, lissé dans le temps, du renouvellement des composantes à vie courte de l'immeuble. Elle se calcule par composante, soit par la méthode linéaire, | |
| 204 | +\begin{equation}\label{eq:28:reserve-lineaire} | |
| 205 | +RR = n \sum_k \frac{C_k}{N_k}, | |
| 206 | +\end{equation} | |
| 207 | +soit par la méthode du fonds d'amortissement, | |
| 208 | +\begin{equation}\label{eq:28:reserve-fonds} | |
| 209 | +RR = n \sum_k C_k \cdot \frac{i}{(1+i)^{N_k} - 1}, | |
| 210 | +\end{equation} | |
| 211 | +où $n$ est le nombre de logements, $C_k$ le coût de remplacement de la composante $k$ par logement, $N_k$ sa durée de vie en années et $i$ le taux auquel la dotation est supposée fructifier. Elle peut aussi être retenue par convention, à un montant par logement déclaré, pourvu que la même convention s'applique aux ventes dont le taux de capitalisation est extrait. | |
| 212 | +\end{definition} | |
| 213 | + | |
| 214 | +La méthode linéaire ignore le rendement des sommes mises de côté et surestime légèrement la dotation ; le fonds d'amortissement suppose que la dotation est placée au taux $i$ et la réduit d'autant. À taux nul, les deux coïncident, puisque $\lim_{i \to 0} i/[(1+i)^N - 1] = 1/N$. Le \cref{tab:28:reserve} applique les deux méthodes à une liste de composantes dont les coûts et les durées sont des \emph{hypothèses pédagogiques déclarées}, qui ne proviennent d'aucun barème publié : la méthode linéaire donne \dollars{688} par logement et le fonds d'amortissement à \pct{3}, \dollars{581}. La convention du dossier cas~3, \dollars{675} par logement, est donc de l'ordre d'une dotation linéaire pour ces composantes, et plus de six fois le montant de \dollars{100} par logement que le barème de 2015 de la SCHL réservait aux seuls électroménagers \parencite{schlfraisexploitation2015}. Aucune norme publique récente ne fixe la réserve d'un immeuble locatif québécois ; le niveau retenu est une convention du dossier, déclarée comme telle, et sa cohérence avec le taux extrait compte plus que son niveau, comme la suite le démontre. | |
| 215 | + | |
| 216 | +\begin{table}[htbp] | |
| 217 | +\caption{Calcul d'une réserve de remplacement par composantes, pour douze logements : méthode linéaire et fonds d'amortissement à \pct{3}. Coûts et durées de vie : hypothèses pédagogiques déclarées, sans source externe.} | |
| 218 | +\label{tab:28:reserve} | |
| 219 | +\centering | |
| 220 | +\small | |
| 221 | +\begin{tabular}{L{46mm}S[table-format=4.0]S[table-format=2.0]S[table-format=3.2]S[table-format=3.2]S[table-format=4.2]S[table-format=4.2]} | |
| 222 | +\toprule | |
| 223 | +Composante & {Coût/log. (\$)} & {Vie (ans)} & {Linéaire/log. (\$)} & {Fonds 3 \%/log. (\$)} & {Linéaire (\$)} & {Fonds 3 \% (\$)} \\ | |
| 224 | +\midrule | |
| 225 | +Cuisinière et réfrigérateur & 2200 & 12 & 183.33 & 155.02 & 2200.00 & 1860.20 \\ | |
| 226 | +Chauffe-eau & 1100 & 10 & 110.00 & 95.95 & 1320.00 & 1151.44 \\ | |
| 227 | +Revêtements de sol & 3600 & 20 & 180.00 & 133.98 & 2160.00 & 1607.72 \\ | |
| 228 | +Peinture et finition intérieure & 1500 & 7 & 214.29 & 195.76 & 2571.43 & 2349.11 \\ | |
| 229 | +\midrule | |
| 230 | +Total & & & 687.62 & 580.71 & 8251.43 & 6968.47 \\ | |
| 231 | +Convention du dossier cas~3 & & & 675.25 & & 8103.00 & \\ | |
| 232 | +\bottomrule | |
| 233 | +\end{tabular} | |
| 234 | +\tabsource{\synth{\texttt{ch28\_depenses.reserve\_par\_composantes} ; \texttt{traite.finance.facteur\_fonds\_amortissement} ; hypothèses pédagogiques}} | |
| 235 | +\end{table} | |
| 236 | + | |
| 237 | +\subsection{Équivalence entre réserve et dépenses en capital} | |
| 238 | + | |
| 239 | +Réserve et dépenses en capital ne sont pas deux conventions arbitraires mais deux représentations d'un même flux, et la mathématique financière en établit l'équivalence. Une composante de coût $C$ remplacée tous les $N$ ans à perpétuité, le premier remplacement survenant dans $N$ ans, a pour valeur actuelle au taux $i$ | |
| 240 | +\begin{equation}\label{eq:28:va-capex} | |
| 241 | +VA_{\text{CAPEX}} = \sum_{j=1}^{\infty} \frac{C}{(1+i)^{jN}} = \frac{C}{(1+i)^N - 1}, | |
| 242 | +\end{equation} | |
| 243 | +tandis qu'une dotation annuelle perpétuelle $RR = C\, i/[(1+i)^N - 1]$, c'est-à-dire la réserve du fonds d'amortissement de l'\cref{eq:28:reserve-fonds}, a pour valeur actuelle $RR/i = C/[(1+i)^N - 1]$. Les deux valeurs sont identiques : déduire la réserve du fonds d'amortissement du revenu perpétuel capitalisé au taux $i$, ou déduire les dépenses en capital datées des flux actualisés au même taux, conduit à la même valeur. Cette équivalence fonde la convention de l'ouvrage. Dans la capitalisation directe, qui suppose un revenu perpétuel et ne connaît pas de calendrier, l'usure ne peut être représentée que par une dotation annuelle ; la réserve y est donc incluse. Dans les flux actualisés, qui connaissent un calendrier sur dix ans, les travaux lourds datés sont inscrits à leur date et la réserve ne couvre que les composantes à vie courte dont le renouvellement continu n'a pas de date ; le taux terminal, extrait de ventes dont le revenu net inclut la réserve, suppose que l'immeuble revendu est perpétuellement entretenu. La règle qui en découle est simple : une composante donnée est couverte \emph{soit} par la réserve, \emph{soit} par les dépenses en capital, jamais par les deux. | |
| 244 | + | |
| 245 | +L'équivalence éclaire aussi la portée du double comptage. Les dépenses en capital programmées du cas~3 dans la projection du \cref{ch:30} s'élèvent à \dollars{85000} en 2027, \dollars{40000} en 2029 et \dollars{120000} en 2032, soit \dollars{245000} sur l'horizon de dix ans ; leur valeur actuelle au taux d'actualisation de \pct{7.25} est de \dollars{177648}, ce qui correspond à une annuité équivalente de \dollars{25586} par année. Si l'évaluateur, par excès de prudence, ajoutait au revenu net capitalisé une réserve « pour gros travaux » de cet ordre tout en conservant les dépenses en capital dans les flux, il retrancherait deux fois la même usure ; dans la capitalisation directe, le revenu net tomberait à \dollars{64370} et la valeur à \dollars{1457975}, inférieure de \pct{28.4} à la valeur cohérente. L'exercice~\ref{ex:28:7} développe ce calcul. \textcite{bokhariGeltner2018} ont montré, sur un large échantillon d'immeubles commerciaux et multirésidentiels américains, que les dépenses en capital récurrentes représentent une fraction substantielle du revenu net et qu'elles expliquent une part importante de la dépréciation nette observée ; leur travail rappelle que ni la réserve ni les dépenses en capital ne sont des détails, et que leur omission totale, fréquente dans les fiches de courtage, surévalue l'immeuble autant que leur double comptage le sous-évalue. | |
| 246 | + | |
| 247 | +\subsection{Cohérence avec le taux de capitalisation extrait} | |
| 248 | + | |
| 249 | +Le niveau de la réserve importe moins que la symétrie entre le sujet et les ventes. Le \cref{ch:29} extrait le taux global $R$ d'un échantillon de ventes comme le rapport du revenu net reconstitué au prix ; si ce revenu net est calculé \emph{après} réserve, le taux obtenu est un taux après réserve, et il s'applique au revenu net après réserve du sujet. La proposition suivante quantifie ce qui arrive lorsque la convention change de côté. | |
| 250 | + | |
| 251 | +\begin{proposition}{Erreur d'une réserve asymétrique}{reserve-asymetrique} | |
| 252 | +Soit $V$ la valeur cohérente d'un immeuble dont le revenu net après réserve est $\NOI$ et la réserve $RR$, obtenue par un taux $R$ extrait après réserve : $V = \NOI/R$. Le taux « avant réserve » équivalent, extrait des mêmes ventes sans déduire la réserve, est $R' = R + RR/V$. Appliquer $R'$ au revenu après réserve du sujet donne $V' = \NOI/R'$, et l'erreur commise est | |
| 253 | +\begin{equation}\label{eq:28:erreur-reserve} | |
| 254 | +V - V' = \frac{RR}{R'} \approx \frac{RR}{R}, \qquad \frac{V' - V}{V} = -\frac{RR}{\NOI + RR}. | |
| 255 | +\end{equation} | |
| 256 | +La sous-évaluation est égale à la réserve capitalisée au taux avant réserve ; en proportion, elle est égale à la part de la réserve dans le revenu net avant réserve. L'erreur inverse, taux après réserve appliqué à un revenu avant réserve, surévalue de $RR/R$, soit $RR/\NOI$ en proportion. | |
| 257 | +\end{proposition} | |
| 258 | +\begin{proof} | |
| 259 | +Par construction, $R' = (\NOI + RR)/V = R + RR/V$. Alors $V' = \NOI/R' = \NOI V/(\NOI + RR)$, d'où $V - V' = V\,RR/(\NOI + RR) = RR/R'$ puisque $R' = (\NOI+RR)/V$, et $(V' - V)/V = \NOI/(\NOI + RR) - 1 = -RR/(\NOI + RR)$. L'approximation $RR/R' \approx RR/R$ vaut au premier ordre en $RR/V$, c'est-à-dire lorsque la réserve est petite devant le revenu net. Pour l'erreur inverse, $V'' = (\NOI + RR)/R = V + RR/R$. | |
| 260 | +\end{proof} | |
| 261 | + | |
| 262 | +Pour le cas~3, le taux médian extrait après réserve est de \pct{4.415} et la valeur cohérente de \dollars{2037503}. Le taux avant réserve équivalent est $R' = \pct{4.415} + \dollars{8103}/\dollars{2037503} = \pct{4.813}$, supérieur de quarante points de base. Appliqué au revenu net après réserve, il donne $V' = \dollars{89955.75}/\num{0.04813} = \dollars{1869136}$, soit \dollars{168367} de moins, exactement $RR/R'$, et une erreur relative de $-\pct{8.26}$, exactement $-\dollars{8103}/\dollars{98059}$. L'approximation $RR/R = \dollars{183533}$ surestime légèrement l'écart parce que $R' > R$. L'erreur inverse, taux après réserve sur revenu avant réserve, donnerait \dollars{2221036}, soit $+\pct{9.0}$. Quarante points de base paraissent peu ; ils valent plus de huit pour cent de la valeur, et l'erreur est systématique, toujours dans le même sens. La leçon est que l'évaluateur qui extrait ses taux de fiches de courtage, lesquelles ignorent presque toujours la réserve, doit soit reconstituer les revenus nets des ventes avec sa propre réserve, soit appliquer le taux ainsi obtenu à un revenu du sujet défini de la même façon, sans réserve, et traiter alors l'usure par ailleurs. La même symétrie vaut pour la gestion imputée et pour le mode de calcul des taxes, comme le \cref{ch:29} le reprend. | |
| 263 | + | |
| 264 | +\section{Ratios et indicateurs de référence}\label{sec:28:ratios} | |
| 265 | + | |
| 266 | +\subsection{Les références disponibles} | |
| 267 | + | |
| 268 | +Le lecteur cherchera en vain une statistique officielle récente du ratio de dépenses des immeubles locatifs québécois. La seule référence publique est le barème indicatif de la SCHL d'avril 2015, qui ne fixe d'ailleurs pas un ratio global mais des montants par logement pour l'entretien et les salaires, des pourcentages du revenu brut pour la gestion et une réserve pour les électroménagers, les taxes, l'assurance et l'énergie étant à prendre « au coût réel » \parencite{schlfraisexploitation2015}. Les fourchettes de \pct{35} à \pct{50} qui circulent dans les publications de courtage ne précisent ni le périmètre des postes (réserve incluse ou non, gestion imputée ou non), ni le dénominateur (revenu brut potentiel ou effectif), ni la taille des immeubles, et l'ouvrage ne les retient pas comme source. Le \cref{tab:28:references} confronte les deux dossiers au barème de 2015 ; la comparaison exige d'indexer le barème, et l'indice des prix à la consommation du Québec a progressé d'environ un tiers entre 2015 et 2026 \parencite{statcanipc}, ce qui porte l'entretien de référence à quelque \dollars{660} par logement et la gestion à \pct{5} du revenu brut pour douze logements et plus. | |
| 269 | + | |
| 270 | +\begin{table}[htbp] | |
| 271 | +\caption{Indicateurs de dépenses des deux dossiers et barème indicatif de la SCHL pour le Québec (avril 2015, non indexé) ; aucune statistique publique plus récente n'est disponible.} | |
| 272 | +\label{tab:28:references} | |
| 273 | +\centering | |
| 274 | +\small | |
| 275 | +\begin{tabular}{L{52mm}S[table-format=5.2]S[table-format=5.2]L{40mm}} | |
| 276 | +\toprule | |
| 277 | +Indicateur & {Cas~3 (12 log.)} & {Cas~2 (triplex)} & Barème SCHL 2015 \\ | |
| 278 | +\midrule | |
| 279 | +Entretien et réparations par logement (\$) & 978.76 & 1066.67 & 500 \$/log. \\ | |
| 280 | +Conciergerie (salaires) par logement (\$) & 844.94 & 0.00 & 125 à 300 \$/log. selon la taille \\ | |
| 281 | +Gestion (\% du revenu brut effectif) & 4.00 & 4.00 & 3 \% (5-6 log.) à 5 \% (12 log. et plus) \\ | |
| 282 | +Réserve de remplacement par logement (\$) & 675.25 & 600.00 & 100 \$/log. (cuisinière, réfrigérateur) \\ | |
| 283 | +Taxes foncières (\% du RBE) & 7.08 & 15.70 & coût réel \\ | |
| 284 | +Assurances (\% du RBE) & 6.76 & 8.38 & coût réel \\ | |
| 285 | +Dépenses totales par logement (\$) & 6540.68 & 6181.03 & {---} \\ | |
| 286 | +Dépenses totales par m\textsuperscript{2} locatif (\$) & 95.14 & 70.78 & {---} \\ | |
| 287 | +Ratio de dépenses, réserve comprise (\% du RBE) & 46.60 & 45.70 & {---} \\ | |
| 288 | +Revenu net par logement (\$) & 7496.31 & 7344.65 & {---} \\ | |
| 289 | +Revenu net par m\textsuperscript{2} locatif (\$) & 109.04 & 84.10 & {---} \\ | |
| 290 | +\bottomrule | |
| 291 | +\end{tabular} | |
| 292 | +\tabsource{\synth{\texttt{ch28\_depenses.calculer} (cas~3 : 825~m\textsuperscript{2} locatifs ; cas~2 : 262~m\textsuperscript{2} habitables), graine 20261031} ; barème : \textcite{schlfraisexploitation2015}.} | |
| 293 | +\end{table} | |
| 294 | + | |
| 295 | +\subsection{Ce qu'un ratio mesure réellement} | |
| 296 | + | |
| 297 | +Le ratio de dépenses du cas~3, \pct{46.6}, est élevé au regard de la médiane des quarante ventes comparables du dossier, \pct{39.9}, dont les quartiles sont \pct{37.9} et \pct{41.9}. Avant d'y voir une exploitation coûteuse, il faut se souvenir que le ratio a un dénominateur. Les loyers contractuels du sujet sont inférieurs de onze pour cent aux loyers de marché (\dollars{1150} contre \dollars{1292} par logement et par mois), parce que plusieurs locataires sont en place depuis longtemps ; les dépenses, elles, ne dépendent pas du niveau des loyers. Si l'on recalcule le ratio avec les loyers de marché, en ne faisant varier que la gestion qui en dépend, le revenu brut effectif passe à \dollars{188141}, les dépenses à \dollars{79276} et le ratio à \pct{42.1}, dans le troisième quartile des comparables. La \cref{fig:28:ratio-loyer} représente les quarante ventes dans le plan loyer moyen–ratio et y superpose la courbe du ratio que le sujet afficherait pour chaque niveau de loyer, dépenses inchangées : elle décroît comme l'inverse du loyer, et le sujet y figure deux fois, à son loyer contractuel et à son loyer de marché. Le reste de l'écart avec les comparables s'explique par la conciergerie salariée, lourde pour douze logements, par une assurance de \dollars{949} par logement et par l'inclusion de la réserve et de la gestion imputée, que les ratios de courtage omettent souvent. Les ratios des comparables synthétiques ont été générés indépendamment du niveau des loyers, ce qui explique l'absence de relation dans le nuage ; sur un marché réel, on s'attendrait à une relation décroissante atténuée, les immeubles aux loyers élevés étant aussi ceux dont les dépenses par logement sont les plus fortes. | |
| 298 | + | |
| 299 | +\begin{figure}[htbp] | |
| 300 | +\centering | |
| 301 | +\includegraphics[width=135mm]{ch28/ch28-fig-ratio-loyer.pdf} | |
| 302 | +\caption{Ratio de dépenses (réserve comprise, rapporté au revenu brut effectif) selon le loyer mensuel moyen pour les quarante ventes comparables du cas~3, et courbe du ratio que le sujet afficherait à chaque niveau de loyer, dépenses hors gestion inchangées. Le sujet est à \pct{46.6} avec ses loyers contractuels de \dollars{1150} et serait à \pct{42.1} aux loyers de marché de \dollars{1292} : près de la moitié de son écart à la médiane des comparables tient au niveau des loyers, non à celui des dépenses.} | |
| 303 | +\figsource{\synth{script \texttt{analysis/python/figures/ch28\_figures.py}, graine 20261031}} | |
| 304 | +\end{figure} | |
| 305 | + | |
| 306 | +La même prudence s'impose pour les indicateurs par logement et par mètre carré. Le revenu net par logement du cas~3, \dollars{7496}, et celui du triplex, \dollars{7345}, sont voisins alors que les immeubles n'ont rien de commun ; par mètre carré, l'écart est net (\dollars{109} contre \dollars{84}) parce que les logements du triplex sont plus grands. Les dépenses par logement, \dollars{6541} et \dollars{6181}, sont également proches ; mais leur structure diffère du tout au tout, comme la \cref{fig:28:structure} le montre : les taxes et l'assurance font plus de la moitié des dépenses du triplex de Québec, où le taux de taxe est plus élevé et où le propriétaire-occupant n'a ni conciergerie ni honoraires, alors que les services (conciergerie, déneigement) et l'entretien dominent dans l'immeuble de douze logements. Un ratio, un montant par logement ou par mètre carré ne sont que des points d'entrée ; la décomposition poste par poste est le seul niveau auquel la comparaison entre immeubles a un sens. | |
| 307 | + | |
| 308 | +\begin{figure}[htbp] | |
| 309 | +\centering | |
| 310 | +\includegraphics[width=135mm]{ch28/ch28-fig-structure.pdf} | |
| 311 | +\caption{Structure des dépenses normalisées, en pourcentage du revenu brut effectif, par groupe de postes, pour l'immeuble de douze logements de Montréal (cas~3) et le triplex de Québec (cas~2). Les ratios totaux sont presque identiques (\pct{46.6} et \pct{45.7}), mais les taxes et l'assurance pèsent deux fois plus dans le triplex, où le taux de taxe est plus élevé et où le propriétaire-occupant n'inscrit ni conciergerie ni honoraires, tandis que les services et l'entretien dominent dans l'immeuble de douze logements.} | |
| 312 | +\figsource{\synth{script \texttt{analysis/python/figures/ch28\_figures.py}, graine 20261031}} | |
| 313 | +\end{figure} | |
| 314 | + | |
| 315 | +\section{Exemple intégral : l'immeuble de douze logements et le triplex}\label{sec:28:exemple} | |
| 316 | + | |
| 317 | +\begin{exemple}{Dépenses normalisées et revenu net du cas~3}{cas3-depenses} | |
| 318 | +L'immeuble sujet du cas~3 est un bâtiment fictif de douze logements (quatre 3½, six 4½, deux 5½) construit en 1962 dans Rosemont–La Petite-Patrie, à Montréal, en état moyen (3 sur 5), de \msq{825} de surface locative, avec six stationnements ; sa valeur au rôle 2026-2028 est de \dollars{2200000} et la date d'évaluation est le 1\textsuperscript{er} septembre 2026. Les locataires paient leur électricité et leur chauffage. Le vendeur a fourni les états de dépenses des exercices 2023, 2024 et 2025 et gère lui-même l'immeuble. Le \cref{ch:27} a établi le revenu brut effectif de première année à \dollars{168443.94} (revenu brut potentiel de \dollars{165540}, inoccupation et pertes de \pct{3.9}, autres revenus de \dollars{9360}). Chaque chiffre de l'exemple provient du script \texttt{analysis/python/cases/ch28\_depenses.py}, qui appelle les fonctions partagées \texttt{traite.cas3.revenus} et \texttt{traite.cas3.depenses\_normalisees}. | |
| 319 | +\end{exemple} | |
| 320 | + | |
| 321 | +\begin{synthetique} | |
| 322 | +Les dépenses, l'état locatif et les hypothèses du cas~3 proviennent du dossier synthétique \texttt{data/synthetic/cas3\_montreal\_depenses.csv} (trente-six lignes : douze postes sur trois exercices), \texttt{cas3\_montreal\_etat\_locatif.csv}, \texttt{cas3\_montreal\_hypotheses\_dcf.json} et \texttt{cas3\_montreal\_sujet.json} ; ceux du cas~2 de \texttt{cas2\_quebec\_depenses.csv}, \texttt{cas2\_quebec\_loyers.csv} et \texttt{cas2\_quebec\_sujet.json}. Ils sont générés par \texttt{analysis/python/traite/synth.py} avec la graine 20261031. L'historique de dépenses du cas~3 est obtenu à partir de niveaux de base par poste (taxes = valeur au rôle $\times$ taux 2026 ; entretien = \pct{6.5} du revenu brut potentiel ; conciergerie, déneigement, honoraires et publicité à des montants déclarés dans \texttt{data/synthetic/README.md}), d'une inflation de \pct{4.5} en 2024 et de \pct{3} en 2025 et d'un bruit lognormal d'écart-type \pct{4} par poste et par année ; la relation entre les postes et la taille de l'immeuble est une hypothèse pédagogique, non une calibration empirique. Les ordres de grandeur ont été calibrés sur des sources publiques consignées dans \texttt{data/synthetic/calibration.json} : taux de taxes 2026 de Montréal et taxe scolaire 2026-2027, barème SCHL 2015 pour la gestion et l'entretien, hausse tarifaire de l'électricité, inflation. Aucun immeuble, aucune transaction et aucun locataire réels ne sont décrits. | |
| 323 | +\end{synthetique} | |
| 324 | + | |
| 325 | +\subsection{De l'historique à l'état normalisé} | |
| 326 | + | |
| 327 | +Le \cref{tab:28:cas3} réunit l'historique des trois exercices, la règle appliquée à chaque poste et le montant normalisé de première année. L'historique révèle d'abord ce que la normalisation devra corriger. Le total déclaré passe de \dollars{66992} en 2023 à \dollars{70693} en 2025, soit \pct{5.5} en deux ans ou \pct{2.7} par année, mais cette modération est trompeuse : les taxes municipales sont restées stables ($-\pct{0.2}$) parce que 2025 était la dernière année du rôle précédent, et l'assurance a reculé ($-\pct{3.6}$) après la pointe de 2024, alors que tous les postes d'usage ont progressé de \pct{9} à \pct{18} en deux ans. Le propriétaire n'inscrit aucune gestion. La ligne qu'il appelle « réserve de remplacement » correspond aux achats effectifs d'électroménagers et de revêtements de chaque exercice, de \dollars{7488} à \dollars{8103}. | |
| 328 | + | |
| 329 | +\begin{table}[htbp] | |
| 330 | +\caption{Cas~3 : dépenses déclarées 2023-2025, règle de normalisation et montant normalisé de première année (exercice du 1\textsuperscript{er} septembre 2026 au 31 août 2027, dollars courants).} | |
| 331 | +\label{tab:28:cas3} | |
| 332 | +\centering | |
| 333 | +\footnotesize\setlength{\tabcolsep}{3.2pt} | |
| 334 | +\begin{tabular}{L{37mm}S[table-format=5.0]S[table-format=5.0]S[table-format=5.0]L{34mm}S[table-format=5.2]S[table-format=2.1]l} | |
| 335 | +\toprule | |
| 336 | +Poste & {2023} & {2024} & {2025} & Règle & {Normalisé (\$)} & {\% RBE} & Type \\ | |
| 337 | +\midrule | |
| 338 | +Taxes municipales & 10649 & 10853 & 10631 & rôle \dollars{2200000} $\times$ 0,4631 \$/100 \$ & 10188.20 & 6.0 & fixe \\ | |
| 339 | +Taxe scolaire & 1782 & 1712 & 1744 & rôle $\times$ 0,07899 \$/100 \$ & 1737.78 & 1.0 & fixe \\ | |
| 340 | +Assurances & 11474 & 12614 & 11060 & prime 2025 $\times$ 1,03 & 11391.80 & 6.8 & fixe \\ | |
| 341 | +Électricité (aires communes) & 3792 & 4062 & 4260 & 2025 $\times$ 1,03 & 4387.80 & 2.6 & variable \\ | |
| 342 | +Chauffage (aires communes, gaz) & 2608 & 2654 & 2892 & 2025 $\times$ 1,03 & 2978.76 & 1.8 & variable \\ | |
| 343 | +Eau et égouts & 0 & 0 & 0 & aucune tarification distincte & 0.00 & 0.0 & fixe \\ | |
| 344 | +Entretien et réparations & 10434 & 11025 & 11403 & 2025 $\times$ 1,03 & 11745.09 & 7.0 & variable \\ | |
| 345 | +Conciergerie & 8989 & 10227 & 9844 & 2025 $\times$ 1,03 & 10139.32 & 6.0 & variable \\ | |
| 346 | +Déneigement et paysagement & 5959 & 6091 & 6686 & 2025 $\times$ 1,03 & 6886.58 & 4.1 & variable \\ | |
| 347 | +Frais juridiques et comptables & 2329 & 2480 & 2751 & 2025 $\times$ 1,03 & 2833.53 & 1.7 & variable \\ | |
| 348 | +Publicité et location & 1171 & 1232 & 1319 & 2025 $\times$ 1,03 & 1358.57 & 0.8 & variable \\ | |
| 349 | +Gestion & {---} & {---} & {---} & imputée, 4 \% du RBE & 6737.76 & 4.0 & variable \\ | |
| 350 | +\midrule | |
| 351 | +Dépenses d'exploitation hors réserve & & & 62590 & & 70385.19 & 41.8 & \\ | |
| 352 | +Réserve de remplacement & 7805 & 7488 & 8103 & maintenue, 675 \$/log. & 8103.00 & 4.8 & réserve \\ | |
| 353 | +\midrule | |
| 354 | +Dépenses totales & 66992 & 70438 & 70693 & & 78488.19 & 46.6 & \\ | |
| 355 | +\bottomrule | |
| 356 | +\end{tabular} | |
| 357 | +\tabsource{\synth{\texttt{cas3\_montreal\_depenses.csv} ; \texttt{traite.cas3.depenses\_normalisees} via \texttt{ch28\_depenses.py}, graine 20261031} ; taux de taxes : \textcite{ledevoirmtl2026,taxescolaire2026}.} | |
| 358 | +\end{table} | |
| 359 | + | |
| 360 | +Les règles appliquées sont celles de la \cref{sec:28:normalisation}. Les deux taxes sont recalculées sur la valeur au rôle 2026-2028 aux taux de l'exercice. L'assurance et les postes d'usage sont indexés de trois pour cent sur la base de 2025, la dernière année étant jugée représentative pour tous, y compris l'assurance dont la nouvelle police explique le recul. La gestion est imputée à quatre pour cent du revenu brut effectif. La réserve est maintenue au montant de 2025, \dollars{8103}, soit \dollars{675} par logement, et n'est pas indexée, parce qu'elle représente une dotation révisable à chaque exercice et que son niveau relève d'une convention du dossier ; le \cref{tab:28:reserve} a montré qu'une dotation linéaire sur des composantes à vie courte en est de l'ordre. Aucune tarification distincte de l'eau n'apparaît dans le dossier et le poste reste nul. | |
| 361 | + | |
| 362 | +\subsection{Classement, revenu net et indicateurs} | |
| 363 | + | |
| 364 | +Les dépenses normalisées de première année s'élèvent à \dollars{78488.19}, dont \dollars{23317.78} de dépenses fixes (\pct{29.7} du total), \dollars{47067.41} de dépenses variables, gestion comprise (\pct{60.0}), et \dollars{8103} de réserve (\pct{10.3}). Par groupe de postes, les services (conciergerie, déneigement) représentent \pct{10.1} du revenu brut effectif, les taxes \pct{7.1}, l'entretien \pct{7.0}, l'assurance \pct{6.8}, la réserve \pct{4.8}, l'énergie des aires communes \pct{4.4}, la gestion \pct{4.0} et les honoraires et la publicité \pct{2.5}. Le revenu net d'exploitation normalisé est | |
| 365 | +\begin{equation}\label{eq:28:rne-cas3} | |
| 366 | +\NOI_1 = \dollars{168443.94} - \dollars{70385.19} - \dollars{8103.00} = \dollars{89955.75}, | |
| 367 | +\end{equation} | |
| 368 | +soit \dollars{7496.31} par logement, \dollars{109.04} par mètre carré de surface locative et \pct{53.4} du revenu brut effectif ; le ratio de dépenses est de \pct{46.6}. La \cref{fig:28:cascade} retrace l'ensemble du calcul, du revenu brut potentiel au revenu net. Ce chiffre est, au cent près, celui que le \cref{ch:29} capitalise, que le \cref{ch:30} projette et que le \cref{ch:47} réunit dans le dossier complet, parce qu'il provient du même code ; c'est la garantie de cohérence que l'ouvrage s'impose. | |
| 369 | + | |
| 370 | +\begin{figure}[htbp] | |
| 371 | +\centering | |
| 372 | +\includegraphics[width=135mm]{ch28/ch28-fig-cascade.pdf} | |
| 373 | +\caption{Cas~3 : du revenu brut potentiel des baux en vigueur au revenu net d'exploitation normalisé de première année. Les barres pleines sont des totaux, les barres suspendues des déductions (inoccupation et pertes, dépenses fixes, dépenses variables hors gestion, gestion imputée, réserve) ou des ajouts (autres revenus). Les dépenses totales absorbent \pct{46.6} du revenu brut effectif.} | |
| 374 | +\figsource{\synth{script \texttt{analysis/python/figures/ch28\_figures.py}, graine 20261031}} | |
| 375 | +\end{figure} | |
| 376 | + | |
| 377 | +\subsection{Le triplex de Limoilou} | |
| 378 | + | |
| 379 | +Le cas~2 est un triplex fictif de 1948 dans Limoilou, à Québec, de \msq{262} habitables, dont le propriétaire occupe l'un des trois logements ; sa valeur au rôle 2025-2027 est de \dollars{495000}. Le dossier ne comporte qu'un état de dépenses, celui du propriétaire, et la normalisation y consiste surtout à compléter plutôt qu'à indexer. Le \cref{tab:28:cas2} en présente le résultat. Le revenu brut effectif est de \dollars{40577.04} (trois loyers contractuels, dont celui du logement occupé est compté à son loyer de marché estimé, et un taux combiné d'inoccupation et de pertes de \pct{3}, convention du dossier fondée sur l'inoccupation de \pct{2.4} de la RMR de Québec en octobre 2025 \parencite{schlLocatif2025}). Les dépenses déclarées sont conservées, à l'exception de la gestion, imputée à \pct{4} du revenu brut effectif (\dollars{1623.08}), et la réserve de \dollars{600} par logement est une convention du dossier. Le revenu net d'exploitation est de \dollars{22033.96}, soit \dollars{7344.65} par logement et \dollars{84.10} par mètre carré, pour un ratio de dépenses de \pct{45.7}. Les dépenses fixes, taxes et assurance, en représentent \pct{52.7} : le triplex est un immeuble à fort levier opérationnel, dont le revenu net réagit vivement à toute variation du revenu brut. Le \cref{ch:32} tire les conséquences de cette structure pour l'évaluation des plex, et le \cref{ch:46} présente le dossier complet. | |
| 380 | + | |
| 381 | +\begin{table}[htbp] | |
| 382 | +\caption{Cas~2 : dépenses d'exploitation normalisées et revenu net du triplex de Limoilou (première année, dollars courants).} | |
| 383 | +\label{tab:28:cas2} | |
| 384 | +\centering | |
| 385 | +\small | |
| 386 | +\begin{tabular}{L{56mm}S[table-format=5.2]S[table-format=2.1]L{46mm}} | |
| 387 | +\toprule | |
| 388 | +Poste & {Montant (\$)} & {\% RBE} & Base \\ | |
| 389 | +\midrule | |
| 390 | +Revenu brut potentiel & 41832.00 & & trois logements, loyer du logement occupé au marché estimé \\ | |
| 391 | +Inoccupation et mauvaises créances (\pct{3}) & -1254.96 & & convention du dossier \\ | |
| 392 | +\textbf{Revenu brut effectif} & {\textbf{\num{40577.04}}} & {100.0} & \\ | |
| 393 | +\midrule | |
| 394 | +Taxes municipales & -5900.00 & 14.5 & compte déclaré ; recalcul au taux général + tarifs : \dollars{5437.68} \\ | |
| 395 | +Taxe scolaire & -470.00 & 1.2 & compte déclaré \\ | |
| 396 | +Assurances & -3400.00 & 8.4 & police en vigueur \\ | |
| 397 | +Électricité des aires communes & -650.00 & 1.6 & factures \\ | |
| 398 | +Déneigement et entretien extérieur & -1500.00 & 3.7 & contrat \\ | |
| 399 | +Entretien et réparations & -3200.00 & 7.9 & déclaré (\dollars{1067}/log.) \\ | |
| 400 | +Gestion imputée (\pct{4} du RBE) & -1623.08 & 4.0 & propriétaire-occupant ; convention de l'ouvrage \\ | |
| 401 | +\emph{Dépenses hors réserve} & {\emph{$-$16 743,08}} & 41.3 & \\ | |
| 402 | +Réserve de remplacement (\dollars{600}/log.) & -1800.00 & 4.4 & convention du dossier \\ | |
| 403 | +\textbf{Dépenses totales} & {\textbf{\num{-18543.08}}} & 45.7 & dont fixes \pct{52.7} \\ | |
| 404 | +\midrule | |
| 405 | +\textbf{Revenu net d'exploitation} & {\textbf{\num{22033.96}}} & 54.3 & \dollars{7344.65}/log. ; \dollars{84.10}/m\textsuperscript{2} \\ | |
| 406 | +\bottomrule | |
| 407 | +\end{tabular} | |
| 408 | +\tabsource{\synth{\texttt{traite.cas2.rne} via \texttt{ch28\_depenses.cas2\_detail}, graine 20261031} ; taux et tarifs de Québec 2026 : \textcite{vqtaux2026}.} | |
| 409 | +\end{table} | |
| 410 | + | |
| 411 | +\section{Analyse de sensibilité}\label{sec:28:sensibilite} | |
| 412 | + | |
| 413 | +La valeur par capitalisation directe étant $V = \NOI/R$, chaque dollar de dépense normalisée en plus retranche $1/R$ dollars de valeur : | |
| 414 | +\begin{equation}\label{eq:28:derivee} | |
| 415 | +\frac{\partial V}{\partial DE} = -\frac{1}{R}, \qquad \frac{\partial \NOI / \NOI}{\partial (DE+RR) / (DE+RR)} = -\frac{DE + RR}{\NOI} = -\frac{\rho}{1-\rho}. | |
| 416 | +\end{equation} | |
| 417 | +Pour le cas~3, au taux de \pct{4.415}, un dollar de dépense vaut \dollars{22.65} de valeur, et l'élasticité du revenu net aux dépenses totales est de $-\num{0.873}$ : une erreur de dix pour cent sur les dépenses, soit \dollars{7849}, déplace le revenu net de \pct{8.7} et la valeur de \dollars{177800}. C'est la raison pour laquelle la normalisation des dépenses mérite autant de soin que l'extraction du taux : une erreur de \dollars{4400} sur les dépenses équivaut à une erreur de vingt-cinq points de base sur le taux. Le \cref{tab:28:sensibilite} et la \cref{fig:28:sensibilite} font varier trois paramètres de convention, la réserve par logement, le taux de taxe municipale et le taux de gestion, le taux de capitalisation étant maintenu à \pct{4.415} ; cette dernière hypothèse revient à supposer que la convention du sujet s'écarte de celle des comparables, ce qui est précisément l'erreur que la \cref{sec:28:reserves} a décrite, et les résultats mesurent donc le coût d'une asymétrie autant que la sensibilité à chaque paramètre. | |
| 418 | + | |
| 419 | +\begin{table}[htbp] | |
| 420 | +\caption{Cas~3 : sensibilité du revenu net normalisé et de la valeur par capitalisation directe (taux maintenu à \pct{4.415}) à la réserve par logement, au taux de la taxe municipale (valeur au rôle inchangée) et au taux de gestion.} | |
| 421 | +\label{tab:28:sensibilite} | |
| 422 | +\centering | |
| 423 | +\small | |
| 424 | +\begin{tabular}{L{62mm}S[table-format=5.2]S[table-format=5.2]S[table-format=7.0]S[table-format=-2.1]} | |
| 425 | +\toprule | |
| 426 | +Paramètre & {Dépense (\$)} & {RNE (\$)} & {Valeur (\$)} & {Écart (\%)} \\ | |
| 427 | +\midrule | |
| 428 | +Réserve : aucune & 0.00 & 98058.75 & 2221036 & 9.0 \\ | |
| 429 | +Réserve : \dollars{100} par logement (barème SCHL 2015) & 1200.00 & 96858.75 & 2193856 & 7.7 \\ | |
| 430 | +Réserve : \dollars{300} par logement & 3600.00 & 94458.75 & 2139496 & 5.0 \\ | |
| 431 | +Réserve : \dollars{500} par logement & 6000.00 & 92058.75 & 2085136 & 2.3 \\ | |
| 432 | +\textbf{Réserve : \dollars{675} par logement (dossier)} & 8103.00 & 89955.75 & 2037503 & 0.0 \\ | |
| 433 | +Réserve : \dollars{900} par logement & 10800.00 & 87258.75 & 1976416 & -3.0 \\ | |
| 434 | +Réserve : \dollars{1200} par logement & 14400.00 & 83658.75 & 1894875 & -7.0 \\ | |
| 435 | +\midrule | |
| 436 | +Taxe : Montréal, taux général 2026 (dossier) & 10188.20 & 89955.75 & 2037503 & 0.0 \\ | |
| 437 | +Taxe : compte 2025 indexé de la hausse moyenne de Rosemont (\pct{5.3}) & 11194.44 & 88949.51 & 2014711 & -1.1 \\ | |
| 438 | +Taxe : taux général majoré de 10 points de base & 12388.20 & 87755.75 & 1987673 & -2.4 \\ | |
| 439 | +Taxe : taux « six logements ou plus » de Gatineau (\num{6.964}~\$/\num{1000}~\$) & 15320.80 & 84823.15 & 1921249 & -5.7 \\ | |
| 440 | +Taxe : taux « six logements et plus » de Québec (\num{0.7697}~\$/100~\$) & 16933.40 & 83210.55 & 1884724 & -7.5 \\ | |
| 441 | +\midrule | |
| 442 | +Gestion : aucune (autogestion non imputée) & 0.00 & 96693.51 & 2190113 & 7.5 \\ | |
| 443 | +Gestion : \pct{3} du RBE & 5053.32 & 91640.19 & 2075656 & 1.9 \\ | |
| 444 | +\textbf{Gestion : \pct{4} du RBE (dossier)} & 6737.76 & 89955.75 & 2037503 & 0.0 \\ | |
| 445 | +Gestion : \pct{5} du RBE (SCHL 2015, TAL) & 8422.20 & 88271.31 & 1999350 & -1.9 \\ | |
| 446 | +Gestion : \pct{6} du RBE & 10106.64 & 86586.87 & 1961198 & -3.7 \\ | |
| 447 | +Gestion : \pct{10} du RBE (plafond TAL des frais réels) & 16844.39 & 79849.12 & 1808587 & -11.2 \\ | |
| 448 | +\bottomrule | |
| 449 | +\end{tabular} | |
| 450 | +\tabsource{\synth{\texttt{ch28\_depenses.sensibilites}, graine 20261031} ; taux de taxes : \textcite{ledevoirmtl2026,gatineaureglement994,vqtaux2026} ; les scénarios de Gatineau et de Québec sont des transpositions de taux à la valeur au rôle montréalaise, non des évaluations de ces villes.} | |
| 451 | +\end{table} | |
| 452 | + | |
| 453 | +\begin{figure}[htbp] | |
| 454 | +\centering | |
| 455 | +\includegraphics[width=135mm]{ch28/ch28-fig-sensibilite.pdf} | |
| 456 | +\caption{Cas~3 : revenu net normalisé selon la réserve par logement, le taux de la taxe municipale (valeur au rôle inchangée) et le taux de gestion imputée, les autres paramètres étant maintenus à leur valeur de base (traits pointillés). Les trois relations sont linéaires ; la pente de chacune, rapportée au taux de capitalisation, donne l'effet sur la valeur : \dollars{272} de valeur par dollar de réserve par logement, \dollars{498000} par dixième de point de taux de taxe, \dollars{38150} par point de gestion.} | |
| 457 | +\figsource{\synth{script \texttt{analysis/python/figures/ch28\_figures.py}, graine 20261031}} | |
| 458 | +\end{figure} | |
| 459 | + | |
| 460 | +Trois lectures se dégagent. La réserve est le paramètre le plus arbitraire et l'un des plus lourds : entre l'absence de réserve des fiches de courtage et une réserve de \dollars{1200} par logement, l'écart de valeur dépasse seize pour cent, et même le passage du barème de 2015 (\dollars{100}) à la convention du dossier (\dollars{675}) déplace la valeur de \pct{7.7} ; la seule défense est la symétrie avec les comparables. Le taux de taxe est le paramètre le moins discrétionnaire, puisqu'il est fixé par règlement, mais le plus sensible à la vérification des sources : la différence entre la taxe générale et un compte complet incluant les taxes d'arrondissement vaut ici un pour cent de la valeur, et la transposition, purement illustrative, des taux de Québec ou de Gatineau pour les immeubles de six logements et plus montre que la fiscalité locale peut à elle seule expliquer des écarts de cinq à huit pour cent de valeur entre marchés, toutes choses égales par ailleurs ; c'est l'un des mécanismes de la capitalisation des taxes dans les prix que le \cref{ch:05} a formalisé. La gestion, enfin, est un paramètre de convention dont chaque point vaut \pct{1.9} de la valeur ; l'omettre au motif que le propriétaire gère lui-même, alors qu'elle a été imputée aux comparables, surévalue l'immeuble de sept et demi pour cent. | |
| 461 | + | |
| 462 | +\begin{erreurs} | |
| 463 | +\begin{itemize} | |
| 464 | +\item \textbf{Prendre le revenu net historique pour le revenu net.} Les dépenses déclarées de 2025 du cas~3 (\dollars{70693}) ne comportent ni gestion ni indexation ; le revenu net qui en découle est supérieur de \dollars{7795} au revenu normalisé et la valeur de \pct{8.7}. | |
| 465 | +\item \textbf{Indexer les taxes au lieu de les recalculer.} La taxe se calcule sur la valeur au rôle en vigueur multipliée par les taux de l'exercice ; un nouveau rôle peut la faire varier de dix pour cent alors que l'inflation est de trois. Inversement, recalculer au seul taux général omet les taxes d'arrondissement et spéciales : vérifier le compte. | |
| 466 | +\item \textbf{Omettre la gestion parce que le propriétaire gère lui-même}, ou la réserve parce qu'aucun compte ne l'enregistre. Les deux sont des coûts de l'acheteur typique ; leur omission vaut respectivement \pct{7.5} et \pct{9.0} de la valeur du cas~3. | |
| 467 | +\item \textbf{Compter deux fois l'usure.} Un chauffe-eau ou des revêtements inscrits en « réparations » dans l'historique et couverts par la réserve ; des travaux lourds couverts par une réserve majorée et inscrits en dépenses en capital dans les flux. Une composante, une seule rubrique. | |
| 468 | +\item \textbf{Appliquer un taux extrait avant réserve à un revenu après réserve.} L'erreur vaut $RR/R'$, soit \pct{8.3} de la valeur du cas~3 ; la convention importe moins que sa symétrie. | |
| 469 | +\item \textbf{Déduire du revenu net le service de la dette, l'amortissement comptable, les droits de mutation ou les frais d'acquisition.} Ils appartiennent au propriétaire ou à la transaction, non à l'immeuble. | |
| 470 | +\item \textbf{Lire un ratio de dépenses sans regarder son dénominateur.} Le ratio de \pct{46.6} du cas~3 tomberait à \pct{42.1} aux loyers de marché ; un ratio élevé signale aussi bien des loyers bas qu'une exploitation coûteuse. | |
| 471 | +\item \textbf{Confondre les dépenses du Tribunal et celles de l'évaluateur.} Le calcul de fixation du loyer répartit des variations de coûts passés ; l'état normalisé reconstitue un niveau prospectif. Périmètres, bases et temporalités diffèrent. | |
| 472 | +\end{itemize} | |
| 473 | +\end{erreurs} | |
| 474 | + | |
| 475 | +\begin{limites} | |
| 476 | +Les barèmes publics de dépenses d'exploitation pour les immeubles locatifs du Québec se limitent au document indicatif de la SCHL d'avril 2015, hébergé par un tiers et jamais mis à jour ; les niveaux de réserve, de gestion et d'entretien retenus dans les dossiers sont des conventions déclarées, non des statistiques de marché, et aucune enquête publique ne mesure un ratio de dépenses typique. La prime d'assurance moyenne du Bureau d'assurance du Canada porte sur les ménages et non sur les immeubles locatifs. La taxe foncière générale résidentielle de Montréal pour 2026 n'a été lue que dans la presse, le document officiel n'étant pas accessible hors navigateur ; le taux propre aux immeubles de six logements et plus et les taxes d'arrondissement de Rosemont n'ont pu être vérifiés et ne sont pas modélisés, de sorte que la taxe normalisée du cas~3 est probablement sous-estimée d'un ordre de grandeur de mille dollars. La taxe scolaire est calculée sur la valeur au rôle entière, sans l'exemption des premiers \dollars{25000} ni le mécanisme d'ajustement de l'évaluation uniformisée, écart inférieur à vingt dollars ici. L'indexation uniforme à trois pour cent est une simplification : l'énergie, et singulièrement le gaz, les contrats de déneigement et l'assurance ont connu des variations très différentes de l'inflation générale au cours des dernières années. Les composantes et les durées de vie du \cref{tab:28:reserve} sont des hypothèses pédagogiques. Enfin, les ratios de dépenses des quarante ventes comparables ont été générés indépendamment du niveau des loyers ; l'absence de relation observée sur la \cref{fig:28:ratio-loyer} est un artefact de la génération et ne décrit pas le marché montréalais. | |
| 477 | +\end{limites} | |
| 478 | + | |
| 479 | +\begin{synthese} | |
| 480 | +\begin{itemize} | |
| 481 | +\item $\NOI = RBE - DE - RR$ : le revenu net mesure la capacité de l'immeuble, hors service de la dette, impôt, amortissement comptable, dépenses en capital et frais d'acquisition. Il est prospectif, reconstitué pour un propriétaire typique, jamais repris tel quel des livres du vendeur. | |
| 482 | +\item Classer chaque poste (fixe, variable, réserve) détermine sa règle de normalisation, sa projection et le levier opérationnel de l'immeuble ; les dépenses fixes font \pct{29.7} des dépenses du cas~3 et \pct{52.7} de celles du triplex. | |
| 483 | +\item Au Québec, les taxes se recalculent (valeur au rôle $\times$ taux de la catégorie, plus tarifs par logement ; taxe scolaire sur l'évaluation uniformisée au-delà de \dollars{25000}), l'assurance se vérifie sur la police, l'énergie se projette au tarif, la gestion s'impute (4 à 5 \% du RBE) même en autogestion. Les dépenses ont aussi une portée réglementaire dans la fixation des loyers, distincte de l'évaluation. | |
| 484 | +\item Normaliser poste par poste : vérifier, épurer (non récurrent, travaux déguisés), compléter (gestion, réserve), projeter (recalcul, indexation). Dernière année indexée ou moyenne indexée : déclarer le choix ; l'écart vaut ici un pour cent de la valeur. | |
| 485 | +\item Réserve de remplacement (composantes à vie courte, dotation lissée, dans le revenu net capitalisé) et dépenses en capital (travaux lourds datés, dans les flux actualisés) sont équivalentes en valeur actuelle et ne doivent jamais couvrir la même composante. Le taux extrait doit l'être avec la même convention que le sujet : l'asymétrie coûte $RR/R'$, soit \pct{8.3} dans le cas~3. | |
| 486 | +\item Cas~3 : dépenses normalisées \dollars{78488.19} (ratio \pct{46.6}), $\NOI_1 = \dollars{89955.75}$, \dollars{7496} par logement, \dollars{109} par m\textsuperscript{2}. Cas~2 : \dollars{18543.08}, ratio \pct{45.7}, $\NOI = \dollars{22033.96}$, \dollars{7345} par logement. | |
| 487 | +\item Un dollar de dépense vaut $1/R$ dollars de valeur (\dollars{22.65} ici) ; une erreur de \dollars{4400} sur les dépenses équivaut à vingt-cinq points de base de taux. Le ratio de dépenses dépend du niveau des loyers autant que des dépenses ; seule la décomposition par poste est comparable. | |
| 488 | +\end{itemize} | |
| 489 | +\end{synthese} | |
| 490 | + | |
| 491 | +\section*{Exercices} | |
| 492 | + | |
| 493 | +\begin{exercice}[1]{État normalisé d'un huit logements}{ex:28:1} | |
| 494 | +Un immeuble de huit logements a un loyer moyen de \dollars{1250} par mois, un taux combiné d'inoccupation et de pertes de \pct{4} et des autres revenus de \dollars{3600} par année ; sa valeur au rôle est de \dollars{1450000}. Les dépenses normalisées sont les suivantes : taxe municipale au taux de \num{0.4631}~\$ par \dollars{100}, taxe scolaire à \num{0.07899}~\$ par \dollars{100} (sans exemption), assurances \dollars{7400}, électricité des aires communes \dollars{2100}, entretien et réparations \dollars{6800}, déneigement et paysagement \dollars{3900}, gestion \pct{5} du revenu brut effectif, réserve \dollars{600} par logement. Calculer le revenu brut effectif, les dépenses fixes, variables et la réserve, le revenu net d'exploitation, le ratio de dépenses et le revenu net par logement. Quelle part des dépenses est fixe ? | |
| 495 | +\end{exercice} | |
| 496 | + | |
| 497 | +\begin{exercice}[1]{Dernière année ou moyenne indexée}{ex:28:2} | |
| 498 | +À partir du \cref{tab:28:cas3}, calculer pour les assurances, l'entretien et la conciergerie du cas~3 la normalisation par la moyenne des trois exercices indexée à \pct{3} par année (\cref{eq:28:moyenne}) et la comparer à la dernière année indexée (\cref{eq:28:derniere}). Quel est l'écart total sur les trois postes et, au taux de \pct{4.415}, son effet sur la valeur ? Dans quel cas chaque convention est-elle préférable ? | |
| 499 | +\end{exercice} | |
| 500 | + | |
| 501 | +\begin{exercice}[2]{Taxes recalculées ou indexées}{ex:28:3} | |
| 502 | +Pour le cas~3, comparer la taxe municipale recalculée au taux général (\cref{tab:28:cas3}) au compte de 2025 indexé de la hausse moyenne de \pct{5.3} annoncée pour Rosemont. Quel est l'effet de l'écart sur le revenu net et sur la valeur à \pct{4.415} ? Calculer ensuite la taxe scolaire avec l'exemption des premiers \dollars{25000} et commenter l'ordre de grandeur de la simplification. Pourquoi la taxe recalculée au taux général peut-elle être inférieure au compte réel, et que doit faire l'évaluateur ? | |
| 503 | +\end{exercice} | |
| 504 | + | |
| 505 | +\begin{exercice}[2]{Réserve linéaire et fonds d'amortissement}{ex:28:4} | |
| 506 | +Reprendre les composantes du \cref{tab:28:reserve}. Calculer la réserve par logement par la méthode linéaire et par le fonds d'amortissement à \pct{3} et à \pct{5}, puis les montants pour douze logements. Montrer que le fonds d'amortissement tend vers la méthode linéaire lorsque le taux tend vers zéro. La convention du dossier (\dollars{675} par logement) est-elle plus proche de l'une ou de l'autre, et quelle hypothèse implicite cela traduit-il ? | |
| 507 | +\end{exercice} | |
| 508 | + | |
| 509 | +\begin{exercice}[2]{Cohérence réserve et taux sur un comparable}{ex:28:5} | |
| 510 | +Un immeuble comparable de vingt logements s'est vendu \dollars{4100000} ; son revenu net reconstitué après une réserve de \dollars{675} par logement est de \dollars{182000}. Calculer le taux global après réserve et avant réserve. Un analyste applique le taux avant réserve au revenu net après réserve du cas~3 (\dollars{89955.75}). Quelle valeur obtient-il, quelle est l'erreur relative par rapport à l'application cohérente, et pourquoi l'écart exact diffère-t-il de $RR_{\text{sujet}}/R'$ ? Que donnerait l'application du taux avant réserve au revenu avant réserve du sujet ? | |
| 511 | +\end{exercice} | |
| 512 | + | |
| 513 | +\begin{exercice}[3]{Gestion imputée et propriétaire-occupant}{ex:28:6} | |
| 514 | +Pour le triplex du cas~2 (\cref{tab:28:cas2}), calculer le revenu net et le ratio de dépenses sans gestion imputée, puis avec une gestion de \pct{5} du revenu brut effectif. En supposant que le taux global médian des ventes de plex du secteur, \pct{3.17}, a été extrait de revenus nets incluant une gestion imputée de \pct{4}, quelle surévaluation commet l'analyste qui capitalise le revenu net sans gestion ? Discuter la pertinence d'imputer une gestion à un propriétaire-occupant qui achète pour se loger, et le lien avec la notion de valeur d'investissement. | |
| 515 | +\end{exercice} | |
| 516 | + | |
| 517 | +\begin{exercice}[3]{Réserve, dépenses en capital et double comptage}{ex:28:7} | |
| 518 | +Les dépenses en capital programmées du cas~3 sont de \dollars{85000} en 2027, \dollars{40000} en 2029 et \dollars{120000} en 2032 (horizon de dix ans à partir de 2026, taux d'actualisation de \pct{7.25}). Calculer leur valeur actuelle et l'annuité équivalente sur dix ans. Un évaluateur retranche cette annuité du revenu net capitalisé en plus de la réserve de \dollars{8103}, tout en conservant les dépenses en capital dans les flux actualisés : quelle valeur obtient-il par capitalisation à \pct{4.415} et quelle est l'erreur ? Démontrer ensuite, à l'aide de l'\cref{eq:28:va-capex}, que pour une composante de \dollars{2200} par logement remplacée tous les douze ans dans douze logements, la valeur actuelle des remplacements perpétuels à \pct{3} égale celle d'une réserve perpétuelle calculée par le fonds d'amortissement au même taux. | |
| 519 | +\end{exercice} | |
| 520 | + | |
| 521 | +\section*{Pour aller plus loin} | |
| 522 | + | |
| 523 | +\textcite{appraisal2026} consacrent un chapitre à l'état des résultats reconstitué, au classement des dépenses et à la réserve de remplacement, et constituent la référence professionnelle nord-américaine ; l'édition canadienne de \textcite{appraisalCdn} en transpose la matière au contexte canadien. \textcite{fisherMartin2007} offrent l'exposé pédagogique le plus détaillé sur la normalisation des dépenses des immeubles à revenus, avec de nombreux états reconstitués commentés ; \textcite{brueggemanFisher2022} traitent la même matière du point de vue de l'investisseur et du prêteur, en insistant sur la distinction entre revenu net et flux de trésorerie. \textcite{geltnerMillerClaytonEichholtz2014} situent le revenu net dans la théorie financière de l'immobilier et discutent la cohérence entre la définition du revenu, les dépenses en capital et le taux de capitalisation, point que le présent chapitre a formalisé. Du côté de la recherche, \textcite{bokhariGeltner2018} mesurent l'ampleur des dépenses en capital du multirésidentiel américain et leur rôle dans la dépréciation, et \textcite{hardingRosenthalSirmans2007} estiment, par un modèle de ventes répétées, la dépréciation du capital résidentiel et l'effet compensateur de l'entretien, qu'ils situent autour de un pour cent de la valeur par année pour les propriétaires-occupants américains ; ces deux articles donnent à la réserve et aux dépenses en capital leur fondement empirique. Pour le Québec, le barème de la \textcite{schlfraisexploitation2015}, malgré son âge, reste le seul document public chiffré sur les frais d'exploitation des immeubles locatifs, et les pages du Tribunal administratif du logement sur les critères de fixation \parencite{talAugmentationLoyer,talIndices2026} décrivent le second usage, réglementaire, que le droit québécois fait des dépenses d'un immeuble. | |
modified
manuscript/chapters/ch31.tex
+540 −1
@@ -1,2 +1,541 @@ | ||
| 1 | 1 | \chapter{Financement, levier, RCD et RPV}\label{ch:31} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +La valeur marchande d'un immeuble locatif est, par définition, indépendante de la façon dont son acheteur la finance : le \cref{ch:30} a actualisé des flux avant service de la dette, et le taux d'actualisation du marché incorporait déjà le financement de l'acheteur typique. Pourtant, presque aucun immeuble de douze logements ne s'achète comptant, et le prêt hypothécaire façonne le marché de trois manières que l'évaluateur ne peut ignorer. Il détermine ce que les acheteurs peuvent payer, puisque le prêteur plafonne le capital qu'il avance par des ratios de prêt-valeur et de couverture de la dette ; il transforme le rendement et le risque des fonds propres par l'effet de levier, ce qui explique les taux de capitalisation que l'on observe ; il expose enfin le propriétaire au renouvellement de son terme à un taux inconnu, risque que les tests de résistance des prêteurs et des assureurs cherchent à borner. Le présent chapitre établit la mécanique de l'hypothèque canadienne, dont la composition semestrielle distingue les calculs de ceux des manuels américains, puis les contraintes des prêteurs et des assureurs publics, la théorie du levier et ses conséquences, le dimensionnement du prêt maximal et le renouvellement au terme. L'exemple intégral reprend le financement de l'immeuble du cas 3 déjà introduit aux chapitres \ref{ch:29} et \ref{ch:30} ; le \cref{ch:47} l'intégrera au dossier complet et le \cref{ch:40} en fera la matière de simulations. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +À la fin de ce chapitre, le lecteur sait : | |
| 7 | +\begin{itemize} | |
| 8 | +\item convertir un taux hypothécaire canadien, nominal et composé semestriellement, en taux mensuel et en taux effectif, et expliquer pourquoi la convention américaine donne un paiement différent ; | |
| 9 | +\item calculer le paiement, le solde à toute date, la décomposition intérêts-capital et la constante hypothécaire d'un prêt amorti, et distinguer le terme de l'amortissement ; | |
| 10 | +\item définir et calculer le ratio prêt-valeur, le ratio de couverture de la dette, le ratio prêt-revenu et le point mort d'occupation, et connaître les règles fédérales et les programmes d'assurance qui les encadrent ; | |
| 11 | +\item dériver l'effet du levier sur le rendement courant et sur le rendement total des fonds propres, démontrer la condition du levier positif et mesurer l'amplification du risque ; | |
| 12 | +\item déterminer le prêt maximal qu'un immeuble supporte et reconnaître laquelle des contraintes est liante ; | |
| 13 | +\item recalculer exactement le paiement au renouvellement du terme et en mesurer l'effet sur la couverture, les flux et le rendement des fonds propres ; | |
| 14 | +\item conduire une analyse de sensibilité du financement au taux, à l'amortissement et au ratio de couverture minimal. | |
| 15 | +\end{itemize} | |
| 16 | +\end{objectifs} | |
| 17 | + | |
| 18 | +\section{L'hypothèque canadienne}\label{sec:31:hypotheque} | |
| 19 | + | |
| 20 | +\subsection{La Loi sur l'intérêt et la composition semestrielle} | |
| 21 | + | |
| 22 | +Au Canada, le taux d'un prêt hypothécaire remboursable par versements périodiques confondus de capital et d'intérêts doit être exprimé, en vertu de l'article~6 de la Loi sur l'intérêt, en taux annuel calculé annuellement ou semestriellement, non d'avance \parencite[art.~6]{loiInteret}. L'usage des prêteurs canadiens est la composition semestrielle : un taux affiché de \pct{4.12} signifie que l'intérêt est capitalisé deux fois par année au taux de \pct{2.06} par semestre. Le paiement, lui, est presque toujours mensuel, et il faut donc trouver le taux mensuel $i_m$ qui, appliqué douze fois, produit la même capitalisation que deux applications du taux semestriel. L'équivalence des taux impose $(1 + i_m)^{12} = (1 + i/2)^2$, d'où | |
| 23 | +\begin{equation}\label{eq:31:periodique} | |
| 24 | +i_m = \left(1 + \frac{i}{2}\right)^{1/6} - 1 , | |
| 25 | +\end{equation} | |
| 26 | +et, plus généralement, pour une composition $m_c$ fois l'an et $m_p$ paiements par année, $i_p = (1 + i/m_c)^{m_c/m_p} - 1$ ; c'est la fonction \texttt{taux\_periodique} de la bibliothèque, dont \texttt{taux\_mensuel\_canadien} est le cas particulier. Le taux effectif annuel est | |
| 27 | +\begin{equation}\label{eq:31:effectif} | |
| 28 | +i_{\text{eff}} = \left(1 + \frac{i}{m_c}\right)^{m_c} - 1 = (1 + i_m)^{12} - 1 . | |
| 29 | +\end{equation} | |
| 30 | +Pour $i = \pct{4.12}$, on obtient $i_m = (1{,}0206)^{1/6} - 1 = \pct{0.34042}$ et $i_{\text{eff}} = (1{,}0206)^2 - 1 = \pct{4.1624}$. La convention américaine, qui compose le taux mensuellement, donne $i_m = i/12 = \pct{0.34333}$ et un taux effectif de \pct{4.1987} : à taux nominal égal, l'emprunteur canadien paie moins d'intérêt que l'emprunteur américain, parce que son taux est capitalisé moins souvent. Les prêts à taux variable font exception dans la pratique de plusieurs prêteurs, qui les composent mensuellement ; l'évaluateur doit lire la convention dans l'acte ou la confirmation de prêt, non la supposer. | |
| 31 | + | |
| 32 | +\subsection{Terme et amortissement} | |
| 33 | + | |
| 34 | +Deux durées gouvernent une hypothèque canadienne et il importe de ne jamais les confondre. | |
| 35 | + | |
| 36 | +\begin{definition}{Terme et période d'amortissement}{31:terme} | |
| 37 | +La \emph{période d'amortissement} est le nombre de périodes, $N$, sur lequel le paiement constant est calculé pour que le capital soit entièrement remboursé ; elle est de 25 ans pour la plupart des prêts résidentiels assurés, de 30 ans dans certains cas, et de 40 à 50 ans pour les immeubles collectifs assurés par la SCHL. Le \emph{terme} est la durée, généralement de un à cinq ans, pendant laquelle le taux et les conditions sont fixés par contrat ; à son échéance, le solde restant est renouvelé, auprès du même prêteur ou d'un autre, au taux alors en vigueur, sur la période d'amortissement résiduelle. | |
| 38 | +\end{definition} | |
| 39 | + | |
| 40 | +Cette structure est la différence institutionnelle majeure entre le marché canadien et le marché américain, où le prêt à taux fixe sur trente ans, remboursable par anticipation sans pénalité, domine le résidentiel \parencite{brueggemanFisher2022}. Au Canada, c'est l'emprunteur qui porte le risque de taux au-delà du terme, et les prêteurs assurés comme les non assurés le portent très peu ; c'est pourquoi le terme de cinq ans est le pivot des tests de résistance et pourquoi la \cref{sec:31:renouvellement} lui consacre un traitement exact. Les prêts aux immeubles collectifs sont souvent \emph{fermés} pendant le terme, c'est-à-dire que le remboursement anticipé est interdit ou pénalisé, et ils peuvent comporter, pour les immeubles de plus grande taille, une structure à paiement forfaitaire ou \emph{ballon} à l'échéance ; nous nous en tenons ici au prêt à versements constants, qui est la norme du multirésidentiel de petite et moyenne taille. | |
| 41 | + | |
| 42 | +\subsection{Paiement, solde et décomposition} | |
| 43 | + | |
| 44 | +Soit un capital $M_0$, un taux périodique $i_m$ et $N$ paiements mensuels de fin de période. Le paiement constant $PMT$ est l'annuité dont la valeur présente au taux $i_m$ égale le capital : | |
| 45 | +\begin{equation}\label{eq:31:paiement} | |
| 46 | +M_0 = PMT \sum_{k=1}^{N} (1+i_m)^{-k} = PMT\,\frac{1 - (1+i_m)^{-N}}{i_m} | |
| 47 | +\qquad\Longrightarrow\qquad | |
| 48 | +PMT = M_0\,\frac{i_m}{1 - (1+i_m)^{-N}} . | |
| 49 | +\end{equation} | |
| 50 | +Le facteur qui multiplie $M_0$ est le facteur de recouvrement du capital (\texttt{facteur\_recouvrement}), inverse du facteur de valeur présente d'une annuité. Le solde après $k$ paiements est la valeur présente des $N - k$ paiements qui restent, ce qui donne, après simplification, | |
| 51 | +\begin{equation}\label{eq:31:solde} | |
| 52 | +M_k = PMT\,\frac{1 - (1+i_m)^{-(N-k)}}{i_m} = M_0\,\frac{(1+i_m)^{N} - (1+i_m)^{k}}{(1+i_m)^{N} - 1} . | |
| 53 | +\end{equation} | |
| 54 | +La seconde forme, dite prospective, est celle que calcule \texttt{Hypotheque.solde} ; elle ne dépend pas de l'arrondi du paiement et donne le solde exact à toute date, ce qui est précisément ce dont l'évaluateur a besoin pour la revente de l'année $T$ ou pour le renouvellement au terme. Chaque paiement se décompose en intérêts sur le solde de début de période et en remboursement de capital : | |
| 55 | +\begin{equation}\label{eq:31:decomposition} | |
| 56 | +I_k = i_m\, M_{k-1}, \qquad C_k = PMT - I_k = PMT - i_m M_{k-1}, \qquad M_k = M_{k-1} - C_k . | |
| 57 | +\end{equation} | |
| 58 | +Comme $M_{k-1}$ décroît, la part d'intérêts décroît et la part de capital croît géométriquement : $C_k = C_1 (1+i_m)^{k-1}$. Sur une période d'amortissement de quarante ans, les premières années sont presque entièrement des intérêts, et la constitution de fonds propres par remboursement est lente ; la \cref{fig:31:solde} le montre pour le prêt du cas 3 et le \cref{tab:31:extraits} en donne les extraits numériques. | |
| 59 | + | |
| 60 | +\begin{figure}[htbp] | |
| 61 | +\centering | |
| 62 | +\includegraphics[width=135mm]{ch31/ch31-fig-solde.pdf} | |
| 63 | +\caption{Gauche : trajectoire du solde du prêt du cas 3 (\dollars{1475959} à \pct{4.12}, composition semestrielle, 480 mois) ; les points marquent la fin du terme de cinq ans (\dollars{1394739}) et la revente de l'année 10 (\dollars{1295148}) ; la convention américaine (pointillé) donne un solde à peine plus élevé. Droite : décomposition du service de la dette annuel constant de \dollars{74963} en intérêts et capital ; la première année, \pct{80} du paiement est de l'intérêt.} | |
| 64 | +\figsource{\synth{script \texttt{analysis/python/figures/ch31\_solde.py}, fonctions \texttt{traite.finance.Hypotheque}, graine 20261031}} | |
| 65 | +\label{fig:31:solde} | |
| 66 | +\end{figure} | |
| 67 | + | |
| 68 | +\subsection{La constante hypothécaire} | |
| 69 | + | |
| 70 | +Le \motcle{service de la dette} annuel est $SD = 12\,PMT$ et la \motcle{constante hypothécaire} (\emph{mortgage constant}) rapporte ce service au capital emprunté : | |
| 71 | +\begin{equation}\label{eq:31:constante} | |
| 72 | +f = \frac{SD}{M_0} = 12\,\frac{i_m}{1 - (1+i_m)^{-N}} . | |
| 73 | +\end{equation} | |
| 74 | +Elle ne dépend que du taux et de la période d'amortissement, non du montant, et elle joue, pour la dette, le rôle que le taux de capitalisation joue pour l'immeuble : c'est le coût \emph{courant} d'un dollar emprunté, intérêts et remboursement confondus. La constante est toujours supérieure au taux effectif, puisqu'elle comprend le remboursement du capital, et l'écart se resserre quand l'amortissement s'allonge : à \pct{4.12}, $f$ vaut \pct{6.39} sur 25 ans, \pct{5.79} sur 30 ans et \pct{5.08} sur 40 ans. C'est par la constante que la bande d'investissement et la formule de couverture de la dette du \cref{ch:29} relient le marché hypothécaire au taux de capitalisation ; nous ne reprenons pas ces constructions ici, mais le lecteur verra à la \cref{sec:31:levier} qu'elles sont des cas particuliers de la théorie du levier. | |
| 75 | + | |
| 76 | +\subsection{Comparaison des deux conventions sur le prêt du cas 3} | |
| 77 | + | |
| 78 | +Le \cref{tab:31:conventions} applique les deux conventions au prêt de \dollars{1475959} du cas 3. L'écart de taux effectif n'est que de \qty{3.6}{\pb}, mais il se propage : le paiement mensuel passe de \dollars{6246.93} à \dollars{6279.21}, soit \dollars{387} de service de la dette de plus par année, et la constante de \pct{5.0789} à \pct{5.1052}. Un tableur américain appliqué à un prêt canadien surestime donc le service de la dette de \pct{0.5} et sous-estime d'autant le ratio de couverture ; sur un prêt dimensionné exactement au seuil de $1{,}20$, il conclurait à tort que la contrainte n'est pas respectée, ou bien conduirait à réduire le prêt de quelque \dollars{7600}. L'erreur est petite sur un dossier et systématique sur un portefeuille, et elle se double souvent d'une erreur de signe sur le levier lorsque la constante est proche du taux de capitalisation, comme c'est le cas en 2026. | |
| 79 | + | |
| 80 | +\begin{table}[htbp] | |
| 81 | +\centering\small | |
| 82 | +\caption{Convention canadienne (composition semestrielle) et convention américaine (composition mensuelle) appliquées au prêt du cas 3 : \dollars{1475959}, taux nominal \pct{4.12}, 480 paiements mensuels.} | |
| 83 | +\label{tab:31:conventions} | |
| 84 | +\begin{tabular}{@{}l S[table-format=1.5] S[table-format=1.5]@{}} | |
| 85 | +\toprule | |
| 86 | +Élément & {Canada ($m_c = 2$)} & {États-Unis ($m_c = 12$)} \\ | |
| 87 | +\midrule | |
| 88 | +Taux mensuel $i_m$ (\%) & 0.34042 & 0.34333 \\ | |
| 89 | +Taux effectif annuel (\%) & 4.1624 & 4.1987 \\ | |
| 90 | +Paiement mensuel (\$) & 6246.93 & 6279.21 \\ | |
| 91 | +Service de la dette annuel (\$) & 74963 & 75351 \\ | |
| 92 | +Constante hypothécaire $f$ (\%) & 5.0789 & 5.1052 \\ | |
| 93 | +Intérêts de la première année (\$) & 60016 & 60532 \\ | |
| 94 | +Capital remboursé la première année (\$) & 14947 & 14819 \\ | |
| 95 | +Solde après 60 mois (\$) & 1394739 & 1395377 \\ | |
| 96 | +Solde après 120 mois (\$) & 1295148 & 1296396 \\ | |
| 97 | +\bottomrule | |
| 98 | +\end{tabular} | |
| 99 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{conventions} ; \texttt{traite.finance.Hypotheque} avec \texttt{composition} = 2 et 12.}} | |
| 100 | +\end{table} | |
| 101 | + | |
| 102 | +\begin{table}[htbp] | |
| 103 | +\centering\small | |
| 104 | +\caption{Extraits du tableau d'amortissement du prêt du cas 3 (\dollars{1475959}, \pct{4.12} composé semestriellement, 480 mois, paiement \dollars{6246.93}).} | |
| 105 | +\label{tab:31:extraits} | |
| 106 | +\begin{tabular}{@{}S[table-format=3.0] S[table-format=4.2] S[table-format=4.2] S[table-format=4.2] S[table-format=7.2] S[table-format=2.1]@{}} | |
| 107 | +\toprule | |
| 108 | +{Mois $k$} & {Paiement (\$)} & {Intérêts $I_k$ (\$)} & {Capital $C_k$ (\$)} & {Solde $M_k$ (\$)} & {Part d'intérêts (\%)} \\ | |
| 109 | +\midrule | |
| 110 | +1 & 6246.93 & 5024.50 & 1222.42 & 1474737.03 & 80.4 \\ | |
| 111 | +2 & 6246.93 & 5020.34 & 1226.58 & 1473510.44 & 80.4 \\ | |
| 112 | +12 & 6246.93 & 4977.94 & 1268.99 & 1461012.59 & 79.7 \\ | |
| 113 | +60 & 6246.93 & 4753.10 & 1493.83 & 1394739.19 & 76.1 \\ | |
| 114 | +61 & 6246.93 & 4748.01 & 1498.91 & 1393240.28 & 76.0 \\ | |
| 115 | +120 & 6246.93 & 4415.22 & 1831.71 & 1295148.22 & 70.7 \\ | |
| 116 | +240 & 6246.93 & 3492.90 & 2754.03 & 1023293.62 & 55.9 \\ | |
| 117 | +360 & 6246.93 & 2106.18 & 4140.75 & 614552.85 & 33.7 \\ | |
| 118 | +479 & 6246.93 & 42.32 & 6204.61 & 6225.73 & 0.7 \\ | |
| 119 | +480 & 6246.93 & 21.19 & 6225.73 & 0.00 & 0.3 \\ | |
| 120 | +\bottomrule | |
| 121 | +\end{tabular} | |
| 122 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{tableau\_extraits} (\texttt{Hypotheque.tableau}). Le solde du mois 480 est exactement nul par construction ; la somme des intérêts sur quarante ans est de \dollars{1522566}, soit \num{1.03} fois le capital.}} | |
| 123 | +\end{table} | |
| 124 | + | |
| 125 | +\section{Ratios et contraintes des prêteurs}\label{sec:31:ratios} | |
| 126 | + | |
| 127 | +\subsection{Ratio prêt-valeur et ratio de couverture de la dette} | |
| 128 | + | |
| 129 | +Deux ratios résument la position d'un prêteur hypothécaire. Le \terme{ratio prêt-valeur}{loan-to-value ratio} (RPV, $\LTV$) mesure la protection que la valeur de l'immeuble offre au prêteur en cas de défaut ; le \terme{ratio de couverture de la dette}{debt service coverage ratio} (RCD, $\DSCR$) mesure la capacité du revenu de l'immeuble à payer le service de la dette : | |
| 130 | +\begin{equation}\label{eq:31:ratios} | |
| 131 | +\LTV = \frac{M_0}{V_0}, \qquad \DSCR = \frac{\NOI_1}{SD} = \frac{\NOI_1}{f\,M_0} . | |
| 132 | +\end{equation} | |
| 133 | +Le premier est un ratio de \emph{stock}, le second un ratio de \emph{flux}. Le prêteur fixe un plafond au premier et un plancher au second ; le prêt maximal qu'il consent est le plus petit des deux montants compatibles : | |
| 134 | +\begin{equation}\label{eq:31:pret-max} | |
| 135 | +M_{\max} = \min\!\left( \LTV_{\max}\, V_0,\ \frac{\NOI_1}{\DSCR_{\min}\, f} \right) . | |
| 136 | +\end{equation} | |
| 137 | +Laquelle des deux contraintes lie dépend de la relation entre le taux de capitalisation et la constante. En divisant la seconde contrainte par $V_0$, le ratio prêt-valeur maximal que la couverture autorise s'écrit | |
| 138 | +\begin{equation}\label{eq:31:rpv-max} | |
| 139 | +\frac{M_{\max}^{\DSCR}}{V_0} = \frac{\NOI_1/V_0}{\DSCR_{\min}\, f} = \frac{R}{\DSCR_{\min}\, f} , | |
| 140 | +\end{equation} | |
| 141 | +où $R$ est le taux de capitalisation \emph{sur le prix payé}. La couverture lie dès que $R < \DSCR_{\min}\, f\, \LTV_{\max}$ ; avec $\DSCR_{\min} = 1{,}20$, $\LTV_{\max} = \pct{75}$ et $f = \pct{5.079}$, le seuil est $R = \pct{4.571}$, exactement la formule de couverture du \cref{ch:29}. Tout immeuble multirésidentiel montréalais dont le taux de capitalisation est inférieur à ce seuil, c'est-à-dire la plupart en 2026, ne peut être financé à \pct{75} par un prêt conventionnel à quarante ans ; la section~\ref{sec:31:pret-max} chiffre la conséquence pour le cas 3. | |
| 142 | + | |
| 143 | +\begin{definition}{Ratio de couverture de la dette}{31:rcd} | |
| 144 | +Le ratio de couverture de la dette est le rapport du revenu net d'exploitation prospectif de la première année au service de la dette annuel, intérêts et capital compris, du ou des prêts garantis par l'immeuble. Un ratio de $1{,}20$ signifie que le revenu net excède de \pct{20} le service de la dette, ou que le revenu net pourrait baisser de $1 - 1/1{,}20 = \pct{16.7}$ avant que l'immeuble cesse de payer sa dette. Le revenu net retenu est celui des conventions du \cref{ch:28}, réserve de remplacement comprise ; un prêteur qui calcule son ratio sur un revenu net \emph{avant} réserve obtient un ratio plus élevé, et l'évaluateur doit signaler la convention employée. | |
| 145 | +\end{definition} | |
| 146 | + | |
| 147 | +Le \motcle{point mort d'occupation} complète ces deux ratios en rapportant l'ensemble des décaissements fixes au revenu brut potentiel : | |
| 148 | +\begin{equation}\label{eq:31:point-mort} | |
| 149 | +\text{PM} = \frac{DE + RR + SD}{RBP} , | |
| 150 | +\end{equation} | |
| 151 | +où $DE$ sont les dépenses d'exploitation, $RR$ la réserve et $SD$ le service de la dette. C'est la fraction du revenu brut potentiel qu'il faut encaisser pour tout payer ; son complément à un, diminué de la provision pour inoccupation déjà prévue, est la marge de sécurité en points de revenu. La fonction \texttt{ratio\_point\_mort} le calcule. | |
| 152 | + | |
| 153 | +\subsection{Le cadre fédéral : B-20, taux admissible minimal et ratio prêt-revenu} | |
| 154 | + | |
| 155 | +Les institutions financières fédérales souscrivent leurs prêts hypothécaires résidentiels sous la ligne directrice B-20 du Bureau du surintendant des institutions financières, publiée en 2017 et toujours en vigueur à la date de rédaction \parencite{osfib20}. Trois dispositions intéressent directement l'évaluateur. La première est l'exigence d'une évaluation de la garantie réaliste, étayée et défendable, réalisée par un évaluateur indépendant du processus de crédit, ce qui fonde la demande d'évaluations hypothécaires qui occupe une part importante de la profession. La deuxième est le plafond de \pct{80} du ratio prêt-valeur pour les prêts non assurés : au-delà, l'assurance prêt hypothécaire est obligatoire. La troisième est le \motcle{taux admissible minimal} (TAM, \emph{minimum qualifying rate}), qui impose de vérifier la capacité de l'emprunteur non pas au taux du contrat mais à un taux plus élevé : | |
| 156 | +\begin{equation}\label{eq:31:mqr} | |
| 157 | +i_{\text{adm}} = \max\left( i_{\text{contrat}} + \pct{2}, \ \pct{5.25} \right) . | |
| 158 | +\end{equation} | |
| 159 | +La page du BSIF modifiée le 29 janvier 2026 confirme la règle et précise que le taux est revu au moins une fois l'an, en décembre, et qu'il ne s'applique plus, depuis le 21 novembre 2024, aux transferts directs non assurés d'un prêteur à un autre au renouvellement \parencite{osfiMqr,osfiswitch2024}. Pour un taux contractuel non assuré de \pct{4.58}, le taux admissible est de \pct{6.58} ; pour un taux de \pct{3.00}, le plancher de \pct{5.25} l'emporte. La fonction \texttt{taux\_admissible\_minimal} encode cette règle avec des paramètres que l'utilisateur doit vérifier à la date de son analyse. Depuis l'exercice 2025 des institutions, le BSIF plafonne en outre le volume des nouveaux prêts non assurés dont le ratio \motcle{prêt-revenu} (\emph{loan-to-income}, LTI) dépasse $4{,}5$ fois le revenu de l'emprunteur, par une limite propre à chaque institution et non publiée \parencite{osfilti2025} ; cette contrainte de portefeuille, qui ne vise pas chaque prêt individuellement, pèse surtout dans les marchés chers où le ratio prix-revenu est élevé. | |
| 160 | + | |
| 161 | +L'effet du taux admissible sur la capacité d'emprunt se mesure simplement. Un ménage qui peut consacrer \dollars{3315} par mois au paiement hypothécaire, hypothèse pédagogique, emprunterait \dollars{594162} sur 25 ans à \pct{4.58} ; qualifié à \pct{6.58}, il n'emprunte plus que \dollars{491344}, soit \pct{17.3} de moins. Si son revenu est de \dollars{120000}, le ratio prêt-revenu de $4{,}5$ le limiterait à \dollars{540000}, contrainte intermédiaire. Ces règles ne s'appliquent pas en tant que telles aux prêts aux immeubles collectifs, qui relèvent du crédit commercial ; mais les prêteurs y transposent la logique en calculant le ratio de couverture à un taux majoré, et la \cref{sec:31:pret-max} montre ce que vaut cette transposition pour le cas 3. | |
| 162 | + | |
| 163 | +\subsection{Résidentiel de un à quatre logements : mise de fonds et assurance} | |
| 164 | + | |
| 165 | +Pour l'acheteur d'une maison ou d'un plex de quatre logements ou moins qu'il occupe, les règles fédérales de l'assurance prêt hypothécaire, modifiées le 15 décembre 2024, fixent le prix maximal assurable à \dollars{1500000} et la mise de fonds minimale à \pct{5} de la première tranche de \dollars{500000} et \pct{10} de la tranche comprise entre \dollars{500000} et \dollars{1500000} ; la période d'amortissement de 30 ans est ouverte à tous les premiers acheteurs et à tous les acheteurs d'une construction neuve \parencite{fincan2024hypo}. La mise de fonds minimale s'écrit donc | |
| 166 | +\begin{equation}\label{eq:31:mdf} | |
| 167 | +E_{\min}(P) = 0{,}05\,\min(P,\ 500\,000) + 0{,}10\,\max(P - 500\,000,\ 0), \qquad P \leq 1\,500\,000 , | |
| 168 | +\end{equation} | |
| 169 | +soit \dollars{20000} pour un prix de \dollars{400000} (\pct{5.0}), \dollars{40000} pour \dollars{650000} (\pct{6.15}), \dollars{75000} pour \dollars{1000000} (\pct{7.5}) et \dollars{125000} pour \dollars{1500000} (\pct{8.33}) ; au-delà de \dollars{1500000}, le prêt n'est plus assurable et la règle des \pct{80} de B-20 impose \pct{20} de mise de fonds. Ces règles expliquent la demande des propriétaires-occupants de plex, financés à \pct{90} ou \pct{95} de la valeur à un taux assuré inférieur au taux non assuré, et elles éclairent les taux de capitalisation très bas des duplex et triplex que le \cref{ch:32} analyse : l'acheteur d'un triplex qu'il habite n'est pas un investisseur qui compare un rendement à une constante, mais un ménage qui compare un paiement hypothécaire net des loyers à un loyer. | |
| 170 | + | |
| 171 | +\subsection{Immeubles collectifs : l'assurance SCHL et le programme APH Select} | |
| 172 | + | |
| 173 | +Pour les immeubles de cinq logements et plus, la Société canadienne d'hypothèques et de logement assure des prêts à des conditions qu'aucun prêteur conventionnel n'offre, et ces conditions structurent le marché du multirésidentiel. Le programme \motcle{APH Select}, en vigueur depuis le 7 mars 2022 et décrit sur la page consultée le 31 octobre 2026, module les conditions selon un système de points accordés pour l'abordabilité des loyers, l'efficacité énergétique et l'accessibilité \parencite{schlaphselect}. Le \cref{tab:31:aph-seuils} en résume les seuils pour un immeuble existant. À 50 points, le prêt peut atteindre \pct{85} de la valeur, amorti sur 40 ans, avec un ratio de couverture minimal de $1{,}10$ pour le locatif ordinaire ; à 70 points, \pct{95} et 45 ans ; à 100 points, \pct{95} et 50 ans avec recours limité. Les points d'abordabilité d'un immeuble existant exigent que \pct{40}, \pct{60} ou \pct{80} des logements aient un loyer inférieur ou égal à \pct{30} du revenu médian des ménages locataires de la région, engagement maintenu dix ans ; les points d'efficacité énergétique exigent une réduction de \pct{15}, \pct{25} ou \pct{40} des émissions ou de la consommation ; l'accessibilité donne 20 ou 30 points. | |
| 174 | + | |
| 175 | +\begin{table}[htbp] | |
| 176 | +\centering\small | |
| 177 | +\caption{Programme APH Select de la SCHL, immeubles existants de cinq logements et plus : seuils de points, ratio prêt-valeur maximal, période d'amortissement maximale et ratio de couverture minimal (locatif ordinaire).} | |
| 178 | +\label{tab:31:aph-seuils} | |
| 179 | +\begin{tabular}{@{}l S[table-format=2.0] S[table-format=2.0] S[table-format=1.2] l@{}} | |
| 180 | +\toprule | |
| 181 | +Seuil & {RPV max. (\%)} & {Amortissement max. (ans)} & {RCD min.} & Exemple de critères \\ | |
| 182 | +\midrule | |
| 183 | +50 points & 85 & 40 & 1.10 & \pct{40} des logements à $\leq \pct{30}$ du revenu médian, 10 ans \\ | |
| 184 | +70 points & 95 & 45 & 1.10 & \pct{60} des logements abordables, ou combinaison \\ | |
| 185 | +100 points & 95 & 50 & 1.10 & \pct{80} des logements abordables, ou combinaison (recours limité) \\ | |
| 186 | +\bottomrule | |
| 187 | +\end{tabular} | |
| 188 | +\tabsource{\textcite{schlaphselect}, page publiée le 21 septembre 2026, consultée le 2026-10-31 ; RCD de $1{,}20$ pour les autres formes d'hébergement et de $1{,}4$ pour la partie non résidentielle. Certaines cellules des niveaux 70 et 100 points ont été déduites de la mise en page de la source (\texttt{sources/notes-C.md}, point 7) : à confirmer avant publication.} | |
| 189 | +\end{table} | |
| 190 | + | |
| 191 | +L'assurance a un prix. Le barème des droits et primes de la SCHL pour les immeubles collectifs, locatif ordinaire et APH Select confondus, fixe une prime unique, en proportion du prêt, croissante avec le ratio prêt-valeur : \pct{2.60} jusqu'à \pct{65}, \pct{2.85} jusqu'à \pct{70}, \pct{3.35} jusqu'à \pct{75}, \pct{4.35} jusqu'à \pct{80}, \pct{5.35} jusqu'à \pct{85}, \pct{5.90} jusqu'à \pct{90} et \pct{6.15} au-delà, cette dernière tranche étant réservée à APH Select ; une surprime de \pct{0.25} s'ajoute par tranche de cinq ans d'amortissement au-delà de 25 ans, et le droit de demande est de \dollars{150} par logement \parencite{schlaphprimes}. La prime est habituellement capitalisée au prêt, ce qui augmente le service de la dette ; dans les calculs de ce chapitre, elle est présentée séparément pour en isoler le coût. La fonction \texttt{prime\_aph} du script du chapitre encode ce barème et la \cref{sec:31:pret-max} l'applique au cas 3. Deux conséquences pour l'évaluateur méritent d'être soulignées. D'abord, les conditions APH Select ne sont pas celles de l'acheteur typique : l'engagement d'abordabilité pendant dix ans restreint précisément le rattrapage des loyers qui, dans le cas 3, fonde l'écart entre la valeur DCF et la capitalisation directe ; la valeur marchande ne doit donc pas incorporer un financement que seul un acheteur acceptant ces contraintes obtiendrait. Ensuite, la disponibilité d'un financement à \pct{85} ou \pct{95} avec une couverture de $1{,}10$ et un amortissement de 40 à 50 ans abaisse mécaniquement le taux « du prêteur » de l'\cref{eq:31:rpv-max} et contribue à expliquer que le multirésidentiel se négocie à des taux de capitalisation inférieurs à la constante hypothécaire conventionnelle : c'est l'une des lectures de la compression des taux documentée par \textcite{ducaLing2020} pour les marchés où le capital réglementaire des prêteurs est allégé. | |
| 192 | + | |
| 193 | +\subsection{Les taux du marché à la date de rédaction} | |
| 194 | + | |
| 195 | +Le \cref{tab:31:taux-bdc} rassemble les taux publics qui ancrent les calculs de ce chapitre, et la \cref{fig:31:taux-bdc} en montre l'histoire depuis 2013. Le taux cible du financement à un jour a été relevé à \pct{2.50} le 28 octobre 2026, première hausse depuis juillet 2023, après un palier de douze mois à \pct{2.25} \parencite{bdc20261028}. Les obligations de référence du gouvernement du Canada rendaient \pct{3.58} à cinq ans et \pct{3.84} à dix ans le 29 octobre 2026 \parencite{bdcvalet}. Le taux hypothécaire conventionnel à cinq ans \emph{affiché} par les banques à charte était de \pct{6.19} ; il ne décrit pas le taux réellement consenti, mais il sert de référence aux pénalités de remboursement anticipé et, autrefois, au taux admissible. Les taux \emph{effectifs} des fonds effectivement avancés en août 2026 pour les prêts résidentiels à taux fixe de cinq ans et plus étaient de \pct{4.12} pour les prêts assurés et de \pct{4.58} pour les prêts non assurés \parencite{bdctauxhypothecaires2026} : l'écart de \qty{46}{\pb} est le prix du risque de crédit que l'assurance transfère à l'assureur public, et l'écart d'environ \qty{160}{\pb} entre le taux affiché et le taux non assuré consenti, et de plus de \qty{200}{\pb} avec le taux assuré, est la mesure de la négociation. Le cas 3 retient \pct{4.12} comme repère de calibration ; un prêt conventionnel à un immeuble de douze logements se négocierait vraisemblablement entre les deux séries, et le \cref{ch:47} fait varier cette hypothèse. | |
| 196 | + | |
| 197 | +\begin{table}[htbp] | |
| 198 | +\centering\small | |
| 199 | +\caption{Repères de taux publics à la date de rédaction (Banque du Canada, API Valet et communiqué, consultés le 2026-10-31).} | |
| 200 | +\label{tab:31:taux-bdc} | |
| 201 | +\begin{tabular}{@{}l S[table-format=1.2] l l@{}} | |
| 202 | +\toprule | |
| 203 | +Taux & {(\%)} & Date & Série ou source \\ | |
| 204 | +\midrule | |
| 205 | +Taux cible du financement à un jour & 2.50 & 2026-10-28 & V39079 ; communiqué du 28 octobre 2026 \\ | |
| 206 | +Obligation de référence GdC 5 ans & 3.58 & 2026-10-29 & BD.CDN.5YR.DQ.YLD \\ | |
| 207 | +Obligation de référence GdC 10 ans & 3.84 & 2026-10-29 & BD.CDN.10YR.DQ.YLD \\ | |
| 208 | +Hypothèque conventionnelle 5 ans, taux affiché & 6.19 & 2026-10-28 & V80691335 (hebdomadaire) \\ | |
| 209 | +Fonds avancés, assurés, fixe 5 ans et plus & 4.12 & 2026-08 & V122667780 (mensuel) \\ | |
| 210 | +Fonds avancés, non assurés, fixe 5 ans et plus & 4.58 & 2026-08 & V122667786 (mensuel) \\ | |
| 211 | +Taux admissible minimal sur un contrat à \pct{4.58} & 6.58 & 2026-01-29 & BSIF, $\max(i + 2\,\%,\ 5{,}25\,\%)$ \\ | |
| 212 | +\bottomrule | |
| 213 | +\end{tabular} | |
| 214 | +\tabsource{\textcite{bdc20261028,bdcvalet,bdctauxhypothecaires2026,osfiMqr} ; fichiers \texttt{data/raw/bdc\_valet/} téléchargés le 2026-10-31. Les taux hypothécaires sont des taux nominaux annuels ; la Banque du Canada ne précise pas la convention de composition des taux des fonds avancés, que l'ouvrage traite comme semestrielle.} | |
| 215 | +\end{table} | |
| 216 | + | |
| 217 | +\begin{figure}[htbp] | |
| 218 | +\centering | |
| 219 | +\includegraphics[width=135mm]{ch31/ch31-fig-taux-bdc.pdf} | |
| 220 | +\caption{Taux effectifs des fonds avancés par les banques à charte pour les prêts hypothécaires résidentiels à taux fixe de cinq ans et plus, assurés et non assurés (mensuels, janvier 2013 à août 2026), taux conventionnel à cinq ans affiché (moyennes mensuelles) et taux cible du financement à un jour. Les taux consentis suivent les taux obligataires, non le taux directeur, et l'écart entre le taux affiché et le taux non assuré consenti a oscillé entre $1{,}3$ et $2{,}6$ points depuis 2013.} | |
| 221 | +\figsource{Banque du Canada, API Valet, groupe A4\_RATES\_MORTGAGES (séries V122667780 et V122667786), séries V80691335 et V39079, téléchargées le 2026-10-31 \parencite{bdctauxhypothecaires2026,bdcvalet} ; script \texttt{analysis/python/figures/ch31\_taux\_bdc.py}.} | |
| 222 | +\label{fig:31:taux-bdc} | |
| 223 | +\end{figure} | |
| 224 | + | |
| 225 | +\begin{quebec}[{{L'hypothèque immobilière au Québec}}] | |
| 226 | +Le droit du financement hypothécaire est, au Québec, d'abord celui du Code civil. L'hypothèque est un droit réel sur un bien affecté à l'exécution d'une obligation ; elle confère au créancier le droit de suivre le bien en quelques mains qu'il soit, de le prendre en possession ou en paiement, ou de le faire vendre, et elle n'est que l'accessoire de la créance qu'elle garantit (art.~2660, 2661 et 2665 C.c.Q.). L'hypothèque immobilière doit, à peine de nullité absolue, être constituée par acte notarié en minute (art.~2693), ce qui explique que le notaire soit l'intervenant obligé de toute transaction financée au Québec, et elle est publiée au registre foncier, où l'évaluateur la lit à l'index des immeubles. L'hypothèque qui grève les loyers présents et à venir d'un immeuble, fréquente dans le financement des immeubles collectifs, est elle aussi immobilière et publiée au registre foncier (art.~2695) : en cas de défaut, le prêteur peut percevoir directement les loyers, et l'évaluateur mandaté par un créancier doit savoir que le flux qu'il analyse est déjà affecté. Les recours hypothécaires sont la prise de possession à des fins d'administration, la prise en paiement, la vente sous contrôle de justice et la vente par le créancier (art.~2748) ; la prise en paiement requiert l'autorisation du tribunal lorsque le débiteur a déjà acquitté la moitié ou plus de l'obligation (art.~2778) \parencite{ccq}. Ces règles produisent les ventes en reprise de finance dont le \cref{ch:13} explique qu'elles ne sont pas des comparables ordinaires. La Loi sur l'intérêt, qui impose la composition semestrielle ou annuelle, est quant à elle fédérale et s'applique uniformément à tous les prêteurs au Canada \parencite[art.~6]{loiInteret}. Textes consultés sur LégisQuébec et sur le site de la législation fédérale le 31 octobre 2026. | |
| 227 | +\end{quebec} | |
| 228 | + | |
| 229 | +\section{L'effet de levier}\label{sec:31:levier} | |
| 230 | + | |
| 231 | +\subsection{Levier sur le rendement courant} | |
| 232 | + | |
| 233 | +Considérons un investisseur qui achète un immeuble au prix $V_0$ avec un prêt $M_0 = M V_0$ de constante $f$ et des fonds propres $E_0 = (1 - M) V_0$. La première année, l'immeuble produit $\NOI_1 = R\,V_0$, où $R$ est le taux de capitalisation sur le prix payé, et le service de la dette absorbe $f M_0$. Le rendement courant des fonds propres, ou \terme{rendement courant}{cash-on-cash return}, est le flux après dette rapporté à la mise de fonds : | |
| 234 | +\begin{equation}\label{eq:31:levier-courant} | |
| 235 | +R_E = \frac{\NOI_1 - f\,M_0}{V_0 - M_0} = \frac{R - M f}{1 - M} = R + (R - f)\,\frac{M}{1 - M} = R + (R - f)\,\frac{D}{E} , | |
| 236 | +\end{equation} | |
| 237 | +où $D/E = M/(1-M)$ est le rapport dette sur fonds propres. La première égalité est la définition ; la deuxième divise numérateur et dénominateur par $V_0$ ; la troisième s'obtient en écrivant $R = R(1-M)/(1-M)$ et en regroupant. C'est l'inverse de la bande d'investissement du \cref{ch:29}, et elle contient toute la théorie élémentaire du levier : le rendement des fonds propres est le rendement de l'actif, augmenté de l'écart entre le rendement de l'actif et le coût de la dette multiplié par le rapport dette sur fonds propres. Si $R > f$, le levier est \emph{positif} au sens courant et chaque dollar emprunté enrichit le rendement des fonds propres ; si $R < f$, il est \emph{négatif} et l'endettement appauvrit le rendement courant ; si $R = f$, le levier est neutre, quelle que soit la dette. La dérivée $\partial R_E/\partial M = (R - f)/(1-M)^2$ a le signe de $R - f$ et croît en valeur absolue avec $M$ : plus l'immeuble est endetté, plus un écart donné entre $R$ et $f$ se transmet violemment aux fonds propres. | |
| 238 | + | |
| 239 | +Le cas 3 illustre le levier négatif sur le rendement courant. Sur la base de la valeur DCF, $R = \NOI_1 / V_0 = 89\,956 / 2\,208\,566 = \pct{4.073}$ et $f = \pct{5.079}$ ; avec $M = \pct{66.83}$, soit $D/E = 2{,}015$, la formule donne $R_E = 0{,}04073 + (0{,}04073 - 0{,}05079) \times 2{,}015 = \pct{2.05}$, exactement le rendement de \dollars{14993} sur \dollars{732606} obtenu au \cref{ch:30}. Sur la base de la capitalisation directe, où le prix serait \dollars{2037503} avec le même prêt, $R = \pct{4.415}$, $M = \pct{72.4}$ et $R_E = \pct{2.67}$ : l'acheteur qui paie la valeur par capitalisation directe fait un peu mieux, mais reste très en deçà du rendement courant qu'il obtiendrait sans dette. La \cref{fig:31:levier}, à droite, trace $R_E$ en fonction du ratio prêt-valeur pour le cas 3 : la courbe décroît de \pct{4.07} à \pct{0.05} lorsque le ratio prêt-valeur passe de zéro à \pct{80}, et devient négative au-delà. Ce régime, où le taux de capitalisation est inférieur à la constante hypothécaire, est celui du marché multirésidentiel canadien depuis 2022 : il explique pourquoi les investisseurs y acceptent des rendements courants inférieurs à celui des obligations d'État, et pourquoi ils ne peuvent le faire que s'ils anticipent une croissance. | |
| 240 | + | |
| 241 | +\subsection{Levier sur le rendement total : la condition du levier positif} | |
| 242 | + | |
| 243 | +Le rendement total tient compte de la croissance du revenu, de la plus-value et du remboursement du capital. Pour une période unique, si l'actif rapporte un rendement total $y$ (revenu plus variation de valeur, rapporté au prix) et que la dette coûte un taux effectif $k$, les fonds propres rapportent | |
| 244 | +\begin{equation}\label{eq:31:levier-total} | |
| 245 | +y_E = y + (y - k)\,\frac{D}{E} , | |
| 246 | +\end{equation} | |
| 247 | +par le même calcul que l'\cref{eq:31:levier-courant}, où $R$ est remplacé par $y$ et $f$ par $k$ : la différence est que le remboursement du capital, compté comme un coût dans $f$, n'en est pas un dans $k$, puisqu'il accroît d'autant la part de l'investisseur dans l'immeuble, et que la plus-value, absente de $R$, est présente dans $y$. C'est pourquoi un immeuble peut présenter un levier négatif sur le revenu courant et positif sur le rendement total : il suffit que $R < f$ et $y > k$, et c'est le cas chaque fois que la croissance attendue est substantielle. La formulation à plusieurs périodes exige un énoncé plus précis, que voici. | |
| 248 | + | |
| 249 | +\begin{proposition}{Condition du levier positif sur le taux de rendement interne}{31:levier} | |
| 250 | +Soit une série de flux avant dette $(-V_0, CF_1, \dots, CF_T + V_T^{\text{net}})$ dont le taux de rendement interne est $y$, et une dette dont les flux pour l'emprunteur sont $(+M_0, -SD_1, \dots, -SD_T - M_T)$, de taux de rendement interne $k$ (le coût effectif de la dette). Si les flux des fonds propres, somme terme à terme des deux séries, sont conventionnels au sens où leur valeur actuelle nette est strictement décroissante du taux sur l'intervalle pertinent, alors le taux de rendement interne des fonds propres $y_E$ vérifie | |
| 251 | +\[ | |
| 252 | +y_E > y \iff y > k, \qquad y_E = y \iff y = k, \qquad y_E < y \iff y < k . | |
| 253 | +\] | |
| 254 | +\end{proposition} | |
| 255 | + | |
| 256 | +\begin{proof} | |
| 257 | +Notons $\VAN_P(r)$, $\VAN_D(r)$ et $\VAN_E(r) = \VAN_P(r) + \VAN_D(r)$ les valeurs actuelles nettes des trois séries au taux $r$. Par définition des taux de rendement interne, $\VAN_P(y) = 0$ et $\VAN_D(k) = 0$. La série de la dette, du point de vue de l'emprunteur, commence par un flux positif suivi de flux négatifs ; sa valeur actuelle nette est donc strictement croissante du taux d'actualisation, puisque les flux négatifs, plus éloignés, sont davantage réduits par une hausse du taux que le flux initial, qui ne l'est pas. Si $y > k$, alors $\VAN_D(y) > \VAN_D(k) = 0$, et $\VAN_E(y) = 0 + \VAN_D(y) > 0$ ; comme $\VAN_E$ est strictement décroissante et s'annule en $y_E$, il faut que $y_E > y$. Les deux autres cas se traitent de même, et les réciproques découlent de la stricte monotonie. | |
| 258 | +\end{proof} | |
| 259 | + | |
| 260 | +La proposition dit que le levier est positif sur le rendement total si et seulement si le rendement de l'actif non endetté excède le coût effectif de la dette, et elle le dit sans supposer une période unique ni une croissance constante. Elle ne donne pas la valeur de $y_E$, que l'\cref{eq:31:levier-total} n'approche que pour une période ; il faut la calculer numériquement, ce que fait \texttt{rendement\_fonds\_propres\_levier}. Dans le cas 3, $y = \pct{7.25}$ par construction, puisque l'investisseur paie la valeur DCF. Le coût effectif de la dette mérite une précision : le taux effectif annuel du prêt est de \pct{4.1624}, mais lorsque les douze paiements mensuels sont agrégés en un flux de fin d'année, comme le font les tableaux annuels des chapitres \ref{ch:30} et \ref{ch:47}, le taux de rendement interne annuel de la série de la dette est légèrement inférieur, soit $k = \pct{4.06}$, parce que l'agrégation retarde fictivement les paiements. Quelle que soit la mesure, $y = \pct{7.25}$ excède largement $k$, le levier est positif, et le TRI des fonds propres de \pct{11.22} calculé au \cref{ch:30} en est la manifestation ; la \cref{fig:31:levier}, à gauche, montre qu'il croît de \pct{7.25} à \pct{15.2} lorsque le ratio prêt-valeur passe de zéro à \pct{85}. | |
| 261 | + | |
| 262 | +\begin{figure}[htbp] | |
| 263 | +\centering | |
| 264 | +\includegraphics[width=135mm]{ch31/ch31-fig-levier.pdf} | |
| 265 | +\caption{Levier financier dans le cas 3 (achat à la valeur DCF de \dollars{2208566}, prêt à \pct{4.12} sur 480 mois, flux projetés du \cref{ch:30}). Gauche : le TRI des fonds propres sur dix ans croît avec le ratio prêt-valeur parce que le rendement de l'actif (\pct{7.25}) excède le coût effectif de la dette ($k \approx \pct{4.06}$) ; au RPV retenu de \pct{66.8}, il est de \pct{11.22}. Droite : le rendement courant de la première année décroît avec le ratio prêt-valeur parce que le taux de capitalisation sur le prix (\pct{4.07}) est inférieur à la constante hypothécaire (\pct{5.08}) ; au RPV retenu, il n'est que de \pct{2.05}.} | |
| 266 | +\figsource{\synth{script \texttt{analysis/python/figures/ch31\_levier.py}, fonctions \texttt{ch31\_financement.levier\_par\_rpv} et \texttt{traite.finance.rendement\_fonds\_propres\_levier}, graine 20261031}} | |
| 267 | +\label{fig:31:levier} | |
| 268 | +\end{figure} | |
| 269 | + | |
| 270 | +\subsection{Pourquoi le rattrapage des loyers rend le levier positif} | |
| 271 | + | |
| 272 | +La coexistence, dans le cas 3, d'un rendement courant de \pct{2.05} et d'un TRI des fonds propres de \pct{11.22} n'a rien de paradoxal : elle résulte de la composition du rendement total. Le rendement de \pct{7.25} de l'actif se décompose en un revenu courant de \pct{4.07} et une croissance de valeur de l'ordre de \pct{3.2} par an, qui provient elle-même du rattrapage des loyers contractuels vers le marché, de l'indexation et du levier opérationnel des dépenses, mécanismes que le \cref{ch:30} a détaillés. La dette ne coûte que \pct{4.16} ; l'écart de plus de trois points entre $y$ et $k$, multiplié par un rapport dette sur fonds propres de deux, ajoute environ quatre points au rendement des fonds propres. Mais ce gain est entièrement différé : pendant les dix années de détention, le flux après dette couvre à peine les travaux et il est négatif les années de dépenses en capital, en 2027 et en 2032 ; c'est la revente, qui rapporte \dollars{3113338} nets contre un solde de \dollars{1295148}, qui porte le rendement. L'investisseur endetté du cas 3 parie donc sur la réalisation des projections, et la \cref{sec:31:sensibilite} montre ce qu'il en coûte si elles ne se réalisent pas ou si le taux de renouvellement monte. \textcite{geltnerMillerClaytonEichholtz2014} formulent ce résultat dans le langage de la décomposition du rendement en revenu et plus-value : le levier amplifie davantage la composante plus-value que la composante revenu, et il transforme un actif à revenu en un actif de croissance. | |
| 273 | + | |
| 274 | +\subsection{Levier et risque} | |
| 275 | + | |
| 276 | +Le levier n'amplifie pas que le rendement attendu. Si le rendement total de l'actif est une variable aléatoire d'écart-type $\sigma_y$ et que la dette est sans risque, c'est-à-dire que $k$ est fixe, l'\cref{eq:31:levier-total} donne | |
| 277 | +\begin{equation}\label{eq:31:risque} | |
| 278 | +\sigma_{y_E} = \sigma_y \left(1 + \frac{D}{E}\right) = \frac{\sigma_y}{1 - M} , | |
| 279 | +\end{equation} | |
| 280 | +puisque la variance d'une transformation affine $a + b\,y$ est $b^2 \sigma_y^2$ et que $1 + D/E = 1/(1-M)$. L'écart-type du rendement des fonds propres est donc multiplié par $1/(1-M)$ : par $1{,}33$ à un ratio prêt-valeur de \pct{25}, par $2$ à \pct{50}, par $3{,}0$ au ratio de \pct{66.8} du cas 3, par $4$ à \pct{75} et par $6{,}7$ à \pct{85}. Un immeuble dont le rendement total a un écart-type de \pct{8} par an, hypothèse illustrative, devient pour son propriétaire endetté aux deux tiers un placement d'écart-type \pct{24}, comparable à celui d'un portefeuille d'actions concentré. Les prêteurs le savent et c'est la raison d'être des ratios de la \cref{sec:31:ratios} : le ratio de couverture limite la probabilité que le flux après dette devienne négatif, le ratio prêt-valeur limite la perte en cas de défaut. L'évaluateur, lui, doit retenir que le TRI des fonds propres n'est pas une mesure de valeur mais une mesure de pari, et que deux investisseurs qui paient le même prix avec des leviers différents obtiennent des rendements espérés et des risques très différents sur le même immeuble, sans que la valeur marchande en soit affectée. Les travaux de \textcite{ducaLing2020} montrent que la disponibilité du crédit et les primes de risque exigées par les prêteurs, plus que les fondamentaux locatifs, ont gouverné les cycles de valeur des immeubles de placement, précisément parce que le levier moyen du marché détermine qui peut payer combien. | |
| 281 | + | |
| 282 | +\section{Le prêt maximal}\label{sec:31:pret-max} | |
| 283 | + | |
| 284 | +\subsection{Laquelle des contraintes lie} | |
| 285 | + | |
| 286 | +Reprenons l'\cref{eq:31:pret-max} pour le cas 3, dont les paramètres de financement sont ceux du dossier synthétique : ratio prêt-valeur maximal de \pct{75}, ratio de couverture minimal de $1{,}20$, taux de \pct{4.12} composé semestriellement, amortissement de 480 mois, terme de cinq ans. Sur la valeur DCF de \dollars{2208566}, la contrainte de ratio prêt-valeur autorise $0{,}75 \times 2\,208\,566 = \dollars{1656424}$. La contrainte de couverture autorise un service de la dette maximal de $89\,956 / 1{,}20 = \dollars{74963}$, donc un prêt de $74\,963 / 0{,}050789 = \dollars{1475959}$. La couverture lie : le prêt retenu est de \dollars{1475959}, soit un ratio prêt-valeur effectif de \pct{66.83}, et la mise de fonds de \dollars{732606}. L'\cref{eq:31:rpv-max} le confirme sans calculer les montants : $R/(\DSCR_{\min} f) = 0{,}04073/(1{,}20 \times 0{,}050789) = \pct{66.8}$ sur la base DCF, et $0{,}04415 / (1{,}20 \times 0{,}050789) = \pct{72.4}$ sur la base de la capitalisation directe, dans les deux cas sous \pct{75}. Le \cref{tab:31:financement} rassemble les indicateurs du prêt retenu ; les chiffres sont ceux de \texttt{traite.cas3.financement}, identiques à ceux des chapitres \ref{ch:30} et \ref{ch:47}. | |
| 287 | + | |
| 288 | +\begin{table}[htbp] | |
| 289 | +\centering\small | |
| 290 | +\caption{Dimensionnement du prêt du cas 3 sur la base de la valeur DCF et indicateurs de financement de la première année.} | |
| 291 | +\label{tab:31:financement} | |
| 292 | +\begin{tabular}{@{}l S[table-format=7.2]@{}} | |
| 293 | +\toprule | |
| 294 | +Élément & {Montant ou ratio} \\ | |
| 295 | +\midrule | |
| 296 | +Valeur de référence (DCF, \cref{ch:30}) (\$) & 2208565.91 \\ | |
| 297 | +Revenu net d'exploitation de l'année 1 (\$) & 89955.75 \\ | |
| 298 | +Prêt maximal par le RPV de \pct{75} (\$) & 1656424.43 \\ | |
| 299 | +Prêt maximal par le RCD de $1{,}20$ (\$) & 1475959.45 \\ | |
| 300 | +Prêt retenu (contrainte liante : RCD) (\$) & 1475959.45 \\ | |
| 301 | +Ratio prêt-valeur effectif (\%) & 66.83 \\ | |
| 302 | +Mise de fonds (\$) & 732606.46 \\ | |
| 303 | +Rapport dette sur fonds propres $D/E$ & 2.01 \\ | |
| 304 | +Paiement mensuel (\$) & 6246.93 \\ | |
| 305 | +Service de la dette annuel (\$) & 74963.13 \\ | |
| 306 | +Constante hypothécaire $f$ (\%) & 5.0789 \\ | |
| 307 | +Taux effectif annuel du prêt (\%) & 4.1624 \\ | |
| 308 | +Coût effectif annuel $k$ sur flux annuels agrégés (\%) & 4.06 \\ | |
| 309 | +Intérêts / capital de la première année (\$) & {60016 / 14947} \\ | |
| 310 | +Ratio de couverture de la dette, année 1 & 1.20 \\ | |
| 311 | +Flux après dette, année 1 (\$) & 14992.63 \\ | |
| 312 | +Rendement courant des fonds propres, année 1 (\%) & 2.05 \\ | |
| 313 | +Point mort d'occupation, dépenses et réserve comprises (\%) & 92.7 \\ | |
| 314 | +Point mort d'occupation, hors réserve (\%) & 87.8 \\ | |
| 315 | +Solde à la fin du terme (60 mois) (\$) & 1394739.19 \\ | |
| 316 | +Solde à la revente (120 mois) (\$) & 1295148.22 \\ | |
| 317 | +TRI des fonds propres sur 10 ans (\%) & 11.22 \\ | |
| 318 | +TRI sans levier (\%) & 7.25 \\ | |
| 319 | +\bottomrule | |
| 320 | +\end{tabular} | |
| 321 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{financement} (\texttt{traite.cas3.financement}, \texttt{traite.finance.Hypotheque}, \texttt{ratio\_point\_mort}, \texttt{rendement\_fonds\_propres\_levier}).}} | |
| 322 | +\end{table} | |
| 323 | + | |
| 324 | +Le point mort d'occupation est de \pct{92.7} : l'immeuble doit encaisser \pct{92.7} de son revenu brut potentiel contractuel pour payer ses dépenses, sa réserve et son service de la dette ; la provision pour inoccupation et pertes étant de \pct{3.9}, la marge de sécurité n'est que de $3{,}4$ points de revenu, soit environ cinq mois de loyer moyen perdus dans l'année. Un prêt dimensionné exactement au seuil de couverture laisse par construction une marge mince ; c'est la raison pour laquelle les prêteurs exigent un seuil supérieur à un, et pour laquelle $1{,}20$ est devenu la norme du conventionnel. | |
| 325 | + | |
| 326 | +\subsection{Sensibilité du prêt maximal au taux, à l'amortissement et au seuil} | |
| 327 | + | |
| 328 | +Le prêt maximal par la couverture est inversement proportionnel à la constante et au seuil : $M_{\max}^{\DSCR} = \NOI_1/(\DSCR_{\min} f)$. Le \cref{tab:31:grille} le fait varier pour le cas 3. Chaque point de taux retire entre \pct{9} et \pct{14} du prêt maximal, selon l'amortissement ; passer de 25 à 40 ans d'amortissement l'augmente de \pct{26} au taux de \pct{4.12} ; abaisser le seuil de $1{,}20$ à $1{,}10$ l'augmente de \pct{9.1}, le relever à $1{,}30$ le réduit de \pct{7.7}. La lecture la plus utile est celle du ratio prêt-valeur implicite : au taux de \pct{4.12}, seul l'amortissement de 40 ans permet de dépasser \pct{60} de la valeur DCF, et aucune combinaison conventionnelle n'atteint \pct{75} ; il faut, pour s'en approcher, soit le taux de \pct{3.12} des années 2020-2021, soit les conditions d'un prêt assuré. C'est ce que le marché a vécu : la remontée des taux de 2022-2023 a réduit mécaniquement la dette disponible par dollar de revenu net d'un tiers environ, et les prix du multirésidentiel ont dû s'ajuster, ou les acheteurs apporter davantage de fonds propres. | |
| 329 | + | |
| 330 | +\begin{table}[htbp] | |
| 331 | +\centering\small | |
| 332 | +\caption{Prêt maximal par le ratio de couverture pour le cas 3 ($\NOI_1 = \dollars{89956}$) selon le taux, l'amortissement et le seuil ; montants en dollars et, entre parenthèses, en pourcentage de la valeur DCF de \dollars{2208566}.} | |
| 333 | +\label{tab:31:grille} | |
| 334 | +\begin{tabular}{@{}S[table-format=1.2] l l l l l@{}} | |
| 335 | +\toprule | |
| 336 | +{Taux (\%)} & 25 ans, RCD 1,20 & 30 ans, RCD 1,20 & 40 ans, RCD 1,20 & 40 ans, RCD 1,10 & 40 ans, RCD 1,30 \\ | |
| 337 | +\midrule | |
| 338 | +3.12 & 1 303 006 (59,0) & 1 462 941 (66,2) & 1 717 291 (77,8) & 1 873 408 (84,8) & 1 585 192 (71,8) \\ | |
| 339 | +4.12 & 1 173 031 (53,1) & 1 295 148 (58,6) & 1 475 959 (66,8) & 1 610 138 (72,9) & 1 362 424 (61,7) \\ | |
| 340 | +5.12 & 1 061 581 (48,1) & 1 154 964 (52,3) & 1 283 815 (58,1) & 1 400 525 (63,4) & 1 185 060 (53,7) \\ | |
| 341 | +6.12 & 965 586 (43,7) & 1 037 104 (47,0) & 1 129 149 (51,1) & 1 231 799 (55,8) & 1 042 292 (47,2) \\ | |
| 342 | +\bottomrule | |
| 343 | +\end{tabular} | |
| 344 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{grille\_pret\_max} (\texttt{traite.finance.pret\_max\_par\_rcd}). Composition semestrielle ; la contrainte de RPV de \pct{75} (\dollars{1656424}) ne lie dans aucune cellule sauf à \pct{3.12} sur 40 ans (RCD $1{,}20$ et $1{,}10$), où le prêt serait plafonné à \dollars{1656424}.}} | |
| 345 | +\end{table} | |
| 346 | + | |
| 347 | +\subsection{Un test de résistance à la couverture} | |
| 348 | + | |
| 349 | +Les règles fédérales de qualification des emprunteurs résidentiels ne s'appliquent pas au crédit commercial, mais un prêteur prudent y transpose la logique du taux admissible en vérifiant que la couverture résiste à une hausse du taux. Le \cref{tab:31:stress} recalcule le service de la dette du prêt retenu au taux contractuel majoré de 100, 200 et 300 points de base et le prêt que le prêteur consentirait s'il qualifiait au taux majoré. Au taux majoré de deux points, analogue à la règle B-20, le service de la dette passe de \dollars{74963} à \dollars{97988} et la couverture tombe à $0{,}92$ : le revenu net de la première année ne couvrirait plus la dette. Un prêteur qui exigerait $1{,}20$ à ce taux ne prêterait que \dollars{1129149}, soit \pct{51.1} de la valeur, et la mise de fonds requise passerait de \dollars{732606} à \dollars{1079417}. Ce résultat n'est pas une prédiction, puisque le revenu net croît pendant le terme et que le test porte sur l'année 1 ; la \cref{sec:31:renouvellement} traite le renouvellement au terme avec les revenus projetés et obtient une image moins sombre. Mais il montre que, dans un marché où le taux de capitalisation est inférieur à la constante, la couverture est la variable de contrôle du crédit et que son test de résistance domine toutes les autres considérations du prêteur. | |
| 350 | + | |
| 351 | +\begin{table}[htbp] | |
| 352 | +\centering\small | |
| 353 | +\caption{Test de résistance de la couverture : service de la dette du prêt retenu (\dollars{1475959}, 480 mois) au taux contractuel majoré, et prêt maximal si la qualification se faisait au taux majoré (RCD $1{,}20$, $\NOI_1$ de l'année 1).} | |
| 354 | +\label{tab:31:stress} | |
| 355 | +\begin{tabular}{@{}l S[table-format=1.2] S[table-format=1.4] S[table-format=6.0] S[table-format=1.3] S[table-format=7.0] S[table-format=2.1]@{}} | |
| 356 | +\toprule | |
| 357 | +Scénario & {Taux (\%)} & {$f$} & {Service de la dette (\$)} & {RCD année 1} & {Prêt max. qualifié (\$)} & {RPV (\%)} \\ | |
| 358 | +\midrule | |
| 359 | +Taux contractuel & 4.12 & 0.0508 & 74963 & 1.200 & 1475959 & 66.8 \\ | |
| 360 | +$+100$ points de base & 5.12 & 0.0584 & 86183 & 1.044 & 1283815 & 58.1 \\ | |
| 361 | +$+200$ points de base (B-20) & 6.12 & 0.0664 & 97988 & 0.918 & 1129149 & 51.1 \\ | |
| 362 | +$+300$ points de base & 7.12 & 0.0747 & 110279 & 0.816 & 1003298 & 45.4 \\ | |
| 363 | +\bottomrule | |
| 364 | +\end{tabular} | |
| 365 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{stress\_rcd}. Le taux admissible minimal du BSIF \parencite{osfiMqr} vise les emprunteurs résidentiels ; sa transposition au crédit commercial est une pratique, non une règle.}} | |
| 366 | +\end{table} | |
| 367 | + | |
| 368 | +\subsection{La variante assurée} | |
| 369 | + | |
| 370 | +Le \cref{tab:31:aph} applique au cas 3, sur la même valeur DCF et au même taux de \pct{4.12}, les conditions d'APH Select à 50, 70 et 100 points : ratio de couverture de $1{,}10$, ratio prêt-valeur maximal de \pct{85} et amortissement de 40, 45 ou 50 ans. La couverture lie encore : le service de la dette maximal passe de \dollars{74963} à $89\,956/1{,}10 = \dollars{81778}$, et le prêt à \dollars{1610138} sur 40 ans (\pct{72.9} de la valeur), \dollars{1682397} sur 45 ans (\pct{76.2}) et \dollars{1741328} sur 50 ans (\pct{78.8}). La mise de fonds tombe de \dollars{732606} à \dollars{467238} dans la formule la plus généreuse, soit une économie de \dollars{265000} de fonds propres ; en contrepartie, la prime d'assurance, de \pct{4.10} du prêt sur 40 ans (\pct{3.35} pour la tranche de ratio prêt-valeur jusqu'à \pct{75}, plus trois surprimes de \pct{0.25}), de \pct{5.35} sur 45 ans et de \pct{5.60} sur 50 ans, coûte de \dollars{66016} à \dollars{97514}, à quoi s'ajoutent les droits de demande et les engagements d'abordabilité ou de performance énergétique qui conditionnent les points. Si la prime est capitalisée au prêt, le service de la dette augmente d'autant et la couverture effective descend sous $1{,}10$. Le \cref{ch:47} reprend ce calcul sur la valeur finale réconciliée du dossier, ce qui en modifie les montants sans en changer la lecture : l'assurance déplace le financement du multirésidentiel vers des ratios qu'aucun prêteur conventionnel n'accepterait, à un coût explicite et sous des conditions que l'évaluateur ne doit pas prêter à l'acheteur typique. | |
| 371 | + | |
| 372 | +\begin{table}[htbp] | |
| 373 | +\centering\small\setlength{\tabcolsep}{4pt} | |
| 374 | +\caption{Variante APH Select pour le cas 3 sur la valeur DCF (\dollars{2208566}), taux \pct{4.12}, RCD minimal $1{,}10$, RPV maximal \pct{85} : prêt, ratio prêt-valeur, mise de fonds et prime d'assurance selon l'amortissement.} | |
| 375 | +\label{tab:31:aph} | |
| 376 | +\begin{tabular}{@{}l S[table-format=7.0] S[table-format=2.1] S[table-format=5.0] S[table-format=6.0] S[table-format=1.2] S[table-format=5.0]@{}} | |
| 377 | +\toprule | |
| 378 | +Formule & {Prêt (\$)} & {RPV (\%)} & {Serv. dette (\$)} & {Mise de fonds (\$)} & {Prime (\%)} & {Prime (\$)} \\ | |
| 379 | +\midrule | |
| 380 | +Conventionnel 40 ans (RPV 75 \%, RCD 1,20) & 1475959 & 66.8 & 74963 & 732606 & {—} & {—} \\ | |
| 381 | +APH Select 50 points, 40 ans & 1610138 & 72.9 & 81778 & 598428 & 4.10 & 66016 \\ | |
| 382 | +APH Select 70 points, 45 ans & 1682397 & 76.2 & 81778 & 526168 & 5.35 & 90008 \\ | |
| 383 | +APH Select 100 points, 50 ans & 1741328 & 78.8 & 81778 & 467238 & 5.60 & 97514 \\ | |
| 384 | +\bottomrule | |
| 385 | +\end{tabular} | |
| 386 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonctions \texttt{aph\_select} et \texttt{prime\_aph} ; barème \textcite{schlaphprimes}, conditions \textcite{schlaphselect}, consultés le 2026-10-31 ; admissibilité de l'immeuble au programme non vérifiée.}} | |
| 387 | +\end{table} | |
| 388 | + | |
| 389 | +\section{Le renouvellement au terme}\label{sec:31:renouvellement} | |
| 390 | + | |
| 391 | +\subsection{Le calcul exact} | |
| 392 | + | |
| 393 | +À l'échéance du terme de $n_1$ mois, le solde $M_{n_1}$ est renouvelé au taux alors en vigueur $i'$, sur l'amortissement résiduel $N - n_1$. Le nouveau paiement se calcule par l'\cref{eq:31:paiement} appliquée au solde, avec le nouveau taux périodique $i'_m = (1 + i'/2)^{1/6} - 1$ : | |
| 394 | +\begin{equation}\label{eq:31:renouvellement} | |
| 395 | +PMT' = M_{n_1}\,\frac{i'_m}{1 - (1 + i'_m)^{-(N - n_1)}}, \qquad SD' = 12\,PMT' . | |
| 396 | +\end{equation} | |
| 397 | +Deux approximations courantes s'écartent de ce calcul. La première applique le nouveau taux au capital initial sur l'amortissement initial, comme si le prêt avait été consenti dès l'origine au taux renouvelé ; c'est ce qu'a fait, faute de mieux, le scénario de hausse des taux du \cref{ch:30}. Elle surestime le service de la dette après le terme, parce que le solde renouvelé est inférieur au capital initial, et elle attribue à tort aux premières années un coût qu'elles n'ont pas supporté. La seconde approximation conserve le paiement et allonge l'amortissement ; elle décrit une pratique de certains prêteurs sur les prêts résidentiels à taux variable, mais elle ne correspond pas au renouvellement d'un terme fixe et elle masque la hausse du coût. Le calcul exact est simple et la bibliothèque le fait en une ligne : il n'y a aucune raison de s'en passer. | |
| 398 | + | |
| 399 | +\subsection{Application au cas 3} | |
| 400 | + | |
| 401 | +Dans le cas 3, le solde à la fin du terme de cinq ans est de \dollars{1394739} et l'amortissement résiduel de 420 mois. Le \cref{tab:31:renouvellement} renouvelle ce solde au taux initial et à trois taux majorés de 100, 200 et 300 points de base, et il suit les conséquences jusqu'à la revente de l'année 10, avec les revenus nets projetés du \cref{ch:30}. Au taux inchangé, le paiement reste de \dollars{6246.93} par construction, et la couverture de l'année 6 est de $1{,}746$ : la croissance du revenu net pendant le premier terme a presque relevé la couverture de moitié. Une hausse de 100 points de base porte le paiement à \dollars{7098.10} et le service de la dette à \dollars{85177}, soit \pct{13.6} de plus ; de 200 points, à \dollars{7993.35} et \dollars{95920} (\pct{28.0}) ; de 300 points, à \dollars{8926.64} et \dollars{107120} (\pct{42.9}). La couverture de l'année 6 descend à $1{,}537$, $1{,}365$ et $1{,}222$ respectivement : même à $+300$ points de base, elle reste au-dessus du seuil de $1{,}20$ exigé à l'origine, et elle remonte ensuite avec le revenu net pour atteindre $1{,}434$ à l'année 10. Le flux après dette de l'année 6 passe de \dollars{55927} à \dollars{23770} dans le scénario le plus défavorable, et le solde à la revente, qui dépend du nouveau taux par la décomposition intérêts-capital, monte de \dollars{1295148} à \dollars{1339493} parce qu'une plus grande part de chaque paiement va aux intérêts. Le TRI des fonds propres recule de \pct{11.22} à \pct{10.78}, \pct{10.32} et \pct{9.86} : le levier reste positif dans tous les cas, puisque le coût effectif de la dette sur l'ensemble de l'horizon, cinq ans à \pct{4.12} puis cinq ans au taux renouvelé, ne dépasse pas \pct{5.3} même dans le scénario à $+300$ points de base, loin du rendement de \pct{7.25} de l'actif ; mais l'avantage sur le rendement des fonds propres se réduit de quatre points à deux points et demi. | |
| 402 | + | |
| 403 | +\begin{table}[htbp] | |
| 404 | +\centering\small\setlength{\tabcolsep}{4pt} | |
| 405 | +\caption{Renouvellement exact du prêt du cas 3 à l'échéance du terme (solde \dollars{1394739}, amortissement résiduel 420 mois) selon le taux renouvelé, et comparaison avec l'approximation du \cref{ch:30} (taux majoré appliqué dès l'origine) ; achat à la valeur DCF, revenus projetés de base.} | |
| 406 | +\label{tab:31:renouvellement} | |
| 407 | +\begin{tabular}{@{}l S[table-format=1.2] S[table-format=1.2] S[table-format=1.2] S[table-format=1.2]@{}} | |
| 408 | +\toprule | |
| 409 | + & {Inchangé} & {$+100$ pb} & {$+200$ pb} & {$+300$ pb} \\ | |
| 410 | +\midrule | |
| 411 | +Taux renouvelé (\%) & 4.12 & 5.12 & 6.12 & 7.12 \\ | |
| 412 | +Paiement mensuel renouvelé (\$) & 6246.93 & 7098.10 & 7993.35 & 8926.64 \\ | |
| 413 | +Service de la dette, années 6 à 10 (\$) & 74963 & 85177 & 95920 & 107120 \\ | |
| 414 | +Hausse du service de la dette (\%) & 0.0 & 13.6 & 28.0 & 42.9 \\ | |
| 415 | +Intérêts de l'année 6 (\$) & 56636 & 70319 & 83962 & 97560 \\ | |
| 416 | +RCD année 6 & 1.746 & 1.537 & 1.365 & 1.222 \\ | |
| 417 | +RCD année 10 & 2.049 & 1.803 & 1.601 & 1.434 \\ | |
| 418 | +Flux après dette, année 6 (\$) & 55927 & 45713 & 34970 & 23770 \\ | |
| 419 | +Solde à la revente, année 10 (\$) & 1295148 & 1312332 & 1327042 & 1339493 \\ | |
| 420 | +TRI des fonds propres, calcul exact (\%) & 11.22 & 10.78 & 10.32 & 9.86 \\ | |
| 421 | +\midrule | |
| 422 | +Approximation du \cref{ch:30} : service de la dette dès l'origine (\$) & 74963 & 86183 & 97988 & 110279 \\ | |
| 423 | +Approximation du \cref{ch:30} : TRI des fonds propres (\%) & 11.22 & 10.03 & 8.81 & 7.57 \\ | |
| 424 | +\bottomrule | |
| 425 | +\end{tabular} | |
| 426 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{renouvellement} (\texttt{traite.finance.Hypotheque}, \texttt{tri}) ; revenus nets de \texttt{traite.cas3.projection\_dcf}, graine 20261031.}} | |
| 427 | +\end{table} | |
| 428 | + | |
| 429 | +La comparaison avec l'approximation du \cref{ch:30} est instructive. En appliquant le taux majoré dès l'origine, on surestimait le service de la dette après le terme de \dollars{1000} à \dollars{3200} par année, on imposait aux cinq premières années un coût qu'elles n'ont pas eu, et l'on concluait à un TRI des fonds propres de \pct{8.81} au lieu de \pct{10.32} pour une hausse de 200 points de base, soit une erreur d'un point et demi sur le rendement. L'approximation a donc le mérite de la prudence, mais elle ne mesure pas le risque réel du renouvellement, qui est le risque d'une hausse appliquée à un solde réduit, pendant cinq ans seulement, sur un revenu qui a crû. Le calcul exact permet aussi de poser la question inverse : quelle hausse du taux ramènerait la couverture de l'année 6 à $1{,}20$, puis à $1{,}00$ ? La bissection donne $+317$ points de base, soit un taux de \pct{7.29}, pour le seuil de $1{,}20$, et $+502$ points de base, soit \pct{9.14}, pour le point mort de la dette. Le second seuil excède le taux affiché de \pct{6.19} d'octobre 2026 et dépasse tout taux consenti depuis 2008 ; le premier est plausible dans un scénario de choc. Ces deux nombres, et non le seul TRI, sont ce qu'un rapport destiné à un prêteur ou à un investisseur devrait mettre en évidence. | |
| 430 | + | |
| 431 | +\section{Exemple intégral : le financement du cas 3}\label{sec:31:exemple} | |
| 432 | + | |
| 433 | +\begin{exemple}{Financement de l'immeuble de douze logements de Rosemont}{31:cas3} | |
| 434 | +Tous les chiffres de cette section et des précédentes relatifs au cas 3 sont calculés par \texttt{analysis/python/cases/ch31\_financement.py}, qui appelle \texttt{traite.cas3.tout} pour la valeur, les revenus nets projetés et le prêt, \texttt{traite.finance} pour la mécanique hypothécaire et les fonctions du \cref{ch:30} pour les flux après dette. Le script imprime chaque valeur citée et le test \texttt{analysis/python/tests/test\_ch31.py} en vérifie les identités. | |
| 435 | +\end{exemple} | |
| 436 | + | |
| 437 | +\begin{synthetique} | |
| 438 | +Le cas 3 est un immeuble \emph{fictif} de douze logements de Rosemont--La Petite-Patrie, à Montréal (\texttt{data/synthetic/cas3\_montreal\_*}, générés par \texttt{analysis/python/traite/synth.py}, graine 20261031). Les paramètres de financement du dossier, soit un ratio prêt-valeur maximal de \pct{75}, un ratio de couverture minimal de $1{,}20$, un taux de \pct{4.12} composé semestriellement, un amortissement de 480 mois et un terme de cinq ans, sont des hypothèses pédagogiques calibrées sur le taux effectif des fonds avancés assurés à taux fixe de cinq ans et plus publié par la Banque du Canada pour août 2026 et sur les conditions usuelles des prêteurs ; ils ne décrivent aucune offre de prêt réelle. Les taux du \cref{tab:31:taux-bdc} sont réels et datés. | |
| 439 | +\end{synthetique} | |
| 440 | + | |
| 441 | +La démarche du financement se déroule en six étapes que le lecteur retrouvera dans tout dossier. La première est la conversion du taux : \pct{4.12} composé semestriellement donne un taux mensuel de \pct{0.34042} et un taux effectif de \pct{4.1624} ; la constante sur 480 mois est de \pct{5.0789}. La deuxième est le dimensionnement : le prêt maximal par le ratio prêt-valeur est de \dollars{1656424}, par la couverture de \dollars{1475959} ; la couverture lie et le prêt retenu représente \pct{66.83} de la valeur DCF, pour une mise de fonds de \dollars{732606}. La troisième est le service de la dette : paiement de \dollars{6246.93}, service annuel de \dollars{74963}, dont \dollars{60016} d'intérêts et \dollars{14947} de capital la première année ; le solde est de \dollars{1394739} à la fin du terme et de \dollars{1295148} à la revente. La quatrième est la lecture du levier : le taux de capitalisation sur le prix, \pct{4.07}, est inférieur à la constante, \pct{5.08}, et le rendement courant des fonds propres n'est que de \pct{2.05} ; mais le rendement de l'actif, \pct{7.25}, excède le coût effectif de la dette, \pct{4.16}, et le TRI des fonds propres atteint \pct{11.22}. La cinquième est le renouvellement : une hausse de 200 points de base au terme porte le service de la dette à \dollars{95920}, la couverture de l'année 6 à $1{,}365$ et le TRI des fonds propres à \pct{10.32}. La sixième est la sensibilité, objet de la section suivante. | |
| 442 | + | |
| 443 | +Le \cref{tab:31:levier-rpv} ferme l'exemple en faisant varier le seul ratio prêt-valeur, tout le reste étant fixé. On y lit le double visage du levier. À mesure que le ratio prêt-valeur monte, la mise de fonds baisse, le TRI des fonds propres monte de \pct{7.25} à \pct{15.24}, mais la couverture de la première année descend de l'infini à $0{,}94$, le rendement courant de \pct{4.07} à $-\pct{1.63}$ et le flux des fonds propres le plus bas de l'horizon, celui de l'année des travaux de 2027, s'enfonce de $-\dollars{13531}$ à $-\dollars{80834}$. Au ratio de \pct{75} que le prêteur offrait, la couverture ne serait que de $1{,}07$ et le propriétaire devrait apporter \dollars{69617} l'année des travaux ; à \pct{85}, le flux après dette est négatif dès la première année. Le ratio de \pct{66.8} imposé par la couverture n'est donc pas une contrainte arbitraire du prêteur ; c'est le point où le revenu de l'immeuble porte encore la dette avec une marge, et un investisseur prudent ne chercherait pas à le dépasser même si on le lui permettait. | |
| 444 | + | |
| 445 | +\begin{table}[htbp] | |
| 446 | +\centering\small\setlength{\tabcolsep}{4pt} | |
| 447 | +\caption{Effet du ratio prêt-valeur sur le financement du cas 3 (achat à la valeur DCF, prêt à \pct{4.12} sur 480 mois, flux projetés de base) ; la ligne en italique est le prêt retenu, plafonné par la couverture.} | |
| 448 | +\label{tab:31:levier-rpv} | |
| 449 | +\begin{tabular}{@{}S[table-format=2.1] S[table-format=7.0] S[table-format=7.0] S[table-format=5.0] S[table-format=1.2] S[table-format=-1.2] S[table-format=2.2] S[table-format=-6.0]@{}} | |
| 450 | +\toprule | |
| 451 | +{RPV (\%)} & {Prêt (\$)} & {Mise de fonds (\$)} & {Serv. dette (\$)} & {RCD an 1} & {Rend. courant (\%)} & {TRI FP (\%)} & {Flux FP min. (\$)} \\ | |
| 452 | +\midrule | |
| 453 | +0.0 & 0 & 2208566 & 0 & {—} & 4.07 & 7.25 & 14512 \\ | |
| 454 | +25.0 & 552141 & 1656424 & 28043 & 3.21 & 3.74 & 8.07 & -13531 \\ | |
| 455 | +50.0 & 1104283 & 1104283 & 56086 & 1.60 & 3.07 & 9.49 & -41574 \\ | |
| 456 | +60.0 & 1325140 & 883426 & 67303 & 1.34 & 2.56 & 10.39 & -52791 \\ | |
| 457 | +\itshape 66.8 & \itshape 1475959 & \itshape 732606 & \itshape 74963 & \itshape 1.20 & \itshape 2.05 & \itshape 11.22 & \itshape -60451 \\ | |
| 458 | +70.0 & 1545996 & 662570 & 78520 & 1.15 & 1.73 & 11.69 & -64008 \\ | |
| 459 | +75.0 & 1656424 & 552141 & 84129 & 1.07 & 1.06 & 12.57 & -69617 \\ | |
| 460 | +80.0 & 1766853 & 441713 & 89737 & 1.00 & 0.05 & 13.71 & -75225 \\ | |
| 461 | +85.0 & 1877281 & 331285 & 95346 & 0.94 & -1.63 & 15.24 & -80834 \\ | |
| 462 | +\bottomrule | |
| 463 | +\end{tabular} | |
| 464 | +\tabsource{\synth{\texttt{analysis/python/cases/ch31\_financement.py}, fonction \texttt{levier\_par\_rpv}. Le flux des fonds propres minimal est celui de l'année 2027 (travaux de \dollars{85000}), hors année de revente.}} | |
| 465 | +\end{table} | |
| 466 | + | |
| 467 | +\section{Analyse de sensibilité}\label{sec:31:sensibilite} | |
| 468 | + | |
| 469 | +Le financement dépend de trois paramètres que le prêteur et le marché fixent et que l'analyste doit faire varier : le taux, la période d'amortissement et le seuil de couverture. La \cref{fig:31:service-dette} montre, pour le prêt retenu du cas 3, le service de la dette et la couverture de la première année en fonction du taux, pour trois amortissements. Les deux panneaux se lisent ensemble. À 40 ans d'amortissement, chaque point de taux ajoute de \dollars{10000} à \dollars{13000} au service de la dette annuel et retire de $0{,}09$ à $0{,}20$ à la couverture ; la couverture passe sous $1{,}20$ dès que le taux dépasse \pct{4.12}, puisque le prêt a été dimensionné exactement au seuil, et sous $1{,}00$ à partir de \pct{5.5} environ. À 25 ans, le même prêt ne serait couvert qu'à $0{,}95$ au taux de base et aurait exigé un taux inférieur à \pct{2.0} pour atteindre $1{,}20$. L'allongement de l'amortissement est donc la variable d'ajustement par laquelle le marché a absorbé la hausse des taux : à service de la dette égal, passer de 25 à 40 ans compense une hausse d'environ 210 points de base. | |
| 470 | + | |
| 471 | +\begin{figure}[htbp] | |
| 472 | +\centering | |
| 473 | +\includegraphics[width=135mm]{ch31/ch31-fig-service-dette.pdf} | |
| 474 | +\caption{Sensibilité du financement du cas 3 au taux et à l'amortissement, pour le prêt retenu de \dollars{1475959}. Gauche : service de la dette annuel selon le taux nominal (composition semestrielle), pour des amortissements de 25, 30 et 40 ans ; le pointillé horizontal est le revenu net de la première année. Droite : ratio de couverture correspondant ; le prêt, dimensionné au seuil de $1{,}20$ à \pct{4.12} sur 40 ans, descend sous ce seuil à tout taux supérieur et sous $1{,}00$ au-delà de \pct{5.5} environ.} | |
| 475 | +\figsource{\synth{script \texttt{analysis/python/figures/ch31\_service\_dette.py}, fonction \texttt{ch31\_financement.sensibilite\_service\_dette}, graine 20261031}} | |
| 476 | +\label{fig:31:service-dette} | |
| 477 | +\end{figure} | |
| 478 | + | |
| 479 | +Trois enseignements se dégagent de l'ensemble des sensibilités du chapitre. D'abord, la couverture est la contrainte liante dans tout le domaine plausible des paramètres de 2026 : le \cref{tab:31:grille} ne trouve aucune combinaison conventionnelle où le ratio prêt-valeur de \pct{75} limite le prêt, et seuls un taux de \pct{3.12} ou des conditions assurées s'en approchent. Ensuite, l'effet du taux sur le prêt maximal est presque linéaire, de \pct{9} à \pct{14} par point selon l'amortissement, tandis que l'effet de l'amortissement est concave : passer de 25 à 30 ans apporte \pct{10}, de 30 à 40 ans \pct{14}, et les prolongations à 45 ou 50 ans n'ajoutent plus que \pct{4.5} et \pct{3.5}. Enfin, le TRI des fonds propres est robuste au renouvellement tant que le revenu net croît comme projeté, mais il est très sensible au ratio prêt-valeur initial, qui est le vrai levier au sens étymologique : la décision d'endettement est prise une fois, à l'achat, et elle détermine le risque de tout l'horizon. C'est pourquoi le \cref{ch:40} fera varier conjointement, par simulation, la croissance des loyers, le taux terminal et le taux de renouvellement : la \cref{sec:31:renouvellement} a montré qu'un choc de 300 points de base reste absorbable si le rattrapage des loyers se réalise, et le \cref{ch:30} qu'un rattrapage plus lent ramène la couverture vers $1{,}0$ ; c'est la conjonction des deux qui met l'investisseur endetté en difficulté. | |
| 480 | + | |
| 481 | +\begin{erreurs} | |
| 482 | +\begin{itemize} | |
| 483 | +\item \textbf{Appliquer la composition mensuelle à un taux canadien.} Un taux de \pct{4.12} composé semestriellement donne un taux mensuel de \pct{0.34042}, non \pct{0.34333} ; l'erreur surestime le service de la dette de \pct{0.5} et sous-estime la couverture d'autant, ce qui suffit à faire échouer un prêt dimensionné au seuil. | |
| 484 | +\item \textbf{Confondre terme et amortissement.} Le paiement se calcule sur l'amortissement, le risque de taux se mesure au terme ; un « prêt de cinq ans » canadien n'est pas remboursé en cinq ans, et le solde au terme est de \pct{94.5} du capital dans le cas 3. | |
| 485 | +\item \textbf{Juger le levier sur le seul rendement courant.} $R < f$ ne signifie pas que l'emprunt appauvrit l'investisseur : la condition du levier positif sur le rendement total est $y > k$, et dans le cas 3 un rendement courant de \pct{2.05} coexiste avec un TRI des fonds propres de \pct{11.22}. Inversement, un TRI élevé n'est pas une mesure de valeur mais de pari ; l'écart-type des fonds propres est multiplié par $1/(1-M)$. | |
| 486 | +\item \textbf{Supposer que le ratio prêt-valeur lie.} En 2026, pour tout immeuble dont le taux de capitalisation est inférieur à $\DSCR_{\min}\, f\, \LTV_{\max} \approx \pct{4.57}$, c'est la couverture qui plafonne le prêt ; le ratio prêt-valeur effectif est alors un résultat, non un intrant. | |
| 487 | +\item \textbf{Approximer le renouvellement en appliquant le nouveau taux dès l'origine.} Le nouveau paiement se calcule sur le solde au terme et l'amortissement résiduel ; l'approximation exagère le service de la dette et sous-estime le TRI des fonds propres d'un point et demi dans le cas 3 à $+200$ points de base. | |
| 488 | +\item \textbf{Incorporer un financement privilégié dans la valeur marchande.} Les conditions d'APH Select, à \pct{85} ou \pct{95} avec une couverture de $1{,}10$, ne sont pas celles de l'acheteur typique et elles sont assorties d'engagements qui limitent les loyers ; la valeur marchande est celle d'un paiement comptant ou d'un financement aux conditions du marché. | |
| 489 | +\item \textbf{Oublier la réserve dans le ratio de couverture, ou l'y compter deux fois.} Le revenu net servant à la couverture doit être celui de la convention déclarée ; un ratio calculé avant réserve est plus flatteur de \num{0.11} dans le cas 3, et l'écart doit être signalé. | |
| 490 | +\end{itemize} | |
| 491 | +\end{erreurs} | |
| 492 | + | |
| 493 | +\begin{limites} | |
| 494 | +Les règles de ce chapitre sont datées. Le taux admissible minimal, les limites prêt-revenu, le plafond de prix assurable et les conditions d'APH Select ont tous changé entre 2022 et 2026 et changeront encore ; chaque chiffre cité porte sa date de consultation et doit être revérifié à la date de toute analyse. La ligne directrice B-20 consultée est la version de 2017 ; aucune version révisée n'a été trouvée au 31 octobre 2026, mais le BSIF en annonçait la révision depuis plusieurs années. Les cellules des niveaux 70 et 100 points d'APH Select ont été partiellement déduites de la mise en page de la source et doivent être confirmées. Les taux des fonds avancés publiés par la Banque du Canada décrivent les prêts résidentiels, assurés et non assurés, des banques à charte ; aucune série publique ne donne le taux des prêts aux immeubles collectifs, et le taux de \pct{4.12} du cas 3 est un repère, non une observation du marché du multirésidentiel. La Banque du Canada ne précise pas la convention de composition de ces taux, que l'ouvrage suppose semestrielle. Les paramètres de financement du cas 3, y compris le seuil de $1{,}20$, le ratio de \pct{75} et l'amortissement de 40 ans, sont des hypothèses pédagogiques ; les conditions réelles dépendent du prêteur, de l'emprunteur, de l'immeuble et de l'assurance. La théorie du levier présentée suppose une dette sans risque et un investisseur avant impôt ; la déductibilité des intérêts modifie le coût effectif de la dette après impôt et renforce le levier, mais la fiscalité est hors du champ de l'ouvrage. Enfin, le traitement exact du renouvellement suppose que le prêteur renouvelle au taux du marché sans renégocier le montant ; en pratique, un prêteur peut exiger un remboursement partiel si la couverture a chuté, et un assureur public peut imposer ses propres conditions, scénarios que le \cref{ch:40} explore. | |
| 495 | +\end{limites} | |
| 496 | + | |
| 497 | +\begin{synthese} | |
| 498 | +\begin{itemize} | |
| 499 | +\item Loi sur l'intérêt, art.~6 : le taux hypothécaire canadien est nominal et composé semestriellement ; $i_m = (1 + i/2)^{1/6} - 1$, $i_{\text{eff}} = (1 + i/2)^2 - 1$. À \pct{4.12} : $i_m = \pct{0.34042}$, $i_{\text{eff}} = \pct{4.1624}$ ; la convention américaine surestime le service de la dette de \pct{0.5}. | |
| 500 | +\item Paiement $PMT = M_0\, i_m / [1 - (1+i_m)^{-N}]$ ; solde $M_k = M_0\,[(1+i_m)^N - (1+i_m)^k]/[(1+i_m)^N - 1]$ ; constante $f = 12\,PMT/M_0$, soit \pct{5.079} à \pct{4.12} sur 40 ans. Le terme (cinq ans) fixe le taux ; l'amortissement (40 ans) fixe le paiement. | |
| 501 | +\item $\LTV = M_0/V_0$, $\DSCR = \NOI_1/SD$, $M_{\max} = \min(\LTV_{\max} V_0,\ \NOI_1/(\DSCR_{\min} f))$ ; la couverture lie si $R < \DSCR_{\min} f \LTV_{\max}$, soit \pct{4.57} en 2026 : cas 3, prêt de \dollars{1475959}, RPV effectif \pct{66.8}, mise de fonds \dollars{732606}. | |
| 502 | +\item Cadre fédéral : B-20 (RPV $\leq \pct{80}$ sans assurance, évaluation indépendante), taux admissible $\max(i + 2\,\%,\ 5{,}25\,\%)$, limites prêt-revenu à $4{,}5$ fois ; résidentiel assuré : mise de fonds 5 \%/10 \% jusqu'à \dollars{1500000}, 30 ans pour premiers acheteurs et neuf ; collectifs : APH Select, RPV 85 à \pct{95}, 40 à 50 ans, RCD $1{,}10$, primes de \pct{2.60} à \pct{6.15} plus \pct{0.25} par cinq ans au-delà de 25. | |
| 503 | +\item Levier courant : $R_E = R + (R - f)\, D/E$, négatif si $R < f$ (cas 3 : \pct{2.05}) ; levier total : $y_E > y \iff y > k$, positif dans le cas 3 (TRI des fonds propres \pct{11.22} contre \pct{7.25}) parce que le rattrapage des loyers porte le rendement de l'actif au-dessus du coût de la dette ; le risque est multiplié par $1/(1-M)$. | |
| 504 | +\item Renouvellement : $PMT' = M_{n_1}\, i'_m/[1 - (1+i'_m)^{-(N-n_1)}]$ sur le solde au terme ; cas 3 à $+200$ pb : service de la dette \dollars{95920}, RCD de l'année 6 $1{,}365$, TRI des fonds propres \pct{10.32} ; la couverture ne retombe à $1{,}20$ qu'à $+317$ pb. | |
| 505 | +\item Sensibilité : un point de taux retire de \pct{9} à \pct{14} du prêt maximal ; passer de 25 à 40 ans d'amortissement l'augmente de \pct{26} ; le ratio prêt-valeur initial, choisi une fois, gouverne le risque de tout l'horizon. | |
| 506 | +\end{itemize} | |
| 507 | +\end{synthese} | |
| 508 | + | |
| 509 | +\section*{Exercices} | |
| 510 | + | |
| 511 | +\begin{exercice}[1]{Deux conventions pour un même taux}{ex:31:1} | |
| 512 | +Un prêt de \dollars{850000} est consenti au taux nominal de \pct{4.58} et amorti sur 300 mois. (a) Calculer le taux mensuel et le taux effectif annuel selon la convention canadienne (composition semestrielle) et selon la convention américaine (composition mensuelle). (b) Calculer le paiement mensuel, le service de la dette annuel et la constante hypothécaire dans chaque convention, et l'écart annuel. (c) Calculer le solde après 60 mois dans chaque convention. (d) Dans quel sens un tableur américain biaise-t-il le ratio de couverture d'un prêt canadien ? | |
| 513 | +\end{exercice} | |
| 514 | + | |
| 515 | +\begin{exercice}[1]{Terme, amortissement et constitution de fonds propres}{ex:31:2} | |
| 516 | +Un prêt de \dollars{1000000} à \pct{4.12} (composition semestrielle) est amorti sur 480 mois avec un terme de cinq ans. (a) Calculer le paiement mensuel et le service de la dette annuel. (b) Calculer le solde à la fin du terme et après dix ans, puis la part du capital remboursée pendant le terme. (c) Calculer les intérêts et le capital de la première année. (d) Calculer le total des intérêts payés sur quarante ans et le comparer au total sur un amortissement de 300 mois ; commenter l'arbitrage entre service de la dette annuel et coût total. | |
| 517 | +\end{exercice} | |
| 518 | + | |
| 519 | +\begin{exercice}[2]{Prêt maximal et contrainte liante}{ex:31:3} | |
| 520 | +Un immeuble de seize logements a un revenu net d'exploitation normalisé de \dollars{120000} et une valeur estimée de \dollars{2600000}. Un prêteur conventionnel offre un ratio prêt-valeur maximal de \pct{75}, exige un ratio de couverture d'au moins $1{,}25$, au taux de \pct{4.58} (composition semestrielle) amorti sur 360 mois. (a) Calculer la constante hypothécaire et le prêt maximal selon chaque contrainte ; laquelle lie ? Quel est le ratio prêt-valeur effectif ? (b) Un prêt assuré APH Select à 50 points offre un ratio prêt-valeur de \pct{85}, un ratio de couverture de $1{,}10$, un taux de \pct{4.12} et un amortissement de 480 mois ; recalculer le prêt maximal et la contrainte liante. (c) Calculer la prime d'assurance selon le barème de la \cref{sec:31:ratios} et l'exprimer en dollars. (d) De combien la mise de fonds diminue-t-elle entre les deux formules, et qu'achète cette diminution ? | |
| 521 | +\end{exercice} | |
| 522 | + | |
| 523 | +\begin{exercice}[2]{Levier courant positif, négatif et neutre}{ex:31:4} | |
| 524 | +Un immeuble se capitalise à $R = \pct{5.2}$ sur son prix. (a) Calculer le rendement courant des fonds propres $R_E$ pour des ratios prêt-valeur de 0, \pct{50}, \pct{70} et \pct{80} si la constante hypothécaire est de \pct{6.0}, puis si elle est de \pct{4.5}. (b) Tracer mentalement ou sur papier $R_E$ en fonction de $M$ dans les deux cas et expliquer la forme des courbes à partir de la dérivée $\partial R_E / \partial M$. (c) Pour quelle constante le levier est-il neutre ? (d) Un investisseur dont le levier courant est négatif peut-il néanmoins avoir raison d'emprunter ? Énoncer la condition. | |
| 525 | +\end{exercice} | |
| 526 | + | |
| 527 | +\begin{exercice}[2]{Mise de fonds minimale, taux admissible et ratio prêt-revenu}{ex:31:5} | |
| 528 | +Un ménage achète un duplex qu'il habitera au prix de \dollars{720000} avec un prêt assuré. (a) Calculer la mise de fonds minimale selon la règle fédérale du 15 décembre 2024 et le prêt correspondant. (b) Le taux contractuel est de \pct{4.58} ; calculer le taux admissible minimal du BSIF. (c) Calculer le paiement mensuel sur 300 mois au taux contractuel et au taux admissible ; de combien le paiement de qualification excède-t-il le paiement réel ? (d) Quel revenu annuel le ménage devrait-il déclarer pour que le prêt ne dépasse pas $4{,}5$ fois son revenu ? (e) Expliquer pourquoi la limite prêt-revenu du BSIF ne s'applique pas à ce prêt en particulier. | |
| 529 | +\end{exercice} | |
| 530 | + | |
| 531 | +\begin{exercice}[3]{Renouvellement exact du prêt du cas 3}{ex:31:6} | |
| 532 | +Le prêt du cas 3 (\dollars{1475959}, \pct{4.12}, 480 mois, terme de cinq ans) est renouvelé au terme à un taux supérieur de 150 points de base. À l'aide de \texttt{traite.finance.Hypotheque} ou en reproduisant les formules du chapitre : (a) calculer le solde au terme et l'amortissement résiduel ; (b) calculer le nouveau paiement mensuel, le nouveau service de la dette annuel et sa hausse en dollars et en pourcentage ; (c) calculer le ratio de couverture des années 6 et 10 avec les revenus nets projetés du \cref{ch:30} (\dollars{130890} et \dollars{153581}) et le flux après dette de l'année 6 ; (d) calculer le solde à la revente de l'année 10 et le TRI des fonds propres si l'immeuble a été acheté à la valeur DCF ; (e) comparer ce TRI à celui qu'on obtiendrait en appliquant le taux majoré dès l'origine et expliquer l'écart. | |
| 533 | +\end{exercice} | |
| 534 | + | |
| 535 | +\begin{exercice}[3]{Choisir son levier}{ex:31:7} | |
| 536 | +Un investisseur hésite, pour le cas 3, entre un ratio prêt-valeur de \pct{50} et un ratio de \pct{85} (ce dernier supposé disponible par assurance, au même taux de \pct{4.12} et sur 480 mois, prime ignorée). (a) Pour chaque ratio, calculer le prêt, la mise de fonds, le service de la dette, le ratio de couverture de la première année, le rendement courant et le flux après dette de la première année. (b) Calculer le TRI des fonds propres sur dix ans dans chaque cas, achat à la valeur DCF, avec les flux projetés de base (ou reprendre le \cref{tab:31:levier-rpv}). (c) Vérifier la condition de la proposition du chapitre : le coût effectif annuel de la dette sur flux annuels agrégés est de \pct{4.06} ; expliquer pourquoi le TRI des fonds propres croît avec le levier. (d) Calculer le multiplicateur de risque $1/(1-M)$ dans chaque cas et le flux des fonds propres le plus bas de l'horizon ; quel investisseur, et avec quelle réserve de liquidités, peut raisonnablement choisir \pct{85} ? | |
| 537 | +\end{exercice} | |
| 538 | + | |
| 539 | +\section*{Pour aller plus loin} | |
| 540 | + | |
| 541 | +\textcite{brueggemanFisher2022}, \emph{Real Estate Finance and Investments}, demeure la référence nord-américaine sur la mécanique des prêts hypothécaires, les ratios des prêteurs, le levier positif et négatif et l'analyse des flux après financement ; le lecteur canadien devra y remplacer systématiquement la composition mensuelle par la composition semestrielle, ce que ce chapitre a voulu rendre réflexe. \textcite{geltnerMillerClaytonEichholtz2014}, \emph{Commercial Real Estate Analysis and Investments}, offrent le traitement le plus rigoureux de l'effet de levier sur le rendement et le risque, de la décomposition en revenu et plus-value et du coût moyen pondéré du capital immobilier ; leur distinction entre le levier sur le rendement courant et sur le rendement total est celle qui structure la \cref{sec:31:levier}. \textcite{fisherMartin2007} présentent les formules de couverture et de bande d'investissement dans une perspective d'évaluation, et \textcite{appraisal2026} les conventions de l'Appraisal Institute sur le traitement du financement dans l'approche par le revenu. Sur le plan empirique, \textcite{ducaLing2020} montrent comment la disponibilité du crédit et le capital réglementaire des prêteurs ont gouverné le cycle des immeubles de placement, et \textcite{poterba1984} a formalisé le coût d'usage du logement en intégrant le financement et la fiscalité, cadre que le \cref{ch:03} a introduit et que les analyses de la demande des propriétaires-occupants du \cref{ch:32} prolongent. Les sources institutionnelles citées dans ce chapitre, soit la ligne directrice B-20 et les pages du BSIF sur le taux admissible et les limites prêt-revenu \parencite{osfib20,osfiMqr,osfilti2025}, le document d'information du ministère des Finances sur les règles de l'assurance hypothécaire \parencite{fincan2024hypo} et les pages de la SCHL sur APH Select et son barème de primes \parencite{schlaphselect,schlaphprimes}, sont les textes que l'analyste doit relire à chaque mise à jour, car ils changent plus vite que les manuels. | |
modified
manuscript/chapters/ch33.tex
+170 −1
@@ -1,2 +1,171 @@ | ||
| 1 | 1 | \chapter{Immeubles de six logements et plus}\label{ch:33} |
| 2 | −\stubchapter | |
| 2 | + | |
| 3 | +Au-delà du cinquième logement, un immeuble d'habitation change de nature aux yeux de presque tous ceux qui s'en occupent : le prêteur cesse de le traiter comme une résidence et lui applique les règles du prêt commercial ; le courtier n'a plus à remplir le formulaire de déclarations du vendeur ; la municipalité, parfois, l'impose à un taux distinct ; le rôle d'évaluation le range dans une catégorie à part ; l'acheteur n'est plus un ménage qui cherche à se loger, mais un investisseur, petit ou grand, qui achète un flux de revenus. Le présent chapitre traite de ce segment, celui des immeubles de six logements et plus, qui va du sextuplex de quartier à la tour de plusieurs centaines d'appartements. Il ne refait pas le dossier complet du \cref{ch:47}, qui conduit l'évaluation d'un douze logements montréalais de la définition du mandat jusqu'au rapport ; il en fournit plutôt le cadre : la structure du marché et de ses acteurs, la typologie des immeubles, les unités d'analyse propres au multilogement, la diligence raisonnable qu'exige un bien dont la valeur dépend de documents autant que de murs, et l'intégration des trois méthodes d'évaluation. Les données des cas~3 et~4 servent de fil conducteur : le douze logements du cas~3 est replacé dans la fourchette interrégionale du portefeuille du cas~4, et un immeuble de trente-six logements de ce portefeuille, situé à Gatineau, est évalué sommairement par capitalisation pour montrer, chiffres à l'appui, ce que la taille et la région font au taux et à la valeur par logement. | |
| 4 | + | |
| 5 | +\begin{objectifs} | |
| 6 | +À la fin de ce chapitre, le lecteur sait : | |
| 7 | +\begin{itemize} | |
| 8 | +\item situer les seuils juridiques, fiscaux et financiers qui séparent les immeubles de six logements et plus des petits plex, et en mesurer les conséquences sur la valeur ; | |
| 9 | +\item décrire la structure du marché multirésidentiel québécois, ses acteurs privés et institutionnels, leurs modes de financement et la liquidité de chaque tranche de taille, à partir des données publiques disponibles en 2026 ; | |
| 10 | +\item classer un immeuble dans une typologie opérante (immeuble sans ascenseur, conciergerie, tour, construction neuve) et relier cette typologie aux loyers, à l'inoccupation, aux dépenses et aux taux observés ; | |
| 11 | +\item choisir et interpréter les unités d'analyse du multilogement, par logement, par mètre carré, par chambre et par dollar de revenu, en connaissant leurs biais ; | |
| 12 | +\item conduire une diligence raisonnable structurée sur les baux, l'état locatif, les taxes, les assurances, l'environnement, le bâtiment et la conformité réglementaire ; | |
| 13 | +\item intégrer la méthode du revenu, la comparaison par unité et la méthode du coût selon le type d'immeuble et la fin de l'évaluation ; | |
| 14 | +\item mesurer l'effet de la taille, de la région et de l'état sur le taux global au moyen d'une régression déclarée, et en tirer une analyse de sensibilité. | |
| 15 | +\end{itemize} | |
| 16 | +\end{objectifs} | |
| 17 | + | |
| 18 | +\begin{synthetique}[Données synthétiques — cas 3 et cas 4] | |
| 19 | +Les exemples chiffrés de ce chapitre reposent sur deux dossiers \emph{synthétiques} de l'ouvrage. Le cas~3 (\texttt{data/synthetic/cas3\_montreal\_*}) est l'immeuble fictif de douze logements de Rosemont--La Petite-Patrie dont le \cref{ch:47} fait le dossier complet, avec ses quarante ventes comparables d'immeubles de 6 à 30 logements. Le cas~4 (\texttt{cas4\_portefeuille.csv}) est un portefeuille fictif de 48 immeubles de 6 à 72 logements répartis dans six régions métropolitaines (Montréal, Québec, Gatineau, Sherbrooke, Trois-Rivières, Saguenay), avec pour chacun le revenu net d'exploitation normalisé de 2026, le taux global, la valeur, la dette et des indicateurs de risque ; il est étudié en détail au \cref{ch:48}. Les deux jeux ont été générés par \texttt{analysis/python/traite/synth.py} avec la graine \texttt{20261031}, selon les lois déclarées dans \texttt{data/synthetic/README.md} : les taux régionaux sont calibrés sur les fourchettes publiées par CBRE pour Montréal et Québec au troisième trimestre de 2026, et, faute de publication, posés par hypothèse pour les quatre autres régions ; les loyers et l'inoccupation le sont sur l'Enquête sur les logements locatifs de la SCHL d'octobre 2025. Les effets de taille, d'état et de région estimés dans ce chapitre sont donc des propriétés du jeu synthétique, utiles pour apprendre la méthode, et non des mesures du marché réel. Les données de la SCHL par taille d'immeuble et par année de construction (\cref{sec:33:typologie}) sont, elles, réelles et citées avec leur source. Tous les chiffres sont recalculés par \texttt{analysis/python/cases/ch33\_six\_logements.py} et vérifiés par \texttt{analysis/python/tests/test\_ch33.py}. | |
| 20 | +\end{synthetique} | |
| 21 | + | |
| 22 | +\section{Un segment à part : seuils et conséquences}\label{sec:33:seuils} | |
| 23 | + | |
| 24 | +\subsection{Pourquoi six} | |
| 25 | + | |
| 26 | +Le chiffre de six n'a rien d'arbitraire au Québec, même s'il ne correspond à aucune définition unique. Il résulte de la superposition de plusieurs seuils, dont la plupart sont fixés à cinq logements et séparent donc, en pratique, les immeubles de « un à cinq logements » des immeubles de « six logements et plus ». Le \cref{tab:33:seuils} les rassemble. Le plus structurant est financier : l'assurance prêt hypothécaire de la SCHL destinée aux propriétaires-occupants et aux petits investisseurs vise les habitations de un à quatre logements, tandis que les produits d'assurance pour « immeubles collectifs », dont le programme APH~Select, exigent un minimum de cinq logements \parencite{schlaphselect}. Un immeuble de six logements est ainsi, pour le prêteur, un prêt commercial : la décision de crédit repose sur le revenu net de l'immeuble et sur le ratio de couverture de la dette, non sur le revenu de l'emprunteur, et l'évaluation exigée est celle d'un immeuble de placement, conforme aux pratiques que la ligne directrice B-20 du Bureau du surintendant des institutions financières demande aux prêteurs de documenter \parencite{osfib20}. Le \cref{ch:31} a exposé la mécanique de ces prêts ; la \cref{sec:47:financement} l'a appliquée au douze logements. | |
| 27 | + | |
| 28 | +Le second seuil est celui du courtage. Le formulaire obligatoire de déclarations du vendeur de l'Organisme d'autoréglementation du courtage immobilier du Québec s'applique à l'« immeuble principalement résidentiel de moins de 5 logements » \parencite{oaciqFormulaireDV} ; au-delà, le vendeur n'est pas tenu de remplir ce formulaire et l'acheteur, comme l'évaluateur, doit obtenir par lui-même les renseignements sur l'état de l'immeuble, les baux et les procédures en cours. Cette absence de déclaration normalisée est la première raison pour laquelle la diligence raisonnable, objet de la \cref{sec:33:diligence}, occupe une place si grande dans l'évaluation des immeubles de six logements et plus. | |
| 29 | + | |
| 30 | +Le troisième seuil est fiscal, et il est municipal. La Loi sur la fiscalité municipale autorise les municipalités à imposer des taux variés selon des catégories d'immeubles \parencite[art.~244.29 et s.]{lfm} ; la Ville de Québec applique en 2026 un taux de \qty{0.7697}{\dollar} par \dollars{100} d'évaluation aux immeubles résidentiels de six logements et plus, contre \qty{0.7464}{\dollar} aux immeubles de un à cinq logements, auxquels s'ajoutent des tarifs de \dollars{386} par logement pour l'aqueduc et l'égout et de \dollars{195} par logement pour les matières résiduelles \parencite{vqtaux2026}. À Montréal, la catégorie « six logements et plus » existe au moins dans la présentation du rôle : lors du dépôt du rôle 2026-2028, la Ville a annoncé une hausse moyenne de \pct{10.9} pour les immeubles résidentiels de six logements et plus, contre \pct{9.6} pour le résidentiel de cinq logements ou moins \parencite{montrealrole2026,mtlrole2026} ; l'existence d'un taux de taxation distinct pour cette catégorie n'a pu être vérifiée dans le document officiel des taux de 2026 et reste, comme au \cref{ch:47}, une limite déclarée. À Gatineau, le rôle 2027-2029 déposé le 27~octobre 2026 attribue aux immeubles de six logements et plus une valeur médiane de \dollars{1990000}, en hausse de \pct{27.6} sur trois ans selon les comptes rendus de presse du dépôt \parencite{gatineaurole2027}, hausse nettement supérieure à celle des unifamiliales (\pct{9.06} pour la médiane) : le segment a son propre cycle. | |
| 31 | + | |
| 32 | +Le quatrième seuil est statistique. L'Enquête sur les logements locatifs de la SCHL ne couvre que les immeubles d'initiative privée de trois logements et plus, et elle publie ses résultats par tranche de taille d'immeuble, de « 3 à 5 » à « 100 et plus » \parencite{schlrmltables2025} ; les immeubles de six logements et plus y sont donc décrits avec une précision que n'ont pas les plex. Les publications de taux de capitalisation des courtiers en immobilier commercial, enfin, ne concernent que ce segment, et surtout sa partie supérieure \parencite{cbrecaprates2026q3}. Le droit du logement, lui, ne connaît pas le seuil de six : le Code civil s'applique à tout bail de logement, quelle que soit la taille de l'immeuble, et la Loi sur le Tribunal administratif du logement ne distingue que l'« ensemble immobilier », défini comme plusieurs immeubles situés à proximité, comprenant ensemble plus de douze logements et administrés en commun \parencite[art.~45]{loiTAL}. Le seuil de six est donc une convention de marché et d'institutions financières, et c'est en ce sens que l'ouvrage l'emploie. | |
| 33 | + | |
| 34 | +\begin{definition}{Immeuble de six logements et plus}{33:sixplus} | |
| 35 | +Dans cet ouvrage, un \emph{immeuble de six logements et plus} est un immeuble d'habitation locatif d'au moins six logements détenu par un seul propriétaire (ou en indivision) et exploité comme un placement : le propriétaire n'y occupe pas, en règle générale, un logement, et la valeur de l'immeuble se forme sur le marché des investisseurs. Il relève du financement commercial (prêt dimensionné par le revenu net et la couverture de la dette), échappe au formulaire de déclarations du vendeur, est décrit par la SCHL dans les tranches de 6 logements et plus et peut, selon la municipalité, être imposé à un taux distinct. Le segment se subdivise lui-même selon la taille, la hauteur et l'âge (\cref{sec:33:typologie}). | |
| 36 | +\end{definition} | |
| 37 | + | |
| 38 | +\begin{table}[htbp]\centering | |
| 39 | +\caption{Seuils qui séparent, en 2026, les immeubles de six logements et plus des petits immeubles résidentiels au Québec.}\label{tab:33:seuils} | |
| 40 | +\footnotesize\begin{tabular}{@{}L{2.9cm}L{3.3cm}L{6.4cm}@{}} | |
| 41 | +\toprule | |
| 42 | +Domaine & Seuil & Conséquence pour l'évaluation et source \\ | |
| 43 | +\midrule | |
| 44 | +Assurance hypothécaire & 1 à 4 logements (propriétaire-occupant) ; 5 logements et plus (immeubles collectifs, APH Select) & Prêt commercial dimensionné par le RNE et le RCD ; évaluation d'immeuble de placement exigée par le prêteur \parencite{schlaphselect,osfib20} \\ | |
| 45 | +Courtage & Formulaire DV obligatoire si « moins de 5 logements » & Aucune déclaration normalisée du vendeur au-delà : diligence raisonnable à la charge de l'acheteur et de l'évaluateur \parencite{oaciqFormulaireDV} \\ | |
| 46 | +Fiscalité municipale (Québec) & 1 à 5 logements : \qty{0.7464}{\dollar}/100~\$ ; 6 et plus : \qty{0.7697}{\dollar}/100~\$ + tarifs par logement & Taxe recalculée au taux de la catégorie sur la valeur au rôle ; écart capitalisé dans la valeur (\cref{sec:33:diligence}) \parencite{vqtaux2026} \\ | |
| 47 | +Rôle d'évaluation (Montréal) & Catégorie « 6 logements et plus » : +\pct{10.9} au rôle 2026-2028 (vs +\pct{9.6} pour 5 logements et moins) & Cycle propre au segment ; valeur au rôle établie libre de baux \parencite[art.~45.1]{lfm} \parencite{montrealrole2026} \\ | |
| 48 | +Statistique (SCHL) & Enquête : 3 logements et plus ; tranches 3-5, 6-19, 20-49, 50-99, 100 et plus & Loyers, inoccupation et rotation disponibles par taille d'immeuble et par année de construction \parencite{schlrmltables2025} \\ | |
| 49 | +Taux publiés (courtiers) & Multirésidentiel de catégorie A et B, tours et basse hauteur, Montréal et Québec seulement & Repères pour les immeubles institutionnels ; rien pour les quatre autres RMR \parencite{cbrecaprates2026q3} \\ | |
| 50 | +Droit du logement & Aucun seuil ; « ensemble immobilier » : plus de 12 logements en administration commune & Bail, reconduction et fixation identiques pour tous ; déclaration de l'ensemble immobilier dans l'avis au locataire \parencite[art.~45]{loiTAL} \\ | |
| 51 | +\bottomrule | |
| 52 | +\end{tabular} | |
| 53 | +\tabsource{compilation de l'auteur à partir des textes et pages cités, consultés le 31~octobre 2026 ; le taux de taxe montréalais propre aux « 6 logements et plus » n'a pas été vérifié.} | |
| 54 | +\end{table} | |
| 55 | + | |
| 56 | +\subsection{Ce que le seuil change dans la formation de la valeur} | |
| 57 | + | |
| 58 | +Trois conséquences économiques découlent de ces seuils. La première tient à la demande. Pour un plex de deux à cinq logements, une part importante des acheteurs sont des occupants qui paient pour se loger autant que pour un revenu, ce qui explique les multiplicateurs élevés et les taux extraits très bas que le \cref{ch:32} analyse pour le triplex du cas~2 ; dès six logements, l'acheteur-occupant disparaît presque, et le prix se forme entre investisseurs qui comparent le rendement de l'immeuble à celui d'autres placements. La valeur devient une fonction du revenu net et du taux exigé, et la méthode du revenu, dominante. La deuxième conséquence tient au financement : parce que le prêt est dimensionné par la couverture de la dette, le taux d'intérêt et l'amortissement offerts par le prêteur déterminent la capacité d'emprunt et, par là, le prix que les acheteurs endettés peuvent offrir ; la \cref{sec:47:financement} a montré qu'en 2026, avec une constante hypothécaire supérieure au taux de capitalisation, la couverture limite le prêt bien en deçà du ratio prêt-valeur offert. La troisième tient à l'information : sans déclaration du vendeur, l'état des lieux, des baux et des procédures doit être reconstitué par l'acheteur, et la qualité de cette reconstitution se paie dans le prix. Un immeuble dont les baux sont complets, les loyers justifiés et les dépenses documentées se vend mieux qu'un immeuble identique dont le dossier est lacunaire ; l'évaluateur doit savoir si le prix d'un comparable reflète un dossier propre ou une décote d'incertitude. | |
| 59 | + | |
| 60 | +\section{Le marché : acteurs privés et institutionnels}\label{sec:33:marche} | |
| 61 | + | |
| 62 | +\subsection{Deux marchés sous un même toit} | |
| 63 | + | |
| 64 | +Le marché des immeubles de six logements et plus n'est pas homogène. À une extrémité, des immeubles de six à une vingtaine de logements, souvent sans ascenseur, construits avant 1975, détenus par des particuliers ou de petites sociétés familiales, financés par des prêts de un à cinq millions de dollars, gérés par le propriétaire ou un gestionnaire local, et vendus par des courtiers résidentiels ou de petites équipes spécialisées. À l'autre, des immeubles de cinquante, cent ou plusieurs centaines de logements, avec ascenseurs, conciergerie et services, détenus par des sociétés de placement immobilier, des fonds, des caisses de retraite, des assureurs ou de grandes entreprises privées, financés par des prêts assurés par la SCHL ou par des émissions obligataires, gérés par des équipes professionnelles, et vendus de gré à gré ou par appel d'offres auprès d'un cercle restreint d'acheteurs qualifiés. Entre les deux, les immeubles de vingt à cinquante logements forment une zone de transition où se rencontrent les plus gros investisseurs privés et les plus petits acheteurs institutionnels. | |
| 65 | + | |
| 66 | +\begin{definition}{Marché institutionnel et marché privé}{33:institutionnel} | |
| 67 | +On appelle \emph{marché institutionnel} le segment où les acheteurs sont des entités qui placent des capitaux pour le compte de tiers (sociétés de placement immobilier, fonds, caisses de retraite, assureurs), qui exigent une documentation complète, un rendement comparé à des indices et une liquidité suffisante pour entrer et sortir à grande échelle ; les immeubles y sont généralement d'au moins cinquante logements, ou regroupés en portefeuilles. On appelle \emph{marché privé} le segment où les acheteurs sont des particuliers, des sociétés familiales ou de petits groupes d'investisseurs, qui achètent à l'unité, financent par emprunt hypothécaire de premier rang et gèrent souvent eux-mêmes. Cette distinction est une pratique courante, non une catégorie juridique ; elle importe parce que les deux marchés n'ont ni les mêmes acheteurs marginaux, ni le même coût du capital, ni la même liquidité, et donc pas les mêmes taux. | |
| 68 | +\end{definition} | |
| 69 | + | |
| 70 | +Les données publiques permettent de cerner les deux marchés sans les mesurer entièrement. Du côté institutionnel, les courtiers publient des fourchettes de taux de capitalisation par ville, par hauteur et par classe. Au troisième trimestre de 2026, CBRE situait le multirésidentiel montréalais entre \pct{4.25} et \pct{4.75} pour toutes les catégories (tours de classe~A : \pct{4.50} à \pct{4.75} ; tours et basse hauteur de classe~B : \pct{4.25} à \pct{4.75} ; basse hauteur de classe~A et construction neuve : \pct{4.50} à \pct{4.75}), et celui de la ville de Québec dans une fourchette plus large et plus élevée, de \pct{4.25} à \pct{6.00} selon la catégorie, la basse hauteur de classe~B se situant entre \pct{5.00} et \pct{6.00} \parencite{cbrecaprates2026q3}. Les moyennes nationales du même rapport étaient de \pct{4.60} pour les tours de classe~A et de \pct{4.99} pour la basse hauteur de classe~B, l'écart entre le taux moyen toutes catégories de propriétés et l'obligation du Canada à dix ans étant ramené à 256~points de base. Aucune fourchette n'est publiée pour Gatineau, Sherbrooke, Trois-Rivières ni Saguenay : pour ces marchés, l'évaluateur doit extraire lui-même ses taux, ce que l'exemple de la \cref{sec:33:exemple} illustre. Du côté des volumes, Altus estimait à 2,9~milliards de dollars les investissements multirésidentiels dans la région de Montréal au premier semestre de 2026, en hausse de \pct{30} sur un an \parencite{altusmontreal2026q2} ; la \cref{sec:29:marches} a replacé ces niveaux dans l'histoire des taux d'intérêt. | |
| 71 | + | |
| 72 | +Du côté privé, aucune statistique de taux n'est publiée, mais les données de prix des petits immeubles sont abondantes : les plex de deux à cinq logements se sont vendus à un prix médian de \dollars{699000} dans la province et de \dollars{860500} dans la région de Montréal au troisième trimestre de 2026 selon l'APCIQ \parencite{apciqt32026}, et de \dollars{622000} sur douze mois selon les actes publiés au Registre foncier compilés par JLR \parencite{jlr202609}. Ces chiffres concernent le marché des plex, non celui des six logements et plus, pour lequel il n'existe pas de médiane publiée ; ils montrent cependant la profondeur du marché des petits investisseurs québécois, qui constitue le réservoir d'acheteurs des immeubles de six à vingt logements. Le parc lui-même est connu par le recensement : au Québec, en 2021, \num{1242910} ménages, soit \pct{33.2} de l'ensemble, vivaient dans un appartement d'un immeuble de moins de cinq étages, contre \num{225750} (\pct{6.0}) dans un immeuble de cinq étages et plus et \num{271240} (\pct{7.2}) dans un duplex \parencite{statcanrec2021type} ; le multirésidentiel québécois est d'abord un parc d'immeubles bas. | |
| 73 | + | |
| 74 | +\subsection{Taille, financement et liquidité} | |
| 75 | + | |
| 76 | +La taille d'un immeuble conditionne le cercle de ses acheteurs potentiels et, par là, sa liquidité. Un immeuble de huit logements à deux millions de dollars peut être acheté par des milliers d'investisseurs québécois disposant d'une mise de fonds de cinq à sept cent mille dollars ; un immeuble de cent logements à vingt-cinq millions ne l'est que par quelques dizaines d'acheteurs, pour lesquels la transaction est toutefois routinière. La liquidité n'est donc pas une fonction monotone de la taille : les très petits immeubles et les très grands se vendent dans des marchés profonds, chacun à leur manière, tandis que les immeubles intermédiaires, trop gros pour la plupart des particuliers et trop petits pour les institutions, peuvent connaître des délais d'exposition plus longs. Le financement renforce cette structure. Les prêts assurés par la SCHL, qui offrent les taux les plus bas (\pct{4.12} pour les fonds avancés à taux fixe de cinq ans et plus en août 2026, contre \pct{4.58} pour les prêts non assurés \parencite{bdctauxhypothecaires2026}) et les amortissements les plus longs, sont accessibles dès cinq logements, mais leurs frais fixes et leurs exigences documentaires les rendent plus avantageux à mesure que le prêt grossit ; le programme APH~Select, qui porte le ratio prêt-valeur jusqu'à \pct{85} ou \pct{95} et l'amortissement jusqu'à cinquante ans en échange d'engagements d'abordabilité, d'efficacité énergétique ou d'accessibilité \parencite{schlaphselect}, est surtout utilisé par les acheteurs qui disposent des équipes nécessaires pour monter de tels dossiers. L'effet sur les taux est direct : à revenu net égal, un acheteur qui emprunte à \pct{4.12} sur quarante ans peut payer plus qu'un acheteur qui emprunte à \pct{4.58} sur vingt-cinq ans, et le taux de capitalisation des grands immeubles s'en trouve abaissé. | |
| 77 | + | |
| 78 | +La recherche empirique sur les taux de capitalisation confirme que ces primes de taille et de liquidité existent, mais qu'elles sont secondaires par rapport aux conditions du marché local des logements et des marchés de capitaux \parencite{sivitanidouSivitanides1999,sivitanidesTortoWheaton2003} ; la compression des taux de la décennie 2010 et leur remontée récente s'expliquent d'abord par le crédit et les primes de risque \parencite{chervachidzeWheaton2013,ducaLing2020}. Dans les données synthétiques de l'ouvrage, l'effet de taille est volontairement modeste. Dans le cas~3, la régression du taux extrait sur l'état et le nombre de logements, présentée à la \cref{sec:29:extraction}, donne une pente de $-2{,}27$~points de base par logement supplémentaire dans la tranche de 6 à 30 logements ; dans le cas~4, la régression semi-logarithmique de la \cref{sec:33:exemple} donne une élasticité du taux au nombre de logements de $-0{,}032$, de sorte qu'un doublement de la taille abaisse le taux d'environ \pct{2.2} de sa valeur, soit une douzaine de points de base. Le \cref{tab:33:effet-taille} compare ces deux estimations ; le \cref{ch:48} reprend la seconde dans l'analyse du portefeuille. La \cref{fig:33:taux-taille} montre, sur le même graphique, les quarante ventes du cas~3 et les 48 immeubles du cas~4 : à taille égale, l'écart entre Montréal et les autres régions domine très largement l'effet de la taille, ce qui est la leçon centrale de ce chapitre pour l'évaluateur appelé à travailler hors des deux grandes régions. | |
| 79 | + | |
| 80 | +\begin{figure}[htbp]\centering | |
| 81 | +\includegraphics[width=\linewidth]{ch33/ch33-fig-taux-taille.pdf} | |
| 82 | +\caption{Taux global selon le nombre de logements (échelle logarithmique) pour les quarante ventes du cas~3 (Montréal), les 17 immeubles montréalais et les 31 immeubles des cinq autres régions du cas~4. La droite est la régression linéaire du cas~3 ; les courbes tiretées sont la régression semi-logarithmique du cas~4 pour un immeuble d'état moyen de cinquante ans à Montréal et à Gatineau. L'effet de la taille est faible devant l'effet de la région.} | |
| 83 | +\label{fig:33:taux-taille} | |
| 84 | +\figsource{\synth{script \texttt{analysis/python/figures/ch33\_figures.py}, graine 20261031.}} | |
| 85 | +\end{figure} | |
| 86 | + | |
| 87 | +\begin{table}[htbp]\centering | |
| 88 | +\caption{Effet de la taille sur le taux global dans les deux jeux synthétiques (données synthétiques).}\label{tab:33:effet-taille} | |
| 89 | +\small\begin{tabular}{@{}L{6.2cm}S[table-format=-2.2]L{4.6cm}@{}} | |
| 90 | +\toprule | |
| 91 | +Mesure & {Valeur} & Lecture \\ | |
| 92 | +\midrule | |
| 93 | +Cas 3 : pente de $R$ par logement supplémentaire (pb), 6 à 30 logements, $n = 40$ & -2.27 & régression linéaire sur l'état et la taille \\ | |
| 94 | +Cas 3 : écart prédit de 12 à 36 logements (pb) & -54.6 & extrapolation hors de la tranche observée \\ | |
| 95 | +Cas 4 : élasticité de $R$ au nombre de logements ($\hat\beta_n$) & -0.032 & erreur-type HC1 0,012 ; $n = 48$ \\ | |
| 96 | +Cas 4 : effet d'un doublement de la taille sur $R$ (\%) & -2.16 & $2^{\hat\beta_n} - 1$ \\ | |
| 97 | +Cas 4 : écart prédit de 12 à 36 logements (pb), Montréal, état 3 & -15.7 & à partir de la constante \pct{4.60} \\ | |
| 98 | +\midrule | |
| 99 | +Cas 4 : taux médian, 6 à 8 logements ($n = 20$) (\%) & 5.73 & valeur par logement 152~941~\$ \\ | |
| 100 | +Cas 4 : taux médian, 12 à 16 logements ($n = 15$) (\%) & 5.27 & 175~307~\$ \\ | |
| 101 | +Cas 4 : taux médian, 24 logements ($n = 3$) (\%) & 5.05 & 183~403~\$ \\ | |
| 102 | +Cas 4 : taux médian, 36 à 48 logements ($n = 9$) (\%) & 5.57 & 164~051~\$ ; grands immeubles surtout hors de Montréal \\ | |
| 103 | +Cas 4 : 72 logements ($n = 1$, Québec, zone inondable) (\%) & 6.14 & 100~403~\$ \\ | |
| 104 | +\bottomrule | |
| 105 | +\end{tabular} | |
| 106 | +\tabsource{\synth{\texttt{traite/cas3.py} (\texttt{taux\_extraits}), \texttt{traite/cas4.py} (\texttt{effets\_regionaux}) ; script \texttt{ch33\_six\_logements.py}.}} | |
| 107 | +\end{table} | |
| 108 | + | |
| 109 | +Le bas du \cref{tab:33:effet-taille} illustre un piège classique. Les taux médians par classe de taille dans le cas~4 ne décroissent pas régulièrement avec la taille : les immeubles de 36 à 48 logements ont un taux médian plus élevé que ceux de 24, et l'unique immeuble de 72 logements a le taux le plus élevé de tous. La raison n'est pas que les grands immeubles se vendent plus cher en rendement, mais que, dans ce portefeuille, les grands immeubles sont surtout situés à Québec, à Trois-Rivières et à Sherbrooke, où les taux sont plus élevés, et que celui de 72 logements est en zone inondable. L'effet de taille brut est confondu avec l'effet de région ; seule la régression, qui tient les deux séparés, restitue le signe attendu. L'évaluateur qui compare des taux médians par tranche de taille sans contrôler la localisation commet exactement cette erreur. | |
| 110 | + | |
| 111 | +\section{Typologie des immeubles}\label{sec:33:typologie} | |
| 112 | + | |
| 113 | +\subsection{Quatre types opérants} | |
| 114 | + | |
| 115 | +La pratique québécoise distingue, sans que le vocabulaire soit normalisé, quatre grands types d'immeubles de six logements et plus. L'\emph{immeuble sans ascenseur} (\emph{walk-up}) compte deux à quatre étages, de six à une trentaine de logements desservis par des escaliers, souvent extérieurs dans les quartiers anciens de Montréal ; c'est le type dominant du parc d'avant 1975 et celui du cas~3. La \emph{conciergerie} désigne, dans l'usage québécois, l'immeuble d'appartements de taille moyenne, typiquement de vingt à une centaine de logements, construit des années~1950 aux années~1980, de trois à six étages, parfois avec ascenseur, doté d'un logement de concierge et d'espaces communs (buanderie, stationnement, rangement) ; son nom vient de la présence d'un concierge résident, dont le salaire est un poste de dépenses propre à ce type, que le barème indicatif de la SCHL pour les immeubles locatifs du Québec chiffrait déjà à \dollars{300} par logement pour les immeubles de douze logements et plus, contre \dollars{125} pour les immeubles de cinq ou six logements \parencite{schlfraisexploitation2015}. La \emph{tour} d'habitation compte cinq étages et plus, des ascenseurs, souvent un stationnement intérieur et des services ; elle relève presque toujours du marché institutionnel et c'est à elle que s'appliquent les fourchettes « High Rise » des courtiers. La \emph{construction neuve}, enfin, forme un type à part quel que soit son gabarit, parce que ses loyers sont fixés librement et que, pendant les cinq années qui suivent la date à laquelle l'immeuble est prêt pour l'usage auquel il est destiné, le locataire ne peut demander la fixation du loyer si le bail le prévoit et indique le loyer maximal \parencite[art.~1955]{ccq} ; ses loyers sont au marché, son inoccupation est celle de la mise en location, et son coût de construction est connu. | |
| 116 | + | |
| 117 | +\begin{table}[htbp]\centering | |
| 118 | +\caption{Typologie des immeubles de six logements et plus et incidences sur l'analyse.}\label{tab:33:typologie} | |
| 119 | +\footnotesize\setlength{\tabcolsep}{3.5pt}\begin{tabular}{@{}L{2.2cm}L{2.6cm}L{3.9cm}L{3.9cm}@{}} | |
| 120 | +\toprule | |
| 121 | +Type & Gabarit et époque & Revenus et dépenses caractéristiques & Méthodes et repères \\ | |
| 122 | +\midrule | |
| 123 | +Sans ascenseur (\emph{walk-up}) & 2-4 étages, 6-30 log., surtout avant 1975 ; escaliers extérieurs à Montréal & Loyers souvent sous le marché (baux anciens) ; chauffage à la charge des locataires fréquent ; pas de salaire de concierge ; réserve de remplacement modeste & Revenu dominant ; comparaison par logement riche (nombreuses ventes) ; extraction locale des taux ; dossier du \cref{ch:47} \\ | |
| 124 | +Conciergerie & 3-6 étages, 20-100 log., années 1950-1980, parfois ascenseur, concierge résident, stationnement et buanderie & Salaires et logement du concierge ; chauffage central au gaz ou à l'électricité souvent inclus ; ascenseur et stationnement à entretenir ; autres revenus (buanderie, stationnement) & Revenu dominant ; comparaison par logement possible mais ventes moins nombreuses ; fourchettes « Low Rise » des courtiers comme repère \\ | |
| 125 | +Tour & 5 étages et plus, 50-500 log., ascenseurs, stationnement intérieur, services & Dépenses de mécanique et d'ascenseurs élevées ; personnel ; loyers plus élevés (SCHL : 100 logements et plus, île de Montréal, 2~ch. \dollars{1966}) ; inoccupation plus forte (\pct{5.1}) & Revenu (capitalisation et DCF) ; marché institutionnel, fourchettes « High Rise » ; coût utile pour l'assurance \\ | |
| 126 | +Construction neuve & Tout gabarit ; prêt à l'usage depuis moins de 5 ans & Loyers au marché (SCHL : 2015 ou après, île, tous logements \dollars{1882}) ; inoccupation de mise en location (\pct{5.6}) ; fixation exclue 5 ans si le bail le prévoit (art.~1955 C.c.Q.) ; dépenses encore faibles & Revenu et coût (coût neuf connu ; IPCB) ; fourchette « neuf » des courtiers ; attention au revenu stabilisé \\ | |
| 127 | +\bottomrule | |
| 128 | +\end{tabular} | |
| 129 | +\tabsource{compilation de l'auteur ; chiffres SCHL : \textcite{schlrmltables2025}, octobre 2025 ; art.~1955 : \textcite{ccq}.} | |
| 130 | +\end{table} | |
| 131 | + | |
| 132 | +\subsection{Taille et année de construction dans les données de la SCHL} | |
| 133 | + | |
| 134 | +Les tableaux de la SCHL par taille d'immeuble et par année de construction donnent à cette typologie un contenu chiffré, au moins pour l'île de Montréal, où l'échantillon est assez grand pour que la plupart des cellules soient publiées. Le \cref{tab:33:schl-taille} et la \cref{fig:33:schl} présentent les résultats d'octobre 2025. Trois régularités en ressortent. D'abord, les loyers des immeubles de 6 à 49 logements sont les plus bas du parc : \dollars{1162} en moyenne pour tous les logements des immeubles de 6 à 19 logements et \dollars{1122} pour ceux de 20 à 49, contre \dollars{1288} pour les immeubles de 3 à 5 logements, \dollars{1226} pour ceux de 50 à 99 et \dollars{1665} pour ceux de 100 logements et plus. Ce profil en U traduit la composition du parc : les petits plex sont souvent plus spacieux et mieux situés, les grandes tours sont plus récentes et mieux équipées, tandis que les immeubles sans ascenseur et les conciergeries des années 1950 à 1975 concentrent les logements modestes et les baux anciens. Ensuite, l'inoccupation croît avec la taille : \pct{2.2} pour les immeubles de 6 à 19 logements, \pct{3.9} pour ceux de 20 à 49, \pct{3.8} pour ceux de 50 à 99 et \pct{5.1} pour ceux de 100 logements et plus, parce que la rotation y est plus forte (\pct{8.5}, \pct{9.6} et \pct{12.4} respectivement pour les trois dernières tranches) et que les livraisons récentes, concentrées dans les grands immeubles, se louent plus lentement. Enfin, l'année de construction sépare nettement le parc d'avant 1990, dont les loyers moyens vont de \dollars{1050} (1940 à 1959) à \dollars{1262} (1975 à 1989), du parc de 2015 ou après, loué \dollars{1882} en moyenne avec une inoccupation de \pct{5.6}. Les mêmes tableaux pour Gatineau et Sherbrooke, moins fournis, montrent des profils analogues (immeubles de 6 à 19 logements : inoccupation de \pct{3.6} à Gatineau et de \pct{1.8} à Sherbrooke en octobre 2025) \parencite{schlrmltables2025}. | |
| 135 | + | |
| 136 | +\begin{table}[htbp]\centering | |
| 137 | +\caption{Île de Montréal, octobre 2025 : loyer moyen, taux d'inoccupation et taux de rotation des appartements d'initiative privée selon la taille de l'immeuble et l'année de construction.}\label{tab:33:schl-taille} | |
| 138 | +\small\begin{tabular}{@{}L{4.2cm}S[table-format=4.0]S[table-format=4.0]S[table-format=1.1]S[table-format=2.1]@{}} | |
| 139 | +\toprule | |
| 140 | +Catégorie & {Loyer, tous (\$)} & {Loyer, 2 ch. (\$)} & {Inoccupation (\%)} & {Rotation (\%)} \\ | |
| 141 | +\midrule | |
| 142 | +\multicolumn{5}{@{}l}{\emph{Taille de l'immeuble}} \\ | |
| 143 | +3 à 5 logements & 1288 & 1350 & 2.3 & {n. d.} \\ | |
| 144 | +6 à 19 logements & 1162 & 1177 & 2.2 & 8.5 \\ | |
| 145 | +20 à 49 logements & 1122 & 1298 & 3.9 & 9.6 \\ | |
| 146 | +50 à 99 logements & 1226 & 1443 & 3.8 & 12.4 \\ | |
| 147 | +100 logements et plus & 1665 & 1966 & 5.1 & 12.4 \\ | |
| 148 | +\midrule | |
| 149 | +\multicolumn{5}{@{}l}{\emph{Année de construction}} \\ | |
| 150 | +Avant 1940 & 1238 & 1270 & 2.2 & 9.3 \\ | |
| 151 | +1940 à 1959 & 1050 & 1128 & 2.6 & 7.1 \\ | |
| 152 | +1960 à 1974 & 1186 & 1310 & 3.3 & 9.9 \\ | |
| 153 | +1975 à 1989 & 1262 & 1338 & 2.8 & 8.0 \\ | |
| 154 | +1990 à 2004 & 1224 & 1160 & {n. d.} & {n. d.} \\ | |
| 155 | +2005 à 2014 & 1373 & 1362 & {n. d.} & {n. d.} \\ | |
| 156 | +2015 ou après & 1882 & 1971 & 5.6 & 13.7 \\ | |
| 157 | +\midrule | |
| 158 | +Tous les immeubles & 1283 & 1361 & 3.1 & 9.3 \\ | |
| 159 | +\bottomrule | |
| 160 | +\end{tabular} | |
| 161 | +\tabsource{SCHL, Enquête sur les logements locatifs, octobre 2025, tableaux 1.2.1, 1.2.2, 1.2.3, 1.3.1, 1.3.2 et 1.3.4 du classeur de la RMR de Montréal, bloc « Île de Montréal (zones 1-18) » \parencite{schlrmltables2025} ; « n. d. » : donnée non publiée par la SCHL (fiabilité insuffisante) ; lecture par \texttt{ch33\_six\_logements.py}.} | |
| 162 | +\end{table} | |
| 163 | + | |
| 164 | +\begin{figure}[htbp]\centering | |
| 165 | +\includegraphics[width=\linewidth]{ch33/ch33-fig-schl-typologie.pdf} | |
| 166 | +\caption{Loyer moyen (tous les logements et deux chambres) et taux d'inoccupation des appartements locatifs de l'île de Montréal en octobre 2025, selon la taille de l'immeuble (haut) et l'année de construction (bas). Les immeubles de 6 à 49 logements, cœur du marché privé, ont les loyers les plus bas et l'inoccupation la plus faible ; les grands immeubles et le parc récent ont les loyers et l'inoccupation les plus élevés.} | |
| 167 | +\label{fig:33:schl} | |
| 168 | +\figsource{SCHL, Enquête sur les logements locatifs, octobre 2025 \parencite{schlrmltables2025} ; graphique de l'auteur (script \texttt{analysis/python/figures/ch33\_figures.py}).} | |
| 169 | +\end{figure} | |
| 170 | + | |
| 171 | +Pour l'évaluateur, ces régularités ont deux usages. Elles fournissent d'abord les repères de marché propres au type de l'immeuble évalué : un loyer de marché, une inoccupation de référence et une rotation attendue qui ne sont pas ceux de la région dans son ensemble, mais ceux de la tranche de taille et de l'époque de construction du sujet ; le douze logements de 1962 du cas~3 se compare aux immeubles de 6 à 19 logements construits de 1960 à 1974, non à la moyenne de la région. Elles éclairent ensuite la lecture des taux : un immeuble récent de cent logements, loué au marché avec une inoccupation de \pct{5} et une rotation de \pct{12}, a un revenu plus volatil mais sans potentiel de rattrapage, tandis qu'un immeuble sans ascenseur de 1960 a un revenu stable, une inoccupation faible et un potentiel de croissance par rotation ; à taux égal, ces deux immeubles ne portent pas les mêmes anticipations, et l'évaluateur doit s'assurer que les comparables partagent le profil du sujet. Le côté des coûts confirme la séparation des types : l'indice des prix de la construction de bâtiments de Statistique Canada pour Montréal a progressé de \pct{9.2} sur un an au troisième trimestre de 2026 pour les immeubles d'appartements de moins de cinq étages et de \pct{7.9} pour les tours de cinq étages et plus \parencite{statcanIPCB}, ce qui a son importance lorsque la méthode du coût intervient (\cref{sec:33:integration}). | |
added
references/lib-ch13.bib
+11 −0
@@ -0,0 +1,11 @@ | ||
| 1 | +% Nouvelles références du chapitre 13 — aucune. | |
| 2 | +% Toutes les clés citées dans manuscript/chapters/ch13.tex (59) existent déjà dans references/library.bib | |
| 3 | +% (lois : ccq, lfm, ldmi, reglrole, reglpropmed, reglPubliciteFonciere, loiBureauxPublicite, reglCourtageDeontologie, | |
| 4 | +% reglCriteresFixation, decret1455_2025, loi65_2024, deontOEAQ, tenuedossiersoeaq, oeaqNormes ; sources de données : | |
| 5 | +% registreFoncierUtilisation, registreFoncierTarifs2026, dqroles, dqrepertoire, mtlunites, mtlpermis, vqpermis, mefq2026, | |
| 6 | +% mefqpartie2, schlLocatif2025, schlrmltables2025, statcanIPCB, statcanipcb0276, statcanipln, statcanipc, statcanmiseschantier, | |
| 7 | +% statcanpoprmr, statcanrec2021tenure, bdcvalet, bdc20261028, talIndices2026, talFormulaireRN2026, talResumesDecisions, | |
| 8 | +% apciqt32026, apciqconditions, jlr202608, jlr202609, teranet202609, altus2026, altuscostinsights2026, marshallswift2025, | |
| 9 | +% rsmeans2025, ccqSalaires, oaciqFormulaireDV, oaciqContexteDV, iaaomass2025 ; littérature : eurostat2013, silverstein2014, | |
| 10 | +% caseShiller1987, baileyMuthNourse1963, lentzWang1998, kholodilin2024, krauseLipscomb2016, gloudemans1999, appraisal2026). | |
| 11 | +% Vérifications suggérées pour l'orchestrateur (clés existantes, non modifiées ici) : voir notes-A/B/C/E « Corrections à library.bib ». | |
added
references/lib-ch15.bib
+68 −0
@@ -0,0 +1,68 @@ | ||
| 1 | +% Nouvelles références du chapitre 15 — vérifiées le 2026-10-31 (métadonnées Crossref par résolution DOI) ; à fusionner dans library.bib par l'orchestrateur. | |
| 2 | +% NON citées dans ch15.tex (règle : citer uniquement des clés déjà présentes dans library.bib) ; le texte les nomme en toutes lettres | |
| 3 | +% (Chow 1960, Ward 1963, Rousseeuw 1987, Hubert et Arabie 1985, Little 1961). MacQueen (1967, k-moyennes) est nommé dans le texte mais n'a | |
| 4 | +% pas pu être vérifié par script (Project Euclid inaccessible) : voir verification/chapters/ch15-claims.csv, CLM-15-13. | |
| 5 | + | |
| 6 | +@article{chow1960, | |
| 7 | + author = {Chow, Gregory C.}, | |
| 8 | + title = {Tests of Equality Between Sets of Coefficients in Two Linear Regressions}, | |
| 9 | + journaltitle = {Econometrica}, | |
| 10 | + year = {1960}, | |
| 11 | + volume = {28}, | |
| 12 | + number = {3}, | |
| 13 | + pages = {591--605}, | |
| 14 | + doi = {10.2307/1910133}, | |
| 15 | + urldate = {2026-10-31}, | |
| 16 | + note = {Test de stabilité des coefficients (\cref{eq:15:chow}) ; vérifié par résolution DOI (Crossref) le 2026-10-31} | |
| 17 | +} | |
| 18 | + | |
| 19 | +@article{ward1963, | |
| 20 | + author = {Ward, Joe H.}, | |
| 21 | + title = {Hierarchical Grouping to Optimize an Objective Function}, | |
| 22 | + journaltitle = {Journal of the American Statistical Association}, | |
| 23 | + year = {1963}, | |
| 24 | + volume = {58}, | |
| 25 | + number = {301}, | |
| 26 | + pages = {236--244}, | |
| 27 | + doi = {10.1080/01621459.1963.10500845}, | |
| 28 | + urldate = {2026-10-31}, | |
| 29 | + note = {Critère de Ward (\cref{eq:15:ward}) ; vérifié Crossref le 2026-10-31} | |
| 30 | +} | |
| 31 | + | |
| 32 | +@article{rousseeuw1987, | |
| 33 | + author = {Rousseeuw, Peter J.}, | |
| 34 | + title = {Silhouettes: A Graphical Aid to the Interpretation and Validation of Cluster Analysis}, | |
| 35 | + journaltitle = {Journal of Computational and Applied Mathematics}, | |
| 36 | + year = {1987}, | |
| 37 | + volume = {20}, | |
| 38 | + pages = {53--65}, | |
| 39 | + doi = {10.1016/0377-0427(87)90125-7}, | |
| 40 | + urldate = {2026-10-31}, | |
| 41 | + note = {Silhouette (\cref{eq:15:silhouette}) ; vérifié par résolution DOI (Crossref) le 2026-10-31} | |
| 42 | +} | |
| 43 | + | |
| 44 | +@article{hubertArabie1985, | |
| 45 | + author = {Hubert, Lawrence and Arabie, Phipps}, | |
| 46 | + title = {Comparing Partitions}, | |
| 47 | + journaltitle = {Journal of Classification}, | |
| 48 | + year = {1985}, | |
| 49 | + volume = {2}, | |
| 50 | + number = {1}, | |
| 51 | + pages = {193--218}, | |
| 52 | + doi = {10.1007/BF01908075}, | |
| 53 | + urldate = {2026-10-31}, | |
| 54 | + note = {Indice de Rand ajusté utilisé pour comparer segments et secteurs ; vérifié Crossref le 2026-10-31} | |
| 55 | +} | |
| 56 | + | |
| 57 | +@article{little1961, | |
| 58 | + author = {Little, John D. C.}, | |
| 59 | + title = {A Proof for the Queuing Formula: $L = \lambda W$}, | |
| 60 | + journaltitle = {Operations Research}, | |
| 61 | + year = {1961}, | |
| 62 | + volume = {9}, | |
| 63 | + number = {3}, | |
| 64 | + pages = {383--387}, | |
| 65 | + doi = {10.1287/opre.9.3.383}, | |
| 66 | + urldate = {2026-10-31}, | |
| 67 | + note = {Relation stock = flux × durée appliquée à l'inventaire (\cref{eq:15:little}) ; vérifié Crossref le 2026-10-31} | |
| 68 | +} | |
added
references/lib-ch23.bib
+48 −0
@@ -0,0 +1,48 @@ | ||
| 1 | +% Nouvelles références du chapitre 23 — toutes consultées le 2026-10-31 (contenu lu) ; à fusionner dans library.bib par l'orchestrateur. | |
| 2 | +% Non citées dans ch23.tex (clés absentes de library.bib) : le texte les désigne en toutes lettres avec la date de consultation. | |
| 3 | + | |
| 4 | +@online{arcTauxTPS2025, | |
| 5 | + author = {{Agence du revenu du Canada}}, | |
| 6 | + title = {Calculatrice de la TPS/TVH (et table des taux de TPS/TVH et de TVP par province)}, | |
| 7 | + year = {2025}, | |
| 8 | + url = {https://www.canada.ca/fr/agence-revenu/services/impot/entreprises/sujets/tps-tvh-entreprises/facturer-percevoir-quel-taux/calculatrice.html}, | |
| 9 | + urldate = {2026-10-31}, | |
| 10 | + note = {Page modifiée le 2025-04-01 ; Québec : TPS 5~\%, TVP (TVQ) 9,975~\%} | |
| 11 | +} | |
| 12 | + | |
| 13 | +@online{ccqResidentiel2025, | |
| 14 | + author = {{Commission de la construction du Québec}}, | |
| 15 | + title = {Secteur résidentiel : nouveaux taux en vigueur dès le 27 juillet 2025}, | |
| 16 | + year = {2025}, | |
| 17 | + url = {https://www.ccq.org/fr-CA/Nouvelles/2025/Nouveaux-taux-residentiel}, | |
| 18 | + urldate = {2026-10-31}, | |
| 19 | + note = {Nouvelle publiée le 18 juillet 2025 ; majoration de 8~\% au 27 juillet 2025 ; majorations suivantes « déterminée[s] en arbitrage »} | |
| 20 | +} | |
| 21 | + | |
| 22 | +@techreport{acqFaitsSaillants2025, | |
| 23 | + author = {{Association de la construction du Québec}}, | |
| 24 | + title = {Négociation 2025-2029 des secteurs institutionnel-commercial et industriel : faits saillants de la convention collective}, | |
| 25 | + institution = {Association de la construction du Québec}, | |
| 26 | + year = {2025}, | |
| 27 | + url = {https://www.acq.org/wp-content/uploads/2025/04/acq-nego-faits-saillants-convention-2025-2029-ver25avril2025.pdf}, | |
| 28 | + urldate = {2026-10-31}, | |
| 29 | + note = {Version du 25 avril 2025, 16 p. ; majorations salariales 8~\% (27 avril 2025), 5~\% (26 avril 2026), 5~\% (25 avril 2027), 4~\% (30 avril 2028) ; protection contre l'inflation au 29 avril 2029 (IPC + 0,5 point, min. 2,5~\%, max. 4~\%). Document patronal, non le texte de la convention} | |
| 30 | +} | |
| 31 | + | |
| 32 | +@online{quebecGuideParcs2026, | |
| 33 | + author = {{Gouvernement du Québec}}, | |
| 34 | + title = {Contribution pour fins de parcs, de terrains de jeux et d'espaces naturels --- Guide de la prise de décision en urbanisme}, | |
| 35 | + year = {2026}, | |
| 36 | + url = {https://www.quebec.ca/habitation-territoire/amenagement-developpement-territoires/amenagement-territoire/guide-prise-decision-urbanisme/financement-maitrise-fonciere/contribution-parcs-terrains-jeux-espaces-naturels}, | |
| 37 | + urldate = {2026-10-31}, | |
| 38 | + note = {Dernière mise à jour le 7 octobre 2026 ; LAU art. 117.1 à 117.16.1 ; plafond de 10~\% de la superficie ou de la valeur du site ; valeur établie à la réception de la demande de permis, par le rôle ou par un évaluateur agréé mandaté par la municipalité ; contestation devant le TAQ} | |
| 39 | +} | |
| 40 | + | |
| 41 | +@online{gcrAccreditation2026, | |
| 42 | + author = {{Garantie de construction résidentielle}}, | |
| 43 | + title = {Accréditation --- Entrepreneur}, | |
| 44 | + year = {2026}, | |
| 45 | + url = {https://www.garantiegcr.com/fr/entrepreneur/accreditation/}, | |
| 46 | + urldate = {2026-10-31}, | |
| 47 | + note = {Frais d'adhésion de 556,48~\$ taxes comprises (non remboursables) ; cautionnement selon la cote qualité et le nombre d'unités (garanties minimales 55~000, 70~000 et 100~000~\$) ; frais d'enregistrement des bâtiments non chiffrés sur la page} | |
| 48 | +} | |
modified
references/library.bib
+110 −0
@@ -4944,6 +4944,70 @@ | ||
| 4944 | 4944 | note = {Ensemble des adresses municipales du Québec avec numéro, suffixe, unité, odonyme, municipalité, code postal, usage principal, dates et coordonnées ; mise à jour mensuelle ; licence CC BY 4.0 ; métadonnées modifiées le 2026-10-15 ; produit en collaboration avec Élections Québec, le MAMH et le MTMD (fiche lue par l'API CKAN le 2026-10-31)} |
| 4945 | 4945 | } |
| 4946 | 4946 | |
| 4947 | +@article{chow1960, | |
| 4948 | + author = {Chow, Gregory C.}, | |
| 4949 | + title = {Tests of Equality Between Sets of Coefficients in Two Linear Regressions}, | |
| 4950 | + journaltitle = {Econometrica}, | |
| 4951 | + year = {1960}, | |
| 4952 | + volume = {28}, | |
| 4953 | + number = {3}, | |
| 4954 | + pages = {591--605}, | |
| 4955 | + doi = {10.2307/1910133}, | |
| 4956 | + urldate = {2026-10-31}, | |
| 4957 | + note = {Test de stabilité des coefficients (\cref{eq:15:chow}) ; vérifié par résolution DOI (Crossref) le 2026-10-31} | |
| 4958 | +} | |
| 4959 | + | |
| 4960 | +@article{ward1963, | |
| 4961 | + author = {Ward, Joe H.}, | |
| 4962 | + title = {Hierarchical Grouping to Optimize an Objective Function}, | |
| 4963 | + journaltitle = {Journal of the American Statistical Association}, | |
| 4964 | + year = {1963}, | |
| 4965 | + volume = {58}, | |
| 4966 | + number = {301}, | |
| 4967 | + pages = {236--244}, | |
| 4968 | + doi = {10.1080/01621459.1963.10500845}, | |
| 4969 | + urldate = {2026-10-31}, | |
| 4970 | + note = {Critère de Ward (\cref{eq:15:ward}) ; vérifié Crossref le 2026-10-31} | |
| 4971 | +} | |
| 4972 | + | |
| 4973 | +@article{rousseeuw1987, | |
| 4974 | + author = {Rousseeuw, Peter J.}, | |
| 4975 | + title = {Silhouettes: A Graphical Aid to the Interpretation and Validation of Cluster Analysis}, | |
| 4976 | + journaltitle = {Journal of Computational and Applied Mathematics}, | |
| 4977 | + year = {1987}, | |
| 4978 | + volume = {20}, | |
| 4979 | + pages = {53--65}, | |
| 4980 | + doi = {10.1016/0377-0427(87)90125-7}, | |
| 4981 | + urldate = {2026-10-31}, | |
| 4982 | + note = {Silhouette (\cref{eq:15:silhouette}) ; vérifié par résolution DOI (Crossref) le 2026-10-31} | |
| 4983 | +} | |
| 4984 | + | |
| 4985 | +@article{hubertArabie1985, | |
| 4986 | + author = {Hubert, Lawrence and Arabie, Phipps}, | |
| 4987 | + title = {Comparing Partitions}, | |
| 4988 | + journaltitle = {Journal of Classification}, | |
| 4989 | + year = {1985}, | |
| 4990 | + volume = {2}, | |
| 4991 | + number = {1}, | |
| 4992 | + pages = {193--218}, | |
| 4993 | + doi = {10.1007/BF01908075}, | |
| 4994 | + urldate = {2026-10-31}, | |
| 4995 | + note = {Indice de Rand ajusté utilisé pour comparer segments et secteurs ; vérifié Crossref le 2026-10-31} | |
| 4996 | +} | |
| 4997 | + | |
| 4998 | +@article{little1961, | |
| 4999 | + author = {Little, John D. C.}, | |
| 5000 | + title = {A Proof for the Queuing Formula: $L = \lambda W$}, | |
| 5001 | + journaltitle = {Operations Research}, | |
| 5002 | + year = {1961}, | |
| 5003 | + volume = {9}, | |
| 5004 | + number = {3}, | |
| 5005 | + pages = {383--387}, | |
| 5006 | + doi = {10.1287/opre.9.3.383}, | |
| 5007 | + urldate = {2026-10-31}, | |
| 5008 | + note = {Relation stock = flux × durée appliquée à l'inventaire (\cref{eq:15:little}) ; vérifié Crossref le 2026-10-31} | |
| 5009 | +} | |
| 5010 | + | |
| 4947 | 5011 | @article{duan1983, |
| 4948 | 5012 | author = {Duan, Naihua}, |
| 4949 | 5013 | title = {Smearing Estimate: A Nonparametric Retransformation Method}, |
@@ -5038,3 +5102,49 @@ | ||
| 5038 | 5102 | urldate = {2026-10-31}, |
| 5039 | 5103 | note = {Page d'accueil consultée le 31 octobre 2026 : l'organisme décerne les titres \emph{Professional Quantity Surveyor} (PQS) et \emph{Construction Estimator Certified} (CEC) ; aucune méthode de mesurage publiée n'a été consultée} |
| 5040 | 5104 | } |
| 5105 | + | |
| 5106 | +@online{arcTauxTPS2025, | |
| 5107 | + author = {{Agence du revenu du Canada}}, | |
| 5108 | + title = {Calculatrice de la TPS/TVH (et table des taux de TPS/TVH et de TVP par province)}, | |
| 5109 | + year = {2025}, | |
| 5110 | + url = {https://www.canada.ca/fr/agence-revenu/services/impot/entreprises/sujets/tps-tvh-entreprises/facturer-percevoir-quel-taux/calculatrice.html}, | |
| 5111 | + urldate = {2026-10-31}, | |
| 5112 | + note = {Page modifiée le 2025-04-01 ; Québec : TPS 5~\%, TVP (TVQ) 9,975~\%} | |
| 5113 | +} | |
| 5114 | + | |
| 5115 | +@online{ccqResidentiel2025, | |
| 5116 | + author = {{Commission de la construction du Québec}}, | |
| 5117 | + title = {Secteur résidentiel : nouveaux taux en vigueur dès le 27 juillet 2025}, | |
| 5118 | + year = {2025}, | |
| 5119 | + url = {https://www.ccq.org/fr-CA/Nouvelles/2025/Nouveaux-taux-residentiel}, | |
| 5120 | + urldate = {2026-10-31}, | |
| 5121 | + note = {Nouvelle publiée le 18 juillet 2025 ; majoration de 8~\% au 27 juillet 2025 ; majorations suivantes « déterminée[s] en arbitrage »} | |
| 5122 | +} | |
| 5123 | + | |
| 5124 | +@techreport{acqFaitsSaillants2025, | |
| 5125 | + author = {{Association de la construction du Québec}}, | |
| 5126 | + title = {Négociation 2025-2029 des secteurs institutionnel-commercial et industriel : faits saillants de la convention collective}, | |
| 5127 | + institution = {Association de la construction du Québec}, | |
| 5128 | + year = {2025}, | |
| 5129 | + url = {https://www.acq.org/wp-content/uploads/2025/04/acq-nego-faits-saillants-convention-2025-2029-ver25avril2025.pdf}, | |
| 5130 | + urldate = {2026-10-31}, | |
| 5131 | + note = {Version du 25 avril 2025, 16 p. ; majorations salariales 8~\% (27 avril 2025), 5~\% (26 avril 2026), 5~\% (25 avril 2027), 4~\% (30 avril 2028) ; protection contre l'inflation au 29 avril 2029 (IPC + 0,5 point, min. 2,5~\%, max. 4~\%). Document patronal, non le texte de la convention} | |
| 5132 | +} | |
| 5133 | + | |
| 5134 | +@online{quebecGuideParcs2026, | |
| 5135 | + author = {{Gouvernement du Québec}}, | |
| 5136 | + title = {Contribution pour fins de parcs, de terrains de jeux et d'espaces naturels --- Guide de la prise de décision en urbanisme}, | |
| 5137 | + year = {2026}, | |
| 5138 | + url = {https://www.quebec.ca/habitation-territoire/amenagement-developpement-territoires/amenagement-territoire/guide-prise-decision-urbanisme/financement-maitrise-fonciere/contribution-parcs-terrains-jeux-espaces-naturels}, | |
| 5139 | + urldate = {2026-10-31}, | |
| 5140 | + note = {Dernière mise à jour le 7 octobre 2026 ; LAU art. 117.1 à 117.16.1 ; plafond de 10~\% de la superficie ou de la valeur du site ; valeur établie à la réception de la demande de permis, par le rôle ou par un évaluateur agréé mandaté par la municipalité ; contestation devant le TAQ} | |
| 5141 | +} | |
| 5142 | + | |
| 5143 | +@online{gcrAccreditation2026, | |
| 5144 | + author = {{Garantie de construction résidentielle}}, | |
| 5145 | + title = {Accréditation --- Entrepreneur}, | |
| 5146 | + year = {2026}, | |
| 5147 | + url = {https://www.garantiegcr.com/fr/entrepreneur/accreditation/}, | |
| 5148 | + urldate = {2026-10-31}, | |
| 5149 | + note = {Frais d'adhésion de 556,48~\$ taxes comprises (non remboursables) ; cautionnement selon la cote qualité et le nombre d'unités (garanties minimales 55~000, 70~000 et 100~000~\$) ; frais d'enregistrement des bâtiments non chiffrés sur la page} | |
| 5150 | +} | |
modified
solutions/ch14.tex
+29 −0
@@ -1 +1,30 @@ | ||
| 1 | 1 | % Solutions du chapitre 14 — Nettoyage, géocodage et qualité des données |
| 2 | +% Chiffres vérifiés par analysis/python/tests/test_ch14.py::test_solutions_exercices et par le script analysis/python/cases/ch14_nettoyage.py | |
| 3 | + | |
| 4 | +\begin{solution}{ex:14:1}{Score robuste et score classique} | |
| 5 | +Les neuf prix unitaires triés sont \num{3080}, \num{3150}, \num{3190}, \num{3240}, \num{3260}, \num{3320}, \num{3370}, \num{3410} et \num{5980} \$/m\textsuperscript{2} ; la médiane est la cinquième valeur, \parmsq{3260}. Les écarts absolus à la médiane sont 180, 110, 70, 20, 0, 60, 110, 150 et \num{2720} ; triés, ils donnent 0, 20, 60, 70, 110, 110, 150, 180, \num{2720}, dont la médiane, l'écart absolu médian, vaut 110. L'échelle robuste est $1{,}4826 \times 110 = 163{,}1$. Le score robuste de la neuvième vente est $(5980 - 3260)/163{,}1 = 16{,}68$ ; celui des huit autres ne dépasse pas $180/163{,}1 = 1{,}10$ en valeur absolue. La moyenne est de \num{3555.6}, l'écart-type (avec $n - 1$) de 915,2, et le score classique de la neuvième vente vaut $(5980 - 3555{,}6)/915{,}2 = 2{,}65$, sous le seuil de 3,5 ; les huit autres ont des scores classiques compris entre $-0{,}52$ et $-0{,}16$. Seule la méthode robuste signale la vente. L'écart vient du masquage : la neuvième vente élève la moyenne de 296 \$/m\textsuperscript{2} et multiplie par plus de cinq l'écart-type, de sorte qu'elle se place elle-même à moins de trois écarts-types ; la médiane et le MAD, dont le point de rupture est de 50 \%, ne bougent pas. | |
| 6 | +\end{solution} | |
| 7 | + | |
| 8 | +\begin{solution}{ex:14:2}{Règles et journal} | |
| 9 | +(a) Règle R4, prix inférieur à \dollars{5000} : exclusion ; journal « R4 ; exclusion ; prix symbolique ; prix\_vente ; 1 ; — ». (b) Règle R5 : la valeur dépasse \msq{450} et $1776/10{,}7639 = 165{,}0$ est comprise entre 40 et \msq{400}, ce qui est cohérent avec quatre chambres ; correction par division ; journal « R5 ; correction ; saisie en pi\textsuperscript{2} ; superficie\_habitable\_m2 ; 1776 ; 165 ». (c) Règle R2, acte antérieur à la promesse : permutation ; journal « R2 ; correction ; dates permutées ; date\_promesse ; 2026-05-02 ; 2026-03-15 » ; la date du prix devient le 15 mars 2026. (d) Règle R3 : prix net $515000 - 15000 = \dollars{500000}$ ; journal « R3 ; correction ; meubles retranchés ; prix\_vente ; 515000 ; 500000 » ; la vraisemblance des \dollars{15000} de meubles mérite d'être notée. (e) Règle R6 : coordonnées invalidées, puis géocodage de repli G1 avec une précision « centre de secteur » inscrite dans une colonne dédiée ; journal R6 (correction, « lat;lon », « 0;0 », vide) puis G1 (imputation, coordonnées de repli). (f) Règle R7 : exclusion de la vente déclarée successorale ; journal « R7 ; exclusion ; transaction non représentative ; type\_transaction ; succession ; — ». Si l'historique de courtage montrait une mise en marché normale, la vente pourrait être réintégrée avec une note, comme l'a discuté le \cref{ch:16}. | |
| 10 | +\end{solution} | |
| 11 | + | |
| 12 | +\begin{solution}{ex:14:3}{Levier, résidu studentisé et distance de Cook} | |
| 13 | +Résidu studentisé interne : $r_i = e_i/(s\sqrt{1 - h_{ii}}) = -0{,}25/(0{,}083 \times \sqrt{0{,}96}) = -0{,}25/0{,}08132 = -3{,}074$. Résidu externe, par la relation $t_i = r_i\sqrt{(n-k-1)/(n-k-r_i^2)}$ : $t_i = -3{,}074 \times \sqrt{583/(584 - 9{,}45)} = -3{,}074 \times \sqrt{583/574{,}55} = -3{,}097$. Distance de Cook : $D_i = r_i^2 h_{ii}/(k(1 - h_{ii})) = 9{,}45 \times 0{,}04/(16 \times 0{,}96) = 0{,}0246$, soit 3,7 fois le seuil $4/n = 0{,}0067$ mais très loin de 1. La vente dépasse de peu le seuil $|t_i| > 3$ : la règle E1 l'exclurait à la première itération. Avant de l'exclure, il faut chercher une explication en dehors du modèle : résidu de $-0{,}25$ en logarithme, soit un prix inférieur d'environ 22 \% à la prédiction, qui peut provenir d'une vente liée non déclarée, d'un état exceptionnel, d'une erreur de saisie non prévue par les règles ou d'une caractéristique omise du modèle ; si aucune n'est trouvée, l'exclusion doit être inscrite au journal avec son résidu, son levier et sa distance de Cook, et la sensibilité du résultat à sa réintégration mesurée. | |
| 14 | +\end{solution} | |
| 15 | + | |
| 16 | +\begin{solution}{ex:14:4}{Contamination et point de rupture} | |
| 17 | +Avec $\varepsilon = 0{,}05$ et $\delta = \ln 0{,}5 = -0{,}6931$, le biais de la moyenne des logarithmes est $\varepsilon\delta = -0{,}0347$, soit un niveau de prix sous-estimé de $\exp(-0{,}0347) - 1 = -3{,}4$ \%. La variance de l'échantillon contaminé vaut $\sigma^2 + \varepsilon(1 - \varepsilon)\delta^2 = 0{,}085^2 + 0{,}05 \times 0{,}95 \times 0{,}6931^2 = 0{,}007225 + 0{,}022821 = 0{,}030046$, d'où un écart-type de 0,173, plus du double de l'écart-type du marché. La médiane n'est pas affectée : le décalage ne touche que 5 \% des observations, toutes repoussées vers le bas, et la valeur centrale de la distribution reste celle des ventes sincères tant que la proportion contaminée est inférieure à 50 \% ; c'est le point de rupture de la médiane. Il faudrait donc plus d'une vente sur deux à la moitié du marché pour déplacer la médiane, alors qu'une seule vente d'ampleur suffisante déplace arbitrairement la moyenne. | |
| 18 | +\end{solution} | |
| 19 | + | |
| 20 | +\begin{solution}{ex:14:5}{Poids d'appariement de Fellegi--Sunter} | |
| 21 | +Poids de concordance : matricule $\log_2(0{,}98/0{,}001) = 9{,}94$ ; année $\log_2(0{,}95/0{,}05) = 4{,}25$ ; secteur $\log_2(0{,}90/0{,}20) = 2{,}17$. Poids de discordance : matricule $\log_2(0{,}02/0{,}999) = -5{,}64$ ; année $\log_2(0{,}05/0{,}95) = -4{,}25$ ; secteur $\log_2(0{,}10/0{,}80) = -3{,}00$. Paire dont les trois champs concordent : $9{,}94 + 4{,}25 + 2{,}17 = 16{,}35$, acceptée. Paire dont le matricule et l'année concordent mais pas le secteur : $9{,}94 + 4{,}25 - 3{,}00 = 11{,}18$, acceptée malgré la discordance du secteur, parce que le matricule est très discriminant ; un secteur mal codé est plus vraisemblable qu'une coïncidence de matricule et d'année. Paire dont le matricule discorde mais dont l'année et le secteur concordent : $-5{,}64 + 4{,}25 + 2{,}17 = 0{,}78$, entre les deux seuils, donc à vérifier manuellement : l'année et le secteur concordent trop souvent par hasard pour compenser la discordance du matricule, mais celle-ci peut être une faute de frappe. | |
| 22 | +\end{solution} | |
| 23 | + | |
| 24 | +\begin{solution}{ex:14:6}{Sensibilité aux seuils} | |
| 25 | +Les résultats proviennent de la fonction \texttt{sensibilite\_seuils} (\cref{tab:14:sensibilite}). Avec un seuil de score robuste de 3 et un seuil de résidu de 2,5, l'étape S1 exclut 11 ventes et l'étape E1 10 ; les six ventes liées non déclarées sont détectées et 7 ventes sincères sont exclues à tort ; l'échantillon final compte 566 ventes, l'écart-type résiduel 0,0796 et la prédiction du sujet \dollars{637527}. Avec 4 et 3, S1 exclut 3 ventes et E1 3 ; les six ventes liées sont encore détectées et aucune vente sincère n'est exclue ; 581 ventes, écart-type 0,0838, prédiction \dollars{637349}. La référence du chapitre (3,5 et 3) donne 579 ventes, deux faux positifs, 0,0837 et \dollars{637017}. Note. Dans un mandat réel, la table de vérité n'existe pas ; le seul guide est le compromis entre la détection, qui ne s'améliore plus au-delà d'un seuil modéré puisque le relais entre scores univariés et diagnostics conditionnels rattrape ce que l'un laisse passer, et les faux positifs, qui croissent vite quand les seuils baissent et qui réduisent artificiellement l'écart-type résiduel, donc l'incertitude rapportée. Je recommanderais un seuil de 3,5 pour le score robuste, dont la distribution par secteur est à queue épaisse même sur un marché sain, un seuil de 3 pour le résidu studentisé externe, qui a une distribution de référence connue et n'écarte qu'une ou deux ventes sincères sur six cents, au plus deux itérations, et l'obligation de documenter une raison extérieure au modèle pour chaque exclusion de l'étape E1 ; la sensibilité aux seuils voisins serait rapportée, et la fourchette de prédiction qui en résulte (ici 0,1 \%) ajoutée à l'incertitude du \cref{ch:20}. | |
| 26 | +\end{solution} | |
| 27 | + | |
| 28 | +\begin{solution}{ex:14:7}{Mécanisme de manque et imputation} | |
| 29 | +Lorsque les terrains manquants sont les vingt plus petits du jeu, le manque dépend de la valeur manquante elle-même : le mécanisme est MNAR. La variante est implantée dans la fonction \texttt{variante\_mnar\_terrain} du script (les vingt plus petits terrains parmi les lignes non altérées autrement sont effacés, les vingt manquants aléatoires d'origine étant restaurés), et ses résultats sont vérifiés par le test du chapitre. Sous ce mécanisme, la suppression par liste conserve 536 ventes et donne $\hat\beta_{\ln T} = 0{,}1007$ (erreur-type 0,0123) et une prédiction du sujet de \dollars{638976} ; l'imputation par la médiane conditionnelle donne 0,0977 et \dollars{636195}, la régression auxiliaire 0,0972 et \dollars{636224}, la méthode de l'indicateur 0,0978 et \dollars{638201}. Par rapport à la référence du jeu propre (0,0937 ; \dollars{637953}) et aux valeurs du \cref{tab:14:imputation} sous MCAR (0,0969 à 0,0945), tous les traitements s'écartent davantage, et c'est la suppression par liste qui s'écarte le plus (+0,6 erreur-type), parce qu'elle tronque le support du terrain par le bas et estime la pente sur une distribution amputée de sa queue inférieure. Les imputations sont biaisées pour une autre raison : elles attribuent aux vingt plus petits terrains une valeur médiane ou prédite très supérieure à la vérité, ce qui introduit une erreur de mesure sur le régresseur pour ces ventes ; l'effet sur la pente reste modeste ici parce que vingt ventes sur 580 pèsent peu, mais il irait croissant avec la proportion de manquants. Le coefficient de l'indicateur de terrain manquant passe de $-0{,}022$ (non significatif) sous MCAR à $-0{,}050$ avec une erreur-type de 0,014, soit un rapport de $-3{,}5$ : les ventes aux terrains manquants se vendent systématiquement moins cher que ce que leur terrain imputé laisse attendre, exactement parce que leur vrai terrain est petit. Ce coefficient est le signal qu'il faut rechercher la cause du manque avant d'imputer. Ni la suppression ni l'imputation par la médiane ne sont sans biais sous MNAR ; dans cette variante la suppression l'est le plus pour la pente, tandis que l'imputation par la médiane biaise les prix prédits des vingt ventes concernées. Une imputation qui modélise le mécanisme, par exemple un quantile bas de la cellule plutôt que sa médiane, ou l'imputation multiple avec un modèle de sélection, serait préférable ; la seule réponse vraiment satisfaisante est de retrouver la donnée à la source. | |
| 30 | +\end{solution} | |
modified
solutions/ch15.tex
+37 −0
@@ -1 +1,38 @@ | ||
| 1 | 1 | % Solutions du chapitre 15 — Études de marché et segmentation |
| 2 | +% Les chiffres sont vérifiés par analysis/python/tests/test_ch15.py (script analysis/python/cases/ch15_segmentation.py) | |
| 3 | + | |
| 4 | +\begin{solution}{ex:15:1}{Mois d'inventaire et taux d'absorption} | |
| 5 | +Les ventes mensuelles moyennes du trimestre sont $569/3 = 189{,}7$. Le nombre de mois d'inventaire vaut $\mathit{MI} = 825 / 189{,}7 = 4{,}35$ mois et le taux d'absorption mensuel $a = 1/\mathit{MI} = 189{,}7/825 = \pct{23.0}$ : un peu moins du quart du stock de Sherbrooke trouve preneur chaque mois. Avec des inscriptions en hausse de \pct{20}, soit $825 \times 1{,}2 = 990$, et des ventes en baisse de \pct{10}, soit $569 \times 0{,}9 = 512{,}1$ par trimestre ou $170{,}7$ par mois, l'inventaire passerait à $990/170{,}7 = 5{,}80$ mois et l'absorption à \pct{17.2}. Le marché resterait dans la bande d'usage « équilibré » (quatre à six mois), mais tout près de son bord supérieur, et surtout il s'y déplacerait rapidement : la lecture qui compte pour l'évaluateur n'est pas la bande, mais la direction et la vitesse du mouvement, qui annoncent une pression à la baisse sur les prix demandés et un allongement des délais. | |
| 6 | +\end{solution} | |
| 7 | + | |
| 8 | +\begin{solution}{ex:15:2}{Délimiter le marché d'un triplex} | |
| 9 | +\emph{Type et détention} : le marché est celui des plex de deux à cinq logements en pleine propriété ; les copropriétés divises et les unifamiliales n'en font pas partie, même si quelques acheteurs hésitent entre un duplex et une maison. \emph{Fourchette de prix et financement} : autour de la médiane des plex du secteur La Cité--Basse-Ville et Limoilou, \dollars{647500} au troisième trimestre de 2026 ; l'acheteur occupant finance avec une mise de fonds réduite et compte les deux loyers dans sa capacité d'emprunt, ce qui lie le marché au niveau des loyers. \emph{Géographie} : les quartiers centraux de la basse ville, Limoilou et ses environs immédiats, où l'acheteur type arbitre entre quelques quartiers de même tissu urbain ; la haute ville et les banlieues relèvent d'autres marchés. \emph{Caractéristiques physiques} : plex d'avant 1960 à logements superposés avec entrées distinctes, par opposition aux immeubles plus récents ou aux plex convertis. \emph{Temps} : douze à dix-huit mois, resserrés si la hausse de \pct{13} du prix médian des plex du secteur sur un an se poursuit. \emph{Droits et contraintes} : deux baux en place dont les loyers et les échéances déterminent ce que l'acheteur occupant pourra habiter et quand ; encadrement des loyers. \emph{Acheteur type} : un ménage propriétaire occupant qui finance son logement par les deux loyers, ou un petit investisseur ; les deux profils coexistent et expliquent la prime que paient les plex par rapport à leur valeur par le revenu (\cref{ch:32}). Sources : étape 2, baromètre APCIQ de la RMR de Québec, découpage par secteur Centris (secteur 2) ; étape 3, communiqué APCIQ pour les inscriptions et délais de la RMR, non disponibles par secteur ; étape 5, Rapport sur le marché locatif de la SCHL, découpage par zone de l'Enquête sur les logements locatifs, qui ne coïncide pas avec le secteur Centris et dont l'appartenance exacte de Limoilou à la zone « Basse-Ville » doit être vérifiée dans la carte des zones. | |
| 10 | +\end{solution} | |
| 11 | + | |
| 12 | +\begin{solution}{ex:15:3}{Stock, flux et inscriptions hors du prix} | |
| 13 | +Ventes mensuelles : $9\,265/3 = 3\,088{,}3$. Délai médian en mois : $40 / 30{,}4375 = 1{,}314$. Si toutes les inscriptions se vendaient en ce délai, la relation de Little donnerait un stock de $3\,088{,}3 \times 1{,}314 = 4\,059$ inscriptions. Le stock observé est de $20\,350$ : l'excédent est de $20\,350 - 4\,059 = 16\,291$ inscriptions, soit \pct{80.1} du stock. Deux explications se combinent. La censure : le délai médian ne porte que sur les propriétés vendues ; celles qui attendent, qui seront retirées ou réinscrites ne sont pas comptées, et la durée de séjour de l'ensemble du stock, mesurée par les 6,6 mois d'inventaire, est cinq fois plus longue. L'hétérogénéité : les propriétés au prix du marché se vendent en six semaines, et le reste du stock est composé de propriétés dont le prix demandé excède ce que les acheteurs paient, ou qui sont atypiques. Un excédent de quatre cinquièmes du stock signale un marché où les vendeurs n'ont pas encore ajusté leurs attentes ; les prix vendus résistent tant que les vendeurs refusent de baisser, puis cèdent. Pour l'ajustement de conditions du marché, cela signifie qu'une vente conclue un an plus tôt ne doit pas être revalorisée au rythme passé, et qu'un ajustement nul ou légèrement négatif est plus défendable qu'un ajustement positif ; cela signifie aussi que la fourchette de valeur doit être élargie, parce que la dispersion des prix conclus croît avec la marge de négociation. | |
| 14 | +\end{solution} | |
| 15 | + | |
| 16 | +\begin{solution}{ex:15:4}{Calcul d'une silhouette} | |
| 17 | +Pour le point $(1, 0)$ du groupe A : distances aux autres membres de A, $d\big((1,0),(0,0)\big) = 1$ et $d\big((1,0),(0,1)\big) = \sqrt{2} = 1{,}414$, d'où $a = (1 + 1{,}414)/2 = 1{,}207$. Distances aux membres de B : $3$, $\sqrt{10} = 3{,}162$ et $4$, d'où $b = (3 + 3{,}162 + 4)/3 = 3{,}387$. Silhouette : $s = (3{,}387 - 1{,}207)/\max(1{,}207 ; 3{,}387) = 0{,}644$. Si le point était affecté à B, ses rôles s'inverseraient : $a' = 3{,}387$, $b' = 1{,}207$ et $s' = (1{,}207 - 3{,}387)/3{,}387 = -0{,}644$, valeur négative qui signale un point mal classé. La silhouette moyenne favorise les partitions en peu de groupes bien séparés parce que $b_i$ est la distance au groupe voisin \emph{le plus proche} : plus il y a de groupes, plus il existe un voisin proche, plus $b_i$ diminue et plus $s_i$ se rapproche de zéro, même si les groupes supplémentaires sont pertinents pour le marché. C'est pourquoi le choix de $k$ par la silhouette doit être tempéré par le sens économique des groupes et confirmé par un test sur la relation prix-attributs. | |
| 18 | +\end{solution} | |
| 19 | + | |
| 20 | +\begin{solution}{ex:15:5}{Test de Chow à partir des sommes des carrés} | |
| 21 | +Avec $n = 600$, $G = 5$ et $k_0 = 12$, le modèle libre a $Gk_0 = 60$ coefficients et $n - Gk_0 = 540$ degrés de liberté résiduels ; sa variance résiduelle est $3{,}7360/540 = 0{,}006919$. \emph{Version pentes} : $q = (G-1)(k_0-1) = 44$ restrictions et | |
| 22 | +\[ | |
| 23 | +F = \frac{(4{,}0245 - 3{,}7360)/44}{3{,}7360/540} = \frac{0{,}006557}{0{,}006919} = 0{,}948 < 1{,}40 , | |
| 24 | +\] | |
| 25 | +l'hypothèse de pentes communes n'est pas rejetée ($p = 0{,}57$). \emph{Version classique} : $q_0 = (G-1)k_0 = 48$ restrictions et | |
| 26 | +\[ | |
| 27 | +F_0 = \frac{(6{,}4024 - 3{,}7360)/48}{3{,}7360/540} = \frac{0{,}05555}{0{,}006919} = 8{,}03 > 1{,}38 , | |
| 28 | +\] | |
| 29 | +l'hypothèse d'une équation entièrement commune est rejetée sans ambiguïté ($p < 10^{-30}$). Conclusion : les cinq secteurs ont des niveaux de prix différents mais la même structure de prix implicites ; une seule équation est acceptable à condition d'inclure des effets de secteur, et les ajustements de superficie, d'âge ou de qualité tirés de l'ensemble de la RMR sont transférables d'un secteur à l'autre, tandis que l'ajustement de localisation est indispensable. Un résultat inverse, rejet des pentes sans rejet des niveaux, signifierait que les secteurs ont en moyenne le même niveau de prix mais rémunèrent différemment les caractéristiques, par exemple le terrain davantage au centre et la surface habitable davantage en banlieue ; les secteurs seraient alors de véritables sous-marchés au sens de la \cref{def:sousmarche}, et il faudrait estimer des prix implicites propres à chacun ou restreindre les comparables au secteur du sujet, même si une vente d'un autre secteur paraît de prix voisin. | |
| 30 | +\end{solution} | |
| 31 | + | |
| 32 | +\begin{solution}{ex:15:6}{Rattrapage des loyers et rotation} | |
| 33 | +Part de l'écart récupérée, $\pi_T = 1 - (1-r)^T$ : pour $r = \pct{15}$, $\pi_5 = 1 - 0{,}85^5 = \pct{55.6}$ et $\pi_{10} = \pct{80.3}$ ; pour $r = \pct{9.4}$, $\pi_5 = \pct{39.0}$ et $\pi_{10} = \pct{62.7}$ ; pour $r = \pct{8.5}$, $\pi_5 = \pct{35.9}$ et $\pi_{10} = \pct{58.9}$. Montant récupéré la première année, $r \times 20\,496$ : \dollars{3074}, \dollars{1927} et \dollars{1742}. L'hypothèse de \pct{15} récupère donc en cinq ans ce que la rotation observée récupère en huit à neuf ans ; dans un modèle de flux actualisés, cet écart de rythme se traduit par plusieurs dizaines de milliers de dollars de valeur présente, ce que le \cref{ch:47} chiffre. Pour les trois pièces et demie : écart $= 1 - 875{,}25/1\,039 = \pct{15.8}$ du loyer de marché. L'écart entre loyers des une chambre inoccupées et occupées de la zone 9 est de \pct{22.9}, soit $(1\,295 - 1\,054)/1\,054$. Les logements du dossier sont donc moins éloignés de leur loyer de marché que la moyenne de la zone ne l'est du loyer des logements vacants, ce qui admet deux lectures : soit les baux de l'immeuble sont moins anciens que la moyenne du parc de la zone, ce que l'état locatif du \cref{ch:47} permet de vérifier, soit le loyer de marché retenu dans le dossier, \dollars{1039} contre \dollars{1295} pour un logement vacant de la zone, est prudent. La seconde lecture est plausible pour un immeuble de 1962 non rénové, dont les logements vacants ne se louent pas au loyer des logements rénovés qui tirent la moyenne des vacants vers le haut ; elle invite néanmoins à documenter le loyer de marché par des annonces récentes d'immeubles comparables plutôt que par la seule moyenne de la zone. | |
| 34 | +\end{solution} | |
| 35 | + | |
| 36 | +\begin{solution}{ex:15:7}{Variables de classification et sous-marchés} | |
| 37 | +La pondération par les coefficients du modèle de référence remplace chaque variable centrée-réduite $z_{ik}$ par la contribution $\hat\beta_k x_{ik}$ au logarithme du prix prédit ; les variables dont le prix implicite est faible, comme le terrain, pèsent alors peu, et celles dont le prix implicite est fort, la superficie, la qualité et surtout les indicatrices de secteur et la distance au centre, dominent la distance entre deux ventes. Dans le jeu synthétique, les contributions de localisation étant discrètes par secteur, la classification retrouve une structure proche des secteurs : la silhouette à $k = 5$ et l'indice de Rand ajusté avec les secteurs augmentent par rapport au \cref{tab:15:sens}, dans une mesure que le lecteur mesurera en exécutant le script modifié. Le test de Chow appliqué à la partition obtenue ne rejette pas l'égalité des pentes, parce que la loi de génération impose des pentes communes quelle que soit la partition. Ce que la pondération change : elle remplace une ressemblance physique par une ressemblance en termes de valeur, ce qui est plus proche de la notion de substitut et évite de regrouper des maisons semblables mais situées dans des marchés différents. Ce qu'elle ne peut pas changer : elle dépend du modèle commun dont elle tire ses poids, de sorte qu'elle suppose résolue la question qu'elle sert à poser ; si les prix implicites différaient réellement entre sous-marchés, les poids communs seraient biaisés et la partition le serait aussi. La classification pondérée est donc un point de départ raisonnable pour une segmentation a priori, non un substitut au test de stabilité ni à la validation hors échantillon. | |
| 38 | +\end{solution} | |
modified
solutions/ch23.tex
+61 −0
@@ -1 +1,62 @@ | ||
| 1 | 1 | % Solutions du chapitre 23 — Coûts directs et indirects |
| 2 | +% Chiffres recalculés par analysis/python/tests/test_ch23.py (classe TestExercices) à partir de traite.finance et ch23_structure_couts.py. | |
| 3 | + | |
| 4 | +\begin{solution}{ex:23:1}{Classer et mesurer} | |
| 5 | +Selon la \cref{def:directs-indirects}, l'excavation (\dollars{12000}), la charpente (\dollars{48000}), l'électricité (\dollars{16000}) et le nettoyage et les conteneurs (\dollars{2600}) sont des coûts directs : ils s'incorporent à l'ouvrage ou sont nécessaires à son édification sur le site ; $D = \dollars{78600}$. Les honoraires du technologue (\dollars{9500}), le permis (\dollars{2800}), l'assurance de chantier (\dollars{3200}) et les intérêts du prêt de construction (\dollars{7400}) sont des coûts indirects ; $I = \dollars{22900}$. Le taux d'indirects vaut $I/D = 22\,900/78\,600 = \pct{29.13}$ des directs, ou $I/(D+I) = 22\,900/101\,500 = \pct{22.56}$ du sous-total. Avec un incitatif de 10 \% de $D + I$, $E = 0{,}10 \times \dollars{101500} = \dollars{10150}$ et $C_N = \dollars{111650}$, soit $D(1+\tau_I)(1+\tau_E) = 78\,600 \times 1{,}2913 \times 1{,}10$. | |
| 6 | + | |
| 7 | +Deux postes sont à la frontière. L'assurance de chantier est souvent souscrite par l'entrepreneur général et incluse dans ses frais généraux de chantier, donc dans les directs ; reclassée, elle ramène $I$ à \dollars{19700} et le taux à $\pct{25.06}$ des directs, sans changer $D + I$ ni $C_N$ sous l'assiette $D + I$. Le nettoyage et les conteneurs, à l'inverse, sont parfois traités comme frais de projet ; reclassés dans les indirects, ils porteraient le taux à $\pct{33.55}$. Le coût neuf est invariant à ces reclassements tant que l'incitatif est assis sur $D + I$ ; il ne l'est pas sous l'assiette « directs seuls », et c'est pourquoi la convention de classement et l'assiette doivent être déclarées ensemble. | |
| 8 | +\end{solution} | |
| 9 | + | |
| 10 | +\begin{solution}{ex:23:2}{Intérêts intérimaires} | |
| 11 | +Avec $L = \dollars{300000}$, $i = 0{,}06$ et $T = 0{,}75$ an : formule continue (\cref{eq:23:interets}), $I_{\text{fin}} = 300\,000 \times 0{,}06 \times 0{,}75 / 2 = \dollars{6750}$ ; formule mensuelle (\cref{eq:23:interets-mensuel}) avec $n = 9$ tirages, $I^{(9)} = 6\,750 \times 10/9 = \dollars{7500}$ ; avec capitalisation mensuelle des intérêts, \texttt{interets\_intermediaires(300000, 0.06, 0.75, "mensuel", capitaliser=True)} donne \dollars{7600.88}. Le produit $i\,T$ implicite d'un forfait de \dollars{6750} est $2 \times 6\,750 / 300\,000 = 0{,}045$, soit exactement $0{,}06 \times 0{,}75$. | |
| 12 | + | |
| 13 | +L'écart entre les variantes tient à la discrétisation : en tirant $L/n$ en début de mois, le solde moyen est $L(n+1)/(2n)$ au lieu de $L/2$, d'où le facteur $(n+1)/n = 1{,}111$ pour neuf mois ; il tombe à $1{,}042$ pour vingt-quatre mois. La capitalisation ajoute l'intérêt sur les intérêts, ici \dollars{100.88} de plus, et elle n'est pertinente que si le prêteur finance une réserve d'intérêts plutôt que d'exiger leur paiement mensuel. Pour un chantier court, la formule continue est une approximation par défaut de l'ordre de 10 \% ; l'échéancier réel des tirages tranche. | |
| 14 | +\end{solution} | |
| 15 | + | |
| 16 | +\begin{solution}{ex:23:3}{Taxes de vente selon le profil de l'acheteur} | |
| 17 | +Prix avant taxes $V = \dollars{520000}$. TPS : $0{,}05 \times 520\,000 = \dollars{26000}$ ; TVQ : $0{,}09975 \times 520\,000 = \dollars{51870}$ ; total brut \dollars{77870}, soit 14,975 \% du prix. | |
| 18 | + | |
| 19 | +\emph{Occupant subséquent.} La valeur dépasse \dollars{450000} : le remboursement fédéral général est nul (guide RC4028) ; elle dépasse \dollars{300000} : le remboursement de la TVQ est nul (Revenu Québec, paramètres partiellement vérifiés). Coût toutes taxes comprises : $520\,000 + 77\,870 = \dollars{597870}$. | |
| 20 | + | |
| 21 | +\emph{Premier acheteur.} Les travaux ont commencé en septembre 2025, donc après le 20 mars 2025, et la valeur ne dépasse pas un million : le remboursement pour acheteurs d'une première habitation couvre la totalité de la TPS, \dollars{26000}. La TVQ reste due. Coût : $520\,000 + 51\,870 = \dollars{571870}$, soit 9,975 \% de taxes nettes. | |
| 22 | + | |
| 23 | +\emph{Investisseur inscrit, activité taxable.} Les deux taxes sont récupérées par crédits de taxe sur les intrants ; coût net \dollars{520000}. Si l'immeuble était destiné à la location résidentielle, activité exonérée, les taxes ne seraient pas récupérables de cette manière et un régime distinct de remboursement pour immeubles locatifs neufs s'appliquerait, que le chapitre n'a pas vérifié. | |
| 24 | + | |
| 25 | +\emph{Habitation de \dollars{400000}.} TPS \dollars{20000} ; remboursement général $36\,\% \times 20\,000 = \dollars{7200}$, plafonné à \dollars{6300} ; la valeur se situant entre 350 001 et 449 999 \$, le remboursement est réduit. Le guide dit qu'il est « réduit » et renvoie au formulaire sans écrire la règle ; en appliquant une réduction linéaire, $6\,300 \times (450\,000 - 400\,000)/100\,000 = \dollars{3150}$. La valeur de \dollars{3150} repose donc sur une interprétation (réduction linéaire) ; les montants de \dollars{6300} à \dollars{350000} et de zéro à \dollars{450000} sont, eux, lus dans le guide. | |
| 26 | +\end{solution} | |
| 27 | + | |
| 28 | +\begin{solution}{ex:23:4}{Extraction de l'incitatif et conversion des marges} | |
| 29 | +Par l'\cref{eq:23:extraction}, $E = 640\,000 - 170\,000 - 410\,000 = \dollars{60000}$. Marge sur le coût total (terrain compris) : $m_c = 60\,000/580\,000 = \pct{10.34}$ ; marge sur le prix : $m_p = 60\,000/640\,000 = \pct{9.375}$. Vérification de l'\cref{eq:23:marges} : $m_c/(1+m_c) = 0{,}10345/1{,}10345 = 0{,}09375$. Si la marge était exprimée sur les seuls coûts de construction, hors terrain, elle vaudrait $60\,000/410\,000 = \pct{14.63}$ : la même somme s'exprime par trois pourcentages, d'où l'obligation de déclarer l'assiette. | |
| 30 | + | |
| 31 | +Rendement implicite du capital (\cref{eq:23:rendement}), avec $T = 10/12$ an, le terrain payé au départ et les coûts tirés uniformément : capital moyen engagé $170\,000 + 410\,000/2 = \dollars{375000}$ ; $\rho = 60\,000/(0{,}8333 \times 375\,000) = \pct{19.2}$ par année. | |
| 32 | + | |
| 33 | +Ce profit est réalisé, non requis : il dépend du prix de vente obtenu à la livraison, qui a pu être supérieur ou inférieur à ce que le promoteur anticipait au lancement, et il incorpore les intérêts sur le terrain que les coûts de \dollars{410000} ne contiennent pas si seul le prêt de construction y figure. L'incitatif requis se mesure sur plusieurs projets, plusieurs promoteurs et une période de marché stable, en corrigeant les coûts de ce qu'ils omettent ; un seul projet n'en est qu'une observation bruitée. | |
| 34 | +\end{solution} | |
| 35 | + | |
| 36 | +\begin{solution}{ex:23:5}{Hausses salariales et indice des coûts} | |
| 37 | +Effet cumulé des deux majorations : $(1{,}08)(1{,}055) - 1 = \pct{13.94}$. Par la \cref{prop:salaires} avec $\lambda = 0{,}40$ : $\Delta D/D = 0{,}40 \times 0{,}1394 = \pct{5.58}$, soit $\Delta D = \dollars{16663}$ sur $D = \dollars{298826.17}$. Si indirects et incitatif suivent en proportion, $\Delta C_N = 16\,663 \times 1{,}2095 \times 1{,}10 = \dollars{22168}$. | |
| 38 | + | |
| 39 | +Indexation de $D$ par la variation annuelle de l'IPCB de la maison individuelle à Montréal (T3 2025 → T3 2026, $116{,}5/107{,}3 - 1 = \pct{8.57}$) : $\Delta D = \dollars{25609}$. Les deux chiffres ne mesurent pas la même chose : la première approche isole l'effet des salaires sur quinze mois (juillet 2025 à avril 2026) pour une part de main-d'œuvre supposée, la seconde mesure la variation du prix facturé pour un bâtiment type sur douze mois, matériaux, équipement, frais généraux et marges compris. L'écart de \dollars{8946} correspond à ce que les matériaux (béton +15,4 \%, acier +13,1 \%, maçonnerie +11,6 \% dans les divisions de l'indice) et les marges ont ajouté ; il est aussi sensible au choix de $\lambda$ : avec $\lambda = 0{,}50$, l'effet salarial monte à 6,97 \% des directs. La comparaison montre qu'une hausse salariale ne suffit pas à expliquer la hausse de l'indice, et qu'une indexation par les seuls salaires sous-estimerait le coût neuf. | |
| 40 | +\end{solution} | |
| 41 | + | |
| 42 | +\begin{solution}{ex:23:6}{Mise de fonds, capitalisation et échéancier} | |
| 43 | +Coût hors financement $C = \dollars{352895.22}$ ; mise de fonds $Q = 0{,}25\,C = \dollars{88223.81}$ ; prêt $L = 0{,}75\,C = \dollars{264671.42}$ ; $T = 1$ an ; $i = 0{,}0619$. | |
| 44 | + | |
| 45 | +\emph{Mise de fonds d'abord} (\cref{eq:23:interets-mise}) : $t_0 = T\,Q/C = 0{,}25$ an, soit trois mois ; $I_{\text{fin}} = L\,i\,(T - t_0)/2 = 264\,671{,}42 \times 0{,}0619 \times 0{,}75/2 = \dollars{6143.69}$. | |
| 46 | + | |
| 47 | +\emph{Prêt couvrant la totalité des coûts sur douze mois} : $352\,895{,}22 \times 0{,}0619 \times 1/2 = \dollars{10922.11}$. \emph{Prêt de 75 \% tiré dès le premier jour sur douze mois} : $264\,671{,}42 \times 0{,}0619/2 = \dollars{8191.58}$. La mise de fonds réduit donc les intérêts de deux manières : elle diminue le montant emprunté (de \dollars{10922} à \dollars{8192}) et elle retarde le début des tirages (de \dollars{8192} à \dollars{6144}), le second effet valant exactement le facteur $(1 - Q/C) = 0{,}75$. | |
| 48 | + | |
| 49 | +\emph{Tirages mensuels et capitalisation} : avec $n = 9$ mois effectifs et capitalisation des intérêts, \texttt{interets\_intermediaires(0.75 C, 0.0619, 1.0, "mensuel", capitaliser=True, mise\_de\_fonds=0.25 C, cout\_total=C)} donne \dollars{6921.07}, soit 12,7 \% de plus que la formule continue (facteur $10/9$ de discrétisation et intérêts composés). | |
| 50 | + | |
| 51 | +\emph{Coût neuf} : en remplaçant le forfait de \dollars{8529.63} par \dollars{6143.69}, les indirects passent à \dollars{60212.74}, le taux à 20,15 \% des directs et $C_N = 298\,826{,}17 \times 1{,}2015 \times 1{,}10 = \dollars{394942.80}$, soit \dollars{2624.53} de moins que le coût neuf du devis. | |
| 52 | + | |
| 53 | +\emph{Profil quelconque.} Pour un solde $B(t)$ quelconque, les intérêts simples valent $I_{\text{fin}} = i \int_0^T B(t)\,\dd t$, c'est-à-dire $i$ fois l'aire sous la courbe du solde ; le tirage uniforme donne un triangle d'aire $LT/2$. Un profil en S, où les déboursés sont lents au début (permis, excavation), rapides au milieu (structure, enveloppe, mécanique) et lents à la fin (finition, retenues), a un solde inférieur à la droite pendant la première moitié et supérieur pendant la seconde ; si la courbe est symétrique autour du milieu du chantier, l'aire est la même et la formule reste exacte. Si les déboursés sont concentrés tôt (gros œuvre coûteux, matériaux payés à la commande), l'aire et les intérêts dépassent $LT/2$ ; s'ils sont concentrés tard (retenues de garantie, finition), ils lui sont inférieurs. Pour un immeuble, l'échéancier mensuel des tirages, qui reconstitue $B(t)$ pas à pas, remplace la formule. | |
| 54 | +\end{solution} | |
| 55 | + | |
| 56 | +\begin{solution}{ex:23:7}{Structure des coûts d'un petit immeuble} | |
| 57 | +Hypothèses inchangées : $D = \dollars{1552717.60}$, indirects hors financement \dollars{280945.83} (supervision \dollars{185544.21}, plans \dollars{52583.57}, permis et études \dollars{23287.01}, assurances \dollars{19531.04}), base hors financement \dollars{1833663.43}, prêt de 75 \% soit \dollars{1375247.57}, mise de fonds d'abord ($t_0 = 0{,}25\,T$). | |
| 58 | + | |
| 59 | +Avec $T = 1{,}5$ an et $i = 0{,}07$ : $t_0 = 4{,}5$ mois, durée effective 13,5 mois, $I_{\text{fin}} = 1\,375\,247{,}57 \times 0{,}07 \times 1{,}125/2 = \dollars{54150.37}$, contre \dollars{31922.93} dans le cas de base (douze mois à 6,19 \%). Indirects : $280\,945{,}83 + 54\,150{,}37 = \dollars{335096.20}$, soit $\pct{21.58}$ des directs (20,15 \% dans le cas de base) ; le financement représente 16,2 \% des indirects. Incitatif : $0{,}10 \times (1\,552\,717{,}60 + 335\,096{,}20) = \dollars{188781.38}$. Coût neuf : $\dollars{2076595.18}$, soit \dollars{24450.18} de plus que le cas de base (1,2 \%), \dollars{173050} par logement et \parmsq{2517} de superficie locative ($\msq{825}$). | |
| 60 | + | |
| 61 | +Aucune prime de garantie GCR n'est comptée parce que le plan de garantie obligatoire ne vise que les maisons unifamiliales, les immeubles de deux à cinq logements et les copropriétés d'au plus quatre parties privatives superposées (règlement B-1.1, r.~8, art.~2) ; un immeuble locatif de douze logements n'y est pas assujetti. Les ratios d'indirects du cas 1 sont une hypothèse fragile pour un immeuble parce que la supervision d'un chantier de douze logements n'est pas proportionnelle à celle d'une maison, parce que la conception d'un bâtiment de plus de deux logements fait intervenir des professionnels dont les honoraires sont fixés autrement, parce que le Code de construction impose à un tel bâtiment des exigences (séparations coupe-feu, issues, accessibilité, mécanique commune) qui changent la structure même des directs, et parce qu'un immeuble locatif n'a pas de frais de mise en marché mais peut avoir des frais de location initiale. Un mandat réel exigerait des soumissions d'entrepreneurs ou un barème multilogement sous licence pour les directs, les honoraires contractuels des professionnels, les tarifs municipaux du permis, le taux et les conditions du prêt de construction offerts au promoteur, et une extraction de l'incitatif sur des immeubles neufs vendus dans le même marché. | |
| 62 | +\end{solution} | |
modified
solutions/ch24.tex
+66 −0
@@ -1 +1,67 @@ | ||
| 1 | 1 | % Solutions du chapitre 24 — Dépréciation et désuétudes |
| 2 | +% Chiffres recalculés par analysis/python/tests/test_ch24.py (classe TestExercices) avec les fonctions de traite.cout. | |
| 3 | + | |
| 4 | +\begin{solution}{ex:24:1}{Âge-vie et vie restante} | |
| 5 | +Par l'\cref{eq:24:age-vie}, $D_{\text{phys}} = \dollars{320000} \times 15/60 = \dollars{80000}$, soit \pct{25} du coût neuf ; la vie économique restante est $60 - 15 = 45$ ans (\cref{eq:24:vie-restante}). | |
| 6 | + | |
| 7 | +\emph{Âge-vie modifiée} (\cref{eq:24:age-vie-modifiee}) : le curable de \dollars{9000} est retiré d'abord, puis le ratio s'applique au reste : $(\dollars{320000} - \dollars{9000}) \times 15/60 = \dollars{77750}$ ; total $\dollars{9000} + \dollars{77750} = \dollars{86750}$, soit \pct{27.11}. L'écart avec la méthode simple, $\dollars{6750} = \dollars{9000} \times (1 - 15/60)$, est la part du curable que le ratio n'aurait comptée qu'au quart : le curable est déduit en entier parce que l'acheteur devra le payer en entier, et le reste du bâtiment n'est déprécié qu'une fois. | |
| 8 | + | |
| 9 | +\emph{Âge effectif de 20 ans} : méthode simple $\dollars{320000} \times 20/60 = \dollars{106666.67}$ (\pct{33.33}) ; modifiée $\dollars{9000} + \dollars{311000} \times 20/60 = \dollars{112666.67}$ (\pct{35.21}). Cinq années d'âge effectif déplacent la dépréciation de \dollars{26667}, soit \pct{8.3} du coût neuf : l'âge effectif est le paramètre le plus sensible de la méthode, ce qui justifie la convention explicite du \cref{ch:11} pour le dériver de l'inspection. | |
| 10 | +\end{solution} | |
| 11 | + | |
| 12 | +\begin{solution}{ex:24:2}{Méthode ventilée} | |
| 13 | +Composantes de courte durée (\cref{eq:24:ventilee}) : toiture $\dollars{9000} \times 12/20 = \dollars{5400}$ ; fenêtres $\dollars{18000} \times 10/30 = \dollars{6000}$ ; chauffe-eau $\dollars{1500} \times 8/12 = \dollars{1000}$ ; sous-total \dollars{12400} pour un coût neuf de \dollars{28500}. | |
| 14 | + | |
| 15 | +Base de longue durée : $\dollars{320000} - \dollars{9000} - \dollars{28500} = \dollars{282500}$ ; dépréciation de longue durée $\dollars{282500} \times 15/60 = \dollars{70625}$. Total ventilé : $\dollars{9000} + \dollars{12400} + \dollars{70625} = \dollars{92025}$, soit \pct{28.76} du coût neuf. | |
| 16 | + | |
| 17 | +Comparaison avec l'âge-vie modifiée de l'exercice précédent (\dollars{86750}) : écart de \dollars{5275}. Vérification par la \cref{prop:ecart-ventilee}, dont le premier terme est déjà dans la modifiée : l'écart entre la ventilée et la modifiée est $\sum_k C_k (r_k - r_S) = 9000(0{,}60 - 0{,}25) + 18000(0{,}3333 - 0{,}25) + 1500(0{,}6667 - 0{,}25) = 3150 + 1500 + 625 = \dollars{5275}$. L'écart est positif parce que les trois composantes sont, en moyenne pondérée, plus avancées dans leur vie utile (ratio moyen $12400/28500 = 0{,}435$) que la structure ($0{,}25$). | |
| 18 | +\end{solution} | |
| 19 | + | |
| 20 | +\begin{solution}{ex:24:3}{Carence et surabondance} | |
| 21 | +\emph{(a) Carence.} Le test de curabilité de l'\cref{eq:24:curabilite} compare le coût de la correction, \dollars{16000}, à la valeur ajoutée, \dollars{12000} : $K > \Delta V$, la carence est \emph{incurable} au sens économique, puisque personne ne dépensera \dollars{16000} pour en récupérer \dollars{12000}. La désuétude à déduire est alors la perte de valeur constatée sur le marché, \dollars{12000}, et non l'excès de coût $\dollars{16000} - \dollars{8394.69} = \dollars{7605.31}$ qui s'appliquerait si la carence était curable. Si les paires avaient indiqué une valeur ajoutée d'au moins \dollars{16000}, la carence aurait été curable et la désuétude de \dollars{7605.31}, comme dans l'exemple intégral. | |
| 22 | + | |
| 23 | +\emph{(b) Surabondance.} Sous la base de reproduction, le coût neuf contient la deuxième cuisine ; la dépréciation physique en a déjà retranché 40 \%, et il reste $\dollars{22000} \times 0{,}60 = \dollars{13200}$ à éliminer, auxquels s'ajoute le coût d'enlèvement de \dollars{3000}, moins une récupération nulle : $D_{\text{fonc}} = \dollars{16200}$. Sous la base de remplacement, la cuisine n'est pas dans le coût neuf (\cref{prop:equivalence}) et seul le coût d'enlèvement subsiste : $D_{\text{fonc}} = \dollars{3000}$. Les deux bases donnent la même contribution du bâtiment, puisque le coût de remplacement est inférieur de \dollars{22000} au coût de reproduction et que la dépréciation physique sur ces \dollars{22000} vaut \dollars{8800} : $-22000 + 8800 + 13200 = 0$. Déduire \dollars{16200} d'un coût de remplacement serait le double comptage de la \cref{sec:24:ordre}. | |
| 24 | +\end{solution} | |
| 25 | + | |
| 26 | +\begin{solution}{ex:24:4}{Désuétudes incurables capitalisées} | |
| 27 | +\emph{(a)} Par l'\cref{eq:24:fonc-loyer}, le multiplicateur mensuel est $M_m = 12 \times 19{,}82 = 237{,}84$ et $D_{\text{fonc}} = 75 \times 237{,}84 = \dollars{17838}$. La part du bâtiment est de 100 \% parce que le défaut est propre au bâtiment : le terrain n'y est pour rien et ne perd rien. | |
| 28 | + | |
| 29 | +\emph{(b)} Par l'\cref{eq:24:ext-rne}, la perte capitalisée est $\dollars{6000}/0{,}045 = \dollars{133333.33}$ ; imputée au bâtiment pour 70 \%, $D_{\text{ext}} = \dollars{93333.33}$, les \dollars{40000} restants étant réputés déjà reflétés dans une valeur de terrain tirée du même voisinage. À \pct{5.50}, la perte capitalisée tombe à \dollars{109090.91} et la part du bâtiment à \dollars{76363.64} : un point de taux déplace la désuétude de \dollars{17000}, ce qui rappelle que la capitalisation d'une perte hérite de toute l'incertitude du taux. La répartition est nécessaire ici parce que la cause est externe : une artère bruyante déprécie aussi le terrain, et un terrain vacant voisin, s'il servait de comparable, se vendrait déjà moins cher. | |
| 30 | +\end{solution} | |
| 31 | + | |
| 32 | +\begin{solution}{ex:24:5}{Extraction de marché sur quatre ventes} | |
| 33 | +Par l'\cref{eq:24:extraction}, $C_B = P - V_L$ et $D = C_N - C_B$ : | |
| 34 | +\begin{center}\small | |
| 35 | +\begin{tabular}{@{}l S[table-format=6.0] S[table-format=6.0] S[table-format=2.2] S[table-format=1.3]@{}} | |
| 36 | +\toprule | |
| 37 | +Vente & {Contribution (\$)} & {Dépréciation (\$)} & {Taux (\%)} & {Taux annuel (\%/an)} \\ | |
| 38 | +\midrule | |
| 39 | +1 (12 ans) & 350000 & 70000 & 16.67 & 1.389 \\ | |
| 40 | +2 (25 ans) & 295000 & 95000 & 24.36 & 0.974 \\ | |
| 41 | +3 (41 ans) & 240000 & 140000 & 36.84 & 0.899 \\ | |
| 42 | +4 (33 ans) & 265000 & 145000 & 35.37 & 1.072 \\ | |
| 43 | +\bottomrule | |
| 44 | +\end{tabular} | |
| 45 | +\end{center} | |
| 46 | +Moyenne des taux annuels : \pct{1.083} par année ; médiane : \pct{1.023}. La vie économique linéaire implicite est $1/0{,}01083 = 92{,}3$ ans. Pour un sujet de 30 ans et un coût neuf de \dollars{400000}, la dépréciation extraite est $30 \times 0{,}01083 \times \dollars{400000} = \dollars{130006}$, soit \pct{32.5}. On note que le taux annuel décroît avec l'âge (1,39 \% à 12 ans, 0,90 \% à 41 ans), signe de la concavité du profil : la moyenne des taux annuels surestime la dépréciation des bâtiments âgés et sous-estime celle des récents, et un ajustement en fonction de l'âge serait préférable avec davantage de ventes. | |
| 47 | + | |
| 48 | +Si les terrains avaient été sous-estimés de \dollars{20000}, chaque contribution du bâtiment serait surestimée d'autant et chaque dépréciation sous-estimée de \dollars{20000} ; en corrigeant, les dépréciations deviennent 90 000, 115 000, 160 000 et \dollars{165000}, le taux annuel moyen \pct{1.303} et la dépréciation du sujet \dollars{156350}, soit \dollars{26344} de plus. Une erreur de \dollars{20000} sur le terrain, environ 8 \% de sa valeur, déplace la dépréciation extraite de 20 % : l'extraction transmet intégralement l'erreur sur le terrain, et c'est pourquoi la qualité de l'estimation du terrain conditionne celle de la dépréciation. | |
| 49 | +\end{solution} | |
| 50 | + | |
| 51 | +\begin{solution}{ex:24:6}{De la courbe hédonique à la dépréciation du bâtiment} | |
| 52 | +\emph{(a)} Par l'\cref{eq:24:profil-hedonique}, $d_{\text{tot}}(a) = 1 - \exp(-0{,}005097\,a + 0{,}00002642\,a^2)$ : \pct{4.72} à 10 ans, \pct{11.49} à 28 ans, \pct{17.20} à 50 ans. Converties au bâtiment par l'\cref{eq:24:conversion} avec $1 - \alpha = 0{,}616$ : \pct{7.66}, \pct{18.65} et \pct{27.93}. | |
| 53 | + | |
| 54 | +\emph{(b)} Le taux marginal du prix total à 28 ans est $-(\hat\beta_1 + 2\hat\beta_2 \times 28) = 0{,}005097 - 0{,}001480 = 0{,}003617$, soit \pct{0.36} par année ; rapporté au bâtiment, $0{,}003617/0{,}616 = \pct{0.59}$ par année, dans la fourchette d'un demi à un pour cent de \textcite{malpezziOzanneThibodeau1987}. | |
| 55 | + | |
| 56 | +\emph{(c)} La dérivée s'annule à $a^* = -\hat\beta_1/(2\hat\beta_2) = 96{,}5$ ans ; au-delà, le polynôme prédit une remontée du prix avec l'âge. Il ne faut pas y lire une appréciation physique : en coupe transversale, l'âge se confond avec le millésime, et les maisons centenaires encore sur le marché sont des survivantes, souvent rénovées ou patrimoniales, situées dans les quartiers centraux (\textcite{coulsonMcmillen2008}) ; en outre, pour les terrains de grande valeur, le prix observé incorpore l'option de redévelopper, qui appartient au terrain et ne dépend pas de l'âge du bâtiment (\textcite{clappSalavei2010}). Le polynôme est une approximation locale valable sur la plage des données, non une loi de vieillissement. | |
| 57 | + | |
| 58 | +\emph{(d)} Il faudrait $1 - \alpha = d_{\text{tot}}(28)/(28/60) = 0{,}1149/0{,}4667 = 0{,}246$, soit $\alpha = 0{,}754$ : le terrain devrait représenter les trois quarts du prix d'une maison neuve pour que l'âge-vie à 60 ans soit compatible avec la courbe hédonique, alors que l'allocation extraite est de 38 \%. Aucune part du terrain plausible ne réconcilie les deux ; c'est la forme de la méthode âge-vie à vie courte, et non l'allocation, qui est en cause. | |
| 59 | +\end{solution} | |
| 60 | + | |
| 61 | +\begin{solution}{ex:24:7}{Double comptage et ordre des déductions} | |
| 62 | +\emph{(a)} La couverture et les fenêtres figurent déjà parmi les composantes de courte durée de la dépréciation ventilée, dépréciées respectivement de \dollars{6130.62} et \dollars{15989.85} au titre de leur âge (\cref{tab:24:composantes}). Les déduire de nouveau comme « désuétude fonctionnelle » compte deux fois la même usure : la vétusté est une dépréciation physique, non un défaut de conception, et aucun défaut fonctionnel propre à ces éléments n'est invoqué. La surestimation est de $\dollars{6130.62} + \dollars{15989.85} = \dollars{22120.47}$. Par ailleurs, additionner une désuétude externe à une dépréciation ventilée déjà supérieure de \dollars{133629} à ce que le marché retranche aggrave un écart dont la ventilée est elle-même la cause (\cref{sec:24:exemple}). | |
| 63 | + | |
| 64 | +\emph{(b)} Appliquée au coût neuf, la désuétude externe de \pct{10} vaut $0{,}10 \times \dollars{397567.33} = \dollars{39756.73}$. Dans l'ordre des conventions, elle s'applique à la base restante $B = \dollars{397567.33} - \dollars{87461.05} - \dollars{7605.31} = \dollars{302500.97}$ et vaut \dollars{30250.10}. L'erreur d'ordre est de \dollars{9506.64}, soit, par la \cref{prop:ordre}, $\theta(D_{\text{phys}} + D_{\text{fonc}}) = 0{,}10 \times (\dollars{87461.05} + \dollars{7605.31})$ : c'est la désuétude externe comptée sur des dollars déjà déduits. | |
| 65 | + | |
| 66 | +\emph{(c)} Dans le marché du cas 1, les bâtiments récents se vendent au-dessus de la somme du terrain et du coût neuf déprécié, et les dépréciations extraites des ventes récentes sont parfois négatives : le marché paie une prime, il ne souffre pas d'une offre excédentaire ni d'une nuisance. Une désuétude externe doit être démontrée par des ventes appariées ou une perte de revenu attribuable à une cause identifiée, puis répartie entre le terrain et le bâtiment ; un sentiment d'« incertitude » n'en est pas une. L'évaluateur aurait dû consigner son constat dans l'analyse de marché et, s'il le jugeait pertinent, dans la réconciliation du \cref{ch:45} et la fourchette de valeur du \cref{ch:20}, en pondérant les méthodes ou en élargissant l'intervalle, non en inventant une déduction. | |
| 67 | +\end{solution} | |
modified
solutions/ch27.tex
+33 −0
@@ -1 +1,34 @@ | ||
| 1 | 1 | % Solutions du chapitre 27 — Revenus potentiels, vacance et pertes |
| 2 | +% Tous les chiffres proviennent de analysis/python/cases/ch27_revenus.py (fonction exercices()), testés dans analysis/python/tests/test_ch27.py. | |
| 3 | + | |
| 4 | +\begin{solution}{ex:27:1}{Revenu brut potentiel et déficit de loyer} | |
| 5 | +Les loyers contractuels totalisent $895 + 910 + 1040 + 1150 + 1225 + 1310 = \dollars{6530}$ par mois et les loyers de marché $1100 + 1100 + 1150 + 1250 + 1300 + 1350 = \dollars{7250}$. Par l'\cref{eq:27:rbp}, $RBP_c = 12 \times 6530 = \dollars{78360}$ et $RBP_m = 12 \times 7250 = \dollars{87000}$. Le déficit de loyer de l'\cref{eq:27:deficit} est $\Delta_L = 87000 - 78360 = \dollars{8640}$, soit $\delta_L = 8640/87000 = \pct{9.93}$ du RBP au marché. Les écarts relatifs par logement, $1 - L_i/M_i$, sont de \pct{18.6}, \pct{17.3}, \pct{9.6}, \pct{8.0}, \pct{5.8} et \pct{3.0} : les deux premiers logements, vraisemblablement occupés par les locataires les plus anciens, portent plus de la moitié du déficit. Pour la capitalisation directe, on retient le RBP contractuel de \dollars{78360} : l'acheteur acquiert le droit du locateur grevé des baux (art.~1937 C.c.Q.) et n'encaissera pas davantage la première année ; le déficit de \dollars{8640} est un potentiel que le marché valorise par le taux ou que les flux actualisés modélisent par la rotation, non un revenu à capitaliser. | |
| 6 | +\end{solution} | |
| 7 | + | |
| 8 | +\begin{solution}{ex:27:2}{Trois conventions de revenu brut effectif} | |
| 9 | +Avec $RBP_c = \dollars{78360}$, $v = \pct{4}$ et $R_{\text{autres}} = \dollars{4800}$, la provision est $0{,}04 \times 78360 = \dollars{3134.40}$. Convention de l'ouvrage (\cref{eq:27:rbe}) : $RBE = 78360 \times 0{,}96 + 4800 = 75225{,}60 + 4800 = \dollars{80025.60}$. Convention « $v$ sur tous les revenus » : $RBE' = (78360 + 4800) \times 0{,}96 = \dollars{79833.60}$, soit \dollars{192} de moins, ce qui est exactement $v \times R_{\text{autres}} = 0{,}04 \times 4800$. Convention intermédiaire (moitié de la provision sur les autres revenus) : $RBE'' = 75225{,}60 + 4800 \times (1 - 0{,}02) = \dollars{79929.60}$. Les écarts sont de \pct{0.24} et \pct{0.12} du RBE : négligeables sur le revenu d'un immeuble dont les autres revenus pèsent six pour cent, mais systématiques, et leur effet sur un taux extrait des comparables est du même ordre que la précision recherchée. La règle qui prime est la symétrie : la convention appliquée au sujet doit être celle qui a servi à reconstituer le revenu des ventes dont on extrait les taux et les multiplicateurs. | |
| 10 | +\end{solution} | |
| 11 | + | |
| 12 | +\begin{solution}{ex:27:3}{Inoccupation frictionnelle à Québec} | |
| 13 | +Par l'\cref{eq:27:frictionnel}, avec $\rho = 0{,}13$ : $v_f = 0{,}13 \times 1/12 = \pct{1.083}$ pour un mois de vacance et $0{,}13 \times 1{,}5/12 = \pct{1.625}$ pour un mois et demi. En ajoutant \pct{0.5} de créances, la provision totale est de \pct{1.58} ou \pct{2.13}, dans les deux cas inférieure au taux d'inoccupation de \pct{2.4} mesuré par la SCHL. La durée qui reproduirait exactement \pct{2.4} par la seule friction est $d = 0{,}024 \times 12 / 0{,}13 = 2{,}2$ mois. L'écart entre les deux mesures tient à leur nature : la vacance frictionnelle est un flux annuel propre à l'immeuble, qui dépend de la durée de relocation ; le taux d'octobre est un état instantané de l'ensemble du parc de la RMR, qui compte aussi les logements structurellement invendus au loyer demandé (en 2025, surtout dans l'offre neuve et chère) et qui, à Québec comme à Montréal, est pris en basse saison, trois mois après le 1\textsuperscript{er} juillet. Un immeuble de quartier à loyers modestes peut donc avoir une vacance économique inférieure au taux régional, à condition que ses créances soient faibles ; la provision de \pct{3} du cas~2 (\pct{2.4} + \pct{0.6}) est prudente par rapport à ce calcul, ce qui est délibéré pour un dossier d'évaluation. | |
| 14 | +\end{solution} | |
| 15 | + | |
| 16 | +\begin{solution}{ex:27:4}{Concession et double comptage} | |
| 17 | +Par l'\cref{eq:27:concession}, le loyer effectif est $L^{\text{eff}} = 1300 \times (12 - 1)/12 = \dollars{1191.67}$ par mois et le revenu annuel effectif $12 \times 1191{,}67 = \dollars{14300}$, soit onze mois de loyer. Le collègue qui inscrit \dollars{14300} dans le RBP et retranche encore $1/12$ obtient $14300 \times 11/12 = \dollars{13108.33}$, soit \dollars{1191.67} de moins que le revenu correct : il a compté la concession deux fois, erreur de \pct{8.3} sur ce logement. Un bail de vingt-quatre mois avec deux mois gratuits donne $1300 \times 22/24 = \dollars{1191.67}$, le même loyer effectif, parce que la proportion de mois gratuits est identique ($2/24 = 1/12$) ; la différence est que la concession est étalée sur deux ans et que le loyer nominal de \dollars{1300} ne sera atteint, à la reconduction, qu'au bout de vingt-quatre mois. Si les comparables ont été analysés sur loyers nominaux, avec les concessions dans la provision, le sujet doit l'être de la même façon : RBP à \dollars{15600} et $v^{\text{concessions}} = 1/12$, ce qui redonne \dollars{14300} ; l'important n'est pas la convention mais sa symétrie. | |
| 18 | +\end{solution} | |
| 19 | + | |
| 20 | +\begin{solution}{ex:27:5}{Le triplex du cas~2} | |
| 21 | +Les loyers mensuels sont de \num{1047}, \num{1188} et \dollars{1251}, total \dollars{3486}, et les loyers de marché estimés de \num{1430}, \num{1430} et \dollars{1251}, total \dollars{4111}. $RBP_c = 12 \times 3486 = \dollars{41832}$ ; $RBP_m = 12 \times 4111 = \dollars{49332}$ ; déficit $\Delta_L = \dollars{7500}$, soit $\delta_L = \pct{15.2}$. La provision de \pct{3} vaut $0{,}03 \times 41832 = \dollars{1254.96}$ et, sans autres revenus, $RBE = 41832 \times 0{,}97 = \dollars{40577.04}$, soit \dollars{13525.68} par logement. Aux loyers de marché, $RBE_m = 49332 \times 0{,}97 = \dollars{47852.04}$. Le taux d'occupation économique de l'\cref{eq:27:occupation-eco} est $\theta = 40577{,}04/49332 = \pct{82.3}$, ou encore $0{,}97 \times (1 - 0{,}152)$. Dans la convention « occupant », le loyer du rez-de-chaussée ($12 \times 1047 = \dollars{12564}$) est compté sans provision et les deux logements loués ($12 \times (1188 + 1251) = \dollars{29268}$) subissent la provision de \pct{3} : $RBE = 12564 + 29268 \times 0{,}97 = \dollars{40953.96}$, soit \dollars{376.92} de plus. Cette convention ne suffit pas, parce que le logement occupé par l'acheteur ne vaut pas son loyer contractuel de \dollars{1047}, inférieur de \pct{26.8} au marché : sa valeur est une valeur d'usage que l'acheteur-occupant compare au coût d'un logement équivalent, et le \cref{ch:32} montre que la comparaison par logement et le multiplicateur pèsent davantage que la capitalisation pour ce type d'immeuble. | |
| 22 | +\end{solution} | |
| 23 | + | |
| 24 | +\begin{solution}{ex:27:6}{Projection d'un petit immeuble sous encadrement} | |
| 25 | +Année~1 : loyers de 900, 950, \num{1000} et \num{1100}, $RBP = 12 \times 3950 = \dollars{47400}$ ; marché \dollars{1200}, $RBP_m = \dollars{57600}$, écart \pct{17.7}. Année~2 : le marché passe à $1200 \times 1{,}035 = \dollars{1242}$ ; le logement à \dollars{900} (rapport $900/1242$ le plus faible) se libère et est reloué à \dollars{1242} ; les autres sont indexés de \pct{3.1} : 979,45, \num{1031} et \num{1134.10} ; $RBP = 12 \times 4386{,}55 = \dollars{52638.60}$ ; $RBP_m = \dollars{59616}$ ; écart \pct{11.7}. Année~3 : marché \num{1285.47} ; le logement à 979,45 se libère et passe à \num{1285.47} ; les autres deviennent \num{1280.50}, \num{1062.96} et \num{1169.26} ; $RBP = \dollars{57578.28}$, $RBP_m = \dollars{61702.56}$, écart \pct{6.7}. Année~4 : marché \num{1330.46} ; le logement à \num{1062.96} se libère ; loyers \num{1320.20}, \num{1325.32}, \num{1330.46} et \num{1205.50} ; $RBP = \dollars{62177.79}$, $RBP_m = \dollars{63862.15}$, écart \pct{2.6}. Avec l'indexation seule, le RBP vaudrait \num{47400}, \num{48869.40}, \num{50384.35} et \dollars{51946.27} : en quatre ans, la rotation d'un logement par an a ajouté \dollars{10231.52} au RBP de l'année~4, soit \pct{19.7}. L'ordre des départs est favorable au locateur parce qu'il libère d'abord le loyer le plus bas, donc le gain de rattrapage le plus élevé ; en réalité, les locataires les plus sous le marché ont le plus à perdre à déménager et partent moins souvent, de sorte que la trajectoire effective se situe entre celle-ci et une trajectoire à départs aléatoires ou inversés. | |
| 26 | +\end{solution} | |
| 27 | + | |
| 28 | +\begin{solution}{ex:27:7}{Provision et valeur} | |
| 29 | +En appelant \texttt{traite.cas3.rne} avec la provision modifiée et en capitalisant au taux médian de \pct{4.415} : à $v = \pct{2.9}$, provision \dollars{4800.66}, $RBE = \dollars{170099.34}$, $\NOI_1 = \dollars{91544.94}$, $V = \dollars{2073497.99}$ ; à $v = \pct{3.9}$ (dossier), $RBE = \dollars{168443.94}$, $\NOI_1 = \dollars{89955.75}$, $V = \dollars{2037502.89}$ ; à $v = \pct{5.9}$, provision \dollars{9766.86}, $RBE = \dollars{165133.14}$, $\NOI_1 = \dollars{86777.38}$, $V = \dollars{1965512.67}$. La hausse d'un point abaisse la valeur de \dollars{35995.11} et celle de deux points de \dollars{71990.22}, exactement le double : la relation est linéaire. L'\cref{eq:27:sensibilite} le prévoit : $\partial V/\partial v = -RBP_c(1-\gamma)/R = -165540 \times 0{,}96 / 0{,}04415 = -\dollars{3599511}$ par unité de $v$, soit $-\dollars{35995}$ par point, le facteur $(1-\gamma) = 0{,}96$ traduisant la gestion imputée à \pct{4} du RBE, qui diminue avec lui. La sensibilité à $v$ est linéaire parce que $v$ entre au numérateur de $V = \NOI_1/R$ par une fonction affine ; celle au taux ne l'est pas parce que $R$ est au dénominateur, d'où la convexité étudiée au \cref{ch:29} : un quart de point de taux déplace la valeur de cinq à six pour cent, un point de provision de \pct{1.8}. | |
| 30 | +\end{solution} | |
| 31 | + | |
| 32 | +\begin{solution}{ex:27:8}{Lire les tableaux de la SCHL pour un immeuble donné} | |
| 33 | +Dans la RMR de Montréal, l'inoccupation du quatrième quartile de loyer (\pct{4.9}) est $4{,}9/1{,}3 = 3{,}8$ fois celle du premier quartile (\pct{1.3}). Sur l'île, le loyer moyen des logements inoccupés dépasse celui des logements occupés de $1573/1275 = 1{,}234$, soit \pct{23.4}, pour l'ensemble des logements, et de $1815/1349 = 1{,}345$, soit \pct{34.5}, pour les deux chambres. Pour un immeuble de 2019 de quarante logements au quartile supérieur, ces tableaux suggèrent trois choses. Le loyer de marché des logements vacants ne doit pas être pris au loyer demandé : la prime de \pct{20} du propriétaire sur les loyers en place est du même ordre que la prime observée des logements inoccupés sur les logements occupés, laquelle mesure précisément les loyers que le marché n'a pas encore acceptés ; le loyer de marché se vérifie par les baux effectivement signés dans l'immeuble et le quartier au cours des derniers mois. La provision $v$ doit partir d'une borne inférieure bien supérieure au taux régional : \pct{3.4} pour les 20 à 49 logements de la RMR, \pct{4.9} pour le quartile supérieur, \pct{5.6} pour les immeubles construits depuis 2015, ce qui situe le segment entre \pct{4} et \pct{6} avant créances et concessions, et la détente prévue par la SCHL pour 2026-2028 pousse dans le même sens. Enfin, la durée de relocation doit être supposée plus longue que le mois des petits immeubles de quartier, et la rotation plus élevée (\pct{9.4} à \pct{12.3} pour les immeubles de 20 à 99 logements), ce qui, par $v_f = \rho d/12$, donne à lui seul deux à trois points de friction si les logements restent vides deux ou trois mois. La justification écrite indiquera la source (SCHL, octobre 2025, tableaux 1.3.1, 1.4, 1.2.1 et 1.1.9), la lettre de qualité des cellules utilisées, le raisonnement par couches et l'intervalle retenu, par exemple \pct{5} à \pct{7}, avec la sensibilité de la valeur correspondante. | |
| 34 | +\end{solution} | |
modified
solutions/ch31.tex
+75 −0
@@ -1 +1,76 @@ | ||
| 1 | 1 | % Solutions du chapitre 31 — Financement, levier, RCD et RPV |
| 2 | +% Tous les chiffres proviennent de analysis/python/cases/ch31_financement.py (fonction exercices()) ; données du cas 3 : SYNTHÉTIQUES. | |
| 3 | + | |
| 4 | +\begin{solution}{ex:31:1}{Deux conventions pour un même taux} | |
| 5 | +(a) Convention canadienne : $i_m = (1 + 0{,}0458/2)^{1/6} - 1 = (1{,}0229)^{1/6} - 1 = \pct{0.378075}$ ; taux effectif $(1{,}0229)^2 - 1 = \pct{4.6324}$. Convention américaine : $i_m = 0{,}0458/12 = \pct{0.381667}$ ; taux effectif $(1 + 0{,}0458/12)^{12} - 1 = \pct{4.6774}$. | |
| 6 | + | |
| 7 | +(b) Paiement $PMT = 850\,000 \times i_m / [1 - (1 + i_m)^{-300}]$ : \dollars{4742.40} (Canada) contre \dollars{4763.26} (États-Unis). Service de la dette annuel : \dollars{56909} contre \dollars{57159}, soit \dollars{250} de plus par année dans la convention américaine ; constantes $f = \pct{6.695}$ et \pct{6.725}. | |
| 8 | + | |
| 9 | +(c) Solde après 60 paiements, formule prospective $M_{60} = M_0\,[(1+i_m)^{300} - (1+i_m)^{60}]/[(1+i_m)^{300} - 1]$ : \dollars{747254} (Canada) contre \dollars{747792} (États-Unis). La composition plus fréquente laisse un solde légèrement plus élevé parce qu'une plus grande part de chaque paiement va aux intérêts. | |
| 10 | + | |
| 11 | +(d) Un tableur américain surestime le service de la dette (\pct{0.44} ici) et sous-estime donc le ratio de couverture $\NOI_1/SD$ du même pourcentage ; sur un prêt dimensionné exactement au seuil, il conclurait que la contrainte n'est pas respectée et réduirait indûment le prêt maximal. | |
| 12 | +\end{solution} | |
| 13 | + | |
| 14 | +\begin{solution}{ex:31:2}{Terme, amortissement et constitution de fonds propres} | |
| 15 | +(a) $i_m = \pct{0.34042}$ ; $PMT = 1\,000\,000 \times 0{,}0034042 / [1 - (1{,}0034042)^{-480}] = \dollars{4232.45}$ ; service de la dette annuel \dollars{50789} (constante \pct{5.0789}). | |
| 16 | + | |
| 17 | +(b) Solde à la fin du terme (60 mois) : \dollars{944971} ; après dix ans : \dollars{877496}. Part du capital remboursée pendant le terme : $1 - 944\,971/1\,000\,000 = \pct{5.50}$ seulement. | |
| 18 | + | |
| 19 | +(c) Première année : intérêts \dollars{40663}, capital \dollars{10127}, soit \pct{80.1} du service de la dette en intérêts. | |
| 20 | + | |
| 21 | +(d) Total des intérêts sur 480 mois : $480 \times 4\,232{,}45 - 1\,000\,000 = \dollars{1031577}$, soit $1{,}03$ fois le capital. Sur 300 mois, le paiement serait de \dollars{5325.46} (service annuel \dollars{63905}, soit \dollars{13116} de plus par année) et le total des intérêts de \dollars{597637}. L'amortissement long réduit le service de la dette de \pct{20.5} et améliore d'autant la couverture, au prix d'intérêts totaux supérieurs de \dollars{433940} et d'une constitution de fonds propres beaucoup plus lente ; c'est l'arbitrage que les prêteurs assurés résolvent en faveur de la couverture. | |
| 22 | +\end{solution} | |
| 23 | + | |
| 24 | +\begin{solution}{ex:31:3}{Prêt maximal et contrainte liante} | |
| 25 | +(a) Constante à \pct{4.58} sur 360 mois : $i_m = \pct{0.378075}$, $f = 12 \times 0{,}00378075/[1 - (1{,}00378075)^{-360}] = \pct{6.1066}$. Prêt maximal par le RPV : $0{,}75 \times 2\,600\,000 = \dollars{1950000}$. Par la couverture : service maximal $120\,000/1{,}25 = \dollars{96000}$, prêt $96\,000/0{,}061066 = \dollars{1572079}$. La couverture lie ; le ratio prêt-valeur effectif est de $1\,572\,079/2\,600\,000 = \pct{60.5}$. Vérification par l'\cref{eq:31:rpv-max} : $R = 120\,000/2\,600\,000 = \pct{4.615}$, et $R/(1{,}25 \times 0{,}061066) = \pct{60.5}$. | |
| 26 | + | |
| 27 | +(b) APH Select : $f = \pct{5.0789}$ à \pct{4.12} sur 480 mois ; service maximal $120\,000/1{,}10 = \dollars{109091}$ ; prêt par la couverture $109\,091/0{,}050789 = \dollars{2147906}$ ; par le RPV $0{,}85 \times 2\,600\,000 = \dollars{2210000}$. La couverture lie encore, de peu ; le prêt est de \dollars{2147906}, soit \pct{82.6} de la valeur. | |
| 28 | + | |
| 29 | +(c) Tranche de RPV $\leq \pct{85}$ : \pct{5.35} ; surprime d'amortissement : trois tranches de cinq ans au-delà de 25 ans, soit \pct{0.75} ; prime totale \pct{6.10}, soit $0{,}061 \times 2\,147\,906 = \dollars{131022}$, à quoi s'ajoutent les droits de demande de \dollars{150} par logement (\dollars{2400}). | |
| 30 | + | |
| 31 | +(d) La mise de fonds passe de $2\,600\,000 - 1\,572\,079 = \dollars{1027921}$ à $2\,600\,000 - 2\,147\,906 = \dollars{452094}$, soit \dollars{575827} de moins. Cette économie achète une prime de \dollars{131022} (généralement capitalisée au prêt, ce qui porte le service de la dette au-dessus de \dollars{109091} et la couverture effective sous $1{,}10$), un service de la dette supérieur de \dollars{13091} par année et les engagements d'abordabilité, d'efficacité énergétique ou d'accessibilité qui donnent les 50 points ; la couverture tombe de $1{,}25$ à $1{,}10$ et le levier, donc le risque, est multiplié par $1/(1 - 0{,}826) = 5{,}7$ au lieu de $2{,}5$. | |
| 32 | +\end{solution} | |
| 33 | + | |
| 34 | +\begin{solution}{ex:31:4}{Levier courant positif, négatif et neutre} | |
| 35 | +(a) $R_E = (R - Mf)/(1 - M)$. Avec $f = \pct{6.0}$ : $M = 0$ : \pct{5.20} ; $M = 0{,}5$ : $(0{,}052 - 0{,}030)/0{,}5 = \pct{4.40}$ ; $M = 0{,}7$ : $(0{,}052 - 0{,}042)/0{,}3 = \pct{3.33}$ ; $M = 0{,}8$ : $(0{,}052 - 0{,}048)/0{,}2 = \pct{2.00}$. Avec $f = \pct{4.5}$ : \pct{5.20}, $(0{,}052 - 0{,}0225)/0{,}5 = \pct{5.90}$, $(0{,}052 - 0{,}0315)/0{,}3 = \pct{6.83}$, $(0{,}052 - 0{,}036)/0{,}2 = \pct{8.00}$. | |
| 36 | + | |
| 37 | +(b) Dans le premier cas la courbe décroît et s'accélère vers le bas ; dans le second elle croît et s'accélère vers le haut. La dérivée $\partial R_E/\partial M = (R - f)/(1-M)^2$ a le signe de $R - f$ ($-0{,}8$ point dans le premier cas, $+0{,}7$ dans le second) et son dénominateur $(1-M)^2$ tend vers zéro : la pente passe de $-0{,}8$ point à $M = 0$ à $-20$ points à $M = 0{,}8$ dans le premier cas. C'est l'amplification du levier. | |
| 38 | + | |
| 39 | +(c) Le levier est neutre si $f = R = \pct{5.2}$ : $R_E = R$ pour tout $M$. | |
| 40 | + | |
| 41 | +(d) Oui. Le levier courant négatif signifie seulement que le revenu de la première année ne couvre pas le coût courant de chaque dollar emprunté, remboursement de capital compris. Le levier sur le rendement total est positif si et seulement si le rendement total de l'actif $y$ (revenu plus croissance de valeur) excède le coût effectif de la dette $k$ (taux effectif, hors remboursement du capital), par la proposition du chapitre. Avec $f = \pct{6.0}$ et une composition semestrielle sur 25 ans, $k$ est de l'ordre de \pct{3.9} ; il suffit que $y > k$, c'est-à-dire que la croissance attendue dépasse environ $-1{,}3$ point, pour que l'emprunt soit rentable à terme, au prix d'un flux courant faible et d'un risque multiplié par $1/(1-M)$. | |
| 42 | +\end{solution} | |
| 43 | + | |
| 44 | +\begin{solution}{ex:31:5}{Mise de fonds minimale, taux admissible et ratio prêt-revenu} | |
| 45 | +(a) $E_{\min} = 0{,}05 \times 500\,000 + 0{,}10 \times 220\,000 = 25\,000 + 22\,000 = \dollars{47000}$, soit \pct{6.53} du prix ; prêt de \dollars{673000} (ratio prêt-valeur \pct{93.5}), assurable puisque le prix est inférieur à \dollars{1500000}. La prime d'assurance s'ajouterait au prêt ; elle n'est pas demandée ici. | |
| 46 | + | |
| 47 | +(b) Taux admissible minimal : $\max(4{,}58 + 2{,}00 ;\ 5{,}25) = \pct{6.58}$. | |
| 48 | + | |
| 49 | +(c) Sur 300 mois, composition semestrielle : paiement au taux contractuel \dollars{3754.86} par mois ; au taux admissible \dollars{4540.60}. Le paiement de qualification excède le paiement réel de \dollars{785.74} par mois, soit \pct{20.9} : c'est la marge de sécurité que le prêteur exige contre une hausse de taux au renouvellement. | |
| 50 | + | |
| 51 | +(d) Un ratio prêt-revenu de $4{,}5$ exige un revenu d'au moins $673\,000/4{,}5 = \dollars{149556}$. | |
| 52 | + | |
| 53 | +(e) La limite prêt-revenu du BSIF est une limite de \emph{portefeuille} : elle plafonne, pour chaque institution, le volume des nouveaux prêts non assurés dont le ratio dépasse $4{,}5$, sans interdire un prêt individuel ; de plus, elle exclut explicitement les prêts assurés, ce qu'est celui-ci. Le ménage est en revanche soumis au taux admissible applicable aux prêts assurés et aux critères de l'assureur. | |
| 54 | +\end{solution} | |
| 55 | + | |
| 56 | +\begin{solution}{ex:31:6}{Renouvellement exact du prêt du cas 3} | |
| 57 | +(a) Solde au terme : $M_{60} = 1\,475\,959 \times [(1{,}0034042)^{480} - (1{,}0034042)^{60}]/[(1{,}0034042)^{480} - 1] = \dollars{1394739}$ ; amortissement résiduel $480 - 60 = 420$ mois. | |
| 58 | + | |
| 59 | +(b) Nouveau taux \pct{5.62} ; $i'_m = (1{,}0281)^{1/6} - 1 = \pct{0.46303}$ ; $PMT' = 1\,394\,739 \times i'_m/[1 - (1 + i'_m)^{-420}] = \dollars{7540.59}$ ; service de la dette \dollars{90487}, en hausse de \dollars{15524} (\pct{20.7}). | |
| 60 | + | |
| 61 | +(c) RCD de l'année 6 : $130\,890/90\,487 = 1{,}447$ ; de l'année 10 : $153\,581/90\,487 = 1{,}697$. Flux après dette de l'année 6 (sans CAPEX) : $130\,890 - 90\,487 = \dollars{40403}$. La couverture reste confortablement au-dessus de $1{,}20$ grâce à la croissance du revenu net pendant le premier terme. | |
| 62 | + | |
| 63 | +(d) Solde à la revente, 60 paiements après le renouvellement : \dollars{1319984}, contre \dollars{1295148} au taux inchangé, parce qu'une plus grande part de chaque paiement va aux intérêts. TRI des fonds propres (mise de fonds \dollars{732606}, flux après dette des années 1 à 5 au service de \dollars{74963}, des années 6 à 10 au service de \dollars{90487}, produit net de revente $3\,113\,338 - 1\,319\,984$) : \pct{10.55}, contre \pct{11.22} sans hausse. | |
| 64 | + | |
| 65 | +(e) En appliquant \pct{5.62} dès l'origine au capital initial sur 480 mois, le service de la dette serait de \dollars{92018} pendant dix ans et le TRI des fonds propres de \pct{9.42}. L'approximation surestime le coût de \dollars{1531} par année après le terme et impute aux cinq premières années une hausse qu'elles n'ont pas subie ; elle sous-estime le TRI de $1{,}13$ point. Le calcul exact porte la hausse sur le solde réduit, pendant cinq ans, face à un revenu qui a crû. | |
| 66 | +\end{solution} | |
| 67 | + | |
| 68 | +\begin{solution}{ex:31:7}{Choisir son levier} | |
| 69 | +(a) À \pct{50} : prêt \dollars{1104283}, mise de fonds \dollars{1104283}, service de la dette \dollars{56086}, RCD $1{,}60$, flux après dette \dollars{33870}, rendement courant \pct{3.07}. À \pct{85} : prêt \dollars{1877281}, mise de fonds \dollars{331285}, service de la dette \dollars{95346}, RCD $0{,}94$, flux après dette $-\dollars{5390}$, rendement courant $-\pct{1.63}$ : dès la première année, le propriétaire doit combler le déficit de sa poche. | |
| 70 | + | |
| 71 | +(b) TRI des fonds propres sur dix ans : \pct{9.49} à \pct{50} et \pct{15.24} à \pct{85}, contre \pct{7.25} sans dette et \pct{11.22} au ratio de \pct{66.8} retenu. | |
| 72 | + | |
| 73 | +(c) Le rendement de l'actif est $y = \pct{7.25}$ (achat à la valeur DCF) et le coût effectif de la dette sur flux annuels agrégés $k = \pct{4.06}$ ; comme $y > k$, la proposition du chapitre garantit $y_E > y$ pour tout ratio prêt-valeur positif, et $y_E$ croît avec le levier parce que l'écart $y - k$ est multiplié par un rapport dette sur fonds propres croissant ($1$ à \pct{50}, $5{,}7$ à \pct{85}). Le levier courant est pourtant négatif ($R = \pct{4.07} < f = \pct{5.08}$) : tout le gain provient de la croissance du revenu et de la plus-value, réalisée à la revente. | |
| 74 | + | |
| 75 | +(d) Multiplicateur de risque $1/(1-M)$ : $2{,}0$ à \pct{50}, $6{,}7$ à \pct{85}. Flux des fonds propres le plus bas : $-\dollars{41574}$ à \pct{50} (année des travaux de 2027), $-\dollars{80834}$ à \pct{85}, avec en outre un flux négatif chaque année ordinaire jusqu'à ce que le revenu net dépasse \dollars{95346}, soit vers l'année 2. Un ratio de \pct{85} ne convient qu'à un investisseur disposant de liquidités extérieures suffisantes pour financer plusieurs années de déficits et les travaux, soit de l'ordre de \dollars{150000} à \dollars{200000} sur l'horizon, capable de supporter une volatilité des fonds propres près de sept fois celle de l'immeuble, et convaincu que le rattrapage des loyers se réalisera ; un ralentissement de ce rattrapage ou une hausse du taux au renouvellement rendrait le flux après dette durablement négatif. À \pct{50}, la couverture de $1{,}60$ et un multiplicateur de $2$ laissent une marge pour les deux scénarios adverses du \cref{ch:30}. | |
| 76 | +\end{solution} | |
modified
sources/registry.csv
+5 −0
@@ -338,6 +338,11 @@ SRC-12-003,reglement,"Règlement sur la norme de pratique relative au piquetage | ||
| 338 | 338 | SRC-12-004,page_web,Certificat de localisation,Ordre des arpenteurs-géomètres du Québec,© OAGQ 2026 ; Guide des tarifs suggérés 2026 ; exemple de certificat 2025,https://oagq.qc.ca/services/certificat-de-localisation,2026-10-31,verifie,12,Rapport + plan ; éléments vérifiés ; « un créancier ou un notaire peut exiger un certificat à jour lors de la vente » ; vendeur paie habituellement ; ne sert pas à établir les limites. Pas de durée de validité chiffrée. |
| 339 | 339 | SRC-12-005,norme,"ANSI Z765-2021, Square Footage — Method for Calculating (American National Standard for Single-Family Residential Buildings)",Home Innovation Research Labs (ANSI),Approuvée le 29 mars 2021,https://www.mlsnow.com/pdf/ANSIsqft.pdf,2026-10-31,partiellement_verifie,12,"Copie PDF diffusée par un service d'inscriptions (texte intégral lu : sections 1-4 et annexe) ; page de l'éditeur homeinnovation.com/…/ansi_z765_standard en HTTP 410 ; original non acquis. Norme volontaire, protégée par le droit d'auteur : paraphrasée, non reproduite." |
| 340 | 340 | SRC-12-006,page_web,Arpent (unités du Québec : 180 pieds français ; 3 418,89 m²),Wikipédia (extrait de recherche),Consulté le 2026-10-31,https://fr.wikipedia.org/wiki/Arpent,2026-10-31,partiellement_verifie,12 |
| 341 | +SRC-13-001,fichier,"Répertoire des renseignements prescrits du rôle d'évaluation foncière en format ouvert, version 2.5 (PDF lu par script)",MAMH (Données Québec),2022-03-24 (document) / téléchargé 2026-10-31,https://www.donneesquebec.ca/recherche/dataset/061c8cb7-ca4e-45be-a990-61fce7e7d2dc/resource/427a72a7-f34c-495b-aa23-9de71a84a066/download/repertoire-des-renseignements-prescrits-du-role-devaluation-fonciere-version-2.5.pdf,2026-10-31,verifie,13,"Déjà dans data/raw (SOURCES.md) ; lecture intégrale par pdftotext et pypdf ; 62 codes, 5 sections ; clé dqrepertoire" | |
| 342 | +SRC-13-002,fichier,Richesse foncière uniformisée 2026 — RFU-2026.csv et dictionnaire des postes,MAMH,2026-10-08,https://mamh.gouv.qc.ca/fichiersdonneesouvertes/RFU-2026.csv,2026-10-31,verifie,13,SRC-E-064 ; 1 132 municipalités locales ; identité somme des postes = CIALX02147 vérifiée ; facteurs CSALX02163 = facteurs comparatifs publiés | |
| 343 | +SRC-13-003,fichier,"SCHL, Enquête sur les logements locatifs, octobre 2025 — classeur provincial (centres de 10 000 habitants et plus, 20 onglets)",SCHL,2025-12-11,https://assets.cmhc-schl.gc.ca/sites/cmhc/professional/housing-markets-data-and-research/housing-data-tables/rental-market/rental-market-report-data-tables/2025/rmr-quebec-2025-fr.xlsx,2026-10-31,verifie,13,"SRC-E-007 ; tableaux 1.1.1, 1.1.2, 1.1.3, 1.1.5 lus par openpyxl ; conditions SCHL non ouvertes" | |
| 344 | +SRC-13-004,fichier,"Statistique Canada, tableau 18-10-0289-01 (IPCB) — CSV brut et métadonnées",Statistique Canada,2026-10-29,https://www150.statcan.gc.ca/n1/tbl/csv/18100289-fra.zip,2026-10-31,verifie,13,SRC-E-017 ; structure décrite au tableau 13.6 ; série Québec résidentiel depuis 2023T1 (constat nouveau) | |
| 345 | +SRC-13-005,fichier,"Statistique Canada, tableaux 18-10-0205-01 (IPLN) et 18-10-0004-01 (IPC) — CSV bruts",Statistique Canada,2026-10-22 / 2026-10-19,https://www150.statcan.gc.ca/n1/tbl/csv/18100205-fra.zip,2026-10-31,verifie,13,SRC-E-016 / SRC-E-015 ; vecteurs v111955484 et v41691783 ; moyennes trimestrielles | |
| 341 | 346 | SRC-CH17-001,article,Smearing Estimate: A Nonparametric Retransformation Method (Duan),Journal of the American Statistical Association,1983 vol. 78 no 383 p. 605-610,https://doi.org/10.1080/01621459.1983.10478017,2026-10-31,verifie,ch17,Crossref ; references/lib-ch17.bib (duan1983) ; non cité par clé |
| 342 | 347 | SRC-CH17-002,article,The Interpretation of Dummy Variables in Semilogarithmic Equations (Giles),Economics Letters,1982 vol. 10 no 1-2 p. 77-79,https://doi.org/10.1016/0165-1765(82)90119-7,2026-10-31,verifie,ch17,Crossref ; references/lib-ch17.bib (giles1982) ; non cité par clé |
| 343 | 348 | SRC-CH17-003,article,Exact Interpretation of Dummy Variables in Semilogarithmic Equations (van Garderen & Shah),The Econometrics Journal,2002 vol. 5 no 1 p. 149-159,https://doi.org/10.1111/1368-423X.00078,2026-10-31,verifie,ch17,Crossref ; references/lib-ch17.bib (vanGarderenShah2002) ; non cité par clé |
modified
verification/calculations.csv
+45 −0
@@ -303,3 +303,48 @@ CALC-22-011,22,"Propagation : Herfindahl 0.0539 (18.6 postes effectifs), σ_D/D | ||
| 303 | 303 | CALC-22-012,22,"Pertes et chutes (taux illustratifs) : gypse 694.4, bardeaux 137.5 ; surplus valorisé au prix posé 11283.78 $ ; répartition par type d'unité (mesuré 174351.56 / dénombré 89850.00 / forfait 97223.29)",analysis/python/cases/ch22_metre.py,analysis/python/tests/test_ch22.py::TestSensibilitePropagation::test_pertes ; test_repartition_types,voir description,idem,verifie,2026-10-31 |
| 304 | 304 | CALC-22-013,22,"Coûts unitaires de C_N selon la convention (190.08 → 2092 ; 165.13 → 2408 ; 135.37 → 2937 $/m²) et ratios nette/habitable 82.0 %, nette/étages 71.2 %",analysis/python/cases/ch22_metre.py,analysis/python/tests/test_ch22.py::TestGeometrie::test_couts_unitaires_conventions,voir description,idem,verifie,2026-10-31 |
| 305 | 305 | CALC-22-014,22,Exercices 22.1 à 22.7 (solutions),analysis/python/tests/test_ch22.py,analysis/python/tests/test_ch22.py::TestExercices,voir solutions/ch22.tex,idem,verifie,2026-10-31 |
| 306 | +CALC-13-001,13,"Structure du CSV brut 18-10-0289-01 : lignes, colonnes, membres des 3 dimensions, vecteurs, périodes",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIPCB::test_structure,318954 lignes ; 16 col. ; 25 géo ; 16 types ; 24 divisions ; 8750 vecteurs ; 1981-01 à 2026-07 (183),318954 ; 16 ; 25 ; 16 ; 24 ; 8750 ; 1981-01 à 2026-07 (183),verifie,2026-10-31 | |
| 307 | +CALC-13-002,13,IPCB Montréal bâtiments résidentiels : 2017T1 65.5 ; 2023T1 99.9 ; 2025T3 108.5 ; 2026T3 117.8 ; var. annuelle ; facteurs,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIPCB::test_series_citees,+8.57 % ; 1.798 (2017T1→2026T3) ; 1.179 (2023T1→2026T3),8.571 % ; 1.7985 ; 1.1792,verifie,2026-10-31 | |
| 308 | +CALC-13-003,13,IPCB RMR de Québec bâtiments résidentiels : début 2023T1 (15 obs.) ; 98.8 → 124.8 ; var. annuelle ; facteur,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIPCB::test_series_citees,+9.19 % ; 1.263,9.186 % ; 1.2632,verifie,2026-10-31 | |
| 309 | +CALC-13-004,13,"Trois indices rebasés T1 2017 = 100 au T3 2026 (IPCB Mtl résid., IPLN Mtl, IPC Québec ; moyennes trimestrielles des séries mensuelles)",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIndices::test_rebasage,179.8 ; 159.0 ; 132.2,179.85 ; 158.98 ; 132.17,verifie,2026-10-31 | |
| 310 | +CALC-13-005,13,"Dictionnaire du rôle v2.5 (PDF) : 2 pages, 62 codes distincts, répartition par section 21/2/17/5/17, 24 répétitifs",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestDictionnaireEtRoles::test_dictionnaire,62 ; {1:21 2:2 3:17 4:5 5:17} ; 24,62 ; {1:21 2:2 3:17 4:5 5:17} ; 24,verifie,2026-10-31 | |
| 311 | +CALC-13-006,13,Index des rôles 2026 : 1134 municipalités ; URL Gatineau RL81017_2026.xml,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestDictionnaireEtRoles::test_index_roles,1134,1134,verifie,2026-10-31 | |
| 312 | +CALC-13-007,13,"RFU 2026 : évaluation imposable uniformisée Montréal 430.75 G$, Québec 105.22 G$, Gatineau 60.01 G$ ; facteurs 1.00/1.08/1.02 ; parts par catégorie ; identité somme des postes = imposable",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestRFU::test_structure_et_villes,Gatineau 1 log. 56.5 % ; Montréal logements+condos 60.6 % ; Québec 40.2/38.8 % ; total RFU 2077.9 G$ ; 3 villes 31.1 %,56.5 ; 60.6 ; 40.2/38.8 ; 2077.9 ; 31.1 ; écart somme/imposable 0 $,verifie,2026-10-31 | |
| 313 | +CALC-13-008,13,"SCHL ELL oct. 2025, six RMR : inoccupation 2024/2025, loyer 2 ch. 2024/2025, univers, variation brute vs estimative, vacants implicites",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestSCHL::test_tableau,Montréal brute 14.5 % vs estim. 7.2 % ; vacants 19351 ; Saguenay 211 ; Sherbrooke brute < estimative,14.456 % ; 7.2 ; 19350.7 ; 211.1 ; 6.0 < 9.8,verifie,2026-10-31 | |
| 314 | +CALC-13-009,13,"Biais de datation b = (1+g)^(delta/12) - 1 : grille g ∈ {-3,0,3,6,10} × delta ∈ {1,2,3,6}",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestDatation::test_biais,6 %/3 mois : 1.47 ; 10 %/3 : 2.41 ; 10 %/6 : 4.88 ; -3 %/6 : -1.51,1.467 ; 2.411 ; 4.881 ; -1.512,verifie,2026-10-31 | |
| 315 | +CALC-13-010,13,Sensibilité loyer 1300 $ indexé Montréal 2 ch. : variation brute vs estimative ; écart mensuel/annuel ; valeur 12 log. à 4.5 %,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex4_indexation,1487.93 vs 1393.60 ; 94 $/mois ; 1132 $/an ; ≈ 300 000 $,1487.93 ; 1393.60 ; 94.33 ; 1131.9 ; 301840,verifie,2026-10-31 | |
| 316 | +CALC-13-011,13,Exercice 1 : coût registre foncier 25 actes + 25 index à 1 $ + 3 états certifiés (16 + 16 $),analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex1_registre,146 $,146 $,verifie,2026-10-31 | |
| 317 | +CALC-13-012,13,Exercice 2 : prix 612 000 - 12 000 meubles ; délai 75 j = 2.464 mois ; facteur 1.06^(2.464/12) ; écart,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex2_prix_corrige,600 000 $ ; 1.0120 ; 7 222 $,600000 ; 1.01204 ; 7222.04,verifie,2026-10-31 | |
| 318 | +CALC-13-013,13,Exercice 5 : IPCB résidentiel Montréal/Québec/composite : facteurs 2023T1→2026T3 et TCAC ; 2019T3→2026T3 ; 350 000 $ indexé,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex5_ipcb_quebec,1.1792 (4.82 %) ; 1.2632 (6.90 %) ; 1.1391 (3.79 %) ; 1.6453 ; 1.7406 ; 442 105 / 412 713 / 398 671 $,idem (test vert),verifie,2026-10-31 | |
| 319 | +CALC-13-014,13,"Exercice 6 (chiffres fictifs) : couverture 1044/1500, appariement 920/1044, moyenne mixte, biais",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex6_couverture,0.696 ; 0.881 ; 493 280 $ ; 16 720 $ (3.39 %),0.696 ; 0.8812 ; 493280 ; 16720 (3.39 %),verifie,2026-10-31 | |
| 320 | +CALC-14-001,14,Jeu brut reproductible (graine 20261031) et identique au fichier : 618 inscriptions ; 127 anomalies (109 lignes + 18 doublons) ; rôle 600,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_brut_reproductible_et_identique_au_fichier,618;127;600,618;127;600,verifie,2026-10-31 | |
| 321 | +CALC-14-002,14,Comptes d'anomalies injectées par type (tab. 14.1),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_anomalies_injectees,18;5;8;12;10;9;6;8;6;20;15;10,idem,verifie,2026-10-31 | |
| 322 | +CALC-14-003,14,Entonnoir 618→600 (R1)→595 (R4)→587 (R7)→587 (I1)→581 (S1)→579 (E1),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,618;600;595;587;587;581;579,618;600;595;587;587;581;579,verifie,2026-10-31 | |
| 323 | +CALC-14-004,14,Journal : 144 lignes ; R1 18 ; R2 10 ; R3 8 ; R4 5 ; R5 12 ; R6 15 ; R7 8 ; G1 15 ; I1 45 ; S1 6 ; E1 2,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,144,144,verifie,2026-10-31 | |
| 324 | +CALC-14-005,14,Corrections R2/R3/R5 restituent les valeurs du jeu propre (dates ; prix net ; superficie),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_corrections_restituent_les_valeurs_propres,écart ≤ 0.5,écart ≤ 0.5,verifie,2026-10-31 | |
| 325 | +CALC-14-006,14,Exclusions S1 : B0003 B0006 B0021 B0105 B0173 B0558 (4 liées + 2 faux positifs) ; E1 : B0039 (t −5.84 ; D 0.084) ; B0410 (t −6.70 ; D 0.048),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,idem,idem,verifie,2026-10-31 | |
| 326 | +CALC-14-007,14,Itérations E1 : n 581→579 ; σ 0.0897→0.0837 ; Cook max 0.084 < 1 ; 25 obs > 4/n ; 18 leviers > 2k/n,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_iterations_regression,581;579;0.0897;0.0837;25;18,581;579;0.0897;0.0837;25;18,verifie,2026-10-31 | |
| 327 | +CALC-14-008,14,Identités : tr(H) = k ; D_i = r_i² h/(k(1−h)) = forme par réestimation ; t_i = r_i sqrt((n−k−1)/(n−k−r_i²)),analysis/python/cases/ch14_nettoyage.py (diagnostics ; cook_direct),analysis/python/tests/test_ch14.py::test_identites_levier_cook,égalité à 1e-6,égalité à 1e-6,verifie,2026-10-31 | |
| 328 | +CALC-14-009,14,Constante 1/Φ⁻¹(0.75) = 1.4826 ; 1.4826·MAD → σ (simulation 200 000 N(0;2)),scipy.stats.norm,analysis/python/tests/test_ch14.py::test_constante_mad_et_score,1.4826 ; 2.00 ± 1 %,1.4826 ; 2.00,verifie,2026-10-31 | |
| 329 | +CALC-14-010,14,Masquage Hull (tab. 14.3) : n 193 ; s 1.395 ; 1.4826·MAD 0.181 ; 2 vs 10 signalées ; 2 prix à 1 $,analysis/python/cases/ch14_nettoyage.py (illustration_masquage),analysis/python/tests/test_ch14.py::test_masquage,193;1.395;0.181;2;10,193;1.395;0.181;2;10,verifie,2026-10-31 | |
| 330 | +CALC-14-011,14,Modèles (tab. 14.6) : brut n 573 R² 0.039 σ 1.231 lnS 0.2009 préd 565 471 ; règles σ 0.1132 ; S1 σ 0.0897 ; nettoyé n 579 R² 0.850 σ 0.0837 lnS 0.5335 préd 637 017 ; référence n 600 R² 0.853 σ 0.0830 lnS 0.5391 préd 637 953,analysis/python/cases/ch14_nettoyage.py (comparer_modeles),analysis/python/tests/test_ch14.py::test_modeles_avant_apres,idem,idem,verifie,2026-10-31 | |
| 331 | +CALC-14-012,14,Écart nettoyé − référence ≤ 0.44 erreur-type sur les 16 coefficients,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_modeles_avant_apres,< 0.5,0.44,verifie,2026-10-31 | |
| 332 | +CALC-14-013,14,Géocodage (tab. 14.5) : erreurs médianes 6/18/47/177/1199 m ; voisins conservés 99.1/97.1/93.1/76.1/17.6 % ; rayon modifié 0/0/0.33/1.33/6.67 % ; 103 ventes dans 3 km ; médiane Rayleigh 1.1774σ,analysis/python/cases/ch14_nettoyage.py (simulation_geocodage),analysis/python/tests/test_ch14.py::test_geocodage,idem,idem,verifie,2026-10-31 | |
| 333 | +CALC-14-014,14,Appariement (tab. 14.7) : 367 (59.4 %) ; 198 (32.0 %) ; 45 (7.3 %) ; 8 (1.3 %) ; 3 ambigus ; 0 faux,analysis/python/cases/ch14_nettoyage.py (appariement_role),analysis/python/tests/test_ch14.py::test_appariement,idem,idem,verifie,2026-10-31 | |
| 334 | +CALC-14-015,14,Imputations (tab. 14.8) : suppression n 535 lnT 0.0969 préd 640 921 ; médiane 0.0941 / 637 017 ; régression 0.0940 / 637 166 ; indicateur 0.0945 / 638 354 ; coef manq_terrain −0.0215,analysis/python/cases/ch14_nettoyage.py (comparer_imputations),analysis/python/tests/test_ch14.py::test_imputations,idem,idem,verifie,2026-10-31 | |
| 335 | +CALC-14-016,14,Sensibilité (tab. 14.9) : 12 combinaisons ; 6 liées détectées partout ; faux positifs 22 (2.5;2.5) / 2 (3.5;3) / 0 (4;3) ; σ 0.0783–0.0838 ; prédiction 633 813–638 476,analysis/python/cases/ch14_nettoyage.py (sensibilite_seuils),analysis/python/tests/test_ch14.py::test_sensibilite_seuils,idem,idem,verifie,2026-10-31 | |
| 336 | +CALC-14-017,14,Variante MNAR (sol. 14.7) : suppression n 536 lnT 0.1007 préd 638 976 ; médiane 0.0977 / 636 195 ; régression 0.0972 / 636 224 ; indicateur 0.0978 / 638 201 ; coef manq_terrain −0.0502 (e.-t. 0.0143),analysis/python/cases/ch14_nettoyage.py (variante_mnar_terrain),analysis/python/tests/test_ch14.py::test_variante_mnar,idem,idem,verifie,2026-10-31 | |
| 337 | +CALC-14-018,14,Solutions 14.1–14.5 : méd 3260 MAD 110 z 16.68 / zc 2.65 ; 1776 pi² = 165.0 m² ; r −3.074 t −3.097 D 0.0246 ; εδ −0.0347 (−3.4 %) σ 0.173 ; poids FS 16.35 / 11.18 / 0.78,solutions/ch14.tex,analysis/python/tests/test_ch14.py::test_solutions_exercices,idem,idem,verifie,2026-10-31 | |
| 338 | +CALC-15-01,15,Mois d'inventaire T3 2026 par RMR (inscriptions / (ventes/3)) : province/Montréal/Québec/Gatineau/Sherbrooke/Trois-Rivières/Saguenay,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_mois_inventaire_et_absorption,"6,1 ; 6,6 ; 3,1 ; 6,5 ; 4,3 ; 3,6 ; 4,0","6,08 ; 6,59 ; 3,06 ; 6,48 ; 4,35 ; 3,60 ; 4,03",verifie,2026-10-31 | |
| 339 | +CALC-15-02,15,Taux d'absorption mensuel = 1/MI (Québec 32,7 % ; Montréal 15,2 %) et ratio stock/flux = MI / (délai unifamiliale en mois) : Montréal 5,0 ; Gatineau 5,8 ; Québec 3,2,analysis/python/cases/ch15_segmentation.py | |
| 340 | +CALC-15-03,15,Parts des ventes par secteur de Gatineau : APCIQ T3 2026 (1 044) vs jeu synthétique (600) ; Hull 16,7 % vs 31,0 %,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_parts_secteurs_gatineau,"33,1/16,7/19,3/10,3/20,6 vs 33,3/31,0/20,8/14,8/0",idem | |
| 341 | +CALC-15-04,15,Test de Chow par secteur (G=5 k0=12) : SCR contraint 4,0245 / classique 6,4024 / libre 3,7360 ; F pentes 0,948 (44;540) p 0,570 ; F classique 8,029 (48;540) ; Wald HC1 54 | |
| 342 | +CALC-15-05,15,Coefficients hédoniques par secteur (HC1) : ln_S 0,513 (Aylmer) à 0,558 (Masson-Angers) ; qualité 0,048 à 0,078 ; tendance 0,0030 à 0,0044 | |
| 343 | +CALC-15-06,15,"Tests de Chow pour les autres partitions : Est regroupé p 0,426 ; type (k0=11, « etages » retiré) F p 0,079 / Wald p 0,0096 ; période F p 0,034 / classique 0,024 / Wald 0,037 (non rejeté à 1 %) ; k-moyennes k=2 p 0,588 ; k=5 p 0,427 / Wald 0,057",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_chow_autres_partitions,voir tableau 15.8,idem,verifie,2026-10-31 | |
| 344 | +CALC-15-07,15,"Classification k-moyennes (20 init., graine 20261031) et Ward : silhouette k=2 0,417 ; k=3 0,225 ; k=5 0,188 (Ward 0,156) ; k optimal 2 ; ARI k-moyennes/secteurs 0,213 (k=2) et 0,124 (k=5) ; segment Est = 42 Buckingham + 47 Masson-Angers ; silhouette manuelle = sklearn",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_classification,voir tableaux 15.5 et 15.6,idem,verifie,2026-10-31 | |
| 345 | +CALC-15-08,15,"Sensibilité au jeu de variables : attributs seuls silhouette 0,221 / ARI 0,001 ; coordonnées seules 0,735 / ARI k=5 0,986 ; les deux 0,417 / 0,124",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_classification,voir tableau 15.10,idem,verifie,2026-10-31 | |
| 346 | +CALC-15-09,15,"Validation croisée 10 plis : RMSE log 0,1053 (sans segment) ; 0,0839 (indicatrices de secteur, référence) ; 0,0888 (équation par secteur) ; 0,0942 (équation par segment k=5) ; erreurs abs. médianes 7,08 / 5,81 / 6,26 / 6,71 %",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_validation_croisee,voir tableau 15.9,idem,verifie,2026-10-31 | |
| 347 | +CALC-15-10,15,"Cas 3 (traite.cas3.revenus) : RBP contrat 165 540 $, marché 186 036 $, écart 20 496 $ = 11,0 % du marché ; par type 15,8 / 11,1 / 4,9 % ; loyers de marché à 98,5 / 99,4 / 94,4 % des moyennes SCHL zone 9",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_locatif,"20 496 ; 11,0 ; 15,8 ; 11,1 ; 4,9",idem,verifie,2026-10-31 | |
| 348 | +CALC-15-11,15,"SCHL zone 9 : parts de l'univers 12,5/27,8/50,5/9,1 % (somme 44 554) ; écart loyer inoccupé/occupé 1 ch. 22,9 %, RMR tous 27,1 % ; prime du parc neuf 55,2 %, part 1,41 % ; zone = 6,7 % de l'univers RMR ; 3 ch.+ zone vs RMR +7,6 %",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_locatif,voir texte §15.6,idem,verifie,2026-10-31 | |
| 349 | +CALC-15-12,15,"Rattrapage des loyers : rotation 15 % / 9,4 % / 8,5 % → an 1 : 3 074 / 1 927 / 1 742 $ ; horizon 6,7 / 10,6 / 11,8 ans ; part en 5 ans 55,6 / 39,0 / 35,9 %",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_locatif;test_solutions_exercices,idem,idem,verifie,2026-10-31 | |
| 350 | +CALC-15-13,15,"Solutions des exercices 15.1 (4,35 mois ; 23,0 % ; 5,80), 15.3 (4 059 ; 80,1 %), 15.4 (s = 0,644), 15.5 (F 0,948 / 8,03 ; quantiles 1,40 / 1,38), 15.6 (0,556 / 0,390 / 0,359 ; 15,8 % ; 22,9 %) ; 1 − 0,95^6 = 26,5 %",solutions/ch15.tex,analysis/python/tests/test_ch15.py::test_solutions_exercices,idem,idem,verifie,2026-10-31 | |
added
verification/chapters/ch13-calculations.csv
+15 −0
@@ -0,0 +1,15 @@ | ||
| 1 | +id,chapitre,description,script,test,resultat_attendu,resultat_obtenu,statut,date | |
| 2 | +CALC-13-001,13,"Structure du CSV brut 18-10-0289-01 : lignes, colonnes, membres des 3 dimensions, vecteurs, périodes",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIPCB::test_structure,318954 lignes ; 16 col. ; 25 géo ; 16 types ; 24 divisions ; 8750 vecteurs ; 1981-01 à 2026-07 (183),318954 ; 16 ; 25 ; 16 ; 24 ; 8750 ; 1981-01 à 2026-07 (183),verifie,2026-10-31 | |
| 3 | +CALC-13-002,13,IPCB Montréal bâtiments résidentiels : 2017T1 65.5 ; 2023T1 99.9 ; 2025T3 108.5 ; 2026T3 117.8 ; var. annuelle ; facteurs,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIPCB::test_series_citees,+8.57 % ; 1.798 (2017T1→2026T3) ; 1.179 (2023T1→2026T3),8.571 % ; 1.7985 ; 1.1792,verifie,2026-10-31 | |
| 4 | +CALC-13-003,13,IPCB RMR de Québec bâtiments résidentiels : début 2023T1 (15 obs.) ; 98.8 → 124.8 ; var. annuelle ; facteur,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIPCB::test_series_citees,+9.19 % ; 1.263,9.186 % ; 1.2632,verifie,2026-10-31 | |
| 5 | +CALC-13-004,13,"Trois indices rebasés T1 2017 = 100 au T3 2026 (IPCB Mtl résid., IPLN Mtl, IPC Québec ; moyennes trimestrielles des séries mensuelles)",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestIndices::test_rebasage,179.8 ; 159.0 ; 132.2,179.85 ; 158.98 ; 132.17,verifie,2026-10-31 | |
| 6 | +CALC-13-005,13,"Dictionnaire du rôle v2.5 (PDF) : 2 pages, 62 codes distincts, répartition par section 21/2/17/5/17, 24 répétitifs",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestDictionnaireEtRoles::test_dictionnaire,62 ; {1:21 2:2 3:17 4:5 5:17} ; 24,62 ; {1:21 2:2 3:17 4:5 5:17} ; 24,verifie,2026-10-31 | |
| 7 | +CALC-13-006,13,Index des rôles 2026 : 1134 municipalités ; URL Gatineau RL81017_2026.xml,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestDictionnaireEtRoles::test_index_roles,1134,1134,verifie,2026-10-31 | |
| 8 | +CALC-13-007,13,"RFU 2026 : évaluation imposable uniformisée Montréal 430.75 G$, Québec 105.22 G$, Gatineau 60.01 G$ ; facteurs 1.00/1.08/1.02 ; parts par catégorie ; identité somme des postes = imposable",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestRFU::test_structure_et_villes,"Gatineau 1 log. 56.5 % ; Montréal logements+condos 60.6 % ; Québec 40.2/38.8 % ; total RFU 2077.9 G$ ; 3 villes 31.1 %","56.5 ; 60.6 ; 40.2/38.8 ; 2077.9 ; 31.1 ; écart somme/imposable 0 $",verifie,2026-10-31 | |
| 9 | +CALC-13-008,13,"SCHL ELL oct. 2025, six RMR : inoccupation 2024/2025, loyer 2 ch. 2024/2025, univers, variation brute vs estimative, vacants implicites",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestSCHL::test_tableau,"Montréal brute 14.5 % vs estim. 7.2 % ; vacants 19351 ; Saguenay 211 ; Sherbrooke brute < estimative","14.456 % ; 7.2 ; 19350.7 ; 211.1 ; 6.0 < 9.8",verifie,2026-10-31 | |
| 10 | +CALC-13-009,13,"Biais de datation b = (1+g)^(delta/12) - 1 : grille g ∈ {-3,0,3,6,10} × delta ∈ {1,2,3,6}",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestDatation::test_biais,"6 %/3 mois : 1.47 ; 10 %/3 : 2.41 ; 10 %/6 : 4.88 ; -3 %/6 : -1.51","1.467 ; 2.411 ; 4.881 ; -1.512",verifie,2026-10-31 | |
| 11 | +CALC-13-010,13,Sensibilité loyer 1300 $ indexé Montréal 2 ch. : variation brute vs estimative ; écart mensuel/annuel ; valeur 12 log. à 4.5 %,analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex4_indexation,"1487.93 vs 1393.60 ; 94 $/mois ; 1132 $/an ; ≈ 300 000 $","1487.93 ; 1393.60 ; 94.33 ; 1131.9 ; 301840",verifie,2026-10-31 | |
| 12 | +CALC-13-011,13,Exercice 1 : coût registre foncier 25 actes + 25 index à 1 $ + 3 états certifiés (16 + 16 $),analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex1_registre,146 $,146 $,verifie,2026-10-31 | |
| 13 | +CALC-13-012,13,"Exercice 2 : prix 612 000 - 12 000 meubles ; délai 75 j = 2.464 mois ; facteur 1.06^(2.464/12) ; écart",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex2_prix_corrige,600 000 $ ; 1.0120 ; 7 222 $,600000 ; 1.01204 ; 7222.04,verifie,2026-10-31 | |
| 14 | +CALC-13-013,13,"Exercice 5 : IPCB résidentiel Montréal/Québec/composite : facteurs 2023T1→2026T3 et TCAC ; 2019T3→2026T3 ; 350 000 $ indexé",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex5_ipcb_quebec,"1.1792 (4.82 %) ; 1.2632 (6.90 %) ; 1.1391 (3.79 %) ; 1.6453 ; 1.7406 ; 442 105 / 412 713 / 398 671 $","idem (test vert)",verifie,2026-10-31 | |
| 15 | +CALC-13-014,13,"Exercice 6 (chiffres fictifs) : couverture 1044/1500, appariement 920/1044, moyenne mixte, biais",analysis/python/cases/ch13_sources.py,analysis/python/tests/test_ch13.py::TestExercices::test_ex6_couverture,"0.696 ; 0.881 ; 493 280 $ ; 16 720 $ (3.39 %)","0.696 ; 0.8812 ; 493280 ; 16720 (3.39 %)",verifie,2026-10-31 | |
added
verification/chapters/ch13-claims.csv
+26 −0
@@ -0,0 +1,26 @@ | ||
| 1 | +id,chapitre,affirmation,source_id,verification,date,statut,notes | |
| 2 | +CLM-13-001,13,"Registre foncier : publicité par inscription (art. 2934, 2941), présomption de connaissance (2943), index des immeubles par fiche (2969-2972.1) ; contenu de la fiche : Règlement sur la publicité foncière art. 4-5",SRC-A-001,notes-A.md §2.2 (LégisQuébec à jour au 15 oct. 2026),2026-10-31,verifie, | |
| 3 | +CLM-13-002,13,"Tarifs registre foncier en vigueur à compter du 1er avril 2025 (grille « janvier 2026 ») : consultation 1 $/document, inscription 142 $, radiation 162 $, état certifié 16 $ + 16 $/réquisition, copie non certifiée 26 $, certifiée 42 $ ; Loi B-9 annexe I montants de base",SRC-A-registre,notes-A.md §3.1 ; clé registreFoncierTarifs2026,2026-10-31,partiellement_verifie,"Aucune grille postérieure au 1er avril 2025 trouvée ; indexation 2026 non vérifiée (signalé en limites)" | |
| 4 | +CLM-13-003,13,"Rôle ouvert MAMH : 1 140 fichiers XML annoncés, CC BY 4.0, cadastre/noms/adresses caviardés, interdiction de réidentifier ; règlement F-2.1 r. 13 art. 20 al. 3 (format ouvert sans nom ni adresse)",SRC-B-roles,notes-B.md §9.8 ; data/raw/SOURCES.md ; clé dqroles,2026-10-31,verifie,"Index 2026 déposé : 1 134 lignes ; RFU : 1 132 municipalités locales — écart non élucidé (limites)" | |
| 5 | +CLM-13-004,13,"Champs du répertoire v2.5 : RL0101 adresse, RL0104 matricule, RL0105A CUBF, RL0107A unité de voisinage, RL0302A terrain, RL0307A/B année, RL0308A aire d'étages, RL0311A logements, RL0401A-RL0405A valeurs ; caractère obligatoire/facultatif",SRC-E-063,Lecture du PDF data/raw/mamh_roles_evaluation/repertoire…v2.5.pdf (pdftotext + pypdf),2026-10-31,verifie,"Dénombrement automatique 62 codes ; lecture visuelle +1 ou 2 en section 1" | |
| 6 | +CLM-13-005,13,"LFM : art. 42 (valeur réelle), 46 al. 1 (date de référence 1er juillet du 2e exercice précédent), 36.1 (vérification des données tous les 9 ans) ; r. 13 art. 1-2 (renvoi au MEFQ), art. 3 (fichier des mutations conservé ≥ 4 ans)",SRC-B-lfm,notes-B.md §9.1-9.2 et 9.7,2026-10-31,verifie, | |
| 7 | +CLM-13-006,13,"LDMI : base d'imposition = max(contrepartie fournie, stipulée, valeur marchande = rôle × facteur, art. 1.1 et 2) ; exonérations art. 19-20 (ligne directe, conjoints, société à 90 %) ; art. 10 avis à la municipalité dans 15 jours",SRC-A-ldmi,notes-A.md §2.3 ; notes-B.md §9.9,2026-10-31,verifie, | |
| 8 | +CLM-13-007,13,"Règlement sur la proportion médiane : ventes ≥ 5 000 $ (art. 2) ; épuration des ratios hors [médiane ± 2σ] (art. 15-16)",SRC-B-r10,notes-B.md §9.3,2026-10-31,verifie, | |
| 9 | +CLM-13-008,13,"APCIQ T3 2026 : 20 935 ventes (-7 %), 42 408 inscriptions (+20 %), médianes 500 000 / 400 000 / 699 000 $ ; RMR Québec 463 500 $ (+2 %), 2 161 ventes ; conditions d'utilisation (attribution, usage commercial interdit)",SRC-E-001,notes-E.md ch. 4 ; notes-C.md §4.8 ; clés apciqt32026 apciqconditions,2026-10-31,verifie,Donnée d'industrie | |
| 10 | +CLM-13-009,13,"JLR : méthodologie (registre foncier, seuil 30 transactions, exclusions < 5 000 $, ventes liées, reprises, indivises, multiples) ; sept. 2026 médianes 12 mois 483 000 $ (+7 %) et 622 000 $ (+9 %) ; RMR Québec 579 ventes unifam. (+6 %) ; août 2026 Ottawa-Gatineau 522 741 $, 12 mois 495 000 $, ratio prix/évaluation 111 %",SRC-C-jlr,notes-C.md §4.9 ; notes-E.md ch. 13 ; clés jlr202608 jlr202609,2026-10-31,verifie,"Modalités d'abonnement non vérifiées" | |
| 11 | +CLM-13-010,13,"Teranet–BN sept. 2026 : composite 294.94 (-3.5 % a/a), Montréal 310.62 (+1.4 %), Québec 327.56 (+7.7 %) ; base juin 2005 = 100 ; 11 RMR ; ventes répétées",SRC-C-teranet,notes-C.md §4.9 ; clé teranet202609,2026-10-31,verifie,"Conditions des données C11 non lues (TLS invalide)" | |
| 12 | +CLM-13-011,13,"Statistique Canada ne publie aucun tableau de prix de vente résidentiels au Québec ; tableaux 46-10-0049/0051 archivés et sans prix",SRC-E-stat,data/raw/SOURCES.md (« Jeux publics notés mais non téléchargés »),2026-10-31,verifie, | |
| 13 | +CLM-13-012,13,"Recensement 2021 : 3 749 035 ménages privés au Québec, 59.9 % propriétaires (Canada 66.5 %)",SRC-E-022,notes-E.md ch. 4 ; notes-C.md §4.7 (tableaux 98-10-0240-01 / 98-10-0041-01 via WDS),2026-10-31,verifie, | |
| 14 | +CLM-13-013,13,"SCHL ELL : univers = appartements d'initiative privée, immeubles de 3 logements et plus ; enquête d'octobre, publication 11 déc. 2025 ; lettres a-d ; ** supprimées ; variation estimative fondée sur les immeubles présents les deux années ; tableaux 1.1.9 inoccupés/occupés ; copropriétés 4.x ; Montréal 35 tableaux/39 zones, Gatineau zones 21-24",SRC-E-007,"Lecture des classeurs data/raw/schl_rml_2025 (table des matières, notes de bas de tableau)",2026-10-31,verifie,"Conditions d'utilisation lues sur la page générale SCHL ; seuils numériques des lettres non publiés dans les classeurs" | |
| 15 | +CLM-13-014,13,"TAL : nouvelle méthode D. 1455-2025 en vigueur 1er janv. 2026 (art. 3 six critères, art. 3.1 IPC moyen 3 ans) ; pourcentage de base 3.1 % (2026), 4.5 % (2025) ; ancienne méthode 2026 : entretien 5.7, gestion 7.2, revenu net 5.7, immobilisations 4 ; formulaire RN 2026-2027 (postes) ; résumé « la valeur marchande locative n'est pas un critère »",SRC-A-tal,notes-A.md §6.2-6.3 ; clés decret1455_2025 reglCriteresFixation talIndices2026 talFormulaireRN2026 talResumesDecisions,2026-10-31,verifie, | |
| 16 | +CLM-13-015,13,"C.c.Q. art. 1896 (avis du loyer le plus bas des 12 mois), 1904 (aucun dépôt), 1955 (immeubles < 5 ans, loyer maximal au bail depuis le 21 fév. 2024), 1731 (vente sous contrôle de justice sans garantie), 1732-1733 (exclusion de garantie), 1785 (dédit 10 jours), 2778 (prise en paiement, autorisation si ≥ 50 % acquitté)",SRC-A-001,"notes-A.md §2.1, §4, §5",2026-10-31,verifie, | |
| 17 | +CLM-13-016,13,"Loi 65 (L.Q. 2024 c. 23) : moratoire sur les évictions art. 1959 jusqu'au 6 juin 2027 (art. 1) ; fin anticipée 60 jours après avis si taux d'inoccupation SCHL (centres ≥ 10 000) atteint 3 % (art. 11) ; aucun avis repéré au 31 oct. 2026",SRC-A-loi65,notes-A.md §5 ; clé loi65_2024,2026-10-31,verifie,"À revérifier avant publication" | |
| 18 | +CLM-13-017,13,"OACIQ : DV obligatoire depuis juillet 2012 (résidentiel < 5 logements, personne physique), section D2.6 loyers/TAL ; règlement C-73.2 r. 1 art. 5 (vérifier les renseignements) et 118 (fiche descriptive, mention « vendu sans garantie légale »)",SRC-A-oaciq,notes-A.md §2.4 ; clés oaciqFormulaireDV oaciqContexteDV reglCourtageDeontologie,2026-10-31,verifie,"Formulaire DV V24 (06/2022) ; versions postérieures non consultées" | |
| 19 | +CLM-13-018,13,"Déontologie OEAQ : art. 41 (méthodologie et étendue des recherches), art. 51 (secret professionnel) ; tenue des dossiers r. 133 art. 6 (5 ans) et 7 (confidentialité) ; NPP règle 2.3 (étendue du travail, traitement de l'information)",SRC-C-oeaq,notes-C.md §2.1-2.3,2026-10-31,verifie, | |
| 20 | +CLM-13-019,13,"Législation québécoise sur la protection des renseignements personnels : mentionnée de façon générale sans numéro de loi ni article",—,Non vérifiée dans les notes du dépôt,2026-10-31,non_verifie,"Formulation générale volontaire ; juriste à consulter" | |
| 21 | +CLM-13-020,13,"Montréal : unités d'évaluation (hebdo, CUBF, logements, année, superficies, matricule, sans valeur légale) ; permis (hebdo, coûts déclarés sans valeur légale, Lachine et Saint-Léonard absents) ; Québec permis (màj 2026-10-25) ; pas de jeu « rôle » propre à Québec ni à Gatineau",SRC-B-mtl,notes-B.md §9.8 ; clés mtlunites mtlpermis vqpermis,2026-10-31,verifie, | |
| 22 | +CLM-13-021,13,"IPLN Montréal sept. 2026 159.5 ; IPC Québec ensemble v41691783 ; composante loyer IPC Québec +3.3 % (sept. 2026/sept. 2025, calcul 174.2/168.6)",SRC-E-015/016,notes-E.md ch. 27 et notes-C.md §4.7 ; CSV bruts data/raw,2026-10-31,verifie,"La variation « loyer » +3.3 % est un calcul du lot E non recalculé dans ch13_sources.py" | |
| 23 | +CLM-13-022,13,"Altus Canadian Cost Guide 2026 publié le 23 avril 2026, tableaux protégés ; fourchette 155-215 $/pi² Montréal unifamiliale relayée par une source secondaire ; Marshall & Swift ; RSMeans ; CCQ hausses 8/5/5/4 % (2025-2029)",SRC-E-043,notes-E.md ch. 23 ; ch21-claims.csv,2026-10-31,partiellement_verifie,"Fourchette et hausses CCQ relayées (Altus/NerdWallet) ; reprises avec cette réserve" | |
| 24 | +CLM-13-023,13,"Banque du Canada : taux directeur 2.50 % depuis le 28 oct. 2026 ; API Valet ; conditions d'utilisation (non commercial, attribution)",SRC-E-009,notes-C.md §4.1 ; data/raw/SOURCES.md ; clés bdc20261028 bdcvalet,2026-10-31,verifie, | |
| 25 | +CLM-13-024,13,"Facteurs comparatifs 2026 : Montréal 1.00, Gatineau 1.02 (pages droits de mutation) ; Québec 1.08 (page Ville de Québec) — concordent avec CSALX02163 du fichier RFU-2026",SRC-B-facteurs,notes-B.md §9.3 ; notes-A.md §2.3 ; lecture RFU-2026.csv,2026-10-31,verifie,"Recoupement indépendant réussi" | |
| 26 | +CLM-13-025,13,"MEFQ 2026 : applicable aux rôles au 1er janv. 2027 ; parties 2A/2C/2D/3E ; droit d'auteur du gouvernement, sans licence ouverte (page Québec.ca Droit d'auteur)",SRC-B-mefq,notes-B.md §9.7 ; clés mefq2026 mefqpartie2,2026-10-31,verifie, | |
added
verification/chapters/ch13-figures.csv
+6 −0
@@ -0,0 +1,6 @@ | ||
| 1 | +fichier,chapitre,script,donnees,type_donnees,legende_courte,statut | |
| 2 | +ch13/ch13-fig-schl-loyers.pdf,13,analysis/python/figures/ch13_schl.py,data/raw/schl_rml_2025/rmr-quebec-2025-fr.xlsx,reelle,"SCHL ELL octobre 2025, six RMR : loyer moyen par taille de logement et taux d'inoccupation 2024/2025",verifie | |
| 3 | +ch13/ch13-fig-indices.pdf,13,analysis/python/figures/ch13_indices.py,data/raw/statcan_18100289/18100289.csv ; data/raw/statcan_18100205/18100205.csv ; data/raw/statcan_18100004/18100004.csv,reelle,"IPCB Montréal résidentiel, IPLN Montréal, IPC Québec rebasés T1 2017 = 100 (T1 2017 - T3 2026)",verifie | |
| 4 | +ch13/ch13-fig-rfu.pdf,13,analysis/python/figures/ch13_rfu.py,data/raw/mamh_rfu_2026/RFU-2026.csv,reelle,"Composition de l'évaluation imposable uniformisée 2026 par catégorie : Montréal, Québec, Gatineau",verifie | |
| 5 | +ch13/ch13-fig-biais-datation.pdf,13,analysis/python/figures/ch13_biais_datation.py,aucune (calcul analytique),schema,"Biais de datation (1+g)^(delta/12)-1 selon le délai promesse-acte et la croissance annuelle (plage illustrative)",verifie | |
| 6 | +fig:13:chaine (TikZ),13,manuscript/chapters/ch13.tex,aucune,schema,"Chaîne de données de l'évaluation : sources [O]/[I], acquisition, normalisation, appariement, épuration, base, usages",verifie | |
added
verification/chapters/ch13-registry.csv
+6 −0
@@ -0,0 +1,6 @@ | ||
| 1 | +id,type,titre,organisme,version_ou_date,url,date_consultation,statut,utilise_dans,notes | |
| 2 | +SRC-13-001,fichier,"Répertoire des renseignements prescrits du rôle d'évaluation foncière en format ouvert, version 2.5 (PDF lu par script)",MAMH (Données Québec),2022-03-24 (document) / téléchargé 2026-10-31,https://www.donneesquebec.ca/recherche/dataset/061c8cb7-ca4e-45be-a990-61fce7e7d2dc/resource/427a72a7-f34c-495b-aa23-9de71a84a066/download/repertoire-des-renseignements-prescrits-du-role-devaluation-fonciere-version-2.5.pdf,2026-10-31,verifie,13,"Déjà dans data/raw (SOURCES.md) ; lecture intégrale par pdftotext et pypdf ; 62 codes, 5 sections ; clé dqrepertoire" | |
| 3 | +SRC-13-002,fichier,"Richesse foncière uniformisée 2026 — RFU-2026.csv et dictionnaire des postes",MAMH,2026-10-08,https://mamh.gouv.qc.ca/fichiersdonneesouvertes/RFU-2026.csv,2026-10-31,verifie,13,"SRC-E-064 ; 1 132 municipalités locales ; identité somme des postes = CIALX02147 vérifiée ; facteurs CSALX02163 = facteurs comparatifs publiés" | |
| 4 | +SRC-13-003,fichier,"SCHL, Enquête sur les logements locatifs, octobre 2025 — classeur provincial (centres de 10 000 habitants et plus, 20 onglets)",SCHL,2025-12-11,https://assets.cmhc-schl.gc.ca/sites/cmhc/professional/housing-markets-data-and-research/housing-data-tables/rental-market/rental-market-report-data-tables/2025/rmr-quebec-2025-fr.xlsx,2026-10-31,verifie,13,"SRC-E-007 ; tableaux 1.1.1, 1.1.2, 1.1.3, 1.1.5 lus par openpyxl ; conditions SCHL non ouvertes" | |
| 5 | +SRC-13-004,fichier,"Statistique Canada, tableau 18-10-0289-01 (IPCB) — CSV brut et métadonnées",Statistique Canada,2026-10-29,https://www150.statcan.gc.ca/n1/tbl/csv/18100289-fra.zip,2026-10-31,verifie,13,"SRC-E-017 ; structure décrite au tableau 13.6 ; série Québec résidentiel depuis 2023T1 (constat nouveau)" | |
| 6 | +SRC-13-005,fichier,"Statistique Canada, tableaux 18-10-0205-01 (IPLN) et 18-10-0004-01 (IPC) — CSV bruts",Statistique Canada,2026-10-22 / 2026-10-19,https://www150.statcan.gc.ca/n1/tbl/csv/18100205-fra.zip,2026-10-31,verifie,13,"SRC-E-016 / SRC-E-015 ; vecteurs v111955484 et v41691783 ; moyennes trimestrielles" | |
added
verification/chapters/ch13.md
+42 −0
@@ -0,0 +1,42 @@ | ||
| 1 | +# Chapitre 13 — Transactions, inscriptions, loyers et coûts : bilan de rédaction (2026-10-31) | |
| 2 | + | |
| 3 | +## Compteurs | |
| 4 | +- Prose : ≈ 12 870 mots (hors tableaux, équations, TikZ ; regex sur `manuscript/chapters/ch13.tex`) ; 50 pages compilées (chapitre + solutions + bibliographie du chapitre). | |
| 5 | +- Figures : 5 — `ch13-fig-schl-loyers.pdf` (réelle, SCHL ELL oct. 2025), `ch13-fig-indices.pdf` (réelle, StatCan 18-10-0289/0205/0004), `ch13-fig-rfu.pdf` (réelle, MAMH RFU 2026), `ch13-fig-biais-datation.pdf` (calcul analytique), schéma TikZ de la chaîne de données (dans le .tex). Aucune donnée synthétique dans le chapitre. | |
| 6 | +- Tableaux : 9 — inventaire des sources (longtable), accès/licence/coût/URL (longtable), champs d'une transaction × sources, pièges des données de transaction, SCHL six RMR, structure du fichier 18-10-0289-01, schéma de la base, extrait du dictionnaire du rôle, biais de datation. | |
| 7 | +- Équations numérotées : 9 (prix d'acte, base LDMI, ratio prix/rôle, transport temporel, biais de datation, composition/couverture, variation brute SCHL, vacants implicites, rebasage) ; 1 définition (officielle vs industrie), 1 proposition démontrée (signe du biais de datation). | |
| 8 | +- Exercices : 6 (niveaux 1, 1, 2, 2, 3, 3) ; solutions détaillées dans `solutions/ch13.tex`, chiffres testés (`TestExercices`). | |
| 9 | +- Encadrés : objectifs, 3 × quebec (tarifs du registre foncier ; APCIQ/JLR/Teranet ; moratoire et taux SCHL), exemple intégral (4 étapes, fichiers réels), erreurs, limites, synthese. | |
| 10 | +- Citations : 59 clés, toutes dans `references/library.bib` ; `references/lib-ch13.bib` ne contient aucune nouvelle entrée (commentaire explicatif). | |
| 11 | + | |
| 12 | +## Contrôles | |
| 13 | +- `tools/compile_chapter.sh 13` → `OK ch13 : 50 pages, 0 references/citations non definies, 2 overfull hbox` ; les 2 overfull (0,5 et 1,2 pt) sont dans la bibliographie générée (`\printbibliography`), pas dans le chapitre. | |
| 14 | +- `python3 -m pytest -q analysis/python/tests/test_ch13.py` → 16 passed. | |
| 15 | +- `python3 tools/check_manuscript.py --no-log` : signale les 4 figures « non inscrites dans verification/figures.csv » — attendu, règle de collision de la phase 4 (lignes dans `verification/chapters/ch13-figures.csv`, à fusionner par l'orchestrateur). | |
| 16 | +- PDF inspecté (planche de contact des 50 pages + pages 3, 6, 15, 20, 28-31, 33) : longtables sur 5 pages, URL cassables, TikZ dans la justification, tableaux sans débordement. | |
| 17 | +- Convention `\cref` sans article : toutes les occurrences portent article/préposition écrits à la main. | |
| 18 | + | |
| 19 | +## Fichiers livrés | |
| 20 | +`manuscript/chapters/ch13.tex`, `solutions/ch13.tex`, `analysis/python/cases/ch13_sources.py`, `analysis/python/figures/ch13_{schl,indices,rfu,biais_datation}.py`, `analysis/python/tests/test_ch13.py`, `assets/figures/ch13/*.pdf`, `data/processed/ch13_indices.csv` (trois indices trimestriels rebasés, produit par le script de cas), `verification/chapters/ch13-{figures,calculations,claims,registry}.csv`, `references/lib-ch13.bib`, ce bilan. Rien n'a été écrit dans les CSV globaux, `library.bib`, `styles/`, `main.tex` ni dans la bibliothèque `traite/`. | |
| 21 | + | |
| 22 | +## Constats nouveaux tirés de la lecture des fichiers bruts | |
| 23 | +- La série IPCB « Bâtiments résidentiels » de la RMR de Québec n'existe qu'à partir du T1 2023 (15 obs.) ; +9,19 % sur un an au T3 2026 vs +8,57 % à Montréal et +2,67 % pour le composite des 15 RMR. | |
| 24 | +- Le fichier RFU-2026 porte un facteur de redressement (CSALX02163) de 1,00 / 1,08 / 1,02 pour Montréal / Québec / Gatineau, identique aux facteurs comparatifs publiés par les villes (recoupement indépendant). | |
| 25 | +- SCHL : la variation brute du loyer moyen 2 ch. dépasse la variation estimative dans 5 RMR sur 6 (Montréal 14,5 vs 7,2 %) ; Sherbrooke est l'exception (6,0 vs 9,8 %). | |
| 26 | +- Le répertoire v2.5 ne conserve que 2 renseignements dans la section « Propriétaire » ; aire d'étages, année de construction et valeurs terrain/bâtiment sont facultatives. | |
| 27 | + | |
| 28 | +## Points non vérifiés ou partiellement vérifiés (voir ch13-claims.csv) | |
| 29 | +1. Grille tarifaire du registre foncier : en vigueur à compter du 1er avril 2025 (document « janvier 2026 ») ; indexation 2026 non vérifiée (partiellement_verifie). | |
| 30 | +2. Législation sur la protection des renseignements personnels : mention générale sans numéro de loi (non_verifie, volontaire). | |
| 31 | +3. Modalités d'abonnement Centris/JLR, conditions des séries Teranet C11, texte des conditions SCHL : non vérifiés. | |
| 32 | +4. Écart 1 140 XML annoncés / 1 134 lignes d'index / 1 132 municipalités RFU : non élucidé ; aucun XML de rôle téléchargé. | |
| 33 | +5. Dénombrement des codes du répertoire : 62 par extraction automatique (lecture visuelle : 1-2 codes de plus en section 1). | |
| 34 | +6. Fourchette Altus 155-215 $/pi² et hausses CCQ 8/5/5/4 % : reprises du ch. 21 avec leur statut partiellement vérifié. | |
| 35 | +7. Variation IPC « loyer » Québec +3,3 % : calcul du lot E, non recalculé par le script du chapitre. | |
| 36 | + | |
| 37 | +## Suggestions pour l'harmonisation | |
| 38 | +- Fusionner `ch13-figures.csv` dans `verification/figures.csv` pour faire taire `check_manuscript.py`. | |
| 39 | +- Le ch. 14 peut réutiliser `ch13_sources.schl_rmr()` (parseur des classeurs SCHL avec lettres de qualité) et `indices_compares()` ; le ch. 4 et le ch. 27 peuvent citer directement `tableau_schl()`. | |
| 40 | +- Le ch. 21/23 devraient mentionner que la série IPCB résidentielle de Québec commence au T1 2023 (constat de ce chapitre). | |
| 41 | +- Le ch. 35 (indices) peut reprendre la discussion APCIQ/JLR/Teranet (encadré) et l'eq. 13.6 (biais de composition). | |
| 42 | +- Si `library.bib` est corrigée selon notes-A/B/C/E, les clés citées ici restent valides (aucune clé renommée). | |
added
verification/chapters/ch14-calculations.csv
+19 −0
@@ -0,0 +1,19 @@ | ||
| 1 | +id,chapitre,description,script,test,resultat_attendu,resultat_obtenu,statut,date | |
| 2 | +CALC-14-001,14,Jeu brut reproductible (graine 20261031) et identique au fichier : 618 inscriptions ; 127 anomalies (109 lignes + 18 doublons) ; rôle 600,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_brut_reproductible_et_identique_au_fichier,618;127;600,618;127;600,verifie,2026-10-31 | |
| 3 | +CALC-14-002,14,Comptes d'anomalies injectées par type (tab. 14.1),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_anomalies_injectees,"18;5;8;12;10;9;6;8;6;20;15;10","idem",verifie,2026-10-31 | |
| 4 | +CALC-14-003,14,Entonnoir 618→600 (R1)→595 (R4)→587 (R7)→587 (I1)→581 (S1)→579 (E1),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,618;600;595;587;587;581;579,618;600;595;587;587;581;579,verifie,2026-10-31 | |
| 5 | +CALC-14-004,14,Journal : 144 lignes ; R1 18 ; R2 10 ; R3 8 ; R4 5 ; R5 12 ; R6 15 ; R7 8 ; G1 15 ; I1 45 ; S1 6 ; E1 2,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,144,144,verifie,2026-10-31 | |
| 6 | +CALC-14-005,14,Corrections R2/R3/R5 restituent les valeurs du jeu propre (dates ; prix net ; superficie),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_corrections_restituent_les_valeurs_propres,écart ≤ 0.5,écart ≤ 0.5,verifie,2026-10-31 | |
| 7 | +CALC-14-006,14,Exclusions S1 : B0003 B0006 B0021 B0105 B0173 B0558 (4 liées + 2 faux positifs) ; E1 : B0039 (t −5.84 ; D 0.084) ; B0410 (t −6.70 ; D 0.048),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,idem,idem,verifie,2026-10-31 | |
| 8 | +CALC-14-007,14,Itérations E1 : n 581→579 ; σ 0.0897→0.0837 ; Cook max 0.084 < 1 ; 25 obs > 4/n ; 18 leviers > 2k/n,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_iterations_regression,581;579;0.0897;0.0837;25;18,581;579;0.0897;0.0837;25;18,verifie,2026-10-31 | |
| 9 | +CALC-14-008,14,Identités : tr(H) = k ; D_i = r_i² h/(k(1−h)) = forme par réestimation ; t_i = r_i sqrt((n−k−1)/(n−k−r_i²)),analysis/python/cases/ch14_nettoyage.py (diagnostics ; cook_direct),analysis/python/tests/test_ch14.py::test_identites_levier_cook,égalité à 1e-6,égalité à 1e-6,verifie,2026-10-31 | |
| 10 | +CALC-14-009,14,Constante 1/Φ⁻¹(0.75) = 1.4826 ; 1.4826·MAD → σ (simulation 200 000 N(0;2)),scipy.stats.norm,analysis/python/tests/test_ch14.py::test_constante_mad_et_score,1.4826 ; 2.00 ± 1 %,1.4826 ; 2.00,verifie,2026-10-31 | |
| 11 | +CALC-14-010,14,Masquage Hull (tab. 14.3) : n 193 ; s 1.395 ; 1.4826·MAD 0.181 ; 2 vs 10 signalées ; 2 prix à 1 $,analysis/python/cases/ch14_nettoyage.py (illustration_masquage),analysis/python/tests/test_ch14.py::test_masquage,193;1.395;0.181;2;10,193;1.395;0.181;2;10,verifie,2026-10-31 | |
| 12 | +CALC-14-011,14,Modèles (tab. 14.6) : brut n 573 R² 0.039 σ 1.231 lnS 0.2009 préd 565 471 ; règles σ 0.1132 ; S1 σ 0.0897 ; nettoyé n 579 R² 0.850 σ 0.0837 lnS 0.5335 préd 637 017 ; référence n 600 R² 0.853 σ 0.0830 lnS 0.5391 préd 637 953,analysis/python/cases/ch14_nettoyage.py (comparer_modeles),analysis/python/tests/test_ch14.py::test_modeles_avant_apres,idem,idem,verifie,2026-10-31 | |
| 13 | +CALC-14-012,14,Écart nettoyé − référence ≤ 0.44 erreur-type sur les 16 coefficients,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_modeles_avant_apres,< 0.5,0.44,verifie,2026-10-31 | |
| 14 | +CALC-14-013,14,Géocodage (tab. 14.5) : erreurs médianes 6/18/47/177/1199 m ; voisins conservés 99.1/97.1/93.1/76.1/17.6 % ; rayon modifié 0/0/0.33/1.33/6.67 % ; 103 ventes dans 3 km ; médiane Rayleigh 1.1774σ,analysis/python/cases/ch14_nettoyage.py (simulation_geocodage),analysis/python/tests/test_ch14.py::test_geocodage,idem,idem,verifie,2026-10-31 | |
| 15 | +CALC-14-014,14,Appariement (tab. 14.7) : 367 (59.4 %) ; 198 (32.0 %) ; 45 (7.3 %) ; 8 (1.3 %) ; 3 ambigus ; 0 faux,analysis/python/cases/ch14_nettoyage.py (appariement_role),analysis/python/tests/test_ch14.py::test_appariement,idem,idem,verifie,2026-10-31 | |
| 16 | +CALC-14-015,14,Imputations (tab. 14.8) : suppression n 535 lnT 0.0969 préd 640 921 ; médiane 0.0941 / 637 017 ; régression 0.0940 / 637 166 ; indicateur 0.0945 / 638 354 ; coef manq_terrain −0.0215,analysis/python/cases/ch14_nettoyage.py (comparer_imputations),analysis/python/tests/test_ch14.py::test_imputations,idem,idem,verifie,2026-10-31 | |
| 17 | +CALC-14-016,14,Sensibilité (tab. 14.9) : 12 combinaisons ; 6 liées détectées partout ; faux positifs 22 (2.5;2.5) / 2 (3.5;3) / 0 (4;3) ; σ 0.0783–0.0838 ; prédiction 633 813–638 476,analysis/python/cases/ch14_nettoyage.py (sensibilite_seuils),analysis/python/tests/test_ch14.py::test_sensibilite_seuils,idem,idem,verifie,2026-10-31 | |
| 18 | +CALC-14-017,14,Variante MNAR (sol. 14.7) : suppression n 536 lnT 0.1007 préd 638 976 ; médiane 0.0977 / 636 195 ; régression 0.0972 / 636 224 ; indicateur 0.0978 / 638 201 ; coef manq_terrain −0.0502 (e.-t. 0.0143),analysis/python/cases/ch14_nettoyage.py (variante_mnar_terrain),analysis/python/tests/test_ch14.py::test_variante_mnar,idem,idem,verifie,2026-10-31 | |
| 19 | +CALC-14-018,14,Solutions 14.1–14.5 : méd 3260 MAD 110 z 16.68 / zc 2.65 ; 1776 pi² = 165.0 m² ; r −3.074 t −3.097 D 0.0246 ; εδ −0.0347 (−3.4 %) σ 0.173 ; poids FS 16.35 / 11.18 / 0.78,solutions/ch14.tex,analysis/python/tests/test_ch14.py::test_solutions_exercices,idem,idem,verifie,2026-10-31 | |
added
verification/chapters/ch14-figures.csv
+7 −0
@@ -0,0 +1,7 @@ | ||
| 1 | +fichier,chapitre,script,donnees,type_donnees,legende_courte,statut | |
| 2 | +ch14/ch14-fig-avant-apres.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Jeu brut (618 inscriptions, échelles log, corrigées/exclues) et jeu nettoyé (579 ventes) dans le plan superficie–prix [données synthétiques]",verifie | |
| 3 | +ch14/ch14-fig-scores-robustes.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Effet de masquage : score classique vs score robuste du ln prix/m², secteur Hull après R1–R3 [données synthétiques]",verifie | |
| 4 | +ch14/ch14-fig-levier-cook.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Résidu studentisé externe vs levier, taille ∝ distance de Cook, première itération E1 (n = 581) [données synthétiques]",verifie | |
| 5 | +ch14/ch14-fig-geocodage.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Erreur de position simulée par technique de géocodage (ECDF) et effet sur voisins kNN et rayon 3 km [données synthétiques ; σ hypothétiques]",verifie | |
| 6 | +ch14/ch14-fig-sensibilite-seuils.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Sensibilité aux seuils MAD × t : faux positifs, ventes liées détectées, σ résiduel [données synthétiques]",verifie | |
| 7 | +ch14/schema-pipeline (TikZ),14,manuscript/chapters/ch14.tex,,schema,"Chaîne de traitement R1–R7 → G1/I1 → S1 → E1 → journal avec effectifs",verifie | |
added
verification/chapters/ch15-calculations.csv
+14 −0
@@ -0,0 +1,14 @@ | ||
| 1 | +id,chapitre,description,script,test,resultat_attendu,resultat_obtenu,statut,date | |
| 2 | +CALC-15-01,15,Mois d'inventaire T3 2026 par RMR (inscriptions / (ventes/3)) : province/Montréal/Québec/Gatineau/Sherbrooke/Trois-Rivières/Saguenay,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_mois_inventaire_et_absorption,"6,1 ; 6,6 ; 3,1 ; 6,5 ; 4,3 ; 3,6 ; 4,0","6,08 ; 6,59 ; 3,06 ; 6,48 ; 4,35 ; 3,60 ; 4,03",verifie,2026-10-31 | |
| 3 | +CALC-15-02,15,Taux d'absorption mensuel = 1/MI (Québec 32,7 % ; Montréal 15,2 %) et ratio stock/flux = MI / (délai unifamiliale en mois) : Montréal 5,0 ; Gatineau 5,8 ; Québec 3,2,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_mois_inventaire_et_absorption,"32,7 ; 15,2 ; 5,0 ; 5,8 ; 3,2",idem,verifie,2026-10-31 | |
| 4 | +CALC-15-03,15,Parts des ventes par secteur de Gatineau : APCIQ T3 2026 (1 044) vs jeu synthétique (600) ; Hull 16,7 % vs 31,0 %,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_parts_secteurs_gatineau,"33,1/16,7/19,3/10,3/20,6 vs 33,3/31,0/20,8/14,8/0",idem,verifie,2026-10-31 | |
| 5 | +CALC-15-04,15,Test de Chow par secteur (G=5 k0=12) : SCR contraint 4,0245 / classique 6,4024 / libre 3,7360 ; F pentes 0,948 (44;540) p 0,570 ; F classique 8,029 (48;540) ; Wald HC1 54,48 p 0,134 ; SCR contraint = SCR du modèle de référence traite.cas1.hedonique,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_chow_identites_et_valeurs,"0,948 ; 0,570 ; 8,029 ; 54,48 ; 0,134",idem,verifie,2026-10-31 | |
| 6 | +CALC-15-05,15,Coefficients hédoniques par secteur (HC1) : ln_S 0,513 (Aylmer) à 0,558 (Masson-Angers) ; qualité 0,048 à 0,078 ; tendance 0,0030 à 0,0044,analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_chow_identites_et_valeurs,voir tableau 15.7,idem,verifie,2026-10-31 | |
| 7 | +CALC-15-06,15,"Tests de Chow pour les autres partitions : Est regroupé p 0,426 ; type (k0=11, « etages » retiré) F p 0,079 / Wald p 0,0096 ; période F p 0,034 / classique 0,024 / Wald 0,037 (non rejeté à 1 %) ; k-moyennes k=2 p 0,588 ; k=5 p 0,427 / Wald 0,057",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_chow_autres_partitions,voir tableau 15.8,idem,verifie,2026-10-31 | |
| 8 | +CALC-15-07,15,"Classification k-moyennes (20 init., graine 20261031) et Ward : silhouette k=2 0,417 ; k=3 0,225 ; k=5 0,188 (Ward 0,156) ; k optimal 2 ; ARI k-moyennes/secteurs 0,213 (k=2) et 0,124 (k=5) ; segment Est = 42 Buckingham + 47 Masson-Angers ; silhouette manuelle = sklearn",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_classification,voir tableaux 15.5 et 15.6,idem,verifie,2026-10-31 | |
| 9 | +CALC-15-08,15,"Sensibilité au jeu de variables : attributs seuls silhouette 0,221 / ARI 0,001 ; coordonnées seules 0,735 / ARI k=5 0,986 ; les deux 0,417 / 0,124",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_classification,voir tableau 15.10,idem,verifie,2026-10-31 | |
| 10 | +CALC-15-09,15,"Validation croisée 10 plis : RMSE log 0,1053 (sans segment) ; 0,0839 (indicatrices de secteur, référence) ; 0,0888 (équation par secteur) ; 0,0942 (équation par segment k=5) ; erreurs abs. médianes 7,08 / 5,81 / 6,26 / 6,71 %",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_validation_croisee,voir tableau 15.9,idem,verifie,2026-10-31 | |
| 11 | +CALC-15-10,15,"Cas 3 (traite.cas3.revenus) : RBP contrat 165 540 $, marché 186 036 $, écart 20 496 $ = 11,0 % du marché ; par type 15,8 / 11,1 / 4,9 % ; loyers de marché à 98,5 / 99,4 / 94,4 % des moyennes SCHL zone 9",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_locatif,"20 496 ; 11,0 ; 15,8 ; 11,1 ; 4,9",idem,verifie,2026-10-31 | |
| 12 | +CALC-15-11,15,"SCHL zone 9 : parts de l'univers 12,5/27,8/50,5/9,1 % (somme 44 554) ; écart loyer inoccupé/occupé 1 ch. 22,9 %, RMR tous 27,1 % ; prime du parc neuf 55,2 %, part 1,41 % ; zone = 6,7 % de l'univers RMR ; 3 ch.+ zone vs RMR +7,6 %",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_locatif,voir texte §15.6,idem,verifie,2026-10-31 | |
| 13 | +CALC-15-12,15,"Rattrapage des loyers : rotation 15 % / 9,4 % / 8,5 % → an 1 : 3 074 / 1 927 / 1 742 $ ; horizon 6,7 / 10,6 / 11,8 ans ; part en 5 ans 55,6 / 39,0 / 35,9 %",analysis/python/cases/ch15_segmentation.py,analysis/python/tests/test_ch15.py::test_locatif;test_solutions_exercices,idem,idem,verifie,2026-10-31 | |
| 14 | +CALC-15-13,15,"Solutions des exercices 15.1 (4,35 mois ; 23,0 % ; 5,80), 15.3 (4 059 ; 80,1 %), 15.4 (s = 0,644), 15.5 (F 0,948 / 8,03 ; quantiles 1,40 / 1,38), 15.6 (0,556 / 0,390 / 0,359 ; 15,8 % ; 22,9 %) ; 1 − 0,95^6 = 26,5 %",solutions/ch15.tex,analysis/python/tests/test_ch15.py::test_solutions_exercices,idem,idem,verifie,2026-10-31 | |
added
verification/chapters/ch15-figures.csv
+7 −0
@@ -0,0 +1,7 @@ | ||
| 1 | +fichier,chapitre,script,donnees,type_donnees,legende_courte,statut | |
| 2 | +ch15/ch15-fig-mois-inventaire.pdf,15,analysis/python/figures/ch15_figures.py,"APCIQ T3 2026 (ventes, inscriptions, délais ; chiffres cités dans analysis/python/cases/ch15_segmentation.py)",reelle,"Mois d'inventaire par RMR, T3 2026, avec délais de vente médians (APCIQ cité ; calculs de l'auteur)",verifie | |
| 3 | +ch15/ch15-fig-dendrogramme.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Dendrogramme de Ward des 600 ventes (attributs + coordonnées), coupes k = 2 et k = 5 [données synthétiques]",verifie | |
| 4 | +ch15/ch15-fig-silhouette.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Silhouette moyenne selon k pour trois jeux de variables ; profil des silhouettes à k = 5 [données synthétiques]",verifie | |
| 5 | +ch15/ch15-fig-carte-segments.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Carte fictive des segments k-moyennes (k = 2 et k = 5), petits multiples, sujet en étoile [données synthétiques]",verifie | |
| 6 | +ch15/ch15-fig-coefficients-secteurs.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Coefficients hédoniques par secteur avec IC 95 % HC1 et coefficient commun [données synthétiques]",verifie | |
| 7 | +ch15/ch15-fig-loyers-rosemont.pdf,15,analysis/python/figures/ch15_figures.py,"SCHL ELL oct. 2025, tableaux 1.1.2 et 1.1.3 RMR Montréal (data/raw/schl_rml_2025/rmr-montreal-2025-fr.xlsx ; valeurs recopiées dans ch15_segmentation.py)",reelle,"Structure des loyers et de l'univers locatif, zone SCHL 9 Rosemont vs RMR de Montréal, octobre 2025 (SCHL cité)",verifie | |
added
verification/chapters/ch22-claims.csv
+19 −0
@@ -0,0 +1,19 @@ | ||
| 1 | +id,chapitre,affirmation,source_id,verification,date,statut,notes | |
| 2 | +CLM-22-001,22,"MEFQ bloc 07 (2C, chap. 4) : aire au sol = « surface brute totale que contiendrait la projection au sol de tous les étages et sous-sols » ; aire des étages = « somme des aires de chacun des étages… exclut mezzanine ou attique » ; mesures brutes à la face externe ; étage si plancher ≤ 0,4 m sous le niveau moyen du sol ; murs mitoyens exclus ; garage et verrière intégrés dans l'étage",SRC-B-009,notes-B.md §9.7 (PDF partie 2 lu par extraits ; pied de page « 2022 » dans le PDF 2026),2026-10-31,verifie, | |
| 3 | +CLM-22-002,22,"MEFQ édition 2026 applicable aux rôles entrant en vigueur le 1er janvier 2027 ; barèmes 3E protégés (droit d'auteur, pas de licence ouverte) ; Règlement sur le rôle art. 1-2 : consignes du Manuel obligatoires",SRC-B-006;SRC-B-008,notes-B.md §9.7,2026-10-31,verifie,Barèmes 3E non dépouillés | |
| 4 | +CLM-22-003,22,"Code de construction chap. I = CNB 2020 modifié Québec, en vigueur le 17 avril 2025, transition jusqu'au 17 octobre 2027 ; chap. I.1 efficacité énergétique",SRC-B-053,notes-B.md §44.1,2026-10-31,verifie,Texte du Code non dépouillé ; exigences précises (isolation, séparation coupe-feu) décrites sans article | |
| 5 | +CLM-22-004,22,"Loi sur le bâtiment art. 46 (licence obligatoire) et art. 49 (exemption unifamiliale à usage personnel sauf gaz, pétrole, électricité) ; catégories de licence RBQ",SRC-B-052,notes-B.md §44.1,2026-10-31,verifie, | |
| 6 | +CLM-22-005,22,"CCQ : conventions collectives sectorielles 2025-2029 ; quatre secteurs (génie civil et voirie, industriel, institutionnel et commercial, résidentiel — léger/lourd) ; obligation de payer selon les conventions ; outil public des taux par date et secteur ; textes des conventions prioritaires sur l'outil",SRC-22-001,Page ccq.org « Salaire et taux » lue le 2026-10-31 (agent web-fetch),2026-10-31,verifie, | |
| 7 | +CLM-22-006,22,"Majoration annuelle des taux au 26 avril 2026 « de l'ordre de 5 % selon le secteur » (résidentiel léger 5,5 %, autres 5 %)",SRC-22-001,Tableau de la page CCQ ; association exacte des pourcentages aux secteurs peu lisible dans l'extrait,2026-10-31,partiellement_verifie,Formulé prudemment (« de l'ordre de 5 % ») | |
| 8 | +CLM-22-007,22,"Hausses salariales 2025-2029 de 8, 5, 5 et 4 % (relayées par Altus)",SRC-E-042,notes-E.md ; non confirmé sur la page CCQ (qui donne la majoration 2026 seulement),2026-10-31,partiellement_verifie,Repris du ch. 21 avec la même réserve | |
| 9 | +CLM-22-008,22,"Canadian Institute of Quantity Surveyors : décerne les titres PQS (Professional Quantity Surveyor) et CEC (Construction Estimator Certified)",SRC-22-002,Page d'accueil ciqs.org lue le 2026-10-31,2026-10-31,verifie,Nom français de l'organisme non confirmé → non employé ; aucune méthode de mesurage CIQS citée | |
| 10 | +CLM-22-009,22,"Terminologie : quantity survey method au sommet de la hiérarchie des méthodes de coût (Appraisal Institute) ; unit-in-place ; bill of quantities",,Clés appraisal2026 et aiDictionary2022 de library.bib (ouvrages non relus dans ce lot),2026-10-31,partiellement_verifie,Terminologie standard ; pages non citées | |
| 11 | +CLM-22-010,22,"Superficie habitable des fiches de courtage : « l'usage le plus répandu la prend à la face externe des murs mais exclut le garage et le sous-sol »",,Aucune source OACIQ/Centris dans les notes (notes-A sans convention de mesurage),2026-10-31,non_verifie,Formulé comme usage sans définition réglementaire ; à vérifier au ch. 12 | |
| 12 | +CLM-22-011,22,"Taux de pertes et de chutes du tableau 22.4 (béton 5 %, charpente 10 %, bardeaux 10 %, revêtement 10 %, isolation 5 %, gypse 12 %, bois franc 8 %, céramique 10 %, flottant 8 %)",,Hypothèses pédagogiques déclarées comme telles dans le texte et le tabsource,2026-10-31,non_verifie,Ordres de grandeur illustratifs ; renvoi aux guides sous licence | |
| 13 | +CLM-22-012,22,"Tolérances du métré de contrôle : 5 % conforme, 10 % à préciser, au-delà à justifier",,Convention de l'ouvrage déclarée dans le texte,2026-10-31,non_verifie,Convention pédagogique et non norme professionnelle | |
| 14 | +CLM-22-013,22,"Conventions de mesure du devis synthétique (dalle et plancher flottant à l'aire brute ; revêtement sans déduction des ouvertures ; cloisons comprises dans le gypse ; charpente = planchers + murs extérieurs nets)",,Déduites de la cohérence plan/devis (ch22_metre.py) ; aucune source externe,2026-10-31,non_verifie,Déclarées comme conventions du devis à vérifier auprès de l'estimateur | |
| 15 | +CLM-22-014,22,"La part de la main-d'œuvre dépasse souvent la moitié du prix unitaire pour le tirage de joints, la peinture et la pose de céramique ; faible pour fenêtres et thermopompe",,Affirmation qualitative sans source chiffrée dans les notes,2026-10-31,non_verifie,Illustrée par l'exercice 22.5 avec des valeurs hypothétiques déclarées | |
| 16 | +CLM-22-015,22,"Aire nette intérieure typiquement 80-85 % de la superficie habitable et 70-75 % de l'aire des étages MEFQ",,Ordre de grandeur déduit du sujet synthétique (82,0 % et 71,2 %) ; aucune statistique externe,2026-10-31,non_verifie,Présenté comme « typiquement » ; valeurs exactes du sujet données | |
| 17 | +CLM-22-016,22,"La formule du prismoïde est exacte pour tout solide dont les sections sont polynomiales de degré ≤ 3 en la hauteur ; aire d'un polygone rectiligne décalé = A + P·e + 4e² (quatre angles convexes nets)",,Résultats mathématiques classiques ; vérifiés numériquement (test_formules_elementaires),2026-10-31,verifie, | |
| 18 | +CLM-22-017,22,"Classification par divisions de travaux : RSMeans (divisions) et IPCB Statistique Canada (divisions de travaux) suivent l'ordre des corps de métier",SRC-E-017,notes-E.md (IPCB par division) ; RSMeans : connaissance générale de la structure du guide (clé rsmeans2025),2026-10-31,partiellement_verifie, | |
| 19 | +CLM-22-018,22,"Garage intégré : séparation coupe-feu garage–habitation et plafond du garage en gypse exigés par le Code",,Connaissance générale du CNB (partie 9) ; article non relevé dans les notes,2026-10-31,non_verifie,Formulé comme exigence générale sans article ; à confirmer (CNB 2020 mod. Québec, partie 9) | |
modified
verification/chapters/ch22-figures.csv
+2 −2
@@ -2,5 +2,5 @@ fichier,chapitre,script,donnees,type_donnees,legende_courte,statut | ||
| 2 | 2 | ch22/ch22-fig-repartition-corps.pdf,22,analysis/python/figures/ch22_repartition.py,data/synthetic/cas1_gatineau_couts.csv,synthetique,"Répartition du devis du cas 1 par bloc de corps de métier (mêmes 7 blocs que ch. 21) et par type d'unité : mesuré / dénombré / forfait [données synthétiques]",verifie |
| 3 | 3 | ch22/ch22-fig-ecarts-metre.pdf,22,analysis/python/figures/ch22_ecarts.py,"data/synthetic/cas1_gatineau_couts.csv;analysis/python/cases/ch22_metre.py (PLAN, PIECES)",synthetique,"Écarts du métré de contrôle par poste mesuré ou dénombré avec bandes de tolérance ±5 % / ±10 % ; 20 conformes, 2 à préciser, 2 à justifier [données synthétiques]",verifie |
| 4 | 4 | ch22/schema-processus-metre (TikZ),22,manuscript/chapters/ch22.tex,,schema,"Processus du métré : plans → dimensions de base → règles par corps de métier → bordereau → prix unitaires → coût direct ; boucle du métré de contrôle",verifie |
| 5 | −ch22/plan-cote-sujet (TikZ),22,manuscript/chapters/ch22.tex,analysis/python/cases/ch22_metre.py (PLAN, PIECES ; code TikZ généré par --tikz),synthetique,"Plan coté du sujet du cas 1 : rez-de-chaussée (garage intégré 3,96 × 6,30 m) et étage, 12,00 × 7,92 m, aires brutes des pièces [données synthétiques]",verifie | |
| 6 | −ch22/coupe-transversale-sujet (TikZ),22,manuscript/chapters/ch22.tex,analysis/python/cases/ch22_metre.py (PLAN),synthetique,"Coupe transversale schématique : fondation 2,44 m, deux niveaux de 2,75 m, toit 6:12 avec débords 0,40 m, prisme d'excavation (dégagement 0,90 m, talus 0,5:1, profondeur 2,60 m) [données synthétiques]",verifie | |
| 5 | +ch22/plan-cote-sujet (TikZ),22,manuscript/chapters/ch22.tex,analysis/python/cases/ch22_metre.py (PLAN, PIECES ; code TikZ généré par --tikz),schema,"Plan coté du sujet du cas 1 : rez-de-chaussée (garage intégré 3,96 × 6,30 m) et étage, 12,00 × 7,92 m, aires brutes des pièces [données synthétiques]",verifie | |
| 6 | +ch22/coupe-transversale-sujet (TikZ),22,manuscript/chapters/ch22.tex,analysis/python/cases/ch22_metre.py (PLAN),schema,"Coupe transversale schématique : fondation 2,44 m, deux niveaux de 2,75 m, toit 6:12 avec débords 0,40 m, prisme d'excavation (dégagement 0,90 m, talus 0,5:1, profondeur 2,60 m) [données synthétiques]",verifie | |
modified
verification/claims.csv
+43 −0
@@ -502,3 +502,46 @@ CLM-19-07,19,Version corrigée de la statistique de Moran sur résidus MCO : 17, | ||
| 502 | 502 | CLM-19-08,19,Travaux de Québec : Des Rosiers–Thériault–Villeneuve 2000 (accès/voisinage) ; Thériault et al. 2003 (prix implicites variant avec la localisation) ; Kestens et al. 2006 (profil des acheteurs) ; Dubé–Legros 2013 (données de Québec),SRC-D-*,notes-D.md §ch. 18-19 et 38 (entrées vérifiées lib-D),2026-10-31,verifie,résumés des titres/notes-D ; aucun chiffre tiré de ces articles |
| 503 | 503 | CLM-19-09,19,Un degré de longitude vaut ≈ 78 km à la latitude de Gatineau et un degré de latitude ≈ 111 km,,calcul : 111,32 × cos(45,4°) = 78,2 km |
| 504 | 504 | CLM-19-10,19,Portées de dépendance de plusieurs kilomètres (Basu–Thibodeau 1998 Dallas) ; anisotropie (Gillen–Thibodeau–Wachter 2001),SRC-D-*,notes-D.md §ch. 19 (titres et résumés),2026-10-31,partiellement_verifie,ordre de grandeur cité sans chiffre précis |
| 505 | +CLM-13-001,13,"Registre foncier : publicité par inscription (art. 2934, 2941), présomption de connaissance (2943), index des immeubles par fiche (2969-2972.1) ; contenu de la fiche : Règlement sur la publicité foncière art. 4-5",SRC-A-001,notes-A.md §2.2 (LégisQuébec à jour au 15 oct. 2026),2026-10-31,verifie, | |
| 506 | +CLM-13-002,13,"Tarifs registre foncier en vigueur à compter du 1er avril 2025 (grille « janvier 2026 ») : consultation 1 $/document, inscription 142 $, radiation 162 $, état certifié 16 $ + 16 $/réquisition, copie non certifiée 26 $, certifiée 42 $ ; Loi B-9 annexe I montants de base",SRC-A-registre,notes-A.md §3.1 ; clé registreFoncierTarifs2026,2026-10-31,partiellement_verifie,Aucune grille postérieure au 1er avril 2025 trouvée ; indexation 2026 non vérifiée (signalé en limites) | |
| 507 | +CLM-13-003,13,"Rôle ouvert MAMH : 1 140 fichiers XML annoncés, CC BY 4.0, cadastre/noms/adresses caviardés, interdiction de réidentifier ; règlement F-2.1 r. 13 art. 20 al. 3 (format ouvert sans nom ni adresse)",SRC-B-roles,notes-B.md §9.8 ; data/raw/SOURCES.md ; clé dqroles,2026-10-31,verifie,Index 2026 déposé : 1 134 lignes ; RFU : 1 132 municipalités locales — écart non élucidé (limites) | |
| 508 | +CLM-13-004,13,"Champs du répertoire v2.5 : RL0101 adresse, RL0104 matricule, RL0105A CUBF, RL0107A unité de voisinage, RL0302A terrain, RL0307A/B année, RL0308A aire d'étages, RL0311A logements, RL0401A-RL0405A valeurs ; caractère obligatoire/facultatif",SRC-E-063,Lecture du PDF data/raw/mamh_roles_evaluation/repertoire…v2.5.pdf (pdftotext + pypdf),2026-10-31,verifie,Dénombrement automatique 62 codes ; lecture visuelle +1 ou 2 en section 1 | |
| 509 | +CLM-13-005,13,"LFM : art. 42 (valeur réelle), 46 al. 1 (date de référence 1er juillet du 2e exercice précédent), 36.1 (vérification des données tous les 9 ans) ; r. 13 art. 1-2 (renvoi au MEFQ), art. 3 (fichier des mutations conservé ≥ 4 ans)",SRC-B-lfm,notes-B.md §9.1-9.2 et 9.7,2026-10-31,verifie, | |
| 510 | +CLM-13-006,13,"LDMI : base d'imposition = max(contrepartie fournie, stipulée, valeur marchande = rôle × facteur, art. 1.1 et 2) ; exonérations art. 19-20 (ligne directe, conjoints, société à 90 %) ; art. 10 avis à la municipalité dans 15 jours",SRC-A-ldmi,notes-A.md §2.3 ; notes-B.md §9.9,2026-10-31,verifie, | |
| 511 | +CLM-13-007,13,Règlement sur la proportion médiane : ventes ≥ 5 000 $ (art. 2) ; épuration des ratios hors [médiane ± 2σ] (art. 15-16),SRC-B-r10,notes-B.md §9.3,2026-10-31,verifie, | |
| 512 | +CLM-13-008,13,"APCIQ T3 2026 : 20 935 ventes (-7 %), 42 408 inscriptions (+20 %), médianes 500 000 / 400 000 / 699 000 $ ; RMR Québec 463 500 $ (+2 %), 2 161 ventes ; conditions d'utilisation (attribution, usage commercial interdit)",SRC-E-001,notes-E.md ch. 4 ; notes-C.md §4.8 ; clés apciqt32026 apciqconditions,2026-10-31,verifie,Donnée d'industrie | |
| 513 | +CLM-13-009,13,"JLR : méthodologie (registre foncier, seuil 30 transactions, exclusions < 5 000 $, ventes liées, reprises, indivises, multiples) ; sept. 2026 médianes 12 mois 483 000 $ (+7 %) et 622 000 $ (+9 %) ; RMR Québec 579 ventes unifam. (+6 %) ; août 2026 Ottawa-Gatineau 522 741 $, 12 mois 495 000 $, ratio prix/évaluation 111 %",SRC-C-jlr,notes-C.md §4.9 ; notes-E.md ch. 13 ; clés jlr202608 jlr202609,2026-10-31,verifie,Modalités d'abonnement non vérifiées | |
| 514 | +CLM-13-010,13,"Teranet–BN sept. 2026 : composite 294.94 (-3.5 % a/a), Montréal 310.62 (+1.4 %), Québec 327.56 (+7.7 %) ; base juin 2005 = 100 ; 11 RMR ; ventes répétées",SRC-C-teranet,notes-C.md §4.9 ; clé teranet202609,2026-10-31,verifie,Conditions des données C11 non lues (TLS invalide) | |
| 515 | +CLM-13-011,13,Statistique Canada ne publie aucun tableau de prix de vente résidentiels au Québec ; tableaux 46-10-0049/0051 archivés et sans prix,SRC-E-stat,data/raw/SOURCES.md (« Jeux publics notés mais non téléchargés »),2026-10-31,verifie, | |
| 516 | +CLM-13-012,13,"Recensement 2021 : 3 749 035 ménages privés au Québec, 59.9 % propriétaires (Canada 66.5 %)",SRC-E-022,notes-E.md ch. 4 ; notes-C.md §4.7 (tableaux 98-10-0240-01 / 98-10-0041-01 via WDS),2026-10-31,verifie, | |
| 517 | +CLM-13-013,13,"SCHL ELL : univers = appartements d'initiative privée, immeubles de 3 logements et plus ; enquête d'octobre, publication 11 déc. 2025 ; lettres a-d ; ** supprimées ; variation estimative fondée sur les immeubles présents les deux années ; tableaux 1.1.9 inoccupés/occupés ; copropriétés 4.x ; Montréal 35 tableaux/39 zones, Gatineau zones 21-24",SRC-E-007,"Lecture des classeurs data/raw/schl_rml_2025 (table des matières, notes de bas de tableau)",2026-10-31,verifie,Conditions d'utilisation lues sur la page générale SCHL ; seuils numériques des lettres non publiés dans les classeurs | |
| 518 | +CLM-13-014,13,"TAL : nouvelle méthode D. 1455-2025 en vigueur 1er janv. 2026 (art. 3 six critères, art. 3.1 IPC moyen 3 ans) ; pourcentage de base 3.1 % (2026), 4.5 % (2025) ; ancienne méthode 2026 : entretien 5.7, gestion 7.2, revenu net 5.7, immobilisations 4 ; formulaire RN 2026-2027 (postes) ; résumé « la valeur marchande locative n'est pas un critère »",SRC-A-tal,notes-A.md §6.2-6.3 ; clés decret1455_2025 reglCriteresFixation talIndices2026 talFormulaireRN2026 talResumesDecisions,2026-10-31,verifie, | |
| 519 | +CLM-13-015,13,"C.c.Q. art. 1896 (avis du loyer le plus bas des 12 mois), 1904 (aucun dépôt), 1955 (immeubles < 5 ans, loyer maximal au bail depuis le 21 fév. 2024), 1731 (vente sous contrôle de justice sans garantie), 1732-1733 (exclusion de garantie), 1785 (dédit 10 jours), 2778 (prise en paiement, autorisation si ≥ 50 % acquitté)",SRC-A-001,"notes-A.md §2.1, §4, §5",2026-10-31,verifie, | |
| 520 | +CLM-13-016,13,Loi 65 (L.Q. 2024 c. 23) : moratoire sur les évictions art. 1959 jusqu'au 6 juin 2027 (art. 1) ; fin anticipée 60 jours après avis si taux d'inoccupation SCHL (centres ≥ 10 000) atteint 3 % (art. 11) ; aucun avis repéré au 31 oct. 2026,SRC-A-loi65,notes-A.md §5 ; clé loi65_2024,2026-10-31,verifie,À revérifier avant publication | |
| 521 | +CLM-13-017,13,"OACIQ : DV obligatoire depuis juillet 2012 (résidentiel < 5 logements, personne physique), section D2.6 loyers/TAL ; règlement C-73.2 r. 1 art. 5 (vérifier les renseignements) et 118 (fiche descriptive, mention « vendu sans garantie légale »)",SRC-A-oaciq,notes-A.md §2.4 ; clés oaciqFormulaireDV oaciqContexteDV reglCourtageDeontologie,2026-10-31,verifie,Formulaire DV V24 (06/2022) ; versions postérieures non consultées | |
| 522 | +CLM-13-018,13,"Déontologie OEAQ : art. 41 (méthodologie et étendue des recherches), art. 51 (secret professionnel) ; tenue des dossiers r. 133 art. 6 (5 ans) et 7 (confidentialité) ; NPP règle 2.3 (étendue du travail, traitement de l'information)",SRC-C-oeaq,notes-C.md §2.1-2.3,2026-10-31,verifie, | |
| 523 | +CLM-13-019,13,Législation québécoise sur la protection des renseignements personnels : mentionnée de façon générale sans numéro de loi ni article,—,Non vérifiée dans les notes du dépôt,2026-10-31,non_verifie,Formulation générale volontaire ; juriste à consulter | |
| 524 | +CLM-13-020,13,"Montréal : unités d'évaluation (hebdo, CUBF, logements, année, superficies, matricule, sans valeur légale) ; permis (hebdo, coûts déclarés sans valeur légale, Lachine et Saint-Léonard absents) ; Québec permis (màj 2026-10-25) ; pas de jeu « rôle » propre à Québec ni à Gatineau",SRC-B-mtl,notes-B.md §9.8 ; clés mtlunites mtlpermis vqpermis,2026-10-31,verifie, | |
| 525 | +CLM-13-021,13,"IPLN Montréal sept. 2026 159.5 ; IPC Québec ensemble v41691783 ; composante loyer IPC Québec +3.3 % (sept. 2026/sept. 2025, calcul 174.2/168.6)",SRC-E-015/016,notes-E.md ch. 27 et notes-C.md §4.7 ; CSV bruts data/raw,2026-10-31,verifie,La variation « loyer » +3.3 % est un calcul du lot E non recalculé dans ch13_sources.py | |
| 526 | +CLM-13-022,13,"Altus Canadian Cost Guide 2026 publié le 23 avril 2026, tableaux protégés ; fourchette 155-215 $/pi² Montréal unifamiliale relayée par une source secondaire ; Marshall & Swift ; RSMeans ; CCQ hausses 8/5/5/4 % (2025-2029)",SRC-E-043,notes-E.md ch. 23 ; ch21-claims.csv,2026-10-31,partiellement_verifie,Fourchette et hausses CCQ relayées (Altus/NerdWallet) ; reprises avec cette réserve | |
| 527 | +CLM-13-023,13,"Banque du Canada : taux directeur 2.50 % depuis le 28 oct. 2026 ; API Valet ; conditions d'utilisation (non commercial, attribution)",SRC-E-009,notes-C.md §4.1 ; data/raw/SOURCES.md ; clés bdc20261028 bdcvalet,2026-10-31,verifie, | |
| 528 | +CLM-13-024,13,"Facteurs comparatifs 2026 : Montréal 1.00, Gatineau 1.02 (pages droits de mutation) ; Québec 1.08 (page Ville de Québec) — concordent avec CSALX02163 du fichier RFU-2026",SRC-B-facteurs,notes-B.md §9.3 ; notes-A.md §2.3 ; lecture RFU-2026.csv,2026-10-31,verifie,Recoupement indépendant réussi | |
| 529 | +CLM-13-025,13,"MEFQ 2026 : applicable aux rôles au 1er janv. 2027 ; parties 2A/2C/2D/3E ; droit d'auteur du gouvernement, sans licence ouverte (page Québec.ca Droit d'auteur)",SRC-B-mefq,notes-B.md §9.7 ; clés mefq2026 mefqpartie2,2026-10-31,verifie, | |
| 530 | +CLM-22-001,22,"MEFQ bloc 07 (2C, chap. 4) : aire au sol = « surface brute totale que contiendrait la projection au sol de tous les étages et sous-sols » ; aire des étages = « somme des aires de chacun des étages… exclut mezzanine ou attique » ; mesures brutes à la face externe ; étage si plancher ≤ 0,4 m sous le niveau moyen du sol ; murs mitoyens exclus ; garage et verrière intégrés dans l'étage",SRC-B-009,notes-B.md §9.7 (PDF partie 2 lu par extraits ; pied de page « 2022 » dans le PDF 2026),2026-10-31,verifie, | |
| 531 | +CLM-22-002,22,"MEFQ édition 2026 applicable aux rôles entrant en vigueur le 1er janvier 2027 ; barèmes 3E protégés (droit d'auteur, pas de licence ouverte) ; Règlement sur le rôle art. 1-2 : consignes du Manuel obligatoires",SRC-B-006;SRC-B-008,notes-B.md §9.7,2026-10-31,verifie,Barèmes 3E non dépouillés | |
| 532 | +CLM-22-003,22,"Code de construction chap. I = CNB 2020 modifié Québec, en vigueur le 17 avril 2025, transition jusqu'au 17 octobre 2027 ; chap. I.1 efficacité énergétique",SRC-B-053,notes-B.md §44.1,2026-10-31,verifie,Texte du Code non dépouillé ; exigences précises (isolation | |
| 533 | +CLM-22-004,22,"Loi sur le bâtiment art. 46 (licence obligatoire) et art. 49 (exemption unifamiliale à usage personnel sauf gaz, pétrole, électricité) ; catégories de licence RBQ",SRC-B-052,notes-B.md §44.1,2026-10-31,verifie, | |
| 534 | +CLM-22-005,22,"CCQ : conventions collectives sectorielles 2025-2029 ; quatre secteurs (génie civil et voirie, industriel, institutionnel et commercial, résidentiel — léger/lourd) ; obligation de payer selon les conventions ; outil public des taux par date et secteur ; textes des conventions prioritaires sur l'outil",SRC-22-001,Page ccq.org « Salaire et taux » lue le 2026-10-31 (agent web-fetch),2026-10-31,verifie, | |
| 535 | +CLM-22-006,22,"Majoration annuelle des taux au 26 avril 2026 « de l'ordre de 5 % selon le secteur » (résidentiel léger 5,5 %, autres 5 %)",SRC-22-001,Tableau de la page CCQ ; association exacte des pourcentages aux secteurs peu lisible dans l'extrait,2026-10-31,partiellement_verifie,Formulé prudemment (« de l'ordre de 5 % ») | |
| 536 | +CLM-22-007,22,"Hausses salariales 2025-2029 de 8, 5, 5 et 4 % (relayées par Altus)",SRC-E-042,notes-E.md ; non confirmé sur la page CCQ (qui donne la majoration 2026 seulement),2026-10-31,partiellement_verifie,Repris du ch. 21 avec la même réserve | |
| 537 | +CLM-22-008,22,Canadian Institute of Quantity Surveyors : décerne les titres PQS (Professional Quantity Surveyor) et CEC (Construction Estimator Certified),SRC-22-002,Page d'accueil ciqs.org lue le 2026-10-31,2026-10-31,verifie,Nom français de l'organisme non confirmé → non employé ; aucune méthode de mesurage CIQS citée | |
| 538 | +CLM-22-009,22,Terminologie : quantity survey method au sommet de la hiérarchie des méthodes de coût (Appraisal Institute) ; unit-in-place ; bill of quantities,,Clés appraisal2026 et aiDictionary2022 de library.bib (ouvrages non relus dans ce lot),2026-10-31,partiellement_verifie,Terminologie standard ; pages non citées | |
| 539 | +CLM-22-010,22,Superficie habitable des fiches de courtage : « l'usage le plus répandu la prend à la face externe des murs mais exclut le garage et le sous-sol »,,Aucune source OACIQ/Centris dans les notes (notes-A sans convention de mesurage),2026-10-31,non_verifie,Formulé comme usage sans définition réglementaire ; à vérifier au ch. 12 | |
| 540 | +CLM-22-011,22,"Taux de pertes et de chutes du tableau 22.4 (béton 5 %, charpente 10 %, bardeaux 10 %, revêtement 10 %, isolation 5 %, gypse 12 %, bois franc 8 %, céramique 10 %, flottant 8 %)",,Hypothèses pédagogiques déclarées comme telles dans le texte et le tabsource,2026-10-31,non_verifie,Ordres de grandeur illustratifs ; renvoi aux guides sous licence | |
| 541 | +CLM-22-012,22,"Tolérances du métré de contrôle : 5 % conforme, 10 % à préciser, au-delà à justifier",,Convention de l'ouvrage déclarée dans le texte,2026-10-31,non_verifie,Convention pédagogique et non norme professionnelle | |
| 542 | +CLM-22-013,22,Conventions de mesure du devis synthétique (dalle et plancher flottant à l'aire brute ; revêtement sans déduction des ouvertures ; cloisons comprises dans le gypse ; charpente = planchers + murs extérieurs nets),,Déduites de la cohérence plan/devis (ch22_metre.py) ; aucune source externe,2026-10-31,non_verifie,Déclarées comme conventions du devis à vérifier auprès de l'estimateur | |
| 543 | +CLM-22-014,22,"La part de la main-d'œuvre dépasse souvent la moitié du prix unitaire pour le tirage de joints, la peinture et la pose de céramique ; faible pour fenêtres et thermopompe",,Affirmation qualitative sans source chiffrée dans les notes,2026-10-31,non_verifie,Illustrée par l'exercice 22.5 avec des valeurs hypothétiques déclarées | |
| 544 | +CLM-22-015,22,Aire nette intérieure typiquement 80-85 % de la superficie habitable et 70-75 % de l'aire des étages MEFQ,,Ordre de grandeur déduit du sujet synthétique (82,0 % et 71,2 %) ; aucune statistique externe,2026-10-31 | |
| 545 | +CLM-22-016,22,La formule du prismoïde est exacte pour tout solide dont les sections sont polynomiales de degré ≤ 3 en la hauteur ; aire d'un polygone rectiligne décalé = A + P·e + 4e² (quatre angles convexes nets),,Résultats mathématiques classiques ; vérifiés numériquement (test_formules_elementaires),2026-10-31,verifie, | |
| 546 | +CLM-22-017,22,Classification par divisions de travaux : RSMeans (divisions) et IPCB Statistique Canada (divisions de travaux) suivent l'ordre des corps de métier,SRC-E-017,notes-E.md (IPCB par division) ; RSMeans : connaissance générale de la structure du guide (clé rsmeans2025),2026-10-31,partiellement_verifie, | |
| 547 | +CLM-22-018,22,Garage intégré : séparation coupe-feu garage–habitation et plafond du garage en gypse exigés par le Code,,Connaissance générale du CNB (partie 9) ; article non relevé dans les notes,2026-10-31,non_verifie,Formulé comme exigence générale sans article ; à confirmer (CNB 2020 mod. Québec | |
modified
verification/figures.csv
+17 −0
@@ -109,3 +109,20 @@ ch22/ch22-fig-ecarts-metre.pdf,22,analysis/python/figures/ch22_ecarts.py,"data/s | ||
| 109 | 109 | ch22/schema-processus-metre (TikZ),22,manuscript/chapters/ch22.tex,,schema,Processus du métré : plans → dimensions de base → règles par corps de métier → bordereau → prix unitaires → coût direct ; boucle du métré de contrôle,verifie |
| 110 | 110 | ch22/plan-cote-sujet (TikZ),22,manuscript/chapters/ch22.tex,analysis/python/cases/ch22_metre.py (PLAN,PIECES ; code TikZ généré par --tikz),synthetique,"Plan coté du sujet du cas 1 : rez-de-chaussée (garage intégré 3,96 × 6,30 m) et étage, 12,00 × 7,92 m, aires brutes des pièces [données synthétiques]" |
| 111 | 111 | ch22/coupe-transversale-sujet (TikZ),22,manuscript/chapters/ch22.tex,analysis/python/cases/ch22_metre.py (PLAN),synthetique,"Coupe transversale schématique : fondation 2,44 m, deux niveaux de 2,75 m, toit 6:12 avec débords 0,40 m, prisme d'excavation (dégagement 0,90 m, talus 0,5:1, profondeur 2,60 m) [données synthétiques]",verifie |
| 112 | +ch13/ch13-fig-schl-loyers.pdf,13,analysis/python/figures/ch13_schl.py,data/raw/schl_rml_2025/rmr-quebec-2025-fr.xlsx,reelle,"SCHL ELL octobre 2025, six RMR : loyer moyen par taille de logement et taux d'inoccupation 2024/2025",verifie | |
| 113 | +ch13/ch13-fig-indices.pdf,13,analysis/python/figures/ch13_indices.py,data/raw/statcan_18100289/18100289.csv ; data/raw/statcan_18100205/18100205.csv ; data/raw/statcan_18100004/18100004.csv,reelle,"IPCB Montréal résidentiel, IPLN Montréal, IPC Québec rebasés T1 2017 = 100 (T1 2017 - T3 2026)",verifie | |
| 114 | +ch13/ch13-fig-rfu.pdf,13,analysis/python/figures/ch13_rfu.py,data/raw/mamh_rfu_2026/RFU-2026.csv,reelle,"Composition de l'évaluation imposable uniformisée 2026 par catégorie : Montréal, Québec, Gatineau",verifie | |
| 115 | +ch13/ch13-fig-biais-datation.pdf,13,analysis/python/figures/ch13_biais_datation.py,aucune (calcul analytique),schema,Biais de datation (1+g)^(delta/12)-1 selon le délai promesse-acte et la croissance annuelle (plage illustrative),verifie | |
| 116 | +fig:13:chaine (TikZ),13,manuscript/chapters/ch13.tex,aucune,schema,"Chaîne de données de l'évaluation : sources [O]/[I], acquisition, normalisation, appariement, épuration, base, usages",verifie | |
| 117 | +ch14/ch14-fig-avant-apres.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Jeu brut (618 inscriptions, échelles log, corrigées/exclues) et jeu nettoyé (579 ventes) dans le plan superficie–prix [données synthétiques]",verifie | |
| 118 | +ch14/ch14-fig-scores-robustes.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Effet de masquage : score classique vs score robuste du ln prix/m², secteur Hull après R1–R3 [données synthétiques]",verifie | |
| 119 | +ch14/ch14-fig-levier-cook.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Résidu studentisé externe vs levier, taille ∝ distance de Cook, première itération E1 (n = 581) [données synthétiques]",verifie | |
| 120 | +ch14/ch14-fig-geocodage.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,Erreur de position simulée par technique de géocodage (ECDF) et effet sur voisins kNN et rayon 3 km [données synthétiques ; σ hypothétiques],verifie | |
| 121 | +ch14/ch14-fig-sensibilite-seuils.pdf,14,analysis/python/figures/ch14_figures.py,data/synthetic/cas1_gatineau_ventes_brut.csv,synthetique,"Sensibilité aux seuils MAD × t : faux positifs, ventes liées détectées, σ résiduel [données synthétiques]",verifie | |
| 122 | +ch14/schema-pipeline (TikZ),14,manuscript/chapters/ch14.tex,,schema,Chaîne de traitement R1–R7 → G1/I1 → S1 → E1 → journal avec effectifs,verifie | |
| 123 | +ch15/ch15-fig-mois-inventaire.pdf,15,analysis/python/figures/ch15_figures.py,"APCIQ T3 2026 (ventes, inscriptions, délais ; chiffres cités dans analysis/python/cases/ch15_segmentation.py)",reelle,"Mois d'inventaire par RMR, T3 2026, avec délais de vente médians (APCIQ cité ; calculs de l'auteur)",verifie | |
| 124 | +ch15/ch15-fig-dendrogramme.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Dendrogramme de Ward des 600 ventes (attributs + coordonnées), coupes k = 2 et k = 5 [données synthétiques]",verifie | |
| 125 | +ch15/ch15-fig-silhouette.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,Silhouette moyenne selon k pour trois jeux de variables ; profil des silhouettes à k = 5 [données synthétiques],verifie | |
| 126 | +ch15/ch15-fig-carte-segments.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,"Carte fictive des segments k-moyennes (k = 2 et k = 5), petits multiples, sujet en étoile [données synthétiques]",verifie | |
| 127 | +ch15/ch15-fig-coefficients-secteurs.pdf,15,analysis/python/figures/ch15_figures.py,data/synthetic/cas1_gatineau_ventes.csv,synthetique,Coefficients hédoniques par secteur avec IC 95 % HC1 et coefficient commun [données synthétiques],verifie | |
| 128 | +ch15/ch15-fig-loyers-rosemont.pdf,15,analysis/python/figures/ch15_figures.py,"SCHL ELL oct. 2025, tableaux 1.1.2 et 1.1.3 RMR Montréal (data/raw/schl_rml_2025/rmr-montreal-2025-fr.xlsx ; valeurs recopiées dans ch15_segmentation.py)",reelle,"Structure des loyers et de l'univers locatif, zone SCHL 9 Rosemont vs RMR de Montréal, octobre 2025 (SCHL cité)",verifie | |
| 112 | 129 | |