TeX 52.9%
Python 45.7%
Shell 1.4%
1% ============================================================================2\section{Results}3\label{sec:results}4% ============================================================================56All results in this section are computed on the \nTargetsTest{} test targets of January 2025 to September 2026, with every configuration, weight and model frozen on the basis of the \nTargetsVal{} validation targets of 2024. Validation-period figures are reported alongside to document the stability of the rankings.78\subsection{How many comparables, how far, how far back?}9\label{sec:surface}1011Figure~\ref{fig:surface_k} plots the out-of-sample MdAPE against the number of comparables $k$ for each search radius, with a twelve-month window and selection by distance, without physical adjustment (left) and with the hedonic grid (right). Figure~\ref{fig:surface_dt} shows the best attainable MdAPE for each radius--window pair, and Table~\ref{tab:surface} reports the full surface for the hedonic grid.1213\begin{figure}[H]14\centering15\includegraphics[width=\textwidth]{f1_mdape_vs_k.pdf}16\caption{Out-of-sample MdAPE (2025--2026) by number of comparables and search radius; twelve-month window, selection by distance, median reconciliation. Left: time adjustment only. Right: hedonic adjustment grid.}17\label{fig:surface_k}18\end{figure}1920\begin{figure}[H]21\centering22\includegraphics[width=0.9\textwidth]{f2_surface_d_T.pdf}23\caption{Best attainable out-of-sample MdAPE (over $k$) for each search radius and look-back window; selection by distance.}24\label{fig:surface_dt}25\end{figure}2627\begin{table}[H]28\centering29\caption{Error surface $\mathrm{Error}(k,d)$: out-of-sample MdAPE (\%), selection by distance, hedonic grid, twelve-month window}30\label{tab:surface}31\small32\input{tables/surface_geo_hedo}33\begin{tablenotes}\footnotesize34\item Note: MdAPE on the 2025--2026 test targets for which the configuration returns a value. Coverage falls below 90\% for radii of 1~km and less in low-density markets; see Table~\ref{tab:surface_cov} in the Appendix.35\end{tablenotes}36\end{table}3738Three regularities emerge. First, without physical adjustment, accuracy improves with $k$ up to about ten comparables (\noneKten{} at $k=10$ for a 10~km radius and twelve-month window) and then deteriorates (\noneKfifty{} at $k=50$): beyond the nearest few, additional sales are increasingly dissimilar and the median of their time-adjusted prices drifts away from the subject's value. Second, with the hedonic grid the picture changes qualitatively. The error falls from \mdapeKone{} with a single comparable to \mdapeKthree{} with three, \mdapeKfive{} with five, \mdapeKten{} with ten, reaches \mdapeKopt{} at $k=\kOpt{}$ and stays there to $k=50$ (\mdapeKfifty{}). Adjustment converts dissimilar sales into usable evidence, so that the variance reduction from averaging more of them is no longer offset by their heterogeneity. Third, the window matters and the radius does not. The three-month window is dominated by the twelve- and twenty-four-month windows at every radius (Figure~\ref{fig:surface_dt}); but at the best $k$ the MdAPE with a 24-month window is 11.9--12.0\% for every radius from 0.5 to 25~km, because $k$ is a maximum and a wide radius only adds sales where the nearby ones run out. The conventional combination---three comparables, within a kilometre, within three months---yields an MdAPE of \narrowMdape{} with the hedonic grid and returns a value for only \narrowCov{} of targets; the best configuration of the surface chosen on the 2024 validation set (\bestSel{}, $k=\bestK$, $d\le\bestD$~km, $t=\bestT$ months, \bestAdj{}) yields \bestValMdape{} on validation and \bestTestMdape{} on the test set.3940Table~\ref{tab:h2} tests H2 by stratifying the $k$-curve by market density. The threshold beyond which additional comparables hurt exists only without physical adjustment: with time adjustment alone the optimum is about ten in dense markets (where the eleventh-nearest sale is already dissimilar) and larger in sparse ones (where every sale within reach is needed). With the hedonic grid there is no threshold within the range studied: the error is minimised at twenty to fifty comparables in every density stratum. H2 is therefore confirmed for the unadjusted method and rejected for the adjusted one---adjustment, not density, determines whether more comparables help.4142\begin{table}[H]43\centering44\caption{Optimal number of comparables by market density (H2): out-of-sample MdAPE (\%)}45\label{tab:h2}46\small47\input{tables/h2}48\begin{tablenotes}\footnotesize49\item Note: selection by distance, $d\le 10$~km, twelve-month window, hedonic grid, median. Density is the number of sample sales within 2~km in the twelve months preceding the target's date. The minimum of each row is in bold.50\end{tablenotes}51\end{table}5253\subsection{Which adjustments are warranted?}54\label{sec:adjustments}5556Table~\ref{tab:adjustments} and Figure~\ref{fig:adjustments} compare the eight adjustment schemes at the $(5, 5\text{ km}, 12\text{ mo})$ anchor with selection by distance, equal weights and the median. The time adjustment alone is worth only \gainTime{} points of MdAPE relative to raw prices with a twelve-month window and \gainTimeLong{} points with a 24-month window: comparables are recent, and a monthly index estimated in real time is itself noisy. Any physical grid is worth a further \gainGridLo{} to \gainGridHi{} points. The stylised conventional grid---which uses no estimation whatsoever---recovers most of the gain of the hedonic grid (\convMdape{} against \mdapeMseven{}), consistent with \citet{colwell1983}'s observation that the grid is a regression with pre-set coefficients that need only be roughly right. The refinements add little: the regional grid is indistinguishable from the global one, the local grid is \localVsHedo{} (\localMdape{}), and the non-linear GBM adjustments improve on the hedonic grid by \gbmVsHedo{} points. The assessment-ratio adjustment stands apart: with \mdapeMthirteen{} it is the most accurate single scheme, but it returns a value for only \covMthirteen{} of targets because it requires comparables on the same assessment roll.5758\begin{table}[H]59\centering60\caption{Adjustment schemes at the $(5,\,5\text{ km},\,12\text{ months})$ anchor}61\label{tab:adjustments}62\small63\input{tables/adjustments}64\begin{tablenotes}\footnotesize65\item Note: five nearest sales, equal weights, median. MdAPE, MAPE, bias and the share within $\pm10\%$ in per cent; coverage is the share of targets for which the scheme returns a value.66\end{tablenotes}67\end{table}6869\begin{figure}[H]70\centering71\includegraphics[width=0.9\textwidth]{f3_ajustements.pdf}72\caption{MdAPE by adjustment scheme, validation (2024) and test (2025--2026); five nearest sales, $\le 5$~km, $\le 12$ months, median.}73\label{fig:adjustments}74\end{figure}7576Table~\ref{tab:h3} examines H3 by crossing the adjustment schemes with market density at two anchors. The local grid tracks the hedonic grid closely where sales are abundant and falls behind where they are scarce, as the bias--variance argument predicts; at the tight $(3, 2\text{ km}, 6\text{ mo})$ anchor, where the local regression is estimated on the smallest pools, the gap widens. The non-linear GBM adjustments are the most accurate scheme in dense markets and lose their advantage in sparse ones. The practical implication is that adjustment grids should be estimated on the largest pool that is homogeneous in implicit prices---in these data, the province with municipality fixed effects---rather than on the handful of sales around the subject.7778\begin{table}[H]79\centering80\caption{Adjustment schemes by market density (H3): out-of-sample MdAPE (\%)}81\label{tab:h3}82\small83\input{tables/h3}84\begin{tablenotes}\footnotesize85\item Note: selection by distance, equal weights, median. Upper panel: $(5, 5\text{ km}, 12\text{ mo})$; lower panel: $(3, 2\text{ km}, 6\text{ mo})$.86\end{tablenotes}87\end{table}8889The estimated hedonic grid itself is of independent interest (Table~\ref{tab:grid}). Within a municipality, the elasticity of price with respect to living area is \betaFloor{}, that with respect to lot area is \betaLand{}, and depreciation is \betaAge{} per year at the mean age with a convex profile; semi-detached and row dwellings sell at discounts of \betaSemi{} and \betaRow{} relative to detached dwellings of the same size. These coefficients are stable across the eleven quarterly re-estimations to the second decimal.9091\begin{table}[H]92\centering93\caption{Hedonic adjustment grid (within-municipality coefficients, log price)}94\label{tab:grid}95\input{tables/grid}96\begin{tablenotes}\footnotesize97\item Note: coefficients of the within-municipality regression of the time-adjusted log price on characteristics, estimated on sales before 2025 (test-period grid). Living and lot areas in logs; age in years; age$^2$/100.98\end{tablenotes}99\end{table}100101\subsection{How should comparables be selected? (H1)}102\label{sec:selection}103104Table~\ref{tab:selection} compares the four selection criteria at the $(5,5,12)$ anchor with the hedonic grid. Selecting by physical similarity rather than by distance lowers the MdAPE by \gainSelHedo{} points when comparables are adjusted, and the compromise criterion, which uses both, is the best of the four. The ``least adjusted'' criterion, which embodies the professional advice to prefer comparables needing few adjustments, performs like the similarity criterion for which it is a proxy.105106\begin{table}[H]107\centering108\caption{Selection criteria at the $(5,\,5\text{ km},\,12\text{ months})$ anchor, hedonic grid}109\label{tab:selection}110\input{tables/selection}111\end{table}112113The direct test of H1 is starker. Without any physical adjustment, the five nearest sales within one kilometre yield an MdAPE of \hOneGeoDone{} (coverage \hOneGeoDoneCov{}); the five most similar sales within ten kilometres yield \hOneSimDten{}. The nearby-but-dissimilar comparable is worse than the distant-but-similar one, by a wide margin. The reason is that, in these data, the physical characteristics explain a larger share of the within-market variance of prices than micro-location does once the municipality is fixed. With the hedonic grid the two criteria converge (\hOneGeoDtenHedo{} against \hOneSimDtenHedo{}), because adjustment does for the nearest sales what selection does for the most similar; the compromise criterion, which uses both, is best (\hOneMixDtenHedo{}).114115\subsection{Weighting and reconciliation (H4)}116\label{sec:weighting}117118Table~\ref{tab:weighting} reports the ten weighting--reconciliation combinations at the $(5,5,12)$ anchor with the hedonic grid, and Table~\ref{tab:h4} stratifies them by density. The range of the MdAPE across all ten combinations is \wrRange{} points. The median is marginally more robust than the mean, as expected from the heavy tails of adjusted indications; distance and similarity weights help slightly in dense markets, where the nearest and most similar comparables are also the most informative, and are neutral or slightly harmful in sparse ones, where they concentrate weight on one or two sales. H4 is thus supported in direction but the effects are an order of magnitude smaller than those of selection and adjustment. The marginal effects over the whole E2 design (Table~\ref{tab:marginal}) make the hierarchy explicit: the adjustment factor spans \margAdjLo{}--\margAdjHi{} points of MdAPE, selection \margSelLo{}--\margSelHi{}, weighting \margWLo{}--\margWHi{}, and reconciliation \margReconMedian{} (median) against \margReconMean{} (mean).119120\begin{table}[H]121\centering122\caption{Weighting and reconciliation at the $(5,\,5\text{ km},\,12\text{ months})$ anchor, hedonic grid}123\label{tab:weighting}124\small125\input{tables/weighting}126\end{table}127128\begin{table}[H]129\centering130\caption{Weighting by market density (H4): out-of-sample MdAPE (\%)}131\label{tab:h4}132\footnotesize133\input{tables/h4}134\end{table}135136\begin{table}[H]137\centering138\caption{Marginal effects of the four rule factors in the E2 design}139\label{tab:marginal}140\input{tables/marginal}141\begin{tablenotes}\footnotesize142\item Note: mean out-of-sample MdAPE (\%) of all E2 configurations sharing the given level of the factor, averaged over the other factors and the three anchors.143\end{tablenotes}144\end{table}145146\subsection{The horse race}147\label{sec:horserace}148149Table~\ref{tab:competition} and Figure~\ref{fig:competition} report the thirteen named models and the empirically optimised configurations. The ordering is informative at every level. The traditional practices M1--M5---a few nearest sales, time-adjusted, weighted in one way or another---cluster at \mdapeMoneRange{} of MdAPE, with fewer than a third of estimates within $\pm10\%$ of the price. Adding a grid (M6, M7) or selecting by similarity (M3) brings the error into the \mdapeGridRange{} range. The assessment ratio (M13) reaches \mdapeMthirteen{} on the targets it covers. The best single transparent configuration frozen on 2024 (M0: \mZeroDesc) reaches \mdapeMzero{} with \pTenMzero{} of estimates within $\pm10\%$, and the optimised reconciliation M9 \mdapeMnine{}. Among the external benchmarks, the direct hedonic model M10 is the least accurate (\mdapeMten{}): a global model with municipality effects cannot match the local information of comparables. The gradient-boosting model without the assessed value (M11a, \mdapeMelevenA{}) is only \transparencyCostNoRole{} points better than the best frozen comparables configuration; with the assessed value (M11b) it reaches \mdapeMelevenB{} and \pTenMelevenB{} within $\pm10\%$, and the hybrid M12 \mdapeMtwelve{}.150151\begin{table}[H]152\centering153\caption{Horse race: out-of-sample accuracy, 2025--2026}154\label{tab:competition}155\resizebox{\textwidth}{!}{\input{tables/competition}}156\begin{tablenotes}\footnotesize157\item Note: MdAPE, MAPE, median signed error and the shares within $\pm5$, $\pm10$ and $\pm20\%$ in per cent, on the test targets for which the model returns a value; coverage is the share of such targets. The validation column gives the MdAPE on the 2024 targets. Weights of M9 and M12 and the configuration of M0 are chosen on 2024 only.158\end{tablenotes}159\end{table}160161\begin{figure}[H]162\centering163\includegraphics[width=0.95\textwidth]{f4_competition.pdf}164\caption{Out-of-sample MdAPE by model, 2025--2026. Orange: configurations of the sales comparison approach; green: empirically optimised configurations; blue: external benchmarks.}165\label{fig:competition}166\end{figure}167168Table~\ref{tab:pairs} gives the paired differences with cluster-bootstrap confidence intervals for the comparisons that matter. The gain from the hedonic grid over time-only adjustment (M7 $-$ M2), the gain from similarity selection (M3 $-$ M2), and the gain of M11b over M0 are all precisely estimated and far from zero. The difference between the conventional and hedonic grids (M7 $-$ M6) is small; so is that between local and global grids. The hybrid M12 improves significantly on M11b, which shows that comparables carry local information that a quarterly-retrained tree model with coordinates does not fully extract.169170\begin{table}[H]171\centering172\caption{Paired differences in accuracy with cluster-bootstrap 95\% confidence intervals}173\label{tab:pairs}174\footnotesize175\input{tables/pairs}176\begin{tablenotes}\footnotesize177\item Note: $\Delta$ is the difference $A-B$ in MdAPE and in MAPE (percentage points) on the common test targets; a negative value means $A$ is more accurate. Confidence intervals from 400 (MAPE) and 150 (MdAPE) cluster-bootstrap replications over municipality--quarter cells. The last column is the share of targets on which $A$ has the smaller error.178\end{tablenotes}179\end{table}180181Two findings deserve emphasis. The first is the \emph{cost of transparency}: \transparencyCost{} points of MdAPE separate the best frozen configuration of the sales comparison approach from the best opaque model with the same information plus the assessed value, and \transparencyCostNoRole{} points separate it from the same model without the assessed value. Every estimate of M0 is the median of \bestK{} identified sales adjusted by published coefficients; every estimate of M11b is the output of a thousand trees. The second is the \emph{value of the assessed value}. The ratio method M13 and the GBM with roll information M11b dominate their counterparts without it by \roleGainRatio{} and \roleGainGbm{} points respectively. The assessed value summarises characteristics that the roll extract does not expose to us---quality, condition, outbuildings---and a local price level that the assessor has already estimated; it is, in effect, a professional valuation available for every property, and the evidence says it should be used.182183\subsection{Where does the method hold, and where does it fail?}184\label{sec:strata}185186Table~\ref{tab:density} and Figure~\ref{fig:density} report accuracy by market density for the main models. The dependence is steep and common to all methods: the MdAPE of the hedonic-grid method M7 is \densHighMseven{} where two hundred or more sales occurred within 2~km in the past year and \densLowMseven{} where fewer than five did. The gap between the best transparent method and the best opaque one is widest in the sparsest markets, where the tree model's ability to borrow strength from a wider area is most valuable, and narrowest in the densest ones. Tables~\ref{tab:regions}--\ref{tab:price} in the Appendix report the same comparison by region, price quintile, age and physical link; accuracy is highest in the dense suburban regions (Laval, Outaouais, Montérégie) and lowest in the remote regions (Gaspésie, Nord-du-Québec, Côte-Nord), in the lowest price quintile (\prixQoneMseven{} for M7, against \prixQfourMseven{} in the fourth), for dwellings older than seventy years and for integrated dwellings---the segments where condition and unobserved characteristics carry the largest share of value.187188\begin{table}[H]189\centering190\caption{Out-of-sample MdAPE (\%) by market density}191\label{tab:density}192\footnotesize193\input{tables/density}194\end{table}195196\begin{figure}[H]197\centering198\includegraphics[width=0.85\textwidth]{f5_densite.pdf}199\caption{Out-of-sample MdAPE by market density (sales within 2~km in the preceding twelve months), selected models.}200\label{fig:density}201\end{figure}202203Table~\ref{tab:h5} addresses H5 by splitting the test targets into terciles of submarket heterogeneity, measured by the dispersion of the adjusted indications of the ten nearest comparables within 10~km and 24 months---a quantity available at valuation time. In the homogeneous tercile the transparent configuration M0 is within \hFiveGapHomog{} points of M11b; in the heterogeneous tercile the gap is \hFiveGapHeter{} points. Simple, explainable rules rival machine learning precisely where the market is informative enough for a few well-chosen sales to pin down value; machine learning earns its keep where the market is thin or heterogeneous.204205\begin{table}[H]206\centering207\caption{Accuracy by submarket heterogeneity (H5): out-of-sample MdAPE (\%)}208\label{tab:h5}209\footnotesize210\input{tables/h5}211\begin{tablenotes}\footnotesize212\item Note: terciles of the standard deviation of the log adjusted indications of the ten nearest sales within 10~km and 24 months (hedonic grid), computed on the test targets.213\end{tablenotes}214\end{table}215216\subsection{Value intervals}217\label{sec:intervals}218219The dispersion of the adjusted indications provides an interval of value. Table~\ref{tab:intervals} reports, for the time-only, hedonic and GBM adjustments at two anchors, the coverage of the interval $\hat P \exp(\pm z\,\hat\sigma)$ with $z=1.28$ (nominal 80\% under normality) and with $z$ calibrated on the validation targets to achieve 80\% coverage, together with the median width of the calibrated interval. The nominal intervals under-cover (67--78\% for a nominal 80\%): the dispersion of five or ten adjusted sales understates the uncertainty of the estimate, because the comparables share unobserved characteristics with each other but not with the subject. Calibrated on 2024, the intervals achieve their target coverage in 2025--2026 to within half a point, but at a median width of \ivWidth{} of value: an honest 80\% interval around a comparables-based estimate spans roughly $\pm$30\%. The dispersion of the comparables is a valid but coarse measure of uncertainty, and the breadth of the calibrated interval is itself a finding about the precision the method can claim.220221\begin{table}[H]222\centering223\caption{Coverage of value intervals derived from the dispersion of adjusted indications}224\label{tab:intervals}225\resizebox{\textwidth}{!}{\input{tables/intervals}}226\end{table}227228\subsection{Towards an empirical comparable-recommendation system}229\label{sec:recommend}230231The steep dependence on density suggests that the best rule might be conditional on the market. Table~\ref{tab:cond} implements the simplest version of a recommendation system: for each density stratum, the configuration (among all \nConfigs{} that return a value for at least 95\% of the stratum's validation targets) with the lowest MdAPE on 2024 is selected and applied to the 2025--2026 targets of that stratum. The selected rules do differ---the assessment-ratio adjustment is chosen in the two densest strata, the hedonic grid elsewhere, and the compromise or least-adjusted selection everywhere---but together they achieve an out-of-sample MdAPE of \condMdape{} with \condCov{} coverage, no better than the \mdapeMzero{} of the best single rule at full coverage. The reason is that the best single rule is already self-adapting: retaining the thirty most similar sales within 25~km and 24 months uses nearby sales where they exist and reaches further only where they do not. A recommendation system therefore adds value through the choice of adjustment (assessment ratio where same-roll comparables are plentiful) rather than through stratum-specific counts and radii.232233\begin{table}[H]234\centering235\caption{Density-conditional rules chosen on 2024 and evaluated on 2025--2026}236\label{tab:cond}237\resizebox{\textwidth}{!}{\input{tables/cond_rules}}238\end{table}239