SPB Git forge

spb/wp23_uqo

Public
6commits 1branches 0releases
32.7 MBsize
maindefault branch
1 h agolast push
TeX 62.3% Python 37.6%

WP23 v1.1: extended analyses (time/regime/direction/decline/combination/municipal/cost/dollar/selection), completed appendices with diagrams and test tables, 56 p.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Simon-Pierre Boucher committed 1 h ago (Oct 21, 2026) parent d35f5f6

100 changed files +4,549 −65

modified README.md +11 −4
@@ -3,7 +3,7 @@
3 3
4 4 **UQO Working Paper No. 23** — *A pseudo-real-time evaluation on 632,000 Quebec transactions and 82 local market indices, 2021–2026*
5 5
6 −[![Paper](https://img.shields.io/badge/paper-PDF%20(44%20p.)-b31b1b?logo=latex&logoColor=white)](paper/main.pdf)
6 +[![Paper](https://img.shields.io/badge/paper-PDF%20(56%20p.)-b31b1b?logo=latex&logoColor=white)](paper/main.pdf)
7 7 [![Python](https://img.shields.io/badge/python-3.14%20·%20PyTorch%202.12-3776AB?logo=python&logoColor=white)](requirements.txt)
8 8 [![Data](https://img.shields.io/badge/data-WP22%20snapshot%20(read--only)-4051b5)](../sharp-hpi-quebec/data/raw/README.md)
9 9 [![Reproducible](https://img.shields.io/badge/reproducible-pseudo--real--time%20pipeline-2e7d32)](scripts/)
@@ -18,7 +18,7 @@
18 18
19 19 | Item | Value |
20 20 |---|---|
21 −| Version | 1.0 (October 2026) |
21 +| Version | 1.1 (October 2026) — extended analyses and completed appendices |
22 22 | SSRN | not yet submitted |
23 23 | Journal | — |
24 24 | Code & data | reproducible from `scripts/`; inputs are WP22 artefacts (read-only) |
@@ -39,6 +39,13 @@ Tests, on the same transaction-level data, whether spatial, hierarchical, regime
39 39 | Ablations (municipal, h = 6): DSGFN without graph vs full / equal-weight combo vs QREFA / ridge without momentum | -0.59 / -0.38 / +0.53 log pts |
40 40 | Seed variability (h = 3): DSGFN 3.76–4.05, TFT-lite 4.33–4.83, QANSS 3.75–3.96 | — |
41 41 | Simulation (municipal, h = 3, MAE / no change): regimes AR(2) 0.78 · momentum ridge 1.53 · spillover DSGFN 1.29 · rw QANSS 2.04 | — |
42 +| Task B, h = 3, by ex-post provincial regime: LightGBM MASE rising windows (17 origins) / flat (13) | 0.63 / 1.00 (the gain is the forecastability of spring upswings) |
43 +| Task B, h = 3, Holm-adjusted DM p-value vs no change: LightGBM / QANSS (unadjusted 0.007 / 0.037) | 0.11 / 0.59 — no improvement survives a 10 % family-wise rate |
44 +| Task B, h = 3, directional accuracy all / at turning points: DSGFN / QREFA / LightGBM | 77 / 76 / 75 % overall; 65 / 66 / 65 % at turning points |
45 +| Task C, h = 3, Brier skill of P(decline) vs climatology: QREFA / LightGBM / QANSS / no change | +0.17 / +0.15 / +0.07 / -0.02 |
46 +| Task B, h = 3, 192 municipal cells: share where LightGBM / QANSS / ridge beats no change; LightGBM median MASE | 91 / 83 / 72 %; 0.74 |
47 +| Equal-weight combinations (h = 3): LightGBM alone / LightGBM + QANSS / four models / QREFA stack | 0.754 / 0.760 / 0.765 / 0.816 |
48 +| Task A, 1–3 months, median absolute dollar error LightGBM vs municipal median: house / condo / plex | $61,102 vs $92,750 / $32,005 vs $127,000 / $80,115 vs $135,000 |
42 49
43 50 Every number is a generated macro (`paper/tables/numbers.tex`).
44 51
@@ -48,10 +55,10 @@ Every number is a generated macro (`paper/tables/numbers.tex`).
48 55 forecasting-architectures-quebec/
49 56 ├── CLAUDE.md # protocol (as received; truncated section completed)
50 57 ├── src/wp23/ # config, data (Task A), data_b (Task B), evaluation, models_a(+_torch), models_b(+_torch)
51 −├── scripts/ # 10 task A · 20 task B · 30 evaluate · 35 interpret · 36/37 ablation · 38 robustness · 40/41 simulation · 50 tables · 60 figures
58 +├── scripts/ # 10 task A · 20 task B · 30 evaluate · 35 interpret · 36/37 ablation · 38 robustness · 39 extra analyses · 40/41 simulation · 50 tables · 60 figures
52 59 ├── tests/
53 60 ├── data/processed/ # task_b_panel.parquet (built from WP22 vintages; not committed)
54 −├── results/ # task_a, task_b, eval_a, eval_b, ablation_b, robustness_b, simulation, interpret
61 +├── results/ # task_a, task_b, eval_a, eval_b, ablation_b, robustness_b, simulation, interpret, extra (time/regime/direction/decline/combination/municipal/cost/dollar/selection)
55 62 ├── docs/ # PLAN, decision_log, leakage_audit, limitations, literature/ (152 verified refs, novelty scan)
56 63 └── paper/ # main.tex, sections/, appendix/, tables/ (generated), references.bib
57 64 ```
modified docs/decision_log.md +4 −0
@@ -13,3 +13,7 @@
13 13 | D8 | Simulation forecasters run with 10 replications (6 for the neural family), horizons 1/3/6 | compute on the node (RAREF HMM and torch models are slow) |
14 14 | D9 | BHPF is conjugate/EM rather than MCMC; VI/HMC not available (PyMC absent) and unnecessary for a Gaussian hierarchy | exactness |
15 15 | D10 | CMA boundaries unavailable; metropolitan comparisons not needed for forecasting tasks | inherited from WP22 |
16 +| D8 | Multiple-testing: Holm step-down over the 18 DM p-values of each horizon reported next to the unadjusted ones; conclusions stated at the family-wise level | 18 models compared with the same benchmark on 31–45 origins; unadjusted 5 % results (LightGBM p 0.007) do not survive (Holm 0.11) |
17 +| D9 | Ex-post regimes (rising / flat / falling provincial house index over the target window, ±2 log points) used only for descriptive error decomposition, never as a model input | regimes defined on realised changes would leak if used for forecasting; RAREF's real-time states are reported separately |
18 +| D10 | Probability of decline read from the five forecast quantiles by linear interpolation of the quantile function; Brier skill relative to the climatological frequency | models output quantiles, not densities; the interpolation is the same for every model |
19 +| D11 | Appendices carry text before every table and a FloatBarrier at the end of each section; supplementary tables moved out of the main text (cell-size / segment heterogeneity, regional and provincial simulation) to avoid duplicates | author review 2026-10-21: empty sections and floating tables |
modified docs/research_log.md +1 −0
@@ -8,3 +8,4 @@
8 8 | 15:00 | 4 | Simulation design (5 DGPs on the WP22 simulator); 100 synthetic panels built on the node; literature agent: 152 verified references + novelty scan |
9 9 | 15:30–16:30 | 5–6 | Task A evaluated; ablations (36/37), interpretability (SHAP/ALE), robustness (38) run; sections written as results arrived |
10 10 | 17:00–17:40 | 6–7 | Task B evaluated; simulation forecasters summarised (10/6 replications); all sections written; 44-page manuscript compiles with 0 missing macros; anonymous version; pushed to wp23_uqo.git |
11 +| 19:00–20:30 | 7 (v1.1) | Author review: appendices had bare headings and an empty « Supplementary tables » section → rewritten (architecture equations + TikZ diagrams, text before every table, test-method appendix with Holm/GW tables, cost table, FloatBarrier). New `scripts/39_extra_analysis.py` on the fetched Task A/B predictions: errors by origin/year and by ex-post regime, Holm-adjusted DM, directional accuracy and turning points, P(decline) Brier/reliability, equal-weight combinations, municipal MASE distribution, RAREF filtered regimes, dollar errors, selection rates, computational cost → 11 new tables, 5 new figures, new subsections in results / heterogeneity / probabilistic / interpretation / data. Wide tables scaled (`fit`). 56 pages, 0 undefined references; anonymous version rebuilt. |
modified figures/fig_calibration_a.pdf +0 −0

Binary file not shown.

modified figures/fig_calibration_b.pdf +0 −0

Binary file not shown.

added figures/fig_decline_reliability.pdf +0 −0

Binary file not shown.

added figures/fig_decline_reliability.png +0 −0

Binary file not shown.

modified figures/fig_error_map.pdf +0 −0

Binary file not shown.

added figures/fig_error_time_a.pdf +0 −0

Binary file not shown.

added figures/fig_error_time_a.png +0 −0

Binary file not shown.

added figures/fig_error_time_b.pdf +0 −0

Binary file not shown.

added figures/fig_error_time_b.png +0 −0

Binary file not shown.

modified figures/fig_map_density.pdf +0 −0

Binary file not shown.

modified figures/fig_mcs_a.pdf +0 −0

Binary file not shown.

modified figures/fig_mcs_a.png +0 −0

Binary file not shown.

modified figures/fig_mcs_b.pdf +0 −0

Binary file not shown.

modified figures/fig_mcs_b.png +0 −0

Binary file not shown.

added figures/fig_mun_distribution.pdf +0 −0

Binary file not shown.

added figures/fig_mun_distribution.png +0 −0

Binary file not shown.

modified figures/fig_perf_a.pdf +0 −0

Binary file not shown.

modified figures/fig_perf_b.pdf +0 −0

Binary file not shown.

added figures/fig_regimes.pdf +0 −0

Binary file not shown.

added figures/fig_regimes.png +0 −0

Binary file not shown.

modified figures/fig_simulation.pdf +0 −0

Binary file not shown.

modified figures/fig_trajectories_b.pdf +0 −0

Binary file not shown.

modified paper/appendix/appendix.tex +89 −0
@@ -1,7 +1,96 @@
1 +\FloatBarrier
1 2 \begin{appendices}
3 +
4 +\section{Architectures: formal specification and diagrams}\label{app:arch}
5 +
6 +This appendix gives the equations and block diagrams of the six proposed architectures as implemented in \texttt{src/wp23/models\_a\_torch.py}, \texttt{models\_b.py} and \texttt{models\_b\_torch.py}. Notation: $x$ standardised feature vector, $\mathbf{h}$ the thirteen-month relative history of the real-time index ($h_j = y^{\mathrm{rt}}_{o-12+j} - y^{\mathrm{rt}}_o$), $\tau \in \{0.05, 0.25, 0.5, 0.75, 0.95\}$ the quantile levels, $\ell_\tau(u) = \max(\tau u, (\tau-1)u)$ the pinball loss.
7 +
8 +\paragraph{HSHN (Task A).} With $g_i = e_{\mathrm{reg}(i)} + e_{\mathrm{mrc}(i)} + e_{\mathrm{mun}(i)} \in \mathbb{R}^8$ and $e_{h} \in \mathbb{R}^4$,
9 +\begin{equation}
10 +z_i = \mathrm{GELU}\big(W_2\,\mathrm{GELU}(W_1 [x_i, g_i, e_{h_i}])\big),\quad v_i = \mathrm{GELU}\big(W_3 [z_i, g_i, e_{h_i}]\big),\quad \hat q_i = W_4 [z_i, v_i] \in \mathbb{R}^5,
11 +\end{equation}
12 +trained by $\min \sum_i \sum_\tau \ell_\tau(\log P_i - \hat q_{i,\tau}) + \lambda_{\mathrm{mun}} \|e_{\mathrm{mun}}\|^2 + \lambda \|\theta\|^2$ with $\lambda_{\mathrm{mun}} = 5\times10^{-3}$ (partial), $\lambda_{\mathrm{mun}} = 0$ (none) or $e_{\mathrm{mun}} \equiv 0$ (full).
13 +
14 +\paragraph{DSGFN (Task B).} Node encodings $z_u = \phi([x_u, \mathbf{h}_u])$; attention logits $a_{uv} = q_u^\top k_v / \sqrt{d} + \omega \log A_{uv}$ for $v \ne u$, $A_{uv} = \exp(-(d_{uv}/60\,\mathrm{km})^2)\,(\tfrac12 + \tfrac12 \rho_{uv})\,\mathbb{1}[\text{same level, class, origin}]$ with $\rho_{uv}$ the correlation of the two nodes' monthly real-time changes over the history; $n_u = \sum_v \mathrm{softmax}_v(a_{uv})\, V z_v$; $\hat q_u = \psi([z_u, n_u])$.
15 +
16 +\paragraph{RAREF (Task B).} Provincial real-time growth $g_1, \ldots, g_T$ (one per past origin, each from its own vintage); three-state Gaussian HMM $(\pi, A, \mu_k, \sigma_k)$ by Baum--Welch; filtered probabilities $p_{k,o} = P(s_o = k \mid g_{1:o})$; experts $\hat\beta_k = \argmin_\beta \sum_i p_{k,o(i)} (y_i - x_i^\top\beta)^2 + \alpha\|\beta\|^2$; forecast $\sum_k p_{k,o}\, x^\top \hat\beta_k$.
17 +
18 +\paragraph{BHPF (Task B).} $y = \beta_0 + x^\top\beta + u_{r} + u_{c} + \varepsilon$, $\beta \sim N(0, \tau_b^2 I)$, $u_r \sim N(0, \tau_r^2)$, $u_c \sim N(0, \tau_c^2)$, $\varepsilon \sim N(0, \sigma^2)$; posterior $N(\hat\theta, \Sigma)$ with $\Sigma = (D^\top D/\sigma^2 + \Lambda)^{-1}$, $\hat\theta = \Sigma D^\top y / \sigma^2$; variance components updated as $\tau_r^2 \leftarrow \mathrm{mean}(\hat u_r^2) + \mathrm{mean}(\mathrm{diag}\,\Sigma_{rr})$ (and likewise for $\tau_c^2$, $\sigma^2$) for fifteen iterations; predictive $N(d^\top\hat\theta, d^\top \Sigma d + \sigma^2)$.
19 +
20 +\paragraph{QANSS (Task B).} State at the origin $s_o = (\bar\Delta_3, \mathrm{sd}(\Delta), n\text{-ratio}-1, \Delta^{\mathrm{prov}}_3/3, \Delta^{\mathrm{reg}}_3/3, \Delta_{-1}, \Delta_{-2})$; network $(m(s), \log\varsigma(s)) = W_2 \tanh(W_1 s)$; forecast $h\, m(s_o)$ with predictive variance $\varsigma(s_o)^2 + \mathrm{se}_o^2$, estimated by maximising the Gaussian likelihood of the training targets.
21 +
22 +\paragraph{QREFA.} $\hat y = \sum_k w_k \hat y_k$ with $w = \argmin_{w \ge 0} \|y - F w\|^2$ on the training origins, normalised to sum to one; quantiles $\sum_k w_k \hat q_k$.
23 +
24 +\begin{figure}[H]\centering\footnotesize
25 +\begin{tikzpicture}[node distance=5mm and 7mm, box/.style={draw, rounded corners=2pt, minimum height=6mm, minimum width=18mm, align=center, font=\footnotesize}, >={Stealth[length=2mm]}]
26 +\node[box] (x) {hedonic + market\\features $x_i$};
27 +\node[box, below=of x] (g) {geo embeddings\\$e_{\mathrm{reg}}+e_{\mathrm{mrc}}+e_{\mathrm{mun}}$};
28 +\node[box, below=of g] (h) {horizon\\embedding $e_h$};
29 +\node[box, right=of g, xshift=6mm] (enc) {encoder\\256--128 GELU};
30 +\node[box, right=of enc] (int) {interaction\\block};
31 +\node[box, right=of int] (head) {5 quantiles\\of $\log P$};
32 +\draw[->] (x) -- (enc); \draw[->] (g) -- (enc); \draw[->] (h) -- (enc); \draw[->] (enc) -- (int); \draw[->] (g.east) to[out=-10,in=-120] (int.south); \draw[->] (int) -- (head); \draw[->] (enc.north) to[out=30,in=150] (head.north);
33 +\node[above=1mm of int, font=\footnotesize\bfseries] {HSHN};
34 +\begin{scope}[yshift=-52mm]
35 +\node[box] (f) {node features\\$x_u$, history $\mathbf{h}_u$};
36 +\node[box, right=of f] (ze) {node encoder\\$z_u$};
37 +\node[box, right=of ze, xshift=4mm] (att) {graph attention\\prior $A$ (distance $\times$ co-movement)};
38 +\node[box, right=of att] (hd) {head\\$[z_u, n_u] \to$ 5 quantiles};
39 +\draw[->] (f) -- (ze); \draw[->] (ze) -- (att); \draw[->] (att) -- (hd); \draw[->] (ze) to[out=-20,in=-160] (hd);
40 +\node[above=1mm of ze, font=\footnotesize\bfseries] {DSGFN};
41 +\end{scope}
42 +\begin{scope}[yshift=-76mm]
43 +\node[box] (gs) {provincial growth\\$g_{1:o}$ (real-time)};
44 +\node[box, right=of gs] (hmm) {3-state HMM\\filtered $p_{k,o}$};
45 +\node[box, right=of hmm, xshift=4mm] (ex) {ridge experts\\$\hat\beta_1,\hat\beta_2,\hat\beta_3$};
46 +\node[box, right=of ex] (mix) {$\sum_k p_{k,o}\,x^\top\hat\beta_k$};
47 +\draw[->] (gs) -- (hmm); \draw[->] (hmm) -- (ex); \draw[->] (ex) -- (mix);
48 +\node[above=1mm of hmm, font=\footnotesize\bfseries] {RAREF};
49 +\end{scope}
50 +\begin{scope}[yshift=-100mm]
51 +\node[box] (st) {state $s_o$: drift, volatility,\\volume ratio, parent drifts};
52 +\node[box, right=of st] (tr) {learned transition\\$W_2\tanh(W_1 s)$};
53 +\node[box, right=of tr, xshift=4mm] (out) {$h\,m(s_o)$,\\ $\varsigma(s_o)^2 + \mathrm{se}_o^2$};
54 +\draw[->] (st) -- (tr); \draw[->] (tr) -- (out);
55 +\node[above=1mm of tr, font=\footnotesize\bfseries] {QANSS};
56 +\node[box, right=of out, xshift=4mm] (q) {QREFA: NNLS stack of\\QANSS, BHPF, DSGFN, RAREF};
57 +\end{scope}
58 +\end{tikzpicture}
59 +\caption{Block diagrams of the proposed architectures (BHPF is a conjugate linear-Gaussian hierarchy without a diagram).}\label{fig:diagrams}
60 +\end{figure}
61 +
2 62 \section{Hyper-parameters}\label{app:hyper}
63 +
64 +Table~\ref{tab:hyper} lists the hyper-parameters of every model. They were fixed before any test origin was evaluated and were not tuned; the seed variability of Section~\ref{sec:ablation} measures the uncertainty that tuning would have to overcome.
65 +
3 66 \input{tables/tab_hyper}
67 +\FloatBarrier
68 +
4 69 \section{Leakage audit}\label{app:leakage}
70 +
71 +Table~\ref{tab:leakage} records, for each item of the protocol's audit list, where chronological separation is enforced in the code; the test suite (\texttt{tests/test\_wp23.py}) checks that the Task~A features of test sales are computed from sales dated on or before the origin.
72 +
5 73 \input{tables/tab_leakage}
74 +\FloatBarrier
75 +
76 +\section{Forecast comparison tests}\label{app:tests}
77 +
78 +Let $d_t = L_{A,t} - L_{B,t}$ be the difference of per-origin mean squared losses over $n$ origins. The Diebold--Mariano statistic is $\bar d / \sqrt{\hat\sigma^2_{\mathrm{HAC}}/n}$ with a Bartlett long-run variance of $h-1$ lags, multiplied by the Harvey--Leybourne--Newbold factor $\sqrt{(n + 1 - 2h + h(h-1)/n)/n}$ and compared with a $t_{n-1}$ distribution. The Giacomini--White statistic regresses $d_t$ on $z_{t-1} = (1, d_{t-1})$ and tests $\E[z_{t-1} d_t] = 0$ by a Wald statistic with the same HAC covariance, distributed $\chi^2_2$. The model confidence set starts from all models, computes $t_i = \bar d_{i\cdot}/\hat\sigma_i$ for the deviation of each model's mean loss from the cross-model mean, eliminates the model with the largest $t_i$ when the stationary-bootstrap $p$-value of $\max_i t_i$ (500 resamples, mean block length $\max(2,h)$) is below 10\%, and stops otherwise; reported $p$-values are the monotone MCS $p$-values of \citet{hansen2011mcs}. Holm step-down adjusted $p$-values of the Diebold--Mariano tests across the models of a horizon are given in Table~\ref{tab:tests_b}; Table~\ref{tab:gw_b} gives the unadjusted $p$-values and the Giacomini--White $p$-values.
79 +
80 +\input{tables/tab_tests_b}
81 +\input{tables/tab_gw_b}
82 +\FloatBarrier
83 +
6 84 \section{Supplementary tables}\label{app:supp}
85 +
86 +Tables~\ref{tab:het_a_mun_size} to~\ref{tab:cost} supplement the main text: Task~A errors by municipality size and by price segment (the breakdown by class is Table~\ref{tab:het_a_property_class} in the main text); Task~B errors by cell size and level; the regional and provincial simulation tables of Section~\ref{sec:sim}; and the computational cost of every model, measured on one machine so that the accuracy gains of Section~\ref{sec:results} can be weighed against their price in computing time (the tree models cost seconds per fit, the neural models minutes, and BHPF, which solves a dense linear system, is the most expensive Task~B model).
87 +
88 +\input{tables/tab_het_a_mun_size}
89 +\input{tables/tab_het_a_segment}
90 +\input{tables/tab_het_b_size_level}
91 +\input{tables/tab_sim_region}
92 +\input{tables/tab_sim_province}
93 +\input{tables/tab_cost}
94 +\FloatBarrier
95 +
7 96 \end{appendices}
modified paper/figures/fig_calibration_a.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_calibration_b.pdf +0 −0

Binary file not shown.

added paper/figures/fig_decline_reliability.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_error_map.pdf +0 −0

Binary file not shown.

added paper/figures/fig_error_time_a.pdf +0 −0

Binary file not shown.

added paper/figures/fig_error_time_b.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_map_density.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_mcs_a.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_mcs_b.pdf +0 −0

Binary file not shown.

added paper/figures/fig_mun_distribution.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_perf_a.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_perf_b.pdf +0 −0

Binary file not shown.

added paper/figures/fig_regimes.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_simulation.pdf +0 −0

Binary file not shown.

modified paper/figures/fig_trajectories_b.pdf +0 −0

Binary file not shown.

modified paper/main.pdf +0 −0

Binary file not shown.

modified paper/main.tex +3 −0
@@ -83,6 +83,9 @@
83 83 % --- Appendix Support ---
84 84 \usepackage[toc,page]{appendix}
85 85 \usepackage{longtable}
86 +\usepackage{placeins}
87 +\usepackage{tikz}
88 +\usetikzlibrary{positioning,arrows.meta,fit,calc}
86 89 \usepackage{bm}
87 90 \input{tables/numbers}
88 91 \input{tables/numbers_missing}
modified paper/main_anon.pdf +0 −0

Binary file not shown.

modified paper/main_anon.tex +3 −0
@@ -31,6 +31,9 @@
31 31 \usepackage{tabularx}
32 32 \usepackage{multirow}
33 33 \usepackage{threeparttable}
34 +\usepackage{placeins}
35 +\usepackage{tikz}
36 +\usetikzlibrary{positioning,arrows.meta,fit,calc}
34 37 \usepackage{siunitx}
35 38 \sisetup{
36 39 input-symbols = {()},
modified paper/sections/data.tex +4 −0
@@ -11,6 +11,10 @@ Table~\ref{tab:coverage} summarises coverage by region and class and the evaluat
11 11 \input{tables/tab_coverage}
12 12 \input{tables/tab_selection}
13 13
14 +Table~\ref{tab:selection_rates} quantifies selection into transaction directly: the annual sale rate of the roll stock is \SaleRatehouseageOne\% for the newest quintile of houses against \SaleRatehouseageThree{} to \SaleRatehouseageFive\% for older ones, and \SaleRatehousefaOne\% for the smallest quintile against \SaleRatehousefaFive\% for the largest. Sold dwellings are newer and smaller than the stock; the Task~A evaluation population is the dwellings that come to market, and every model is evaluated on that population.
15 +
16 +\input{tables/tab_selection_rates}
17 +
14 18 \begin{figure}[htbp]\centering
15 19 \includegraphics[width=0.9\textwidth]{figures/fig_map_density.pdf}
16 20 \caption{Municipal sales density (headline sample, 2021--2026) and the 64 municipalities with real-time index vintages (outlined).}\label{fig:map_density}
modified paper/sections/heterogeneity.tex +8 −4
@@ -6,16 +6,20 @@ Tables~\ref{tab:het_a_mun_size}, \ref{tab:het_a_property_class} and \ref{tab:het
6 6
7 7 \subsection{Task B by level, class and cell size}
8 8
9 −Tables~\ref{tab:het_b_level}, \ref{tab:het_b_class} and~\ref{tab:het_b_size_level} report the three-month MAE by geographic level, class and municipal size (large: at least 50 sales in the origin month). Forecast errors scale with the noise of the target: municipal index changes are twice as volatile as regional ones, and the MASE of the best model relative to no change is similar across levels (0.69 for regions, 0.77 for municipalities with LightGBM), so the pooled models extract a similar share of the predictable variation at every level. Condominium indices are the most predictable in absolute terms and houses the least. Hierarchical pooling (BHPF, HSHN) does not improve on the pooled models in small municipalities: the gain over the no-change forecast is the same in large and small municipal cells, and the municipal intercepts shrink to zero. Figure~\ref{fig:error_map} maps the three-month MAE of the best model relative to no change by region: the gain is largest in the regions with the strongest seasonal cycle and smallest in the sparse eastern regions.
9 +Tables~\ref{tab:het_b_level}, \ref{tab:het_b_class} and~\ref{tab:het_b_size_level} report the three-month MAE by geographic level, class and municipal size (large: at least 50 sales in the origin month). Forecast errors scale with the noise of the target: municipal index changes are twice as volatile as regional ones, and the MASE of the best model relative to no change is similar across levels (0.69 for regions, 0.77 for municipalities with LightGBM), so the pooled models extract a similar share of the predictable variation at every level. Condominium indices are the most predictable in absolute terms and houses the least. Hierarchical pooling (BHPF, HSHN) does not improve on the pooled models in small municipalities: the gain over the no-change forecast is the same in large and small municipal cells, and the municipal intercepts shrink to zero. Figure~\ref{fig:error_map} maps the three-month MAE of the best model relative to no change by region: the gain is largest in the regions with the strongest seasonal cycle and smallest in the sparse eastern regions. Table~\ref{tab:mun_dist_b} and Figure~\ref{fig:mun_distribution} give the distribution of the three-month MASE across the 192 municipal cells: LightGBM beats the no-change forecast in \MunSharelightgbmpanel\% of the cells with a median MASE of \MunMedMASElightgbmpanel, QANSS in \MunShareqanss\%, the AR(2) in \MunSharearTwocell\%, and the pooled ridge in \MunShareridgepanel\% with a long right tail (90th percentile \MunPninetyridgepanel{} against \MunPninetylightgbmpanel{} for LightGBM): the linear pooled model is the one most often harmed by the heterogeneity of municipal dynamics, which is what the tree model's interactions absorb. Tables~\ref{tab:het_b_size_level}, \ref{tab:het_a_mun_size} and~\ref{tab:het_a_segment} in Appendix~\ref{app:supp} give the breakdowns by cell size and by price segment.
10 +
11 +\input{tables/tab_mun_dist_b}
12 +
13 +\begin{figure}[htbp]\centering
14 +\includegraphics[width=0.6\textwidth]{figures/fig_mun_distribution.pdf}
15 +\caption{Task B, horizon 3: distribution of the MASE relative to no change across the 192 municipal cells.}\label{fig:mun_distribution}
16 +\end{figure}
10 17
11 18 \input{tables/tab_het_b_level}
12 19 \input{tables/tab_het_b_class}
13 −\input{tables/tab_het_b_size_level}
14 20
15 21 \begin{figure}[htbp]\centering
16 22 \includegraphics[width=0.7\textwidth]{figures/fig_error_map.pdf}
17 23 \caption{Task B: ratio of the best model's three-month MAE to the no-change MAE by administrative region.}\label{fig:error_map}
18 24 \end{figure}
19 −\input{tables/tab_het_a_mun_size}
20 25 \input{tables/tab_het_a_property_class}
21 −\input{tables/tab_het_a_segment}
modified paper/sections/interpretation.tex +6 −1
@@ -8,4 +8,9 @@ Table~\ref{tab:shap} reports the mean absolute SHAP values \citep{lundberglee201
8 8
9 9 \subsection{What is forecastable at the market level}
10 10
11 −The protocol's eight questions receive the following answers from Sections~\ref{sec:results}, \ref{sec:het} and~\ref{sec:ablation}. (1) \emph{Spatial spillovers} carry no predictive information beyond the parent (regional and provincial) momentum that every pooled model receives: the graph network does not beat the pooled ridge, its attention is diffuse, and removing its graph does not hurt. (2) \emph{Local momentum} persists at one to six months: the cell's own recent changes are the dominant predictors, and AR(2) and mean-growth rules capture most of the gain; but it reverses at twelve months, where no pooled model beats the no-change forecast. (3) \emph{Property characteristics} forecast the value of a dwelling, not the market: the trees halve the error of the municipal median in Task~A, but their horizon profile shows no information about future market movements. (4) \emph{Regimes}: the HMM gating of RAREF reproduces the pooled ridge; the three experts converge to similar coefficients because the training origins contain one slowdown and one recovery, too few to estimate separate regimes. (5) \emph{Hierarchical pooling} in small municipalities does not help forecasting once the panel features are pooled: BHPF's municipal intercepts shrink to zero and HSHN's partial pooling matches no pooling. (6) \emph{Uncertainty in low-volume periods}: QANSS, which carries the WP22 filter variance, widens its intervals in thin cells and is the only model with nominal or higher coverage at every horizon. (7) \emph{Quality-adjusted versus median targets}: WP22 showed that the median index embeds composition; here the quality-adjusted index is forecastable at short horizons mainly through its seasonal and momentum structure. (8) \emph{Turning points}: the 2025--2026 slowdown was not anticipated by any model; the twelve-month forecasts issued in 2024 carry the bias of the preceding boom. Predictive importance in these results is not evidence of causality.
11 +The protocol's eight questions receive the following answers from Sections~\ref{sec:results}, \ref{sec:het} and~\ref{sec:ablation}. (1) \emph{Spatial spillovers} carry no predictive information beyond the parent (regional and provincial) momentum that every pooled model receives: the graph network does not beat the pooled ridge, its attention is diffuse, and removing its graph does not hurt. (2) \emph{Local momentum} persists at one to six months: the cell's own recent changes are the dominant predictors, and AR(2) and mean-growth rules capture most of the gain; but it reverses at twelve months, where no pooled model beats the no-change forecast. (3) \emph{Property characteristics} forecast the value of a dwelling, not the market: the trees halve the error of the municipal median in Task~A, but their horizon profile shows no information about future market movements. (4) \emph{Regimes}: Figure~\ref{fig:regimes} shows the filtered state probabilities of the RAREF hidden Markov model, re-estimated at each origin from the provincial real-time growth known then. The model identifies a high-growth state (mean monthly growth of about $+2.6$ log points at the last origin) that it assigns to the origins of March to June of 2024, 2025 and 2026 (and August 2024), a middle state for the rest of the year, and a low-growth state (mean $-0.2$) that it visits with near certainty only at the September 2025 origin, after the one negative provincial month of the evaluation period. The states are the seasonal cycle, not business-cycle regimes, and the gating therefore reproduces what the calendar-month feature already gives the ridge; separate regime experts cannot be estimated from a sample that contains one slowdown and one recovery, and Table~\ref{tab:regime_b} confirms that the forecast gains are a property of rising windows. (5) \emph{Hierarchical pooling} in small municipalities does not help forecasting once the panel features are pooled: BHPF's municipal intercepts shrink to zero and HSHN's partial pooling matches no pooling. (6) \emph{Uncertainty in low-volume periods}: QANSS, which carries the WP22 filter variance, widens its intervals in thin cells and is the only model with nominal or higher coverage at every horizon. (7) \emph{Quality-adjusted versus median targets}: WP22 showed that the median index embeds composition; here the quality-adjusted index is forecastable at short horizons mainly through its seasonal and momentum structure. (8) \emph{Turning points}: the 2025--2026 slowdown was not anticipated by any model; the twelve-month forecasts issued in 2024 carry the bias of the preceding boom. Predictive importance in these results is not evidence of causality.
12 +
13 +\begin{figure}[htbp]\centering
14 +\includegraphics[width=\textwidth]{figures/fig_regimes.pdf}
15 +\caption{RAREF: filtered probabilities of the three hidden Markov states (ordered by mean growth) at each origin, estimated from the provincial real-time growth known at the origin (houses); the black line is the last observed provincial monthly growth, rescaled.}\label{fig:regimes}
16 +\end{figure}
modified paper/sections/probabilistic.tex +12 −2
@@ -1,12 +1,22 @@
1 1 \section{Probabilistic forecasting and calibration}\label{sec:prob}
2 2
3 −Tables~\ref{tab:prob_a} and~\ref{tab:prob_b} report the CRPS, the coverage and the width of the 90\% intervals; Figures~\ref{fig:cal_a} and~\ref{fig:cal_b} plot the share of outcomes below each nominal quantile. For Task~A the LightGBM quantile models are the sharpest and are slightly under-covered (\aCovlightgbmhOneThree\% at one to three months for a nominal 90\%), the linear models are over-covered because their residual quantiles are homoskedastic, the hierarchical network is close to nominal at short horizons and under-covers at seven to twelve months (\aCovhshnpartialhSevenOneTwo\%) because its intervals do not widen with the horizon while the bias grows, and the unembedded MLP produces intervals two and a half times too wide. For Task~B the ranking by CRPS follows the point ranking (LightGBM \bCRPSlightgbmpanelhThree{} at three months, QREFA \bCRPSqrefahThree, QANSS \bCRPSqansshThree, no change \bCRPSnochangehThree), but calibration separates the models sharply. The neural quantile heads (LSTM, GRU, TCN, TFT-lite, DSGFN) under-cover at every horizon (\bCovdsgfnhThree\% to \bCovtftlitehThree\% at three months for a nominal 90\%, falling below 50\% at twelve months): trained with the pinball loss on 34 to 45 origins they fit the central quantiles and collapse the tails. The Gaussian posterior predictive of BHPF and the residual quantiles of the ridge are close to nominal at one and three months (\bCovbhpfhThree\%, \bCovridgepanelhThree\%) and under-cover at six and twelve months as the bias grows. QANSS is over-covered at every horizon (\bCovqansshThree\% at three months, \bCovqansshOneTwo\% at twelve) because its predictive variance adds the published filter variance of the origin level to the learned drift variance, and it is the only model whose twelve-month intervals contain the realised changes; the price is intervals twice as wide as LightGBM's. The decomposition of uncertainty the protocol asks for is only partly identified: the estimation component is the posterior variance of BHPF (small, because the panel is pooled), the transaction-noise component is the WP22 filter variance that QANSS carries, and the market-dynamics component is the residual drift variance; macroeconomic uncertainty is not modelled and is the reason every model fails at twelve months.
3 +Tables~\ref{tab:prob_a} and~\ref{tab:prob_b} report the CRPS, the coverage and the width of the 90\% intervals; Figure~\ref{fig:cal_a} plots the share of outcomes below each nominal quantile. For Task~A the LightGBM quantile models are the sharpest and are slightly under-covered (\aCovlightgbmhOneThree\% at one to three months for a nominal 90\%), the linear models are over-covered because their residual quantiles are homoskedastic, the hierarchical network is close to nominal at short horizons and under-covers at seven to twelve months (\aCovhshnpartialhSevenOneTwo\%) because its intervals do not widen with the horizon while the bias grows, and the unembedded MLP produces intervals two and a half times too wide. For Task~B the ranking by CRPS follows the point ranking (LightGBM \bCRPSlightgbmpanelhThree{} at three months, QREFA \bCRPSqrefahThree, QANSS \bCRPSqansshThree, no change \bCRPSnochangehThree), but calibration separates the models sharply. The neural quantile heads (LSTM, GRU, TCN, TFT-lite, DSGFN) under-cover at every horizon (\bCovdsgfnhThree\% to \bCovtftlitehThree\% at three months for a nominal 90\%, falling below 50\% at twelve months): trained with the pinball loss on 34 to 45 origins they fit the central quantiles and collapse the tails. The Gaussian posterior predictive of BHPF and the residual quantiles of the ridge are close to nominal at one and three months (\bCovbhpfhThree\%, \bCovridgepanelhThree\%) and under-cover at six and twelve months as the bias grows. QANSS is over-covered at every horizon (\bCovqansshThree\% at three months, \bCovqansshOneTwo\% at twelve) because its predictive variance adds the published filter variance of the origin level to the learned drift variance, and it is the only model whose twelve-month intervals contain the realised changes; the price is intervals twice as wide as LightGBM's. The decomposition of uncertainty the protocol asks for is only partly identified: the estimation component is the posterior variance of BHPF (small, because the panel is pooled), the transaction-noise component is the WP22 filter variance that QANSS carries, and the market-dynamics component is the residual drift variance; macroeconomic uncertainty is not modelled and is the reason every model fails at twelve months.
4 4
5 5 \input{tables/tab_prob_a}
6 +\subsection{Probabilities of decline}
7 +
8 +The protocol asks for the probability of a price decline. Table~\ref{tab:decline_b} scores the probability of a decline of the quality-adjusted index over the horizon, read off the quantile forecasts, by the Brier score and its skill relative to the climatological frequency of declines (\ShareDeclineshThree\% of cell-months at three months, \ShareDeclineshOneTwo\% at twelve); Figure~\ref{fig:decline_reliability} plots reliability at three months. The integrated QREFA and LightGBM have the best skill at three months (\BrierSkillqrefahThree{} and \BrierSkilllightgbmpanelhThree), DSGFN, BHPF and the ridge follow, QANSS's over-wide distribution leaves it little skill (\BrierSkillqansshThree), and the no-change, TFT-lite and mean-growth probabilities are worse than the climatology. Reliability is good for QREFA, DSGFN, LightGBM and BHPF over the whole range of forecast probabilities, and QANSS's probabilities overstate the frequency of declines throughout (a forecast probability of 0.85 is followed by a decline 64\% of the time), the mirror image of its over-wide intervals, which put too much mass below zero. At twelve months the skill of every model is negative, QANSS's severely so (\BrierSkillqansshOneTwo): with fewer than 10\% of twelve-month windows ending below their start, the climatology is hard to beat and the probabilistic forecasts inherit the bias of the point forecasts.
9 +
10 +\input{tables/tab_decline_b}
11 +
12 +\begin{figure}[htbp]\centering
13 +\includegraphics[width=0.55\textwidth]{figures/fig_decline_reliability.pdf}
14 +\caption{Task C: reliability of the forecast probability of an index decline over three months (bins of forecast probability).}\label{fig:decline_reliability}
15 +\end{figure}
16 +
6 17 \input{tables/tab_prob_b}
7 18
8 19 \begin{figure}[htbp]\centering
9 20 \includegraphics[width=0.48\textwidth]{figures/fig_calibration_a.pdf}\hfill\includegraphics[width=0.48\textwidth]{figures/fig_calibration_b.pdf}
10 21 \caption{Calibration: share of outcomes below each nominal quantile, Task A (left, horizon band 4--6 months) and Task B (right, horizon 3).}\label{fig:cal_a}
11 22 \end{figure}
12 −\label{fig:cal_b}
modified paper/sections/results.tex +28 −1
@@ -11,7 +11,14 @@ Table~\ref{tab:scores_a} reports the accuracy of the sale-price forecasts over \
11 11 \caption{Task A: MAE and CRPS of sale-price forecasts by horizon band and model.}\label{fig:perf_a}
12 12 \end{figure}
13 13
14 −The horizon profile is informative about what the models learn. Accuracy deteriorates slowly with the horizon (LightGBM loses \aMAEDeltalightgbm{} log points of MAE between the first and the last band), but the bias grows: all models under-predict prices at seven to twelve months by 4 to 9 log points, which is the appreciation of the Quebec market over 2023--2026 that the models, trained on past levels, do not extrapolate. The naive median has the same bias, and the models that embed the horizon (HSHN) are not less biased than those that do not. Forecasting the level of a future sale is therefore two problems: valuing the dwelling at today's prices, which the trees do well, and forecasting the market, which none of the property-level models does better than assuming no change; Task~B isolates the second problem.
14 +The horizon profile is informative about what the models learn. Accuracy deteriorates slowly with the horizon (LightGBM loses \aMAEDeltalightgbm{} log points of MAE between the first and the last band), but the bias grows: all models under-predict prices at seven to twelve months by 4 to 9 log points, which is the appreciation of the Quebec market over 2023--2026 that the models, trained on past levels, do not extrapolate. The naive median has the same bias, and the models that embed the horizon (HSHN) are not less biased than those that do not. Forecasting the level of a future sale is therefore two problems: valuing the dwelling at today's prices, which the trees do well, and forecasting the market, which none of the property-level models does better than assuming no change; Task~B isolates the second problem. Figure~\ref{fig:error_time_a} shows the MAE and bias of the main models at each of the twelve origins: the bias of the hedonic models is negative at every one of the twelve origins, between $-3$ and $-8$ log points for the origins from late 2023 to early 2025 and smallest (about $-1$ to $-3$) in mid-2023 and from mid-2025, when the market was decelerating; the unembedded quantile MLP swings from $+10$ to $-19$ and back, which is the instability of an under-regularised network on 50 to 150 thousand training sales rather than a market signal. In dollars (Table~\ref{tab:dollar_a}), the median absolute error of a one-to-three-month LightGBM forecast is \$\Dollarlightgbmhouse{} for a house sold at the median price of \$420{,}000, \$\Dollarlightgbmcondo{} for a condominium (median \$364{,}000) and \$\Dollarlightgbmplex{} for a plex (median \$510{,}000), against \$\Dollarnaivemunmedianhouse, \$\Dollarnaivemunmediancondo{} and \$\Dollarnaivemunmedianplex{} for the municipal median: the characteristics reduce the dollar error by a third for houses and by three quarters for condominiums, whose prices vary most within a municipality, and the hedonic OLS is within 10\% of LightGBM in every class.
15 +
16 +\input{tables/tab_dollar_a}
17 +
18 +\begin{figure}[htbp]\centering
19 +\includegraphics[width=\textwidth]{figures/fig_error_time_a.pdf}
20 +\caption{Task A: MAE (left) and bias (right) of sale-price forecasts by forecast origin, all horizons pooled.}\label{fig:error_time_a}
21 +\end{figure}
15 22
16 23 \subsection{Task B: the change of a quality-adjusted index}
17 24
@@ -38,3 +45,23 @@ Fifth, at twelve months every pooled model fails. The AR(2) is the best forecast
38 45 \includegraphics[width=\textwidth]{figures/fig_trajectories_b.pdf}
39 46 \caption{Task B: realised three-month change of the house index (black) and forecasts of five models, by origin, for the province, the Montréal and Capitale-Nationale regions and Gatineau.}\label{fig:traj}
40 47 \end{figure}
48 +
49 +\subsection{Evolution of the errors over time, multiple testing and combinations}
50 +
51 +Figure~\ref{fig:error_time_b} and Table~\ref{tab:year_b} follow the three-month errors origin by origin. The gain of the pooled models over the no-change forecast is not uniform: it is concentrated in the origins of December to March, whose three-month windows cover the spring upswing, when the realised change is large and positive and the models' calendar-month and momentum features anticipate it (LightGBM reaches a MASE of \YearlightgbmpanelTwoZeroTwoSix{} on the 2026 origins against \YearlightgbmpanelTwoZeroTwoThree{} on those of late 2023), and it vanishes for the origins of summer and autumn, where no model does better than no change. Table~\ref{tab:regime_b} makes the same point with ex-post regimes of the provincial market: when the provincial house index rose by more than two log points over the target window (\RegimeOriginsrising{} origins) LightGBM's MASE is \Regimelightgbmpanelrising{} and every pooled model beats no change; when the window was flat (\RegimeOriginsflat{} origins) LightGBM's MASE is \Regimelightgbmpanelflat, only the momentum rule edges out the no-change forecast (\Regimemomentumflat), and DSGFN is the worst model (\Regimedsgfnflat); the single falling window, the three months from September 2025, is forecast better than no change by DSGFN, QREFA, TFT-lite, LightGBM and momentum, and worse by the AR(2), BHPF, RAREF, QANSS and the ridge, which extrapolate the positive drift. The forecastability measured in Section~\ref{sec:results} is therefore the forecastability of seasonal upswings; a model that is good in rising windows and no worse than no change in flat ones, which is LightGBM's profile, is the best that this sample supports.
52 +
53 +Table~\ref{tab:tests_b} in Appendix~\ref{app:tests} reports the Diebold--Mariano statistics with Holm-adjusted $p$-values across the 18 models of each horizon. The adjustment matters: at three months LightGBM's unadjusted $p$-value of \DMPlightgbmpanelhThree{} becomes \HolmPlightgbmpanelhThree{} after Holm, QANSS's \DMPqansshThree{} becomes \HolmPqansshThree, and no improvement over the no-change forecast survives a 10\% family-wise error rate at any horizon; only the deterioration of the local linear trend remains significant. With 31 to 45 origins the evidence that any model beats no change is suggestive at the 5\% level for single comparisons and absent once the number of models tried is accounted for. The Giacomini--White conditional test, which asks whether the loss difference is predictable from its own lag, rejects for LightGBM ($p = \GWPlightgbmpanelhThree$), whose advantage is itself predictable from the season, and for the random walk with drift, the seasonal naive and the mean-growth forecasts, whose relative performance alternates with the calendar.
54 +
55 +Directional accuracy (Table~\ref{tab:direction_b}) tells the same story in a form closer to use. At three months the pooled models predict the sign of the realised change in \DirlightgbmpanelhThree\% of cell-months (LightGBM) to \DirdsgfnhThree\% (DSGFN), against 50\% for a coin and \DirmomentumhThree\% for the momentum rule, whose sign is that of the previous quarter; at turning points, origins where the realised change reverses sign, the accuracy falls to \DirTPlightgbmpanelhThree{} to \DirTPqrefahThree\%, little above chance, and momentum, which by construction predicts the sign that has just reversed, does best (\DirTPmomentumhThree\%) for the wrong reason. At twelve months the directional accuracy of about 91\% for every pooled model is uninformative: 91\% of twelve-month changes in the sample were positive and the models predict a rise; at turning points none does better than a coin.
56 +
57 +Table~\ref{tab:combo_b} evaluates equal-weight combinations of the strongest models on the same cells and origins. None improves on LightGBM alone (MASE \CombolightgbmpanelhThree{} at three months against \ComboeqlgbmqansshThree{} for LightGBM + QANSS and \ComboeqlgbmqanssridgearTwohThree{} for the four-model combination), all improve on QREFA, the learned stack (\ComboqrefahThree), and adding the no-change forecast as a fifth component (\ComboeqallwithnochangehThree) costs little. Combination protects against a bad component but, with one dominant component, does not beat it: the classical result that combination helps when the components have comparable accuracy and different information \citep{timmermann2006combinations} holds here in its negative form, and the learned stack does worse than equal weights because its weights are estimated on the same short sample in which the components' relative accuracy changes from year to year (Table~\ref{tab:year_b}).
58 +
59 +\input{tables/tab_year_b}
60 +\input{tables/tab_regime_b}
61 +\input{tables/tab_direction_b}
62 +\input{tables/tab_combo_b}
63 +
64 +\begin{figure}[htbp]\centering
65 +\includegraphics[width=\textwidth]{figures/fig_error_time_b.pdf}
66 +\caption{Task B, horizon 3: MAE of the index-change forecasts by forecast origin, selected models.}\label{fig:error_time_b}
67 +\end{figure}
modified paper/sections/simulation.tex +0 −2
@@ -11,8 +11,6 @@ The simulation explains the empirical ranking by separating two effects: the for
11 11 Two lessons carry over to the real data. First, the gains of the pooled tree model on the Quebec panel (MASE 0.75 at three months) are larger than anything the simulation produces from latent momentum alone; the simulated latent paths have no seasonal component, whereas the Quebec index has a pronounced seasonal cycle (Figure~\ref{fig:traj}) that the calendar-month feature and the cell's own history capture. The real-data forecastability is therefore mostly seasonal composition in the quality-adjusted index, not momentum in latent prices, which is why the seasonal naive is the best provincial forecast and why the twelve-month horizon, where the seasonal cycle cancels, is unforecastable. Second, feature-rich models on noisy real-time indices can be worse than no change; the interval coverage of the pooled models in the simulation (\SimCovmunicipalityridgepanelmomentum\% for the ridge, \SimCovmunicipalitylightgbmpanelmomentum\% for LightGBM, for a nominal 90\%) shows the same under-coverage as on the real data, while the no-change residual quantiles (\SimCovmunicipalitynochangemomentum\%) are close to nominal.
12 12
13 13 \input{tables/tab_sim_municipality}
14 −\input{tables/tab_sim_region}
15 −\input{tables/tab_sim_province}
16 14
17 15 \begin{figure}[htbp]\centering
18 16 \includegraphics[width=\textwidth]{figures/fig_simulation.pdf}
modified paper/tables/numbers.tex +560 −0
@@ -104,6 +104,445 @@
104 104 \newcommand{\AttTopOne}{0.08}
105 105 \newcommand{\AttTopSix}{0.19}
106 106 \newcommand{\AttTopThree}{0.19}
107 +\newcommand{\BrierSkillarTwocellhOne}{-0.01}
108 +\newcommand{\BrierSkillarTwocellhOneTwo}{-0.01}
109 +\newcommand{\BrierSkillarTwocellhSix}{+0.00}
110 +\newcommand{\BrierSkillarTwocellhThree}{+0.02}
111 +\newcommand{\BrierSkillbhpfhOne}{+0.06}
112 +\newcommand{\BrierSkillbhpfhOneTwo}{-0.10}
113 +\newcommand{\BrierSkillbhpfhSix}{-0.01}
114 +\newcommand{\BrierSkillbhpfhThree}{+0.13}
115 +\newcommand{\BrierSkilldsgfnhOne}{-0.05}
116 +\newcommand{\BrierSkilldsgfnhOneTwo}{-0.08}
117 +\newcommand{\BrierSkilldsgfnhSix}{+0.04}
118 +\newcommand{\BrierSkilldsgfnhThree}{+0.14}
119 +\newcommand{\BrierSkilllightgbmpanelhOne}{+0.09}
120 +\newcommand{\BrierSkilllightgbmpanelhOneTwo}{-0.02}
121 +\newcommand{\BrierSkilllightgbmpanelhSix}{+0.02}
122 +\newcommand{\BrierSkilllightgbmpanelhThree}{+0.15}
123 +\newcommand{\BrierSkillmeangrowthhOne}{-0.04}
124 +\newcommand{\BrierSkillmeangrowthhOneTwo}{-0.12}
125 +\newcommand{\BrierSkillmeangrowthhSix}{-0.06}
126 +\newcommand{\BrierSkillmeangrowthhThree}{-0.06}
127 +\newcommand{\BrierSkillmomentumhOne}{+0.00}
128 +\newcommand{\BrierSkillmomentumhOneTwo}{-0.01}
129 +\newcommand{\BrierSkillmomentumhSix}{+0.03}
130 +\newcommand{\BrierSkillmomentumhThree}{+0.03}
131 +\newcommand{\BrierSkillnochangehOne}{-0.01}
132 +\newcommand{\BrierSkillnochangehOneTwo}{-0.01}
133 +\newcommand{\BrierSkillnochangehSix}{-0.01}
134 +\newcommand{\BrierSkillnochangehThree}{-0.02}
135 +\newcommand{\BrierSkillqansshOne}{+0.06}
136 +\newcommand{\BrierSkillqansshOneTwo}{-1.04}
137 +\newcommand{\BrierSkillqansshSix}{-0.03}
138 +\newcommand{\BrierSkillqansshThree}{+0.07}
139 +\newcommand{\BrierSkillqrefahOne}{+0.03}
140 +\newcommand{\BrierSkillqrefahOneTwo}{-0.09}
141 +\newcommand{\BrierSkillqrefahSix}{+0.06}
142 +\newcommand{\BrierSkillqrefahThree}{+0.17}
143 +\newcommand{\BrierSkillrarefhOne}{+0.06}
144 +\newcommand{\BrierSkillrarefhOneTwo}{-0.07}
145 +\newcommand{\BrierSkillrarefhSix}{-0.05}
146 +\newcommand{\BrierSkillrarefhThree}{+0.09}
147 +\newcommand{\BrierSkillridgepanelhOne}{+0.04}
148 +\newcommand{\BrierSkillridgepanelhOneTwo}{-0.07}
149 +\newcommand{\BrierSkillridgepanelhSix}{-0.05}
150 +\newcommand{\BrierSkillridgepanelhThree}{+0.11}
151 +\newcommand{\BrierSkilltftlitehOne}{-0.14}
152 +\newcommand{\BrierSkilltftlitehOneTwo}{-0.07}
153 +\newcommand{\BrierSkilltftlitehSix}{-0.05}
154 +\newcommand{\BrierSkilltftlitehThree}{-0.05}
155 +\newcommand{\ComboarTwocellhOne}{0.983}
156 +\newcommand{\ComboarTwocellhOneTwo}{0.630}
157 +\newcommand{\ComboarTwocellhSix}{0.807}
158 +\newcommand{\ComboarTwocellhThree}{0.897}
159 +\newcommand{\ComboeqallwithnochangehOne}{0.898}
160 +\newcommand{\ComboeqallwithnochangehOneTwo}{0.672}
161 +\newcommand{\ComboeqallwithnochangehSix}{0.729}
162 +\newcommand{\ComboeqallwithnochangehThree}{0.779}
163 +\newcommand{\ComboeqlgbmarTwohOne}{0.892}
164 +\newcommand{\ComboeqlgbmarTwohOneTwo}{0.673}
165 +\newcommand{\ComboeqlgbmarTwohSix}{0.751}
166 +\newcommand{\ComboeqlgbmarTwohThree}{0.787}
167 +\newcommand{\ComboeqlgbmqansshOne}{0.870}
168 +\newcommand{\ComboeqlgbmqansshOneTwo}{0.845}
169 +\newcommand{\ComboeqlgbmqansshSix}{0.735}
170 +\newcommand{\ComboeqlgbmqansshThree}{0.760}
171 +\newcommand{\ComboeqlgbmqanssridgearTwohOne}{0.891}
172 +\newcommand{\ComboeqlgbmqanssridgearTwohOneTwo}{0.777}
173 +\newcommand{\ComboeqlgbmqanssridgearTwohSix}{0.736}
174 +\newcommand{\ComboeqlgbmqanssridgearTwohThree}{0.765}
175 +\newcommand{\CombolightgbmpanelhOne}{0.871}
176 +\newcommand{\CombolightgbmpanelhOneTwo}{0.756}
177 +\newcommand{\CombolightgbmpanelhSix}{0.749}
178 +\newcommand{\CombolightgbmpanelhThree}{0.754}
179 +\newcommand{\ComboqansshOne}{0.931}
180 +\newcommand{\ComboqansshOneTwo}{1.077}
181 +\newcommand{\ComboqansshSix}{0.840}
182 +\newcommand{\ComboqansshThree}{0.831}
183 +\newcommand{\ComboqrefahOne}{0.956}
184 +\newcommand{\ComboqrefahOneTwo}{1.012}
185 +\newcommand{\ComboqrefahSix}{0.833}
186 +\newcommand{\ComboqrefahThree}{0.816}
187 +\newcommand{\ComboridgepanelhOne}{0.969}
188 +\newcommand{\ComboridgepanelhOneTwo}{1.211}
189 +\newcommand{\ComboridgepanelhSix}{0.886}
190 +\newcommand{\ComboridgepanelhThree}{0.839}
191 +\newcommand{\CostAelasticnet}{3.4}
192 +\newcommand{\CostAhedonicols}{0.3}
193 +\newcommand{\CostAhshnfull}{9.0}
194 +\newcommand{\CostAhshnnone}{9.3}
195 +\newcommand{\CostAhshnpartial}{9.5}
196 +\newcommand{\CostAlightgbm}{155.0}
197 +\newcommand{\CostAmlp}{7.7}
198 +\newcommand{\CostArandomforest}{29.9}
199 +\newcommand{\CostAridge}{0.1}
200 +\newcommand{\CostAsvr}{63.6}
201 +\newcommand{\CostAxgboost}{9.9}
202 +\newcommand{\CostBarTwocell}{0.0}
203 +\newcommand{\CostBbhpf}{0.2}
204 +\newcommand{\CostBdsgfn}{4.9}
205 +\newcommand{\CostBgru}{7.1}
206 +\newcommand{\CostBlightgbmpanel}{5.8}
207 +\newcommand{\CostBlocallineartrend}{1.6}
208 +\newcommand{\CostBlstm}{8.9}
209 +\newcommand{\CostBmeangrowth}{0.0}
210 +\newcommand{\CostBmlppanel}{1.0}
211 +\newcommand{\CostBmomentum}{0.0}
212 +\newcommand{\CostBnochange}{0.0}
213 +\newcommand{\CostBqanss}{0.2}
214 +\newcommand{\CostBqrefa}{10.4}
215 +\newcommand{\CostBraref}{3.9}
216 +\newcommand{\CostBridgepanel}{0.0}
217 +\newcommand{\CostBrwdrift}{0.0}
218 +\newcommand{\CostBseasonalnaive}{0.0}
219 +\newcommand{\CostBtcn}{186.0}
220 +\newcommand{\CostBtftlite}{5.0}
221 +\newcommand{\DMParTwocellhOne}{0.278}
222 +\newcommand{\DMParTwocellhOneTwo}{0.712}
223 +\newcommand{\DMParTwocellhSix}{0.109}
224 +\newcommand{\DMParTwocellhThree}{0.072}
225 +\newcommand{\DMPbhpfhOne}{0.082}
226 +\newcommand{\DMPbhpfhOneTwo}{0.918}
227 +\newcommand{\DMPbhpfhSix}{0.469}
228 +\newcommand{\DMPbhpfhThree}{0.064}
229 +\newcommand{\DMPdsgfnhOne}{0.605}
230 +\newcommand{\DMPdsgfnhOneTwo}{0.919}
231 +\newcommand{\DMPdsgfnhSix}{0.372}
232 +\newcommand{\DMPdsgfnhThree}{0.223}
233 +\newcommand{\DMPgruhOne}{0.124}
234 +\newcommand{\DMPgruhOneTwo}{0.894}
235 +\newcommand{\DMPgruhSix}{0.229}
236 +\newcommand{\DMPgruhThree}{0.106}
237 +\newcommand{\DMPlightgbmpanelhOne}{0.001}
238 +\newcommand{\DMPlightgbmpanelhOneTwo}{0.855}
239 +\newcommand{\DMPlightgbmpanelhSix}{0.086}
240 +\newcommand{\DMPlightgbmpanelhThree}{0.007}
241 +\newcommand{\DMPlocallineartrendhOne}{0.000}
242 +\newcommand{\DMPlocallineartrendhOneTwo}{0.000}
243 +\newcommand{\DMPlocallineartrendhSix}{0.000}
244 +\newcommand{\DMPlocallineartrendhThree}{0.000}
245 +\newcommand{\DMPlstmhOne}{0.069}
246 +\newcommand{\DMPlstmhOneTwo}{0.945}
247 +\newcommand{\DMPlstmhSix}{0.254}
248 +\newcommand{\DMPlstmhThree}{0.314}
249 +\newcommand{\DMPmeangrowthhOne}{0.800}
250 +\newcommand{\DMPmeangrowthhOneTwo}{0.798}
251 +\newcommand{\DMPmeangrowthhSix}{0.473}
252 +\newcommand{\DMPmeangrowthhThree}{0.560}
253 +\newcommand{\DMPmlppanelhOne}{0.471}
254 +\newcommand{\DMPmlppanelhOneTwo}{0.595}
255 +\newcommand{\DMPmlppanelhSix}{0.610}
256 +\newcommand{\DMPmlppanelhThree}{0.229}
257 +\newcommand{\DMPmomentumhOne}{0.324}
258 +\newcommand{\DMPmomentumhOneTwo}{0.896}
259 +\newcommand{\DMPmomentumhSix}{0.574}
260 +\newcommand{\DMPmomentumhThree}{0.344}
261 +\newcommand{\DMPqansshOne}{0.030}
262 +\newcommand{\DMPqansshOneTwo}{0.792}
263 +\newcommand{\DMPqansshSix}{0.217}
264 +\newcommand{\DMPqansshThree}{0.037}
265 +\newcommand{\DMPqrefahOne}{0.092}
266 +\newcommand{\DMPqrefahOneTwo}{0.959}
267 +\newcommand{\DMPqrefahSix}{0.215}
268 +\newcommand{\DMPqrefahThree}{0.050}
269 +\newcommand{\DMPrarefhOne}{0.055}
270 +\newcommand{\DMPrarefhOneTwo}{0.915}
271 +\newcommand{\DMPrarefhSix}{0.364}
272 +\newcommand{\DMPrarefhThree}{0.092}
273 +\newcommand{\DMPridgepanelhOne}{0.067}
274 +\newcommand{\DMPridgepanelhOneTwo}{0.898}
275 +\newcommand{\DMPridgepanelhSix}{0.367}
276 +\newcommand{\DMPridgepanelhThree}{0.052}
277 +\newcommand{\DMPrwdrifthOne}{0.022}
278 +\newcommand{\DMPrwdrifthOneTwo}{0.773}
279 +\newcommand{\DMPrwdrifthSix}{0.375}
280 +\newcommand{\DMPrwdrifthThree}{0.261}
281 +\newcommand{\DMPseasonalnaivehOne}{0.000}
282 +\newcommand{\DMPseasonalnaivehOneTwo}{0.773}
283 +\newcommand{\DMPseasonalnaivehSix}{0.327}
284 +\newcommand{\DMPseasonalnaivehThree}{0.270}
285 +\newcommand{\DMPtcnhOne}{0.501}
286 +\newcommand{\DMPtcnhOneTwo}{0.880}
287 +\newcommand{\DMPtcnhSix}{0.229}
288 +\newcommand{\DMPtcnhThree}{0.208}
289 +\newcommand{\DMPtftlitehOne}{0.223}
290 +\newcommand{\DMPtftlitehOneTwo}{0.966}
291 +\newcommand{\DMPtftlitehSix}{0.876}
292 +\newcommand{\DMPtftlitehThree}{0.817}
293 +\newcommand{\DirTParTwocellhOne}{65}
294 +\newcommand{\DirTParTwocellhOneTwo}{48}
295 +\newcommand{\DirTParTwocellhSix}{60}
296 +\newcommand{\DirTParTwocellhThree}{58}
297 +\newcommand{\DirTPbhpfhOne}{67}
298 +\newcommand{\DirTPbhpfhOneTwo}{49}
299 +\newcommand{\DirTPbhpfhSix}{59}
300 +\newcommand{\DirTPbhpfhThree}{57}
301 +\newcommand{\DirTPdsgfnhOne}{66}
302 +\newcommand{\DirTPdsgfnhOneTwo}{47}
303 +\newcommand{\DirTPdsgfnhSix}{60}
304 +\newcommand{\DirTPdsgfnhThree}{65}
305 +\newcommand{\DirTPlightgbmpanelhOne}{77}
306 +\newcommand{\DirTPlightgbmpanelhOneTwo}{47}
307 +\newcommand{\DirTPlightgbmpanelhSix}{59}
308 +\newcommand{\DirTPlightgbmpanelhThree}{65}
309 +\newcommand{\DirTPmeangrowthhOne}{51}
310 +\newcommand{\DirTPmeangrowthhOneTwo}{47}
311 +\newcommand{\DirTPmeangrowthhSix}{51}
312 +\newcommand{\DirTPmeangrowthhThree}{50}
313 +\newcommand{\DirTPmomentumhOne}{72}
314 +\newcommand{\DirTPmomentumhOneTwo}{47}
315 +\newcommand{\DirTPmomentumhSix}{68}
316 +\newcommand{\DirTPmomentumhThree}{69}
317 +\newcommand{\DirTPqansshOne}{75}
318 +\newcommand{\DirTPqansshOneTwo}{50}
319 +\newcommand{\DirTPqansshSix}{64}
320 +\newcommand{\DirTPqansshThree}{61}
321 +\newcommand{\DirTPqrefahOne}{70}
322 +\newcommand{\DirTPqrefahOneTwo}{48}
323 +\newcommand{\DirTPqrefahSix}{62}
324 +\newcommand{\DirTPqrefahThree}{66}
325 +\newcommand{\DirTPrarefhOne}{68}
326 +\newcommand{\DirTPrarefhOneTwo}{48}
327 +\newcommand{\DirTPrarefhSix}{58}
328 +\newcommand{\DirTPrarefhThree}{58}
329 +\newcommand{\DirTPridgepanelhOne}{68}
330 +\newcommand{\DirTPridgepanelhOneTwo}{48}
331 +\newcommand{\DirTPridgepanelhSix}{59}
332 +\newcommand{\DirTPridgepanelhThree}{58}
333 +\newcommand{\DirTPtftlitehOne}{66}
334 +\newcommand{\DirTPtftlitehOneTwo}{47}
335 +\newcommand{\DirTPtftlitehSix}{60}
336 +\newcommand{\DirTPtftlitehThree}{65}
337 +\newcommand{\DirarTwocellhOne}{59}
338 +\newcommand{\DirarTwocellhOneTwo}{91}
339 +\newcommand{\DirarTwocellhSix}{78}
340 +\newcommand{\DirarTwocellhThree}{71}
341 +\newcommand{\DirbhpfhOne}{65}
342 +\newcommand{\DirbhpfhOneTwo}{91}
343 +\newcommand{\DirbhpfhSix}{77}
344 +\newcommand{\DirbhpfhThree}{73}
345 +\newcommand{\DirdsgfnhOne}{63}
346 +\newcommand{\DirdsgfnhOneTwo}{91}
347 +\newcommand{\DirdsgfnhSix}{79}
348 +\newcommand{\DirdsgfnhThree}{77}
349 +\newcommand{\DirlightgbmpanelhOne}{70}
350 +\newcommand{\DirlightgbmpanelhOneTwo}{91}
351 +\newcommand{\DirlightgbmpanelhSix}{78}
352 +\newcommand{\DirlightgbmpanelhThree}{75}
353 +\newcommand{\DirmeangrowthhOne}{60}
354 +\newcommand{\DirmeangrowthhOneTwo}{90}
355 +\newcommand{\DirmeangrowthhSix}{78}
356 +\newcommand{\DirmeangrowthhThree}{70}
357 +\newcommand{\DirmomentumhOne}{53}
358 +\newcommand{\DirmomentumhOneTwo}{46}
359 +\newcommand{\DirmomentumhSix}{45}
360 +\newcommand{\DirmomentumhThree}{50}
361 +\newcommand{\DirqansshOne}{67}
362 +\newcommand{\DirqansshOneTwo}{75}
363 +\newcommand{\DirqansshSix}{76}
364 +\newcommand{\DirqansshThree}{73}
365 +\newcommand{\DirqrefahOne}{65}
366 +\newcommand{\DirqrefahOneTwo}{91}
367 +\newcommand{\DirqrefahSix}{78}
368 +\newcommand{\DirqrefahThree}{76}
369 +\newcommand{\DirrarefhOne}{66}
370 +\newcommand{\DirrarefhOneTwo}{91}
371 +\newcommand{\DirrarefhSix}{76}
372 +\newcommand{\DirrarefhThree}{73}
373 +\newcommand{\DirridgepanelhOne}{65}
374 +\newcommand{\DirridgepanelhOneTwo}{91}
375 +\newcommand{\DirridgepanelhSix}{76}
376 +\newcommand{\DirridgepanelhThree}{73}
377 +\newcommand{\DirtftlitehOne}{60}
378 +\newcommand{\DirtftlitehOneTwo}{91}
379 +\newcommand{\DirtftlitehSix}{77}
380 +\newcommand{\DirtftlitehThree}{69}
381 +\newcommand{\Dollarhedonicolscondo}{37{,}900}
382 +\newcommand{\Dollarhedonicolshouse}{67{,}889}
383 +\newcommand{\Dollarhedonicolsplex}{88{,}707}
384 +\newcommand{\Dollarlightgbmcondo}{32{,}005}
385 +\newcommand{\Dollarlightgbmhouse}{61{,}102}
386 +\newcommand{\Dollarlightgbmplex}{80{,}115}
387 +\newcommand{\Dollarnaivemunmediancondo}{127{,}000}
388 +\newcommand{\Dollarnaivemunmedianhouse}{92{,}750}
389 +\newcommand{\Dollarnaivemunmedianplex}{135{,}000}
390 +\newcommand{\GWParTwocellhOne}{0.496}
391 +\newcommand{\GWParTwocellhOneTwo}{0.000}
392 +\newcommand{\GWParTwocellhSix}{0.035}
393 +\newcommand{\GWParTwocellhThree}{0.099}
394 +\newcommand{\GWPbhpfhOne}{0.118}
395 +\newcommand{\GWPbhpfhOneTwo}{0.000}
396 +\newcommand{\GWPbhpfhSix}{0.001}
397 +\newcommand{\GWPbhpfhThree}{0.120}
398 +\newcommand{\GWPdsgfnhOne}{0.320}
399 +\newcommand{\GWPdsgfnhOneTwo}{0.000}
400 +\newcommand{\GWPdsgfnhSix}{0.015}
401 +\newcommand{\GWPdsgfnhThree}{0.154}
402 +\newcommand{\GWPgruhOne}{0.243}
403 +\newcommand{\GWPgruhOneTwo}{0.007}
404 +\newcommand{\GWPgruhSix}{0.007}
405 +\newcommand{\GWPgruhThree}{0.190}
406 +\newcommand{\GWPlightgbmpanelhOne}{0.000}
407 +\newcommand{\GWPlightgbmpanelhOneTwo}{0.011}
408 +\newcommand{\GWPlightgbmpanelhSix}{0.067}
409 +\newcommand{\GWPlightgbmpanelhThree}{0.005}
410 +\newcommand{\GWPlocallineartrendhOne}{0.000}
411 +\newcommand{\GWPlocallineartrendhOneTwo}{0.000}
412 +\newcommand{\GWPlocallineartrendhSix}{0.000}
413 +\newcommand{\GWPlocallineartrendhThree}{0.000}
414 +\newcommand{\GWPlstmhOne}{0.150}
415 +\newcommand{\GWPlstmhOneTwo}{0.107}
416 +\newcommand{\GWPlstmhSix}{0.002}
417 +\newcommand{\GWPlstmhThree}{0.184}
418 +\newcommand{\GWPmeangrowthhOne}{0.972}
419 +\newcommand{\GWPmeangrowthhOneTwo}{0.000}
420 +\newcommand{\GWPmeangrowthhSix}{0.003}
421 +\newcommand{\GWPmeangrowthhThree}{0.001}
422 +\newcommand{\GWPmlppanelhOne}{0.698}
423 +\newcommand{\GWPmlppanelhOneTwo}{0.000}
424 +\newcommand{\GWPmlppanelhSix}{0.003}
425 +\newcommand{\GWPmlppanelhThree}{0.327}
426 +\newcommand{\GWPmomentumhOne}{0.075}
427 +\newcommand{\GWPmomentumhOneTwo}{0.376}
428 +\newcommand{\GWPmomentumhSix}{0.069}
429 +\newcommand{\GWPmomentumhThree}{0.063}
430 +\newcommand{\GWPqansshOne}{0.027}
431 +\newcommand{\GWPqansshOneTwo}{0.004}
432 +\newcommand{\GWPqansshSix}{0.001}
433 +\newcommand{\GWPqansshThree}{0.066}
434 +\newcommand{\GWPqrefahOne}{0.038}
435 +\newcommand{\GWPqrefahOneTwo}{0.000}
436 +\newcommand{\GWPqrefahSix}{0.018}
437 +\newcommand{\GWPqrefahThree}{0.096}
438 +\newcommand{\GWPrarefhOne}{0.075}
439 +\newcommand{\GWPrarefhOneTwo}{0.016}
440 +\newcommand{\GWPrarefhSix}{0.001}
441 +\newcommand{\GWPrarefhThree}{0.171}
442 +\newcommand{\GWPridgepanelhOne}{0.103}
443 +\newcommand{\GWPridgepanelhOneTwo}{0.010}
444 +\newcommand{\GWPridgepanelhSix}{0.004}
445 +\newcommand{\GWPridgepanelhThree}{0.098}
446 +\newcommand{\GWPrwdrifthOne}{0.044}
447 +\newcommand{\GWPrwdrifthOneTwo}{0.001}
448 +\newcommand{\GWPrwdrifthSix}{0.000}
449 +\newcommand{\GWPrwdrifthThree}{0.000}
450 +\newcommand{\GWPseasonalnaivehOne}{0.000}
451 +\newcommand{\GWPseasonalnaivehOneTwo}{0.001}
452 +\newcommand{\GWPseasonalnaivehSix}{0.000}
453 +\newcommand{\GWPseasonalnaivehThree}{0.001}
454 +\newcommand{\GWPtcnhOne}{0.649}
455 +\newcommand{\GWPtcnhOneTwo}{0.046}
456 +\newcommand{\GWPtcnhSix}{0.045}
457 +\newcommand{\GWPtcnhThree}{0.220}
458 +\newcommand{\GWPtftlitehOne}{0.304}
459 +\newcommand{\GWPtftlitehOneTwo}{0.000}
460 +\newcommand{\GWPtftlitehSix}{0.011}
461 +\newcommand{\GWPtftlitehThree}{0.261}
462 +\newcommand{\HolmParTwocellhOne}{1.00}
463 +\newcommand{\HolmParTwocellhOneTwo}{1.00}
464 +\newcommand{\HolmParTwocellhSix}{1.00}
465 +\newcommand{\HolmParTwocellhThree}{0.87}
466 +\newcommand{\HolmPbhpfhOne}{0.82}
467 +\newcommand{\HolmPbhpfhOneTwo}{1.00}
468 +\newcommand{\HolmPbhpfhSix}{1.00}
469 +\newcommand{\HolmPbhpfhThree}{0.83}
470 +\newcommand{\HolmPdsgfnhOne}{1.00}
471 +\newcommand{\HolmPdsgfnhOneTwo}{1.00}
472 +\newcommand{\HolmPdsgfnhSix}{1.00}
473 +\newcommand{\HolmPdsgfnhThree}{1.00}
474 +\newcommand{\HolmPgruhOne}{0.99}
475 +\newcommand{\HolmPgruhOneTwo}{1.00}
476 +\newcommand{\HolmPgruhSix}{1.00}
477 +\newcommand{\HolmPgruhThree}{1.00}
478 +\newcommand{\HolmPlightgbmpanelhOne}{0.01}
479 +\newcommand{\HolmPlightgbmpanelhOneTwo}{1.00}
480 +\newcommand{\HolmPlightgbmpanelhSix}{1.00}
481 +\newcommand{\HolmPlightgbmpanelhThree}{0.11}
482 +\newcommand{\HolmPlocallineartrendhOne}{0.00}
483 +\newcommand{\HolmPlocallineartrendhOneTwo}{0.01}
484 +\newcommand{\HolmPlocallineartrendhSix}{0.00}
485 +\newcommand{\HolmPlocallineartrendhThree}{0.00}
486 +\newcommand{\HolmPlstmhOne}{0.80}
487 +\newcommand{\HolmPlstmhOneTwo}{1.00}
488 +\newcommand{\HolmPlstmhSix}{1.00}
489 +\newcommand{\HolmPlstmhThree}{1.00}
490 +\newcommand{\HolmPmeangrowthhOne}{1.00}
491 +\newcommand{\HolmPmeangrowthhOneTwo}{1.00}
492 +\newcommand{\HolmPmeangrowthhSix}{1.00}
493 +\newcommand{\HolmPmeangrowthhThree}{1.00}
494 +\newcommand{\HolmPmlppanelhOne}{1.00}
495 +\newcommand{\HolmPmlppanelhOneTwo}{1.00}
496 +\newcommand{\HolmPmlppanelhSix}{1.00}
497 +\newcommand{\HolmPmlppanelhThree}{1.00}
498 +\newcommand{\HolmPmomentumhOne}{1.00}
499 +\newcommand{\HolmPmomentumhOneTwo}{1.00}
500 +\newcommand{\HolmPmomentumhSix}{1.00}
501 +\newcommand{\HolmPmomentumhThree}{1.00}
502 +\newcommand{\HolmPqansshOne}{0.42}
503 +\newcommand{\HolmPqansshOneTwo}{1.00}
504 +\newcommand{\HolmPqansshSix}{1.00}
505 +\newcommand{\HolmPqansshThree}{0.59}
506 +\newcommand{\HolmPqrefahOne}{0.82}
507 +\newcommand{\HolmPqrefahOneTwo}{1.00}
508 +\newcommand{\HolmPqrefahSix}{1.00}
509 +\newcommand{\HolmPqrefahThree}{0.75}
510 +\newcommand{\HolmPrarefhOne}{0.72}
511 +\newcommand{\HolmPrarefhOneTwo}{1.00}
512 +\newcommand{\HolmPrarefhSix}{1.00}
513 +\newcommand{\HolmPrarefhThree}{1.00}
514 +\newcommand{\HolmPridgepanelhOne}{0.80}
515 +\newcommand{\HolmPridgepanelhOneTwo}{1.00}
516 +\newcommand{\HolmPridgepanelhSix}{1.00}
517 +\newcommand{\HolmPridgepanelhThree}{0.75}
518 +\newcommand{\HolmPrwdrifthOne}{0.33}
519 +\newcommand{\HolmPrwdrifthOneTwo}{1.00}
520 +\newcommand{\HolmPrwdrifthSix}{1.00}
521 +\newcommand{\HolmPrwdrifthThree}{1.00}
522 +\newcommand{\HolmPseasonalnaivehOne}{0.00}
523 +\newcommand{\HolmPseasonalnaivehOneTwo}{1.00}
524 +\newcommand{\HolmPseasonalnaivehSix}{1.00}
525 +\newcommand{\HolmPseasonalnaivehThree}{1.00}
526 +\newcommand{\HolmPtcnhOne}{1.00}
527 +\newcommand{\HolmPtcnhOneTwo}{1.00}
528 +\newcommand{\HolmPtcnhSix}{1.00}
529 +\newcommand{\HolmPtcnhThree}{1.00}
530 +\newcommand{\HolmPtftlitehOne}{1.00}
531 +\newcommand{\HolmPtftlitehOneTwo}{1.00}
532 +\newcommand{\HolmPtftlitehSix}{1.00}
533 +\newcommand{\HolmPtftlitehThree}{1.00}
534 +\newcommand{\MunMedMASEarTwocell}{0.91}
535 +\newcommand{\MunMedMASElightgbmpanel}{0.74}
536 +\newcommand{\MunMedMASEqanss}{0.82}
537 +\newcommand{\MunMedMASEridgepanel}{0.80}
538 +\newcommand{\MunPninetyarTwocell}{1.08}
539 +\newcommand{\MunPninetylightgbmpanel}{0.97}
540 +\newcommand{\MunPninetyqanss}{1.08}
541 +\newcommand{\MunPninetyridgepanel}{1.44}
542 +\newcommand{\MunSharearTwocell}{80}
543 +\newcommand{\MunSharelightgbmpanel}{91}
544 +\newcommand{\MunShareqanss}{83}
545 +\newcommand{\MunShareridgepanel}{72}
107 546 \newcommand{\NBenchA}{8}
108 547 \newcommand{\NBenchB}{14}
109 548 \newcommand{\NCellsB}{245}
@@ -117,6 +556,45 @@
117 556 \newcommand{\NRowsB}{39{,}690}
118 557 \newcommand{\NSales}{632{,}006}
119 558 \newcommand{\NTestA}{1{,}255{,}898}
559 +\newcommand{\RegimeOriginsfalling}{1}
560 +\newcommand{\RegimeOriginsflat}{13}
561 +\newcommand{\RegimeOriginsrising}{17}
562 +\newcommand{\RegimearTwocellfalling}{1.25}
563 +\newcommand{\RegimearTwocellflat}{1.14}
564 +\newcommand{\RegimearTwocellrising}{0.76}
565 +\newcommand{\Regimebhpffalling}{1.10}
566 +\newcommand{\Regimebhpfflat}{1.14}
567 +\newcommand{\Regimebhpfrising}{0.70}
568 +\newcommand{\Regimedsgfnfalling}{0.66}
569 +\newcommand{\Regimedsgfnflat}{1.29}
570 +\newcommand{\Regimedsgfnrising}{0.70}
571 +\newcommand{\Regimelightgbmpanelfalling}{0.84}
572 +\newcommand{\Regimelightgbmpanelflat}{1.00}
573 +\newcommand{\Regimelightgbmpanelrising}{0.63}
574 +\newcommand{\Regimemeangrowthfalling}{1.40}
575 +\newcommand{\Regimemeangrowthflat}{1.23}
576 +\newcommand{\Regimemeangrowthrising}{0.80}
577 +\newcommand{\Regimemomentumfalling}{0.85}
578 +\newcommand{\Regimemomentumflat}{0.97}
579 +\newcommand{\Regimemomentumrising}{1.04}
580 +\newcommand{\Regimenochangefalling}{1.00}
581 +\newcommand{\Regimenochangeflat}{1.00}
582 +\newcommand{\Regimenochangerising}{1.00}
583 +\newcommand{\Regimeqanssfalling}{1.14}
584 +\newcommand{\Regimeqanssflat}{1.05}
585 +\newcommand{\Regimeqanssrising}{0.71}
586 +\newcommand{\Regimeqrefafalling}{0.75}
587 +\newcommand{\Regimeqrefaflat}{1.13}
588 +\newcommand{\Regimeqrefarising}{0.67}
589 +\newcommand{\Regimerareffalling}{1.11}
590 +\newcommand{\Regimerarefflat}{1.14}
591 +\newcommand{\Regimerarefrising}{0.70}
592 +\newcommand{\Regimeridgepanelfalling}{1.08}
593 +\newcommand{\Regimeridgepanelflat}{1.11}
594 +\newcommand{\Regimeridgepanelrising}{0.70}
595 +\newcommand{\Regimetftlitefalling}{0.77}
596 +\newcommand{\Regimetftliteflat}{1.12}
597 +\newcommand{\Regimetftliterising}{0.94}
120 598 \newcommand{\RobCovarTwocellexpanding}{91}
121 599 \newcommand{\RobCovarTwocellminnOneZero}{91}
122 600 \newcommand{\RobCovarTwocellrollingTwoFour}{91}
@@ -189,6 +667,36 @@
189 667 \newcommand{\RobtftliteseedOne}{4.51}
190 668 \newcommand{\RobtftliteseedTwo}{4.83}
191 669 \newcommand{\Robtftlitewinsorised}{4.21}
670 +\newcommand{\SaleRatecondoageFive}{6.1}
671 +\newcommand{\SaleRatecondoageFour}{6.1}
672 +\newcommand{\SaleRatecondoageOne}{5.6}
673 +\newcommand{\SaleRatecondoageThree}{6.3}
674 +\newcommand{\SaleRatecondoageTwo}{7.2}
675 +\newcommand{\SaleRatecondofaFive}{5.5}
676 +\newcommand{\SaleRatecondofaFour}{6.8}
677 +\newcommand{\SaleRatecondofaOne}{5.8}
678 +\newcommand{\SaleRatecondofaThree}{6.7}
679 +\newcommand{\SaleRatecondofaTwo}{6.4}
680 +\newcommand{\SaleRatehouseageFive}{3.8}
681 +\newcommand{\SaleRatehouseageFour}{3.9}
682 +\newcommand{\SaleRatehouseageOne}{4.8}
683 +\newcommand{\SaleRatehouseageThree}{3.3}
684 +\newcommand{\SaleRatehouseageTwo}{3.7}
685 +\newcommand{\SaleRatehousefaFive}{3.5}
686 +\newcommand{\SaleRatehousefaFour}{3.8}
687 +\newcommand{\SaleRatehousefaOne}{4.3}
688 +\newcommand{\SaleRatehousefaThree}{3.9}
689 +\newcommand{\SaleRatehousefaTwo}{3.9}
690 +\newcommand{\SaleRateplexageFive}{4.9}
691 +\newcommand{\SaleRateplexageFour}{4.7}
692 +\newcommand{\SaleRateplexageOne}{4.6}
693 +\newcommand{\SaleRateplexageThree}{4.1}
694 +\newcommand{\SaleRateplexageTwo}{4.0}
695 +\newcommand{\SaleRateplexfaFive}{3.8}
696 +\newcommand{\SaleRateplexfaFour}{4.0}
697 +\newcommand{\SaleRateplexfaOne}{5.6}
698 +\newcommand{\SaleRateplexfaThree}{4.2}
699 +\newcommand{\SaleRateplexfaTwo}{4.8}
192 700 \newcommand{\SelAgecondoSold}{17}
193 701 \newcommand{\SelAgecondoStock}{20}
194 702 \newcommand{\SelAgehouseSold}{41}
@@ -261,6 +769,10 @@
261 769 \newcommand{\ShapymTwoZeroTwoFiveZeroThree}{2.9}
262 770 \newcommand{\ShapymTwoZeroTwoFourZeroThree}{3.3}
263 771 \newcommand{\ShapymTwoZeroTwoThreeZeroThree}{3.1}
772 +\newcommand{\ShareDeclineshOne}{40}
773 +\newcommand{\ShareDeclineshOneTwo}{10}
774 +\newcommand{\ShareDeclineshSix}{23}
775 +\newcommand{\ShareDeclineshThree}{31}
264 776 \newcommand{\SimCovmunicipalityarTwocellmomentum}{81}
265 777 \newcommand{\SimCovmunicipalityarTwocellregimes}{81}
266 778 \newcommand{\SimCovmunicipalityarTwocellrw}{83}
@@ -1026,6 +1538,54 @@
1026 1538 \newcommand{\Simregiontftliterw}{0.81}
1027 1539 \newcommand{\Simregiontftlitesparse}{1.84}
1028 1540 \newcommand{\Simregiontftlitespillover}{2.28}
1541 +\newcommand{\YeararTwocellTwoZeroTwoFive}{0.96}
1542 +\newcommand{\YeararTwocellTwoZeroTwoFour}{0.86}
1543 +\newcommand{\YeararTwocellTwoZeroTwoSix}{0.88}
1544 +\newcommand{\YeararTwocellTwoZeroTwoThree}{0.77}
1545 +\newcommand{\YearbhpfTwoZeroTwoFive}{0.93}
1546 +\newcommand{\YearbhpfTwoZeroTwoFour}{0.76}
1547 +\newcommand{\YearbhpfTwoZeroTwoSix}{0.89}
1548 +\newcommand{\YearbhpfTwoZeroTwoThree}{0.96}
1549 +\newcommand{\YeardsgfnTwoZeroTwoFive}{0.95}
1550 +\newcommand{\YeardsgfnTwoZeroTwoFour}{0.89}
1551 +\newcommand{\YeardsgfnTwoZeroTwoSix}{0.75}
1552 +\newcommand{\YeardsgfnTwoZeroTwoThree}{0.74}
1553 +\newcommand{\YearlightgbmpanelTwoZeroTwoFive}{0.78}
1554 +\newcommand{\YearlightgbmpanelTwoZeroTwoFour}{0.76}
1555 +\newcommand{\YearlightgbmpanelTwoZeroTwoSix}{0.68}
1556 +\newcommand{\YearlightgbmpanelTwoZeroTwoThree}{0.85}
1557 +\newcommand{\YearmeangrowthTwoZeroTwoFive}{0.97}
1558 +\newcommand{\YearmeangrowthTwoZeroTwoFour}{0.94}
1559 +\newcommand{\YearmeangrowthTwoZeroTwoSix}{0.95}
1560 +\newcommand{\YearmeangrowthTwoZeroTwoThree}{0.97}
1561 +\newcommand{\YearmomentumTwoZeroTwoFive}{1.01}
1562 +\newcommand{\YearmomentumTwoZeroTwoFour}{1.03}
1563 +\newcommand{\YearmomentumTwoZeroTwoSix}{0.98}
1564 +\newcommand{\YearmomentumTwoZeroTwoThree}{0.95}
1565 +\newcommand{\YearnochangeTwoZeroTwoFive}{1.00}
1566 +\newcommand{\YearnochangeTwoZeroTwoFour}{1.00}
1567 +\newcommand{\YearnochangeTwoZeroTwoSix}{1.00}
1568 +\newcommand{\YearnochangeTwoZeroTwoThree}{1.00}
1569 +\newcommand{\YearqanssTwoZeroTwoFive}{0.86}
1570 +\newcommand{\YearqanssTwoZeroTwoFour}{0.79}
1571 +\newcommand{\YearqanssTwoZeroTwoSix}{0.85}
1572 +\newcommand{\YearqanssTwoZeroTwoThree}{0.84}
1573 +\newcommand{\YearqrefaTwoZeroTwoFive}{0.91}
1574 +\newcommand{\YearqrefaTwoZeroTwoFour}{0.77}
1575 +\newcommand{\YearqrefaTwoZeroTwoSix}{0.75}
1576 +\newcommand{\YearqrefaTwoZeroTwoThree}{0.77}
1577 +\newcommand{\YearrarefTwoZeroTwoFive}{0.91}
1578 +\newcommand{\YearrarefTwoZeroTwoFour}{0.74}
1579 +\newcommand{\YearrarefTwoZeroTwoSix}{0.99}
1580 +\newcommand{\YearrarefTwoZeroTwoThree}{0.88}
1581 +\newcommand{\YearridgepanelTwoZeroTwoFive}{0.92}
1582 +\newcommand{\YearridgepanelTwoZeroTwoFour}{0.73}
1583 +\newcommand{\YearridgepanelTwoZeroTwoSix}{0.90}
1584 +\newcommand{\YearridgepanelTwoZeroTwoThree}{0.87}
1585 +\newcommand{\YeartftliteTwoZeroTwoFive}{0.93}
1586 +\newcommand{\YeartftliteTwoZeroTwoFour}{1.15}
1587 +\newcommand{\YeartftliteTwoZeroTwoSix}{0.78}
1588 +\newcommand{\YeartftliteTwoZeroTwoThree}{0.82}
1029 1589 \newcommand{\aCRPSelasticnethFourSix}{16.15}
1030 1590 \newcommand{\aCRPSelasticnethOneThree}{16.01}
1031 1591 \newcommand{\aCRPSelasticnethSevenOneTwo}{16.29}
modified paper/tables/tab_ablation_b.tex +3 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\scriptsize
3 3 \caption{Task B ablations at the municipality level: MAE (×100) and difference to the reference variant (per-origin mean, * = 95\% stationary-bootstrap interval excludes zero)}\label{tab:ablation_b}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrrrr}
6 6 \toprule
7 7 Variant & h=1: MAE & vs ref & h=3: MAE & vs ref & h=6: MAE & vs ref \\
@@ -23,7 +23,6 @@ Ridge without own momentum & 2.65 & +0.10* & 4.03 & +0.30* & 5.54 & +0.53 \\
23 23 Ridge without parent (region/province) features & 2.57 & +0.02 & 3.78 & +0.05 & 4.89 & -0.11 \\
24 24 Ridge without volume features & 2.57 & +0.03 & 3.76 & +0.03 & 5.11 & +0.10 \\
25 25 \bottomrule
26 −\end{tabular}
27 −\begin{tablenotes}\footnotesize\item Reference variants: DSGFN, QANSS, QREFA and the full ridge panel. Positive differences mean the ablated variant is worse.\end{tablenotes}
28 −\end{threeparttable}
26 +\end{tabular}}
27 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize Reference variants: DSGFN, QANSS, QREFA and the full ridge panel. Positive differences mean the ablated variant is worse.}
29 28 \end{table}
added paper/tables/tab_combo_b.tex +21 −0
@@ -0,0 +1,21 @@
1 +\begin{table}[htbp]
2 +\centering\footnotesize
3 +\caption{Task B — MASE of equal-weight combinations versus their components (same cells and origins)}\label{tab:combo_b}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrrr}
6 +\toprule
7 +Forecast & h=1 & h=3 & h=6 & h=12 \\
8 +\midrule
9 +LightGBM (panel) & 0.871 & 0.754 & 0.749 & 0.756 \\
10 +QANSS & 0.931 & 0.831 & 0.840 & 1.077 \\
11 +Ridge (panel) & 0.969 & 0.839 & 0.886 & 1.211 \\
12 +AR(2), cell & 0.983 & 0.897 & 0.807 & 0.630 \\
13 +QREFA & 0.956 & 0.816 & 0.833 & 1.012 \\
14 +Equal weights: LightGBM + QANSS & 0.870 & 0.760 & 0.735 & 0.845 \\
15 +Equal weights: LightGBM + AR(2) & 0.892 & 0.787 & 0.751 & 0.673 \\
16 +Equal weights: LightGBM + QANSS + ridge + AR(2) & 0.891 & 0.765 & 0.736 & 0.777 \\
17 +Equal weights: four models + no change & 0.898 & 0.779 & 0.729 & 0.672 \\
18 +\bottomrule
19 +\end{tabular}
20 +\end{threeparttable}
21 +\end{table}
added paper/tables/tab_cost.tex +42 −0
@@ -0,0 +1,42 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Computational cost (wall-clock on a 32-core Mac Studio M3 Ultra; tree models 10 threads, neural models 8 threads)}\label{tab:cost}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrrrr}
6 +\toprule
7 +Task & Model & Seconds per fit & Total seconds & Fits & Mean training rows \\
8 +\midrule
9 +A & Ridge & 0.1 & 1 & 12 & 314{,}363 \\
10 +A & Hedonic OLS & 0.3 & 4 & 12 & 314{,}363 \\
11 +A & Elastic net & 3.4 & 40 & 12 & 314{,}363 \\
12 +A & Quantile MLP & 7.7 & 93 & 12 & 314{,}363 \\
13 +A & HSHN (full pooling) & 9.0 & 108 & 12 & 314{,}363 \\
14 +A & HSHN (no pooling) & 9.3 & 111 & 12 & 314{,}363 \\
15 +A & HSHN (partial pooling) & 9.5 & 114 & 12 & 314{,}363 \\
16 +A & XGBoost & 9.9 & 119 & 12 & 314{,}363 \\
17 +A & Random forest & 29.9 & 359 & 12 & 314{,}363 \\
18 +A & SVR (subsample) & 63.6 & 764 & 12 & 314{,}363 \\
19 +A & LightGBM & 155.0 & 1860 & 12 & 314{,}363 \\
20 +B & No change & 0.0 & 0 & 36 & 5{,}785 \\
21 +B & AR(2), cell & 0.0 & 0 & 36 & 5{,}785 \\
22 +B & Seasonal naive & 0.0 & 0 & 36 & 5{,}785 \\
23 +B & Mean growth & 0.0 & 0 & 36 & 5{,}785 \\
24 +B & Ridge (panel) & 0.0 & 0 & 36 & 5{,}785 \\
25 +B & Random walk with drift & 0.0 & 0 & 36 & 5{,}785 \\
26 +B & Momentum & 0.0 & 0 & 36 & 5{,}785 \\
27 +B & BHPF & 0.2 & 7 & 36 & 5{,}785 \\
28 +B & QANSS & 0.2 & 8 & 36 & 5{,}785 \\
29 +B & MLP (panel) & 1.0 & 36 & 36 & 5{,}785 \\
30 +B & Local linear trend & 1.6 & 58 & 36 & 5{,}785 \\
31 +B & RAREF & 3.9 & 140 & 36 & 5{,}785 \\
32 +B & DSGFN & 4.9 & 176 & 36 & 5{,}785 \\
33 +B & TFT-lite & 5.0 & 181 & 36 & 5{,}785 \\
34 +B & LightGBM (panel) & 5.8 & 210 & 36 & 5{,}785 \\
35 +B & GRU & 7.1 & 254 & 36 & 5{,}785 \\
36 +B & LSTM & 8.9 & 322 & 36 & 5{,}785 \\
37 +B & QREFA & 10.4 & 373 & 36 & 5{,}785 \\
38 +B & TCN & 186.0 & 6696 & 36 & 5{,}785 \\
39 +\bottomrule
40 +\end{tabular}
41 +\end{threeparttable}
42 +\end{table}
modified paper/tables/tab_coverage.tex +0 −1
@@ -25,6 +25,5 @@ Region & Houses & Condominiums & Plexes \\
25 25 17 & 15{,}980 & 608 & 2{,}356 \\
26 26 \bottomrule
27 27 \end{tabular}
28 −
29 28 \end{threeparttable}
30 29 \end{table}
added paper/tables/tab_decline_b.tex +24 −0
@@ -0,0 +1,24 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Task C — probability of an index decline over the horizon: Brier score and Brier skill score relative to the climatological frequency of declines}\label{tab:decline_b}
4 +\resizebox{\textwidth}{!}{%
5 +\begin{tabular}{lrrrrrrrr}
6 +\toprule
7 +Model & h=1: Brier & h=1: skill & h=3: Brier & h=3: skill & h=6: Brier & h=6: skill & h=12: Brier & h=12: skill \\
8 +\midrule
9 +No change & 0.244 & -0.01 & 0.217 & -0.02 & 0.179 & -0.01 & 0.090 & -0.01 \\
10 +Mean growth & 0.249 & -0.04 & 0.226 & -0.06 & 0.187 & -0.06 & 0.099 & -0.12 \\
11 +Momentum & 0.240 & +0.00 & 0.205 & +0.03 & 0.171 & +0.03 & 0.089 & -0.01 \\
12 +AR(2), cell & 0.244 & -0.01 & 0.208 & +0.02 & 0.176 & +0.00 & 0.089 & -0.01 \\
13 +Ridge (panel) & 0.231 & +0.04 & 0.188 & +0.11 & 0.186 & -0.05 & 0.095 & -0.07 \\
14 +LightGBM (panel) & 0.219 & +0.09 & 0.181 & +0.15 & 0.174 & +0.02 & 0.090 & -0.02 \\
15 +TFT-lite & 0.275 & -0.14 & 0.223 & -0.05 & 0.186 & -0.05 & 0.095 & -0.07 \\
16 +BHPF & 0.226 & +0.06 & 0.184 & +0.13 & 0.179 & -0.01 & 0.097 & -0.10 \\
17 +RAREF & 0.226 & +0.06 & 0.194 & +0.09 & 0.185 & -0.05 & 0.094 & -0.07 \\
18 +QANSS & 0.226 & +0.06 & 0.197 & +0.07 & 0.181 & -0.03 & 0.180 & -1.04 \\
19 +DSGFN & 0.252 & -0.05 & 0.182 & +0.14 & 0.170 & +0.04 & 0.096 & -0.08 \\
20 +QREFA & 0.234 & +0.03 & 0.176 & +0.17 & 0.166 & +0.06 & 0.097 & -0.09 \\
21 +\bottomrule
22 +\end{tabular}}
23 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize Probabilities are read off the five-quantile forecasts by linear interpolation of the quantile function. Skill = $1 - $ Brier / Brier of the constant climatological probability.}
24 +\end{table}
added paper/tables/tab_direction_b.tex +23 −0
@@ -0,0 +1,23 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Task B — directional accuracy (\% of forecasts with the sign of the realised change, changes above 0.5 log points) overall and at turning points (origins where the realised change reverses sign)}\label{tab:direction_b}
4 +\resizebox{\textwidth}{!}{%
5 +\begin{tabular}{lrrrrrrrr}
6 +\toprule
7 +Model & h=1: all & h=1: turning pts & h=3: all & h=3: turning pts & h=6: all & h=6: turning pts & h=12: all & h=12: turning pts \\
8 +\midrule
9 +Mean growth & 60 & 51 & 70 & 50 & 78 & 51 & 90 & 47 \\
10 +Momentum & 53 & 72 & 50 & 69 & 45 & 68 & 46 & 47 \\
11 +AR(2), cell & 59 & 65 & 71 & 58 & 78 & 60 & 91 & 48 \\
12 +Ridge (panel) & 65 & 68 & 73 & 58 & 76 & 59 & 91 & 48 \\
13 +LightGBM (panel) & 70 & 77 & 75 & 65 & 78 & 59 & 91 & 47 \\
14 +TFT-lite & 60 & 66 & 69 & 65 & 77 & 60 & 91 & 47 \\
15 +BHPF & 65 & 67 & 73 & 57 & 77 & 59 & 91 & 49 \\
16 +RAREF & 66 & 68 & 73 & 58 & 76 & 58 & 91 & 48 \\
17 +QANSS & 67 & 75 & 73 & 61 & 76 & 64 & 75 & 50 \\
18 +DSGFN & 63 & 66 & 77 & 65 & 79 & 60 & 91 & 47 \\
19 +QREFA & 65 & 70 & 76 & 66 & 78 & 62 & 91 & 48 \\
20 +\bottomrule
21 +\end{tabular}}
22 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize The no-change forecast has no sign; momentum has the sign of the last three-month change.}
23 +\end{table}
added paper/tables/tab_dollar_a.tex +21 −0
@@ -0,0 +1,21 @@
1 +\begin{table}[htbp]
2 +\centering\footnotesize
3 +\caption{Task A, horizons 1--3 months — economic magnitude of forecast errors}\label{tab:dollar_a}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrrr}
6 +\toprule
7 +Class & Model & MAE (log $\times$100) & Median price (\$) & Median absolute error (\$) \\
8 +\midrule
9 +condo & LightGBM & 13.3 & 364{,}000 & 32{,}005 \\
10 +condo & Hedonic OLS & 15.6 & 364{,}000 & 37{,}900 \\
11 +condo & Naive: municipal median & 34.9 & 364{,}000 & 127{,}000 \\
12 +house & LightGBM & 23.0 & 420{,}000 & 61{,}102 \\
13 +house & Hedonic OLS & 24.9 & 420{,}000 & 67{,}889 \\
14 +house & Naive: municipal median & 34.5 & 420{,}000 & 92{,}750 \\
15 +plex & LightGBM & 24.0 & 510{,}000 & 80{,}115 \\
16 +plex & Hedonic OLS & 26.6 & 510{,}000 & 88{,}707 \\
17 +plex & Naive: municipal median & 37.6 & 510{,}000 & 135{,}000 \\
18 +\bottomrule
19 +\end{tabular}
20 +\end{threeparttable}
21 +\end{table}
added paper/tables/tab_gw_b.tex +30 −0
@@ -0,0 +1,30 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Task B — unadjusted Diebold--Mariano $p$-values and Giacomini--White conditional-predictive-ability $p$-values against the no-change forecast}\label{tab:gw_b}
4 +\resizebox{\textwidth}{!}{%
5 +\begin{tabular}{lrrrrrrrr}
6 +\toprule
7 +Model & h=1: DM $p$ & h=1: GW $p$ & h=3: DM $p$ & h=3: GW $p$ & h=6: DM $p$ & h=6: GW $p$ & h=12: DM $p$ & h=12: GW $p$ \\
8 +\midrule
9 +Mean growth & 0.800 & 0.972 & 0.560 & 0.001 & 0.473 & 0.003 & 0.798 & 0.000 \\
10 +Momentum & 0.324 & 0.075 & 0.344 & 0.063 & 0.574 & 0.069 & 0.896 & 0.376 \\
11 +Random walk with drift & 0.022 & 0.044 & 0.261 & 0.000 & 0.375 & 0.000 & 0.773 & 0.001 \\
12 +Seasonal naive & 0.000 & 0.000 & 0.270 & 0.001 & 0.327 & 0.000 & 0.773 & 0.001 \\
13 +AR(2), cell & 0.278 & 0.496 & 0.072 & 0.099 & 0.109 & 0.035 & 0.712 & 0.000 \\
14 +Local linear trend & 0.000 & 0.000 & 0.000 & 0.000 & 0.000 & 0.000 & 0.000 & 0.000 \\
15 +Ridge (panel) & 0.067 & 0.103 & 0.052 & 0.098 & 0.367 & 0.004 & 0.898 & 0.010 \\
16 +LightGBM (panel) & 0.001 & 0.000 & 0.007 & 0.005 & 0.086 & 0.067 & 0.855 & 0.011 \\
17 +MLP (panel) & 0.471 & 0.698 & 0.229 & 0.327 & 0.610 & 0.003 & 0.595 & 0.000 \\
18 +LSTM & 0.069 & 0.150 & 0.314 & 0.184 & 0.254 & 0.002 & 0.945 & 0.107 \\
19 +GRU & 0.124 & 0.243 & 0.106 & 0.190 & 0.229 & 0.007 & 0.894 & 0.007 \\
20 +TCN & 0.501 & 0.649 & 0.208 & 0.220 & 0.229 & 0.045 & 0.880 & 0.046 \\
21 +TFT-lite & 0.223 & 0.304 & 0.817 & 0.261 & 0.876 & 0.011 & 0.966 & 0.000 \\
22 +BHPF & 0.082 & 0.118 & 0.064 & 0.120 & 0.469 & 0.001 & 0.918 & 0.000 \\
23 +RAREF & 0.055 & 0.075 & 0.092 & 0.171 & 0.364 & 0.001 & 0.915 & 0.016 \\
24 +QANSS & 0.030 & 0.027 & 0.037 & 0.066 & 0.217 & 0.001 & 0.792 & 0.004 \\
25 +DSGFN & 0.605 & 0.320 & 0.223 & 0.154 & 0.372 & 0.015 & 0.919 & 0.000 \\
26 +QREFA & 0.092 & 0.038 & 0.050 & 0.096 & 0.215 & 0.018 & 0.959 & 0.000 \\
27 +\bottomrule
28 +\end{tabular}}
29 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize The Giacomini--White test regresses the loss differential on a constant and its own lag; a rejection means the relative accuracy of the two forecasts is predictable from the past.}
30 +\end{table}
modified paper/tables/tab_het_a_mun_size.tex +0 −1
@@ -20,6 +20,5 @@ HSHN (full pooling) & 20.96 & 24.22 & 32.91 \\
20 20 HSHN (partial pooling) & 20.63 & 23.79 & 32.92 \\
21 21 \bottomrule
22 22 \end{tabular}
23 −
24 23 \end{threeparttable}
25 24 \end{table}
modified paper/tables/tab_het_a_property_class.tex +0 −1
@@ -20,6 +20,5 @@ HSHN (full pooling) & 17.61 & 25.38 & 26.50 \\
20 20 HSHN (partial pooling) & 17.33 & 25.07 & 26.19 \\
21 21 \bottomrule
22 22 \end{tabular}
23 −
24 23 \end{threeparttable}
25 24 \end{table}
modified paper/tables/tab_het_a_segment.tex +0 −1
@@ -20,6 +20,5 @@ HSHN (full pooling) & 18.27 & 41.14 & 23.58 \\
20 20 HSHN (partial pooling) & 18.05 & 41.11 & 23.03 \\
21 21 \bottomrule
22 22 \end{tabular}
23 −
24 23 \end{threeparttable}
25 24 \end{table}
modified paper/tables/tab_het_b_class.tex +0 −1
@@ -27,6 +27,5 @@ DSGFN & 2.61 & 4.30 & 4.13 \\
27 27 QREFA & 2.58 & 3.86 & 3.81 \\
28 28 \bottomrule
29 29 \end{tabular}
30 −
31 30 \end{threeparttable}
32 31 \end{table}
modified paper/tables/tab_het_b_level.tex +0 −1
@@ -27,6 +27,5 @@ DSGFN & 3.93 & 1.90 & 2.84 \\
27 27 QREFA & 3.67 & 1.66 & 2.57 \\
28 28 \bottomrule
29 29 \end{tabular}
30 −
31 30 \end{threeparttable}
32 31 \end{table}
modified paper/tables/tab_het_b_size_level.tex +0 −1
@@ -27,6 +27,5 @@ DSGFN & 3.44 & 4.02 & 1.90 & 2.84 \\
27 27 QREFA & 3.14 & 3.76 & 1.66 & 2.57 \\
28 28 \bottomrule
29 29 \end{tabular}
30 −
31 30 \end{threeparttable}
32 31 \end{table}
modified paper/tables/tab_hyper.tex +0 −1
@@ -22,6 +22,5 @@ LightGBM (B) & 300 trees, lr 0.03, 15 leaves, min child 40; quantile models \\
22 22 Ridge (B) & $\alpha$=3 on standardised features \\
23 23 \bottomrule
24 24 \end{tabular}
25 −
26 25 \end{threeparttable}
27 26 \end{table}
modified paper/tables/tab_leakage.tex +0 −1
@@ -18,6 +18,5 @@ Index revisions & predictors = vintage published for the origin; target = final
18 18 Partial last month & October 2026 excluded; last target September 2026 \\
19 19 \bottomrule
20 20 \end{tabular}
21 −
22 21 \end{threeparttable}
23 22 \end{table}
added paper/tables/tab_mun_dist_b.tex +16 −0
@@ -0,0 +1,16 @@
1 +\begin{table}[htbp]
2 +\centering\footnotesize
3 +\caption{Task B, horizon 3 — distribution of the MASE across the 192 municipal cells (64 municipalities × 3 classes)}\label{tab:mun_dist_b}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrrrr}
6 +\toprule
7 +Model & Median MASE & P10 & P90 & \% of cells beating no change & Cells \\
8 +\midrule
9 +LightGBM (panel) & 0.74 & 0.62 & 0.97 & 91 & 192 \\
10 +Ridge (panel) & 0.80 & 0.63 & 1.44 & 72 & 192 \\
11 +QANSS & 0.82 & 0.68 & 1.08 & 83 & 192 \\
12 +AR(2), cell & 0.91 & 0.76 & 1.08 & 80 & 192 \\
13 +\bottomrule
14 +\end{tabular}
15 +\end{threeparttable}
16 +\end{table}
modified paper/tables/tab_prob_a.tex +2 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\scriptsize
3 3 \caption{Task A — Probabilistic accuracy (CRPS ×100, 90\% interval coverage \% and width ×100) of future sale-price forecasts by horizon band (months after the origin)}\label{tab:prob_a}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrrrrrrr}
6 6 \toprule
7 7 Model & 1-3: CRPS & 1-3: cov90 & 1-3: width90 & 4-6: CRPS & 4-6: cov90 & 4-6: width90 & 7-12: CRPS & 7-12: cov90 & 7-12: width90 \\
@@ -19,7 +19,5 @@ HSHN (no pooling) & 14.92 & 89 & 107.8 & 15.68 & 86 & 108.3 & 16.34 & 82 & 106.5
19 19 HSHN (full pooling) & 15.04 & 88 & 108.0 & 15.87 & 85 & 108.4 & 16.56 & 82 & 106.6 \\
20 20 HSHN (partial pooling) & 14.92 & 89 & 107.9 & 15.68 & 86 & 108.3 & 16.35 & 82 & 106.6 \\
21 21 \bottomrule
22 −\end{tabular}
23 −
24 −\end{threeparttable}
22 +\end{tabular}}
25 23 \end{table}
modified paper/tables/tab_prob_b.tex +2 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\scriptsize
3 3 \caption{Task B — Probabilistic accuracy (CRPS ×100, 90\% interval coverage \% and width ×100) of quality-adjusted index-change forecasts by horizon (months)}\label{tab:prob_b}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrrrrrrrrrr}
6 6 \toprule
7 7 Model & 1: CRPS & 1: cov90 & 1: width90 & 3: CRPS & 3: cov90 & 3: width90 & 6: CRPS & 6: cov90 & 6: width90 & 12: CRPS & 12: cov90 & 12: width90 \\
@@ -26,7 +26,5 @@ QANSS & 1.70 & 98 & 17.2 & 2.35 & 97 & 20.7 & 2.93 & 95 & 23.3 & 5.06 & 93 & 35.
26 26 DSGFN & 1.63 & 78 & 7.6 & 2.48 & 73 & 10.2 & 3.14 & 72 & 12.9 & 6.09 & 45 & 12.4 \\
27 27 QREFA & 1.49 & 85 & 8.9 & 2.19 & 85 & 12.2 & 2.85 & 82 & 13.7 & 5.32 & 51 & 13.2 \\
28 28 \bottomrule
29 −\end{tabular}
30 −
31 −\end{threeparttable}
29 +\end{tabular}}
32 30 \end{table}
added paper/tables/tab_regime_b.tex +24 −0
@@ -0,0 +1,24 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Task B, horizon 3 — MAE (×100) and MASE (in parentheses) by ex-post provincial regime of the target window (rising: provincial house index change above +2 log points over the horizon; falling: below $-2$; flat otherwise)}\label{tab:regime_b}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrr}
6 +\toprule
7 +Model & rising (17 origins) & flat (13 origins) & falling (1 origins) \\
8 +\midrule
9 +No change & 5.00 (1.00) & 3.10 (1.00) & 4.55 (1.00) \\
10 +Mean growth & 4.01 (0.80) & 3.80 (1.23) & 6.38 (1.40) \\
11 +Momentum & 5.20 (1.04) & 3.00 (0.97) & 3.87 (0.85) \\
12 +AR(2), cell & 3.82 (0.76) & 3.54 (1.14) & 5.66 (1.25) \\
13 +Ridge (panel) & 3.49 (0.70) & 3.44 (1.11) & 4.89 (1.08) \\
14 +LightGBM (panel) & 3.16 (0.63) & 3.11 (1.00) & 3.81 (0.84) \\
15 +TFT-lite & 4.68 (0.94) & 3.46 (1.12) & 3.50 (0.77) \\
16 +BHPF & 3.52 (0.70) & 3.53 (1.14) & 4.98 (1.10) \\
17 +RAREF & 3.52 (0.70) & 3.55 (1.14) & 5.03 (1.11) \\
18 +QANSS & 3.56 (0.71) & 3.25 (1.05) & 5.18 (1.14) \\
19 +DSGFN & 3.49 (0.70) & 4.00 (1.29) & 3.01 (0.66) \\
20 +QREFA & 3.36 (0.67) & 3.51 (1.13) & 3.39 (0.75) \\
21 +\bottomrule
22 +\end{tabular}
23 +\end{threeparttable}
24 +\end{table}
modified paper/tables/tab_robust_b.tex +3 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\scriptsize
3 3 \caption{Task B robustness at the municipality level, horizon 3: MAE (×100) under alternative designs}\label{tab:robust_b}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrrrrr}
6 6 \toprule
7 7 Model & Expanding (baseline) & Rolling 24 origins & Cells with $n \ge 10$ & Winsorised target & Seed 1 & Seed 2 & Bandwidth 30 / 120 km \\
@@ -16,7 +16,6 @@ DSGFN & 3.76 & 3.90 & 3.83 & 3.76 & 4.05 & 3.66 & — \\
16 16 DSGFN, bandwidth 30 km & — & — & — & — & — & — & 4.00 \\
17 17 DSGFN, bandwidth 120 km & — & — & — & — & — & — & 3.98 \\
18 18 \bottomrule
19 −\end{tabular}
20 −\begin{tablenotes}\footnotesize\item Rolling: models estimated on the 24 most recent origins only. Seeds: neural models re-estimated with different random seeds (the baseline is seed 0). Winsorised: targets clipped at the 1st and 99th percentiles in training and test.\end{tablenotes}
21 −\end{threeparttable}
19 +\end{tabular}}
20 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize Rolling: models estimated on the 24 most recent origins only. Seeds: neural models re-estimated with different random seeds (the baseline is seed 0). Winsorised: targets clipped at the 1st and 99th percentiles in training and test.}
22 21 \end{table}
modified paper/tables/tab_scores_b.tex +3 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\scriptsize
3 3 \caption{Task B — Point accuracy of quality-adjusted index-change forecasts by horizon (months)}\label{tab:scores_b}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrrrrrr}
6 6 \toprule
7 7 Model & 1: MAE & 1: MASE & 3: MAE & 3: MASE & 6: MAE & 6: MASE & 12: MAE & 12: MASE \\
@@ -26,7 +26,6 @@ QANSS & 2.30**$^{\dagger}$ & 0.93 & 3.48**$^{\dagger}$ & 0.83 & 4.51$^{\dagger}$
26 26 DSGFN & 2.53$^{\dagger}$ & 1.02 & 3.69$^{\dagger}$ & 0.88 & 4.79$^{\dagger}$ & 0.89 & 8.33 & 1.11 \\
27 27 QREFA & 2.36*$^{\dagger}$ & 0.96 & 3.42**$^{\dagger}$ & 0.82 & 4.48$^{\dagger}$ & 0.83 & 7.61 & 1.01 \\
28 28 \bottomrule
29 −\end{tabular}
30 −\begin{tablenotes}\footnotesize\item Target: final SHARP-HPI log change. MAE in log points ×100; MASE relative to the naive reference. Stars: Diebold--Mariano test of equal squared-error loss against the reference on per-origin mean losses (* 10\%, ** 5\%, *** 1\%); $\dagger$ = in the 90\% model confidence set of the horizon.\end{tablenotes}
31 −\end{threeparttable}
29 +\end{tabular}}
30 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize Target: final SHARP-HPI log change. MAE in log points ×100; MASE relative to the naive reference. Stars: Diebold--Mariano test of equal squared-error loss against the reference on per-origin mean losses (* 10\%, ** 5\%, *** 1\%); $\dagger$ = in the 90\% model confidence set of the horizon.}
32 31 \end{table}
modified paper/tables/tab_selection.tex +3 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\footnotesize
3 3 \caption{Transaction selection: medians of sold dwellings (2021--2026) versus the assessment-roll stock}\label{tab:selection}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrrrrrr}
6 6 \toprule
7 7 Class & Floor area sold & Floor area stock & Age sold & Age stock & Lot sold & Lot stock & Sales & Stock units \\
@@ -10,7 +10,6 @@ house & 114 & 116 & 41 & 45 & 653 & 699 & 422{,}658 & 1{,}899{,}469 \\
10 10 condo & 90 & 89 & 17 & 20 & 104 & 87 & 122{,}989 & 344{,}399 \\
11 11 plex & 194 & 204 & 65 & 66 & 507 & 488 & 86{,}359 & 336{,}283 \\
12 12 \bottomrule
13 −\end{tabular}
14 −\begin{tablenotes}\footnotesize\item Stock = residential use code 1000 in the 2026 roll, classified with the WP22 rules; age of the stock as of 2026.\end{tablenotes}
15 −\end{threeparttable}
13 +\end{tabular}}
14 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize Stock = residential use code 1000 in the 2026 roll, classified with the WP22 rules; age of the stock as of 2026.}
16 15 \end{table}
added paper/tables/tab_selection_rates.tex +18 −0
@@ -0,0 +1,18 @@
1 +\begin{table}[htbp]
2 +\centering\footnotesize
3 +\caption{Transaction selection — annual sale rate of the roll stock (\% of units sold per year, 2021--2026) by quintile of floor area and of age}\label{tab:selection_rates}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrrrr}
6 +\toprule
7 +Class and dimension & Q1 & Q2 & Q3 & Q4 & Q5 \\
8 +\midrule
9 +house, by floor area quintile (1 = smallest / newest) & 4.3 & 3.9 & 3.9 & 3.8 & 3.5 \\
10 +house, by age quintile (1 = smallest / newest) & 4.8 & 3.7 & 3.3 & 3.9 & 3.8 \\
11 +condo, by floor area quintile (1 = smallest / newest) & 5.8 & 6.4 & 6.7 & 6.8 & 5.5 \\
12 +condo, by age quintile (1 = smallest / newest) & 5.6 & 7.2 & 6.3 & 6.1 & 6.1 \\
13 +plex, by floor area quintile (1 = smallest / newest) & 5.6 & 4.8 & 4.2 & 4.0 & 3.8 \\
14 +plex, by age quintile (1 = smallest / newest) & 4.6 & 4.0 & 4.1 & 4.7 & 4.9 \\
15 +\bottomrule
16 +\end{tabular}
17 +\end{threeparttable}
18 +\end{table}
modified paper/tables/tab_shap.tex +3 −4
@@ -1,7 +1,7 @@
1 1 \begin{table}[htbp]
2 2 \centering\footnotesize
3 3 \caption{Task A — mean absolute SHAP value (×100, log-price units) of the LightGBM model at three origins, 4,000 test sales each}\label{tab:shap}
4 −\begin{threeparttable}
4 +\resizebox{\textwidth}{!}{%
5 5 \begin{tabular}{lrrrr}
6 6 \toprule
7 7 Feature & 2023-03 & 2024-03 & 2025-03 & Mean \\
@@ -22,7 +22,6 @@ subtype\_c=detached & 1.9 & 2.1 & 2.1 & 2.0 \\
22 22 log floor area squared & 1.4 & 1.4 & 1.5 & 1.4 \\
23 23 municipality: sales, 3 m & 1.6 & 1.4 & 1.1 & 1.4 \\
24 24 \bottomrule
25 −\end{tabular}
26 −\begin{tablenotes}\footnotesize\item Importance is predictive, not causal. Origin-month importance declines as the training history lengthens.\end{tablenotes}
27 −\end{threeparttable}
25 +\end{tabular}}
26 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize Importance is predictive, not causal. Origin-month importance declines as the training history lengthens.}
28 27 \end{table}
added paper/tables/tab_tests_b.tex +30 −0
@@ -0,0 +1,30 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Task B — Diebold--Mariano statistics against the no-change forecast (negative = better than no change) and Holm-adjusted $p$-values across the 18 models of each horizon}\label{tab:tests_b}
4 +\resizebox{\textwidth}{!}{%
5 +\begin{tabular}{lrrrrrrrr}
6 +\toprule
7 +Model & h=1: DM & h=1: Holm $p$ & h=3: DM & h=3: Holm $p$ & h=6: DM & h=6: Holm $p$ & h=12: DM & h=12: Holm $p$ \\
8 +\midrule
9 +Mean growth & +0.26 & 1.00 & -0.59 & 1.00 & -0.73 & 1.00 & -0.26 & 1.00 \\
10 +Momentum & -1.00 & 1.00 & -0.96 & 1.00 & +0.57 & 1.00 & +0.13 & 1.00 \\
11 +Random walk with drift & +2.40 & 0.33 & +1.14 & 1.00 & +0.90 & 1.00 & +0.29 & 1.00 \\
12 +Seasonal naive & +5.00 & 0.00 & +1.12 & 1.00 & +1.00 & 1.00 & +0.29 & 1.00 \\
13 +AR(2), cell & -1.10 & 1.00 & -1.86 & 0.87 & -1.67 & 1.00 & -0.38 & 1.00 \\
14 +Local linear trend & +7.19 & 0.00 & +8.08 & 0.00 & +10.47 & 0.00 & +4.88 & 0.01 \\
15 +Ridge (panel) & -1.90 & 0.80 & -2.02 & 0.75 & -0.92 & 1.00 & +0.13 & 1.00 \\
16 +LightGBM (panel) & -3.85 & 0.01 & -2.91 & 0.11 & -1.79 & 1.00 & -0.19 & 1.00 \\
17 +MLP (panel) & +0.73 & 1.00 & -1.23 & 1.00 & -0.52 & 1.00 & +0.55 & 1.00 \\
18 +LSTM & +1.88 & 0.80 & -1.02 & 1.00 & -1.17 & 1.00 & +0.07 & 1.00 \\
19 +GRU & +1.58 & 0.99 & -1.67 & 1.00 & -1.23 & 1.00 & +0.14 & 1.00 \\
20 +TCN & +0.68 & 1.00 & -1.29 & 1.00 & -1.23 & 1.00 & +0.15 & 1.00 \\
21 +TFT-lite & +1.24 & 1.00 & +0.23 & 1.00 & -0.16 & 1.00 & -0.04 & 1.00 \\
22 +BHPF & -1.79 & 0.82 & -1.92 & 0.83 & -0.74 & 1.00 & +0.11 & 1.00 \\
23 +RAREF & -1.99 & 0.72 & -1.74 & 1.00 & -0.93 & 1.00 & +0.11 & 1.00 \\
24 +QANSS & -2.27 & 0.42 & -2.18 & 0.59 & -1.27 & 1.00 & +0.27 & 1.00 \\
25 +DSGFN & -0.52 & 1.00 & -1.24 & 1.00 & -0.91 & 1.00 & +0.10 & 1.00 \\
26 +QREFA & -1.74 & 0.82 & -2.04 & 0.75 & -1.27 & 1.00 & +0.05 & 1.00 \\
27 +\bottomrule
28 +\end{tabular}}
29 +\par\vspace{3pt}\parbox{\textwidth}{\footnotesize HAC variance with $h-1$ Bartlett lags and the Harvey--Leybourne--Newbold correction; $t_{n-1}$ reference distribution; Holm step-down over the 18 two-sided $p$-values of each horizon.}
30 +\end{table}
modified paper/tables/tab_variables.tex +0 −1
@@ -18,6 +18,5 @@ Real-time SHARP-HPI vintage (13-month history) & WP22 index\_vintages (smoothed
18 18 Bedrooms, bathrooms, parking, basement, condition, renovations, quality, listing, images & — & not available & — \\
19 19 \bottomrule
20 20 \end{tabular}
21 −
22 21 \end{threeparttable}
23 22 \end{table}
added paper/tables/tab_year_b.tex +25 −0
@@ -0,0 +1,25 @@
1 +\begin{table}[htbp]
2 +\centering\scriptsize
3 +\caption{Task B, horizon 3 — MAE (×100) and MASE (in parentheses) by year of the forecast origin}\label{tab:year_b}
4 +\begin{threeparttable}
5 +\begin{tabular}{lrrrr}
6 +\toprule
7 +Model & Origins in 2023 & Origins in 2024 & Origins in 2025 & Origins in 2026 \\
8 +\midrule
9 +No change & 3.75 (1.00) & 4.40 (1.00) & 3.94 (1.00) & 4.35 (1.00) \\
10 +Mean growth & 3.63 (0.97) & 4.15 (0.94) & 3.81 (0.97) & 4.13 (0.95) \\
11 +Momentum & 3.57 (0.95) & 4.53 (1.03) & 3.99 (1.01) & 4.26 (0.98) \\
12 +AR(2), cell & 2.87 (0.77) & 3.78 (0.86) & 3.78 (0.96) & 3.82 (0.88) \\
13 +Ridge (panel) & 3.28 (0.87) & 3.23 (0.73) & 3.63 (0.92) & 3.89 (0.90) \\
14 +LightGBM (panel) & 3.17 (0.85) & 3.35 (0.76) & 3.07 (0.78) & 2.95 (0.68) \\
15 +TFT-lite & 3.07 (0.82) & 5.06 (1.15) & 3.66 (0.93) & 3.41 (0.78) \\
16 +BHPF & 3.59 (0.96) & 3.32 (0.76) & 3.66 (0.93) & 3.89 (0.89) \\
17 +RAREF & 3.29 (0.88) & 3.25 (0.74) & 3.58 (0.91) & 4.29 (0.99) \\
18 +QANSS & 3.16 (0.84) & 3.48 (0.79) & 3.40 (0.86) & 3.69 (0.85) \\
19 +DSGFN & 2.77 (0.74) & 3.91 (0.89) & 3.76 (0.95) & 3.25 (0.75) \\
20 +QREFA & 2.88 (0.77) & 3.39 (0.77) & 3.57 (0.91) & 3.27 (0.75) \\
21 +\bottomrule
22 +\end{tabular}
23 +\begin{tablenotes}\footnotesize\item 2023 covers origins from October to December only; 2026 covers January to June.\end{tablenotes}
24 +\end{threeparttable}
25 +\end{table}
added results/extra/combinations_b.csv +37 −0
@@ -0,0 +1,37 @@
1 +h,combination,mae,mase,n
2 +1,eq_lgbm_qanss,0.02150297790776443,0.8700877805868423,8085
3 +1,lightgbm_panel,0.02153670072594235,0.8714523270301034,8085
4 +1,eq_lgbm_qanss_ridge_ar2,0.02201995142735647,0.8910063874985662,8085
5 +1,eq_lgbm_ar2,0.022054549402128722,0.8924063459234651,8085
6 +1,eq_all_with_nochange,0.022197152746241303,0.898176589827142,8085
7 +1,qanss,0.02301977081003199,0.9314626736646666,8085
8 +1,qrefa,0.02361857392167708,0.9556924000148778,8085
9 +1,ridge_panel,0.023947682918062055,0.9690093330212763,8085
10 +1,ar2_cell,0.024302983721048194,0.9833860806716241,8085
11 +3,lightgbm_panel,0.03159900048140986,0.7542209399189601,7595
12 +3,eq_lgbm_qanss,0.03184932409936664,0.7601957907542056,7595
13 +3,eq_lgbm_qanss_ridge_ar2,0.03205208019697204,0.7650352759334984,7595
14 +3,eq_all_with_nochange,0.03262150037455353,0.7786264849907911,7595
15 +3,eq_lgbm_ar2,0.032967537334454136,0.7868858703247189,7595
16 +3,qrefa,0.03420794595171091,0.8164925711360743,7595
17 +3,qanss,0.034825334979270706,0.8312287249880214,7595
18 +3,ridge_panel,0.03517179656190669,0.839498245432355,7595
19 +3,ar2_cell,0.03759399329582076,0.897312463271178,7595
20 +6,eq_all_with_nochange,0.039161059687389026,0.7287905397579341,6125
21 +6,eq_lgbm_qanss,0.0394826199484807,0.7347748026485823,6125
22 +6,eq_lgbm_qanss_ridge_ar2,0.039529263598277097,0.7356428448053256,6125
23 +6,lightgbm_panel,0.040243029382028055,0.7489260847113213,6125
24 +6,eq_lgbm_ar2,0.040379049700624406,0.7514574340210491,6125
25 +6,ar2_cell,0.043362134008534434,0.8069728781959491,6125
26 +6,qrefa,0.04476021221681532,0.8329912285718188,6125
27 +6,qanss,0.04512128501176157,0.8397108229653668,6125
28 +6,ridge_panel,0.0475888483414416,0.8856323793604179,6125
29 +12,ar2_cell,0.04741182125433489,0.6302133041204199,3185
30 +12,eq_all_with_nochange,0.0505485014712047,0.6719070748118788,3185
31 +12,eq_lgbm_ar2,0.050598072501520805,0.672565989023096,3185
32 +12,lightgbm_panel,0.05685686681072919,0.7557599127548417,3185
33 +12,eq_lgbm_qanss_ridge_ar2,0.05846030697434179,0.7770733594172031,3185
34 +12,eq_lgbm_qanss,0.06356048118170045,0.8448665290060083,3185
35 +12,qrefa,0.0761398480197341,1.0120755525997853,3185
36 +12,qanss,0.08104369779623316,1.0772591141841255,3185
37 +12,ridge_panel,0.09112859708993361,1.2113108662041672,3185
added results/extra/computational_cost.csv +31 −0
@@ -0,0 +1,31 @@
1 +model,mean_seconds_per_fit,total_seconds,fits,mean_train_rows,task
2 +ridge,0.10000000000000002,1.2000000000000002,12,314362.5833333333,A
3 +hedonic_ols,0.30833333333333335,3.7,12,314362.5833333333,A
4 +elastic_net,3.3666666666666667,40.4,12,314362.5833333333,A
5 +mlp,7.7250000000000005,92.7,12,314362.5833333333,A
6 +hshn_full,9.033333333333333,108.4,12,314362.5833333333,A
7 +hshn_none,9.266666666666667,111.2,12,314362.5833333333,A
8 +hshn_partial,9.491666666666667,113.9,12,314362.5833333333,A
9 +xgboost,9.925,119.10000000000001,12,314362.5833333333,A
10 +random_forest,29.933333333333334,359.2,12,314362.5833333333,A
11 +svr,63.63333333333333,763.6,12,314362.5833333333,A
12 +lightgbm,155.01666666666668,1860.2,12,314362.5833333333,A
13 +no_change,0.0,0.0,36,5784.722222222223,B
14 +ar2_cell,0.0,0.0,36,5784.722222222223,B
15 +seasonal_naive,0.0,0.0,36,5784.722222222223,B
16 +mean_growth,0.0,0.0,36,5784.722222222223,B
17 +ridge_panel,0.0,0.0,36,5784.722222222223,B
18 +rw_drift,0.0,0.0,36,5784.722222222223,B
19 +momentum,0.0,0.0,36,5784.722222222223,B
20 +bhpf,0.19444444444444445,7.0,36,5784.722222222223,B
21 +qanss,0.21666666666666667,7.8,36,5784.722222222223,B
22 +mlp_panel,1.0,36.0,36,5784.722222222223,B
23 +local_linear_trend,1.6,57.6,36,5784.722222222223,B
24 +raref,3.9000000000000004,140.4,36,5784.722222222223,B
25 +dsgfn,4.883333333333334,175.8,36,5784.722222222223,B
26 +tft_lite,5.038888888888889,181.4,36,5784.722222222223,B
27 +lightgbm_panel,5.844444444444445,210.4,36,5784.722222222223,B
28 +gru,7.050000000000001,253.8,36,5784.722222222223,B
29 +lstm,8.93611111111111,321.7,36,5784.722222222223,B
30 +qrefa,10.363888888888889,373.1,36,5784.722222222223,B
31 +tcn,186.0027777777778,6696.1,36,5784.722222222223,B
added results/extra/decline_b.csv +49 −0
@@ -0,0 +1,49 @@
1 +model,h,n,share_declines,brier_decline,brier_skill_decline,brier_up2,brier_skill_up2
2 +lightgbm_panel,1,8085,0.40321583178726034,0.21928315987886524,0.08872299497677905,0.16602721493965827,0.16080006570522476
3 +bhpf,1,8085,0.40321583178726034,0.2262226156087177,0.059884636219615484,0.20689922180995976,-0.045791278325443274
4 +raref,1,8085,0.40321583178726034,0.2263580566698373,0.05932178258050147,0.2063321071697286,-0.042924744853852115
5 +qanss,1,8085,0.40321583178726034,0.22645550875210235,0.05891680008340128,0.18874635846549534,0.04596405065163578
6 +ridge_panel,1,8085,0.40321583178726034,0.23086390147832278,0.0405968026757777,0.20547466973824036,-0.03859074794600592
7 +qrefa,1,8085,0.40321583178726034,0.2337368979738533,0.02865746523036905,0.18507937349305467,0.0644991658076094
8 +momentum,1,8085,0.40321583178726034,0.23958857411434503,0.0043396019224029025,0.19481552858723092,0.01528686818347591
9 +ar2_cell,1,8085,0.40321583178726034,0.24384632106023515,-0.013354355457365186,0.19702025994953787,0.004142849324531128
10 +no_change,1,8085,0.40321583178726034,0.24396272041604133,-0.013838077309988428,0.20166772001319344,-0.01934816798534089
11 +mean_growth,1,8085,0.40321583178726034,0.24942067068227392,-0.03651973045164181,0.20371291997321644,-0.029685820596659918
12 +dsgfn,1,8085,0.40321583178726034,0.25163348443506117,-0.04571554051944671,0.20840285288943008,-0.05339152087335153
13 +tft_lite,1,8085,0.40321583178726034,0.2752026233492194,-0.14366202365356018,0.21536105027536884,-0.08856237398446432
14 +qrefa,3,7595,0.3052007899934167,0.1755423848803094,0.17217788380531418,0.2120256017216914,0.1514367265423916
15 +lightgbm_panel,3,7595,0.3052007899934167,0.18074860316943936,0.14762641924353548,0.20701061189976058,0.1715075865946607
16 +dsgfn,3,7595,0.3052007899934167,0.18185853205787755,0.14239222077984814,0.23544214062476757,0.05771967188818994
17 +bhpf,3,7595,0.3052007899934167,0.18411549152556178,0.13174885983896834,0.2173244448875677,0.1302298361203731
18 +ridge_panel,3,7595,0.3052007899934167,0.18794442747989878,0.1136923781143161,0.22027454388065595,0.11842302770539259
19 +raref,3,7595,0.3052007899934167,0.1938523074308455,0.08583202013552083,0.22740925436197365,0.08986867751354088
20 +qanss,3,7595,0.3052007899934167,0.1967151549893861,0.07233141442214985,0.21603966154442186,0.1353717621448287
21 +momentum,3,7595,0.3052007899934167,0.2053672870591195,0.03152972265724541,0.242168533721719,0.03079947876734268
22 +ar2_cell,3,7595,0.3052007899934167,0.2077906270383743,0.020101745127751758,0.24581113351998804,0.016221161886665003
23 +no_change,3,7595,0.3052007899934167,0.2166040584200815,-0.021460601323882278,0.25511032851350995,-0.02099583115637982
24 +tft_lite,3,7595,0.3052007899934167,0.22336772133246965,-0.053356657362874316,0.24771557462211855,0.008599257915594904
25 +mean_growth,3,7595,0.3052007899934167,0.22572834638583555,-0.0644888840815212,0.2640650311468166,-0.05683410595742133
26 +qrefa,6,6125,0.22922448979591836,0.16559324812586895,0.06275376866440074,0.22289448379821586,0.051618700095309555
27 +dsgfn,6,6125,0.22922448979591836,0.1700969499809324,0.03726313037757356,0.24097467928995442,-0.025309714689996987
28 +momentum,6,6125,0.22922448979591836,0.17065191714194894,0.03412205496499143,0.22268768341483686,0.05249860350551372
29 +lightgbm_panel,6,6125,0.22922448979591836,0.17402607745011303,0.01502454302812084,0.23906653164814418,-0.017190843778017273
30 +ar2_cell,6,6125,0.22922448979591836,0.17619756964515887,0.0027340487041348505,0.23214222525077768,0.012271001083149047
31 +no_change,6,6125,0.22922448979591836,0.17859085236866623,-0.010811764537132396,0.23696632312850274,-0.00825478375541211
32 +bhpf,6,6125,0.22922448979591836,0.17881543407288783,-0.012082881314482208,0.23447121970524365,0.002361492554455169
33 +qanss,6,6125,0.22922448979591836,0.18148693988984244,-0.027203417853681078,0.22348342244046165,0.0491128579336757
34 +raref,6,6125,0.22922448979591836,0.18464495469516598,-0.045077561324444515,0.2434499129028816,-0.035841448052769787
35 +tft_lite,6,6125,0.22922448979591836,0.18565414246188722,-0.0507894936753972,0.25361836227583107,-0.07910661581287948
36 +ridge_panel,6,6125,0.22922448979591836,0.18599398866111114,-0.05271299945272356,0.24948469088186243,-0.06151848808900162
37 +mean_growth,6,6125,0.22922448979591836,0.1867070568828642,-0.056748915838729985,0.24253306773348074,-0.03194041470842324
38 +ar2_cell,12,3185,0.09795918367346938,0.08904263744412978,-0.007689350034670195,0.15212649134579986,-0.013257499059329936
39 +momentum,12,3185,0.09795918367346938,0.08926895858318873,-0.01025061066287769,0.15198940606671982,-0.01234442543349612
40 +no_change,12,3185,0.09795918367346938,0.08950572832216319,-0.012930117371388716,0.1529014133400336,-0.018418963804208044
41 +lightgbm_panel,12,3185,0.09795918367346938,0.0901163254482887,-0.01984020268354625,0.16207171593128789,-0.0794989097559633
42 +raref,12,3185,0.09795918367346938,0.09446081461915624,-0.06900648520264951,0.17348894611644758,-0.15554479763030415
43 +ridge_panel,12,3185,0.09795918367346938,0.0946304231330352,-0.07092593298650796,0.17411600923673923,-0.15972142987494586
44 +tft_lite,12,3185,0.09795918367346938,0.09496108208330867,-0.074667977385106,0.17414281150092037,-0.15989994970362953
45 +dsgfn,12,3185,0.09795918367346938,0.09582739220659943,-0.08447194894440635,0.17380776213872323,-0.15766831157276906
46 +qrefa,12,3185,0.09795918367346938,0.09657975733218348,-0.0929864128703457,0.17547144593644534,-0.168749485332792
47 +bhpf,12,3185,0.09795918367346938,0.09708369011912137,-0.0986893852564592,0.17534334892722206,-0.16789627920114247
48 +mean_growth,12,3185,0.09795918367346938,0.0985618819366152,-0.11541797949572552,0.16636592700161326,-0.10810103901733004
49 +qanss,12,3185,0.09795918367346938,0.17994451392381264,-1.0364195792377173,0.2384506757870825,-0.5882305130394183
added results/extra/decline_reliability_b.csv +174 −0
@@ -0,0 +1,174 @@
1 +model,h,bin,p_mean,freq,n
2 +dsgfn,3,0,0.06715080351673869,0.17900460058552906,4782
3 +dsgfn,3,1,0.2763106783296177,0.3779697624190065,1389
4 +dsgfn,3,2,0.4858286546221049,0.5552147239263804,652
5 +dsgfn,3,3,0.6987776227950181,0.6906474820143885,417
6 +dsgfn,3,4,0.8987970798187862,0.8084507042253521,355
7 +momentum,1,1,0.35603352507121827,0.36815657233536103,3781
8 +momentum,1,2,0.44930379970957696,0.4363327674023769,4123
9 +momentum,1,3,0.653082082391672,0.41818181818181815,165
10 +lightgbm_panel,12,0,0.039536397141444704,0.09449071108263933,3122
11 +lightgbm_panel,12,1,0.24555556074220414,0.26229508196721313,61
12 +tft_lite,1,0,0.08350933898634363,0.2806799336650083,2412
13 +tft_lite,1,1,0.29245615069054265,0.43254168772107127,1979
14 +tft_lite,1,2,0.4968946181070879,0.4602739726027397,1825
15 +tft_lite,1,3,0.6981945622868063,0.5179738562091504,1224
16 +tft_lite,1,4,0.8985154335360965,0.3922480620155039,645
17 +raref,3,0,0.10249115729343944,0.16744427164333853,3858
18 +raref,3,1,0.282349710248347,0.39544869042507513,2329
19 +raref,3,2,0.48363772430860547,0.5088372093023256,1075
20 +raref,3,3,0.6774257669033931,0.5993265993265994,297
21 +raref,3,4,0.8518424832262446,0.7222222222222222,36
22 +qanss,12,0,0.1289235576861158,0.08555729984301413,1274
23 +qanss,12,1,0.27027726805702795,0.11615720524017467,1145
24 +qanss,12,2,0.4826506730433061,0.14285714285714285,266
25 +qanss,12,3,0.7094605981452314,0.06728538283062645,431
26 +qanss,12,4,0.8391277119438898,0.043478260869565216,69
27 +momentum,3,0,0.16875886243737395,0.05855855855855856,222
28 +momentum,3,1,0.3019787588449655,0.28384576184814,5887
29 +momentum,3,2,0.46639905991391833,0.41530460624071325,1346
30 +momentum,3,3,0.6505724672815569,0.5441176470588235,136
31 +mean_growth,3,0,0.16498712559372403,0.4556213017751479,169
32 +mean_growth,3,1,0.30326884714211116,0.31140566192112584,6111
33 +mean_growth,3,2,0.4408090037480613,0.25687352710133543,1273
34 +mean_growth,3,3,0.6688923546540047,0.30303030303030304,33
35 +no_change,6,1,0.24455008452934282,0.22922448979591836,6125
36 +ridge_panel,12,0,0.01850255881149947,0.09795918367346938,3185
37 +bhpf,12,0,0.018724521391682267,0.09670188920909382,3123
38 +bhpf,12,1,0.2692001020390746,0.1388888888888889,36
39 +dsgfn,1,0,0.08911785739356655,0.26205083260297984,3423
40 +dsgfn,1,1,0.28204793947223933,0.4835805084745763,1888
41 +dsgfn,1,2,0.49190050683283043,0.4909090909090909,1375
42 +dsgfn,1,3,0.703433167987663,0.5115115115115115,999
43 +dsgfn,1,4,0.8926278280639214,0.66,400
44 +mean_growth,6,0,0.16329207149892264,0.22998805256869773,1674
45 +mean_growth,6,1,0.26178184395919535,0.23157637872132747,4098
46 +mean_growth,6,2,0.4628207510823782,0.19601328903654486,301
47 +mean_growth,6,3,0.6619072313440437,0.2777777777777778,36
48 +qanss,1,0,0.15735637449619608,0.12903225806451613,155
49 +qanss,1,1,0.32600430479855247,0.24231557377049182,1952
50 +qanss,1,2,0.4910165140195849,0.43634281351402937,5239
51 +qanss,1,3,0.6581855113007292,0.6526610644257703,714
52 +ridge_panel,6,0,0.08181067141843683,0.16990833892242344,4473
53 +ridge_panel,6,1,0.2701344723005641,0.43578485181119647,911
54 +ridge_panel,6,2,0.4893296724062224,0.34972677595628415,366
55 +ridge_panel,6,3,0.6939050164966458,0.31100478468899523,209
56 +ridge_panel,6,4,0.8927306623812029,0.3253012048192771,166
57 +momentum,12,0,0.08750338775473954,0.09802073515551367,3183
58 +momentum,6,0,0.16393315289088942,0.12451577199778639,1807
59 +momentum,6,1,0.2567906686490287,0.2439222042139384,3702
60 +momentum,6,2,0.47703066758672374,0.4407158836689038,447
61 +momentum,6,3,0.6760699261013963,0.4591194968553459,159
62 +tft_lite,6,0,0.05523546810543744,0.1691350075123417,4659
63 +tft_lite,6,1,0.2791792616599123,0.4083224967490247,769
64 +tft_lite,6,2,0.48417249019024955,0.48502994011976047,334
65 +tft_lite,6,3,0.7081855843982741,0.46153846153846156,169
66 +tft_lite,6,4,0.9159185442907664,0.31958762886597936,194
67 +qanss,6,0,0.14230087990405602,0.10131004366812227,1145
68 +qanss,6,1,0.2913107044309835,0.17663617171006332,2842
69 +qanss,6,2,0.4805246039636889,0.31917717319177175,1507
70 +qanss,6,3,0.7002258205131102,0.42411642411642414,481
71 +qanss,6,4,0.8554456481298037,0.6733333333333333,150
72 +lightgbm_panel,1,0,0.14214750928867362,0.1587205793602897,1657
73 +lightgbm_panel,1,1,0.28229981622092126,0.33613445378151263,2618
74 +lightgbm_panel,1,2,0.5000034042599989,0.5226628895184136,2118
75 +lightgbm_panel,1,3,0.7049906645046846,0.5846372688477952,1406
76 +lightgbm_panel,1,4,0.8364657177248607,0.6573426573426573,286
77 +no_change,12,0,0.0824984201487327,0.09795918367346938,3185
78 +bhpf,3,0,0.10629809474001384,0.11711711711711711,3108
79 +bhpf,3,1,0.2873074744073827,0.3773519163763066,2870
80 +bhpf,3,2,0.48049567463867426,0.5231884057971015,1380
81 +bhpf,3,3,0.6739598027131073,0.6462264150943396,212
82 +ar2_cell,12,0,0.0909820539498257,0.0971826527382083,3159
83 +qrefa,6,0,0.06709568306597924,0.14097434690515415,4249
84 +qrefa,6,1,0.2747704417091895,0.39299610894941633,1028
85 +qrefa,6,2,0.49489432286925555,0.4657534246575342,438
86 +qrefa,6,3,0.6942342252911248,0.43109540636042404,283
87 +qrefa,6,4,0.8773406488597189,0.5905511811023622,127
88 +lightgbm_panel,3,0,0.09424456776148477,0.13521288837744533,3476
89 +lightgbm_panel,3,1,0.2828784521082697,0.35732984293193715,2292
90 +lightgbm_panel,3,2,0.4864472747312396,0.5174013921113689,1293
91 +lightgbm_panel,3,3,0.7000054138043528,0.6731517509727627,514
92 +no_change,3,1,0.32527180745066825,0.3052007899934167,7595
93 +lightgbm_panel,6,0,0.07026878989868594,0.16497861805086653,4443
94 +lightgbm_panel,6,1,0.27636082406911194,0.40375203915171287,1226
95 +lightgbm_panel,6,2,0.47066320940527917,0.40718562874251496,334
96 +lightgbm_panel,6,3,0.7167078339388682,0.3063063063063063,111
97 +qanss,3,0,0.152819498091395,0.10176991150442478,678
98 +qanss,3,1,0.30314084369546385,0.20768772348033374,3356
99 +qanss,3,2,0.4818572199025177,0.3956228956228956,2970
100 +qanss,3,3,0.6699667498401122,0.6373429084380611,557
101 +qanss,3,4,0.8461640276504445,0.6470588235294118,34
102 +mean_growth,12,0,0.06816298933353863,0.09595613433858807,2918
103 +mean_growth,12,1,0.2660259681559862,0.10328638497652583,213
104 +mean_growth,1,1,0.36398791253130514,0.46147672552166935,3738
105 +mean_growth,1,2,0.43756785149290495,0.3527777777777778,4320
106 +raref,6,0,0.0870516561033389,0.163632173311823,4339
107 +raref,6,1,0.26496703020478846,0.4273255813953488,1032
108 +raref,6,2,0.48536187377639506,0.36528497409326427,386
109 +raref,6,3,0.6896589124487723,0.29064039408866993,203
110 +raref,6,4,0.8947939416630462,0.3212121212121212,165
111 +qrefa,12,0,0.015300286792315385,0.09694850603941513,3146
112 +raref,1,0,0.14611466025981415,0.21836228287841192,1612
113 +raref,1,1,0.2847702587078259,0.36910994764397903,3820
114 +raref,1,2,0.4898757166048819,0.5349322210636079,1918
115 +raref,1,3,0.6816492223996332,0.635036496350365,685
116 +raref,1,4,0.8556537964101593,0.74,50
117 +tft_lite,3,0,0.07675281401673761,0.1827641408751334,3748
118 +tft_lite,3,1,0.28150731452722294,0.35714285714285715,1596
119 +tft_lite,3,2,0.49457472088358456,0.5135135135135135,962
120 +tft_lite,3,3,0.7027669502207505,0.4602446483180428,654
121 +tft_lite,3,4,0.8895928425038547,0.4220472440944882,635
122 +ar2_cell,6,0,0.15279999772284852,0.13949579831932774,1785
123 +ar2_cell,6,1,0.2639671352479718,0.24729692265040198,3607
124 +ar2_cell,6,2,0.4800138208049124,0.3472222222222222,576
125 +ar2_cell,6,3,0.6771946448293591,0.410958904109589,146
126 +tft_lite,12,0,0.03299717237569648,0.09437086092715231,3020
127 +tft_lite,12,1,0.27070397895341836,0.14754098360655737,122
128 +tft_lite,12,2,0.4660631774286463,0.21621621621621623,37
129 +qrefa,3,0,0.08245421075289111,0.15403665180782566,4038
130 +qrefa,3,1,0.2803892445431945,0.3490909090909091,1925
131 +qrefa,3,2,0.4880058342243553,0.5706161137440758,1055
132 +qrefa,3,3,0.6892559032733916,0.727069351230425,447
133 +qrefa,3,4,0.846613549327596,0.7461538461538462,130
134 +ar2_cell,1,0,0.16708962225898957,0.14473684210526316,76
135 +ar2_cell,1,1,0.33427699602406774,0.37312647909545094,3803
136 +ar2_cell,1,2,0.46507241393283133,0.43781225348409153,3803
137 +ar2_cell,1,3,0.6619990864948796,0.41494845360824745,388
138 +no_change,1,1,0.3901365757081219,0.6031746031746031,2205
139 +no_change,1,2,0.415284704317469,0.3282312925170068,5880
140 +bhpf,1,0,0.14254825509773275,0.215,600
141 +bhpf,1,1,0.30850153059868773,0.32825178264076715,4067
142 +bhpf,1,2,0.48041134501494187,0.5062937062937063,2860
143 +bhpf,1,3,0.6681421541655176,0.6197718631178707,526
144 +bhpf,1,4,0.8643433170659776,0.6875,32
145 +ridge_panel,1,0,0.15513540160360478,0.24027916251246262,1003
146 +ridge_panel,1,1,0.28215877509172976,0.3537337291619091,4379
147 +ridge_panel,1,2,0.4841891838283919,0.5183714001986097,2014
148 +ridge_panel,1,3,0.6832205977457411,0.6167192429022083,634
149 +ridge_panel,1,4,0.8516335865086094,0.6363636363636364,55
150 +raref,12,0,0.019829627908816594,0.09795918367346938,3185
151 +dsgfn,6,0,0.049411016144121904,0.15966386554621848,4403
152 +dsgfn,6,1,0.2831748224611858,0.35,960
153 +dsgfn,6,2,0.48091820350472736,0.4568421052631579,475
154 +dsgfn,6,3,0.6911767763348893,0.5454545454545454,231
155 +dsgfn,6,4,0.8772965637446417,0.39285714285714285,56
156 +bhpf,6,0,0.07998849864450445,0.14895635673624288,4216
157 +bhpf,6,1,0.27352601014178607,0.40355555555555556,1125
158 +bhpf,6,2,0.48530085008599577,0.480719794344473,389
159 +bhpf,6,3,0.6895185165723486,0.3422222222222222,225
160 +bhpf,6,4,0.8957090125537625,0.3411764705882353,170
161 +ridge_panel,3,0,0.10607994295859939,0.15231063713426304,3657
162 +ridge_panel,3,1,0.2774916179345424,0.39185072353389183,2626
163 +ridge_panel,3,2,0.482122602249961,0.52321083172147,1034
164 +ridge_panel,3,3,0.6823623590493696,0.6827309236947792,249
165 +ar2_cell,3,0,0.15932277121871133,0.13793103448275862,377
166 +ar2_cell,3,1,0.2993891745694674,0.27837178765709997,5331
167 +ar2_cell,3,2,0.47167566691788554,0.4143356643356643,1716
168 +ar2_cell,3,3,0.66347412280948,0.42168674698795183,166
169 +qrefa,1,0,0.10473561580767253,0.21701477330616403,1963
170 +qrefa,1,1,0.29098025373537284,0.3813077469793888,2814
171 +qrefa,1,2,0.4930577589687057,0.5023498694516971,1915
172 +qrefa,1,3,0.6932000394262345,0.565008025682183,1246
173 +qrefa,1,4,0.835879160174785,0.6462585034013606,147
174 +dsgfn,12,0,0.018106648634388836,0.09649681528662421,3140
added results/extra/directional_b.csv +49 −0
@@ -0,0 +1,49 @@
1 +model,h,directional_accuracy,n,directional_accuracy_at_turning_points,n_turning
2 +lightgbm_panel,1,0.6975914362176628,6726,0.7681647940074906,2670
3 +qanss,1,0.6681534344335415,6726,0.7460674157303371,2670
4 +raref,1,0.6613143027059173,6726,0.6827715355805244,2670
5 +ridge_panel,1,0.6531370799881059,6726,0.6842696629213483,2670
6 +bhpf,1,0.6515016354445435,6726,0.6734082397003746,2670
7 +qrefa,1,0.6471900089206066,6726,0.702996254681648,2670
8 +dsgfn,1,0.6286054118346714,6726,0.6558052434456929,2670
9 +mean_growth,1,0.6034790365744871,6726,0.5108614232209738,2670
10 +tft_lite,1,0.5955991674100506,6726,0.6636704119850187,2670
11 +ar2_cell,1,0.5944097531965506,6726,0.6528089887640449,2670
12 +momentum,1,0.5251263752601844,6726,0.7220973782771536,2670
13 +no_change,1,0.0,6726,0.0,2670
14 +dsgfn,3,0.7700565791382562,6893,0.6546003016591252,1326
15 +qrefa,3,0.7642535905991585,6893,0.6636500754147813,1326
16 +lightgbm_panel,3,0.7491658203975047,6893,0.6478129713423831,1326
17 +ridge_panel,3,0.7342231249093283,6893,0.579185520361991,1326
18 +bhpf,3,0.7319019294936893,6893,0.5723981900452488,1326
19 +qanss,3,0.7319019294936893,6893,0.6063348416289592,1326
20 +raref,3,0.7272595386624111,6893,0.5761689291101055,1326
21 +ar2_cell,3,0.706513854635137,6893,0.5754147812971342,1326
22 +mean_growth,3,0.7020165385173365,6893,0.49547511312217196,1326
23 +tft_lite,3,0.6936022051356449,6893,0.6546003016591252,1326
24 +momentum,3,0.5029740316262875,6893,0.6945701357466063,1326
25 +no_change,3,0.0,6893,0.0,1326
26 +dsgfn,6,0.7929407653328674,5723,0.6,720
27 +ar2_cell,6,0.7796610169491526,5723,0.6041666666666666,720
28 +qrefa,6,0.7796610169491526,5723,0.6166666666666667,720
29 +mean_growth,6,0.7775642145727765,5723,0.5125,720
30 +lightgbm_panel,6,0.7759916127904944,5723,0.5916666666666667,720
31 +tft_lite,6,0.7719727415691071,5723,0.5972222222222222,720
32 +bhpf,6,0.7670802026908964,5723,0.5875,720
33 +qanss,6,0.7644591997204263,5723,0.6388888888888888,720
34 +ridge_panel,6,0.7572951249344749,5723,0.5875,720
35 +raref,6,0.7564214572776515,5723,0.5763888888888888,720
36 +momentum,6,0.44749257382491703,5723,0.6819444444444445,720
37 +no_change,6,0.0,5723,0.0,720
38 +ridge_panel,12,0.9140726329442282,3084,0.4807692307692308,156
39 +raref,12,0.9140726329442282,3084,0.4807692307692308,156
40 +ar2_cell,12,0.9137483787289234,3084,0.4807692307692308,156
41 +lightgbm_panel,12,0.9124513618677043,3084,0.47435897435897434,156
42 +qrefa,12,0.9118028534370947,3084,0.4807692307692308,156
43 +dsgfn,12,0.9118028534370947,3084,0.47435897435897434,156
44 +tft_lite,12,0.9111543450064851,3084,0.47435897435897434,156
45 +bhpf,12,0.9108300907911803,3084,0.48717948717948717,156
46 +mean_growth,12,0.9049935149156939,3084,0.47435897435897434,156
47 +qanss,12,0.7454604409857328,3084,0.5,156
48 +momentum,12,0.4565499351491569,3084,0.47435897435897434,156
49 +no_change,12,0.0,3084,0.0,156
added results/extra/dollar_errors_a.csv +10 −0
@@ -0,0 +1,10 @@
1 +model,property_class,mae_log,median_price,median_abs_dollar_error
2 +lightgbm,condo,0.13295862624467703,364000.0,32004.94167981131
3 +hedonic_ols,condo,0.15618149485959565,364000.0,37899.91144123813
4 +naive_mun_median,condo,0.34920150406863276,364000.0,127000.00000000023
5 +lightgbm,house,0.2301732867892592,420000.0,61101.603365673625
6 +hedonic_ols,house,0.24857599265932062,420000.0,67889.32311124093
7 +naive_mun_median,house,0.3446170987598036,420000.0,92749.94543867081
8 +lightgbm,plex,0.2401647768344957,510000.0,80114.56133316775
9 +hedonic_ols,plex,0.26616940992414806,510000.0,88707.32112269053
10 +naive_mun_median,plex,0.37601126131012175,510000.0,135000.00000000032
added results/extra/error_by_month_horizon_a.csv +37 −0
@@ -0,0 +1,37 @@
1 +model,h,mae,bias
2 +hedonic_ols,1,0.2322375385898621,-0.002313309623125928
3 +hedonic_ols,2,0.23388746757162054,-0.015509036470425628
4 +hedonic_ols,3,0.231342658423118,-0.030772534582915193
5 +hedonic_ols,4,0.23946124891064413,-0.029138858042818145
6 +hedonic_ols,5,0.23989246034755343,-0.03627113982900254
7 +hedonic_ols,6,0.23499620257978338,-0.04705758228876128
8 +hedonic_ols,7,0.2439108907992567,-0.047150519355851905
9 +hedonic_ols,8,0.24297991161666677,-0.05550705749184562
10 +hedonic_ols,9,0.23853184832950797,-0.06377528825545169
11 +hedonic_ols,10,0.24767976802311478,-0.06137217988888183
12 +hedonic_ols,11,0.24852252777950598,-0.06912638412236809
13 +hedonic_ols,12,0.2455153036202498,-0.07981370326437455
14 +hshn_partial,1,0.21727594927479607,0.03456881520376606
15 +hshn_partial,2,0.24483966693192147,-0.07323135549701365
16 +hshn_partial,3,0.20994592575549695,0.03321059675652394
17 +hshn_partial,4,0.2534071749427232,-0.08790734922202775
18 +hshn_partial,5,0.2499855803602262,-0.08830043468170523
19 +hshn_partial,6,0.21060439660456504,0.03368536077844323
20 +hshn_partial,7,0.2525855911143935,-0.08926074352036027
21 +hshn_partial,8,0.25589640982130574,-0.10445971698590606
22 +hshn_partial,9,0.24832691935477583,-0.10603461575051021
23 +hshn_partial,10,0.26370365818069913,-0.11677328219789834
24 +hshn_partial,11,0.2646527021183698,-0.12218301845434607
25 +hshn_partial,12,0.210363489715414,0.021039854377550557
26 +lightgbm,1,0.2106100613722259,-0.002460264238665469
27 +lightgbm,2,0.21320434545939174,-0.017147493854235103
28 +lightgbm,3,0.21236898848131316,-0.032361841141315496
29 +lightgbm,4,0.2203661791285744,-0.03110363983322278
30 +lightgbm,5,0.22191276539041443,-0.04031941609144951
31 +lightgbm,6,0.21898309068069244,-0.052210457409264416
32 +lightgbm,7,0.22712839575865232,-0.05318688012483801
33 +lightgbm,8,0.22707322353863243,-0.06102020486201744
34 +lightgbm,9,0.22230199031561976,-0.06827222276786722
35 +lightgbm,10,0.2300863809356702,-0.06477463457016697
36 +lightgbm,11,0.23019058499530526,-0.0699309493462052
37 +lightgbm,12,0.22584122424257946,-0.07787195158860516
added results/extra/error_by_origin_a.csv +85 −0
@@ -0,0 +1,85 @@
1 +model,origin,mae,bias,n
2 +hedonic_ols,2022-12,0.24290358243858146,-0.01440520615884139,89153
3 +hedonic_ols,2023-03,0.25409691036697757,-0.06351344134256069,88975
4 +hedonic_ols,2023-06,0.23966719311682091,-0.02717528240744094,95064
5 +hedonic_ols,2023-09,0.23982765797877945,-0.03812384323895016,96137
6 +hedonic_ols,2023-12,0.2445398191220477,-0.06375509238502129,102383
7 +hedonic_ols,2024-03,0.24622635160491319,-0.07940036610246111,107792
8 +hedonic_ols,2024-06,0.23655371005577347,-0.04993993646648074,111049
9 +hedonic_ols,2024-09,0.23808976894023437,-0.05481660600631366,114895
10 +hedonic_ols,2024-12,0.24115808292797394,-0.06355640257854257,116017
11 +hedonic_ols,2025-03,0.23778283481819806,-0.05727528875751125,114840
12 +hedonic_ols,2025-06,0.23082532537108028,-0.01927454962043211,111422
13 +hedonic_ols,2025-09,0.2308313840777607,-0.010243209638880955,108171
14 +hshn_partial,2022-12,0.24649979466717378,0.00043640733935585113,89153
15 +hshn_partial,2023-03,0.2491831399235262,-0.023663718757451862,88975
16 +hshn_partial,2023-06,0.25094670309371864,-0.06742033701838428,95064
17 +hshn_partial,2023-09,0.24154745691284676,-0.049752719558797474,96137
18 +hshn_partial,2023-12,0.2437527904004438,-0.06807934637213124,102383
19 +hshn_partial,2024-03,0.23335544496549857,-0.0556078186310364,107792
20 +hshn_partial,2024-06,0.23528619737368076,-0.065088249326129,111049
21 +hshn_partial,2024-09,0.24281608992582504,-0.07728768132977251,114895
22 +hshn_partial,2024-12,0.24744517402083363,-0.08849755004764784,116017
23 +hshn_partial,2025-03,0.2321330214600399,-0.06124954815238576,114840
24 +hshn_partial,2025-06,0.2275879322339522,-0.040402860793528866,111422
25 +hshn_partial,2025-09,0.2273206673962045,-0.032611184794003684,108171
26 +lightgbm,2022-12,0.23263196479907253,-0.04610543322563965,89153
27 +lightgbm,2023-03,0.24280402628335784,-0.07917645787876051,88975
28 +lightgbm,2023-06,0.21488526332788896,-0.013632559233620015,95064
29 +lightgbm,2023-09,0.22347838158083888,-0.050797012888546815,96137
30 +lightgbm,2023-12,0.23017283346611975,-0.07510154867389336,102383
31 +lightgbm,2024-03,0.2254903903483664,-0.06924487072833768,107792
32 +lightgbm,2024-06,0.2103265469871617,-0.02737659472155792,111049
33 +lightgbm,2024-09,0.2190803123968321,-0.052968840873388344,114895
34 +lightgbm,2024-12,0.22636711177249855,-0.07185618257061614,116017
35 +lightgbm,2025-03,0.21853890341240767,-0.05484215652081409,114840
36 +lightgbm,2025-06,0.2065549409360414,-0.007543606616072873,111422
37 +lightgbm,2025-09,0.21625627169251677,-0.03379171729645143,108171
38 +mlp,2022-12,0.31284482972677274,-0.0459170505841187,89153
39 +mlp,2023-03,0.3215042353059358,0.10438947336621653,88975
40 +mlp,2023-06,0.3430804296539768,-0.19585749919633233,95064
41 +mlp,2023-09,0.2664632592174151,0.0016542680657369822,96137
42 +mlp,2023-12,0.2558167043632246,-0.004199866752299562,102383
43 +mlp,2024-03,0.2562281300745091,0.0991440722729075,107792
44 +mlp,2024-06,0.2461244602346664,-0.019480228872778452,111049
45 +mlp,2024-09,0.23187481173315871,0.04804626323518528,114895
46 +mlp,2024-12,0.22955384044101776,0.0013989919501715491,116017
47 +mlp,2025-03,0.23099448281689497,0.07738759537265831,114840
48 +mlp,2025-06,0.23463573467193785,0.06254435746954304,111422
49 +mlp,2025-09,0.23054353373663547,0.07769588510640436,108171
50 +naive_mun_median,2022-12,0.35802242562743675,-0.02533144180278429,89153
51 +naive_mun_median,2023-03,0.36809889111007466,-0.07635965633523425,88975
52 +naive_mun_median,2023-06,0.3488383437865542,-0.01888605509545573,95064
53 +naive_mun_median,2023-09,0.34847401082392154,-0.0046600164310296645,96137
54 +naive_mun_median,2023-12,0.35321796110740517,-0.0502058928026364,102383
55 +naive_mun_median,2024-03,0.36225664423568543,-0.09194821335575926,107792
56 +naive_mun_median,2024-06,0.3441857580927666,-0.03481614640421069,111049
57 +naive_mun_median,2024-09,0.3470179234102037,-0.037658334860489376,114895
58 +naive_mun_median,2024-12,0.3505856540811764,-0.05807458923342819,116017
59 +naive_mun_median,2025-03,0.3545829737800873,-0.06386371509287582,114840
60 +naive_mun_median,2025-06,0.3451906688784702,-0.0161377822816468,111422
61 +naive_mun_median,2025-09,0.348029272301893,-0.008014652720219161,108171
62 +random_forest,2022-12,0.2285730635779996,-0.00024796848284299225,89153
63 +random_forest,2023-03,0.2400705034043989,-0.04928986929027723,88975
64 +random_forest,2023-06,0.2245319103741667,-0.024184312606232994,95064
65 +random_forest,2023-09,0.22579848668835945,-0.03833902754210029,96137
66 +random_forest,2023-12,0.23014519551086104,-0.05913333337355574,102383
67 +random_forest,2024-03,0.23554612122763965,-0.07898470254905396,107792
68 +random_forest,2024-06,0.22583439082015522,-0.05599786687928209,111049
69 +random_forest,2024-09,0.22832311693467022,-0.0622605215083172,114895
70 +random_forest,2024-12,0.23063838364095618,-0.06895203779423202,116017
71 +random_forest,2025-03,0.2291403929011519,-0.06662029238700427,114840
72 +random_forest,2025-06,0.2218823775622639,-0.03873648985996692,111422
73 +random_forest,2025-09,0.22202485543348097,-0.031138281593964347,108171
74 +xgboost,2022-12,0.23808456448886156,-0.05629679778272433,89153
75 +xgboost,2023-03,0.24176145764482027,-0.07274952139144836,88975
76 +xgboost,2023-06,0.21583945101105173,-0.014287037054293862,95064
77 +xgboost,2023-09,0.2268560056916217,-0.05947784782753937,96137
78 +xgboost,2023-12,0.2328791463510877,-0.08041143525657606,102383
79 +xgboost,2024-03,0.22755357538427218,-0.07416822893780683,107792
80 +xgboost,2024-06,0.21527829548110833,-0.04055555302688599,111049
81 +xgboost,2024-09,0.22092098251013767,-0.057809363844255786,114895
82 +xgboost,2024-12,0.22991813497704472,-0.08044881140476545,116017
83 +xgboost,2025-03,0.21907408946659734,-0.057035832091206516,114840
84 +xgboost,2025-06,0.20914310437707972,-0.01822577555831358,111422
85 +xgboost,2025-09,0.21971806382899395,-0.0432260198101803,108171
added results/extra/error_by_origin_b.csv +1225 −0
@@ -0,0 +1,1225 @@
1 +model,h,origin,mae,n
2 +ar2_cell,1,2023-12,0.019029691254125517,245
3 +ar2_cell,1,2024-01,0.03603963369061085,245
4 +ar2_cell,1,2024-02,0.03701008516844513,245
5 +ar2_cell,1,2024-03,0.03522495113981566,245
6 +ar2_cell,1,2024-04,0.03135553137312645,245
7 +ar2_cell,1,2024-05,0.02117278703204661,245
8 +ar2_cell,1,2024-06,0.020257426360997702,245
9 +ar2_cell,1,2024-07,0.02047672934416903,245
10 +ar2_cell,1,2024-08,0.024329005862553873,245
11 +ar2_cell,1,2024-09,0.023781222327857197,245
12 +ar2_cell,1,2024-10,0.02074634790903673,245
13 +ar2_cell,1,2024-11,0.027114861224949462,245
14 +ar2_cell,1,2024-12,0.022864106349221754,245
15 +ar2_cell,1,2025-01,0.02206379604965365,245
16 +ar2_cell,1,2025-02,0.03007774058618446,245
17 +ar2_cell,1,2025-03,0.01886698831358266,245
18 +ar2_cell,1,2025-04,0.023272207175947617,245
19 +ar2_cell,1,2025-05,0.023649167157106788,245
20 +ar2_cell,1,2025-06,0.02329588621186754,245
21 +ar2_cell,1,2025-07,0.015957771203914804,245
22 +ar2_cell,1,2025-08,0.0254712477243458,245
23 +ar2_cell,1,2025-09,0.02018609079675412,245
24 +ar2_cell,1,2025-10,0.020590230305115604,245
25 +ar2_cell,1,2025-11,0.024454663599651576,245
26 +ar2_cell,1,2025-12,0.022489957927967465,245
27 +ar2_cell,1,2026-01,0.020190543288897366,245
28 +ar2_cell,1,2026-02,0.020429636055948254,245
29 +ar2_cell,1,2026-03,0.02107586188535414,245
30 +ar2_cell,1,2026-04,0.0234114925971637,245
31 +ar2_cell,1,2026-05,0.023567144881517305,245
32 +ar2_cell,1,2026-06,0.02611547207956907,245
33 +ar2_cell,1,2026-07,0.026249765611260432,245
34 +ar2_cell,1,2026-08,0.03118042030583197,245
35 +ar2_cell,3,2023-12,0.028669378127765863,245
36 +ar2_cell,3,2024-01,0.028534287131801887,245
37 +ar2_cell,3,2024-02,0.07149989263483045,245
38 +ar2_cell,3,2024-03,0.054998050376735844,245
39 +ar2_cell,3,2024-04,0.04068060567526286,245
40 +ar2_cell,3,2024-05,0.02650420576485517,245
41 +ar2_cell,3,2024-06,0.034686268226638714,245
42 +ar2_cell,3,2024-07,0.026851141797146455,245
43 +ar2_cell,3,2024-08,0.03076723529772837,245
44 +ar2_cell,3,2024-09,0.03827243828010822,245
45 +ar2_cell,3,2024-10,0.034249799376163154,245
46 +ar2_cell,3,2024-11,0.034352635617988715,245
47 +ar2_cell,3,2024-12,0.03223182278440659,245
48 +ar2_cell,3,2025-01,0.034538169907753484,245
49 +ar2_cell,3,2025-02,0.050260378284013585,245
50 +ar2_cell,3,2025-03,0.04375902949001199,245
51 +ar2_cell,3,2025-04,0.03368105050783447,245
52 +ar2_cell,3,2025-05,0.0311983254686394,245
53 +ar2_cell,3,2025-06,0.03672162833367546,245
54 +ar2_cell,3,2025-07,0.03515833774638725,245
55 +ar2_cell,3,2025-08,0.04684051920394907,245
56 +ar2_cell,3,2025-09,0.03773425068984252,245
57 +ar2_cell,3,2025-10,0.035448365939460776,245
58 +ar2_cell,3,2025-11,0.036366265690672715,245
59 +ar2_cell,3,2025-12,0.03245329554911221,245
60 +ar2_cell,3,2026-01,0.026151956771061368,245
61 +ar2_cell,3,2026-02,0.0408687146179968,245
62 +ar2_cell,3,2026-03,0.04247045757840426,245
63 +ar2_cell,3,2026-04,0.030600286194688422,245
64 +ar2_cell,3,2026-05,0.03226061595161471,245
65 +ar2_cell,3,2026-06,0.05660438315389294,245
66 +ar2_cell,6,2024-03,0.04291666661911313,245
67 +ar2_cell,6,2024-04,0.04981834685687604,245
68 +ar2_cell,6,2024-05,0.03372171067237223,245
69 +ar2_cell,6,2024-06,0.036791066388674194,245
70 +ar2_cell,6,2024-07,0.037577798839955906,245
71 +ar2_cell,6,2024-08,0.0435008934799298,245
72 +ar2_cell,6,2024-09,0.039791505733407596,245
73 +ar2_cell,6,2024-10,0.03418665435166175,245
74 +ar2_cell,6,2024-11,0.0412727827482239,245
75 +ar2_cell,6,2024-12,0.051726373119339385,245
76 +ar2_cell,6,2025-01,0.0448629545034825,245
77 +ar2_cell,6,2025-02,0.057128919825520874,245
78 +ar2_cell,6,2025-03,0.03663904073491663,245
79 +ar2_cell,6,2025-04,0.03613293003671592,245
80 +ar2_cell,6,2025-05,0.04162220893273889,245
81 +ar2_cell,6,2025-06,0.05323147061039581,245
82 +ar2_cell,6,2025-07,0.045199366970785006,245
83 +ar2_cell,6,2025-08,0.058052398867755664,245
84 +ar2_cell,6,2025-09,0.048946055008217186,245
85 +ar2_cell,6,2025-10,0.03788621753209918,245
86 +ar2_cell,6,2025-11,0.03825198107026584,245
87 +ar2_cell,6,2025-12,0.04462200324650768,245
88 +ar2_cell,6,2026-01,0.03901537979917971,245
89 +ar2_cell,6,2026-02,0.0418523044301803,245
90 +ar2_cell,6,2026-03,0.04930631983504569,245
91 +ar2_cell,12,2024-09,0.050192949828672125,245
92 +ar2_cell,12,2024-10,0.046792957898758,245
93 +ar2_cell,12,2024-11,0.04688059795052368,245
94 +ar2_cell,12,2024-12,0.04773213337966167,245
95 +ar2_cell,12,2025-01,0.04244144376579857,245
96 +ar2_cell,12,2025-02,0.04519266233162025,245
97 +ar2_cell,12,2025-03,0.0414403922246208,245
98 +ar2_cell,12,2025-04,0.0424906126160737,245
99 +ar2_cell,12,2025-05,0.04353749345481535,245
100 +ar2_cell,12,2025-06,0.04209005619964313,245
101 +ar2_cell,12,2025-07,0.048319749504953276,245
102 +ar2_cell,12,2025-08,0.05597848031781282,245
103 +ar2_cell,12,2025-09,0.06326414683340036,245
104 +bhpf,1,2023-12,0.021940981879162384,245
105 +bhpf,1,2024-01,0.03474119842192404,245
106 +bhpf,1,2024-02,0.03457900109174988,245
107 +bhpf,1,2024-03,0.026827273286682267,245
108 +bhpf,1,2024-04,0.02592810722089367,245
109 +bhpf,1,2024-05,0.02143620557336007,245
110 +bhpf,1,2024-06,0.02481499368144433,245
111 +bhpf,1,2024-07,0.023803619669308506,245
112 +bhpf,1,2024-08,0.024643771498156882,245
113 +bhpf,1,2024-09,0.02312115485660426,245
114 +bhpf,1,2024-10,0.022738191719235624,245
115 +bhpf,1,2024-11,0.034899788011790625,245
116 +bhpf,1,2024-12,0.021116536505430866,245
117 +bhpf,1,2025-01,0.02679417192708597,245
118 +bhpf,1,2025-02,0.024423657763087185,245
119 +bhpf,1,2025-03,0.018357327597179184,245
120 +bhpf,1,2025-04,0.02267985222285055,245
121 +bhpf,1,2025-05,0.019116918132138932,245
122 +bhpf,1,2025-06,0.02407310052103104,245
123 +bhpf,1,2025-07,0.0170266424967616,245
124 +bhpf,1,2025-08,0.02403917155611973,245
125 +bhpf,1,2025-09,0.020331536578651676,245
126 +bhpf,1,2025-10,0.024204191778955515,245
127 +bhpf,1,2025-11,0.025112912759118866,245
128 +bhpf,1,2025-12,0.021426564857606547,245
129 +bhpf,1,2026-01,0.02470453416527809,245
130 +bhpf,1,2026-02,0.023170388789023156,245
131 +bhpf,1,2026-03,0.01597582417897254,245
132 +bhpf,1,2026-04,0.019748830821704234,245
133 +bhpf,1,2026-05,0.021857993257129924,245
134 +bhpf,1,2026-06,0.02637130016696772,245
135 +bhpf,1,2026-07,0.024087855383787164,245
136 +bhpf,1,2026-08,0.026707398473657558,245
137 +bhpf,3,2023-12,0.035859985056200055,245
138 +bhpf,3,2024-01,0.03875281631721575,245
139 +bhpf,3,2024-02,0.035279143601569224,245
140 +bhpf,3,2024-03,0.03422391914891097,245
141 +bhpf,3,2024-04,0.02829158230919948,245
142 +bhpf,3,2024-05,0.026891655572574252,245
143 +bhpf,3,2024-06,0.04062684213260271,245
144 +bhpf,3,2024-07,0.02913094613466365,245
145 +bhpf,3,2024-08,0.02915004998873483,245
146 +bhpf,3,2024-09,0.033989412165921946,245
147 +bhpf,3,2024-10,0.028907443591030896,245
148 +bhpf,3,2024-11,0.03537463613710969,245
149 +bhpf,3,2024-12,0.038367439847611005,245
150 +bhpf,3,2025-01,0.045785815575823584,245
151 +bhpf,3,2025-02,0.03208506494359997,245
152 +bhpf,3,2025-03,0.03271486283315294,245
153 +bhpf,3,2025-04,0.04177921637888806,245
154 +bhpf,3,2025-05,0.03539217968221933,245
155 +bhpf,3,2025-06,0.03817753238415325,245
156 +bhpf,3,2025-07,0.03296131833714059,245
157 +bhpf,3,2025-08,0.04169865179579954,245
158 +bhpf,3,2025-09,0.03769459646634726,245
159 +bhpf,3,2025-10,0.034152492074689816,245
160 +bhpf,3,2025-11,0.03674241532243538,245
161 +bhpf,3,2025-12,0.030107075065859565,245
162 +bhpf,3,2026-01,0.04206689616205638,245
163 +bhpf,3,2026-02,0.03630631408153034,245
164 +bhpf,3,2026-03,0.02999584848924277,245
165 +bhpf,3,2026-04,0.03455252570414071,245
166 +bhpf,3,2026-05,0.0404694575384578,245
167 +bhpf,3,2026-06,0.049791774432256304,245
168 +bhpf,6,2024-03,0.04668789050553218,245
169 +bhpf,6,2024-04,0.05073716806547605,245
170 +bhpf,6,2024-05,0.06143996615483432,245
171 +bhpf,6,2024-06,0.04039149777085862,245
172 +bhpf,6,2024-07,0.04041099345079485,245
173 +bhpf,6,2024-08,0.04379734429540287,245
174 +bhpf,6,2024-09,0.04084135342306623,245
175 +bhpf,6,2024-10,0.03679617530770545,245
176 +bhpf,6,2024-11,0.040225916994290074,245
177 +bhpf,6,2024-12,0.03539369863751296,245
178 +bhpf,6,2025-01,0.04127697042002389,245
179 +bhpf,6,2025-02,0.03860613171172813,245
180 +bhpf,6,2025-03,0.043002652321546916,245
181 +bhpf,6,2025-04,0.0520082980412621,245
182 +bhpf,6,2025-05,0.05352659191850097,245
183 +bhpf,6,2025-06,0.057265076882477256,245
184 +bhpf,6,2025-07,0.049906659766311035,245
185 +bhpf,6,2025-08,0.06712974865512429,245
186 +bhpf,6,2025-09,0.07253635232208719,245
187 +bhpf,6,2025-10,0.05601647187731354,245
188 +bhpf,6,2025-11,0.0526267473885619,245
189 +bhpf,6,2025-12,0.03706892312920441,245
190 +bhpf,6,2026-01,0.038981598780269515,245
191 +bhpf,6,2026-02,0.04545859966565142,245
192 +bhpf,6,2026-03,0.04301507310877431,245
193 +bhpf,12,2024-09,0.05665428001567803,245
194 +bhpf,12,2024-10,0.05673354422325418,245
195 +bhpf,12,2024-11,0.05878442644044428,245
196 +bhpf,12,2024-12,0.060789669542238516,245
197 +bhpf,12,2025-01,0.06601619414333783,245
198 +bhpf,12,2025-02,0.06849899443973899,245
199 +bhpf,12,2025-03,0.10122115624463994,245
200 +bhpf,12,2025-04,0.09940110158666667,245
201 +bhpf,12,2025-05,0.10698509078117065,245
202 +bhpf,12,2025-06,0.07956663963138001,245
203 +bhpf,12,2025-07,0.08915038693324809,245
204 +bhpf,12,2025-08,0.10369046622004557,245
205 +bhpf,12,2025-09,0.1042304832904277,245
206 +dsgfn,1,2023-12,0.020547377566828343,245
207 +dsgfn,1,2024-01,0.04222133406145138,245
208 +dsgfn,1,2024-02,0.025319151418456646,245
209 +dsgfn,1,2024-03,0.02693329776880541,245
210 +dsgfn,1,2024-04,0.03416306930608515,245
211 +dsgfn,1,2024-05,0.026151096207247877,245
212 +dsgfn,1,2024-06,0.01633342643503843,245
213 +dsgfn,1,2024-07,0.03355084521232003,245
214 +dsgfn,1,2024-08,0.02808967366244631,245
215 +dsgfn,1,2024-09,0.0201196590185396,245
216 +dsgfn,1,2024-10,0.02672693814831764,245
217 +dsgfn,1,2024-11,0.03386833381417692,245
218 +dsgfn,1,2024-12,0.030208848385360677,245
219 +dsgfn,1,2025-01,0.02560801889693718,245
220 +dsgfn,1,2025-02,0.020765977365994576,245
221 +dsgfn,1,2025-03,0.018423305538360985,245
222 +dsgfn,1,2025-04,0.024642919064007833,245
223 +dsgfn,1,2025-05,0.019637238783334475,245
224 +dsgfn,1,2025-06,0.026876766487893704,245
225 +dsgfn,1,2025-07,0.017646952225297774,245
226 +dsgfn,1,2025-08,0.02799220825031166,245
227 +dsgfn,1,2025-09,0.0312302411006753,245
228 +dsgfn,1,2025-10,0.03467366372648374,245
229 +dsgfn,1,2025-11,0.02315335441861658,245
230 +dsgfn,1,2025-12,0.024403169981456713,245
231 +dsgfn,1,2026-01,0.022928842499886627,245
232 +dsgfn,1,2026-02,0.028015160943672242,245
233 +dsgfn,1,2026-03,0.018768694732476283,245
234 +dsgfn,1,2026-04,0.02039395698887238,245
235 +dsgfn,1,2026-05,0.023166219425279317,245
236 +dsgfn,1,2026-06,0.02058153807013798,245
237 +dsgfn,1,2026-07,0.018853742436357308,245
238 +dsgfn,1,2026-08,0.02308043328050278,245
239 +dsgfn,3,2023-12,0.027729231741380242,245
240 +dsgfn,3,2024-01,0.02830547936355833,245
241 +dsgfn,3,2024-02,0.044753084308363195,245
242 +dsgfn,3,2024-03,0.03303144811971905,245
243 +dsgfn,3,2024-04,0.03958822545760916,245
244 +dsgfn,3,2024-05,0.04728440673525186,245
245 +dsgfn,3,2024-06,0.033408338585375646,245
246 +dsgfn,3,2024-07,0.046561962955112474,245
247 +dsgfn,3,2024-08,0.04144033770282012,245
248 +dsgfn,3,2024-09,0.04625329772270488,245
249 +dsgfn,3,2024-10,0.03528891608186043,245
250 +dsgfn,3,2024-11,0.03905535858439201,245
251 +dsgfn,3,2024-12,0.03477717199099612,245
252 +dsgfn,3,2025-01,0.030546644088418,245
253 +dsgfn,3,2025-02,0.03297355965372179,245
254 +dsgfn,3,2025-03,0.029036935950673484,245
255 +dsgfn,3,2025-04,0.03626020585132652,245
256 +dsgfn,3,2025-05,0.03036392842919366,245
257 +dsgfn,3,2025-06,0.028356178959111314,245
258 +dsgfn,3,2025-07,0.03225566608311744,245
259 +dsgfn,3,2025-08,0.03775316743574977,245
260 +dsgfn,3,2025-09,0.042242355069748265,245
261 +dsgfn,3,2025-10,0.0525276178135209,245
262 +dsgfn,3,2025-11,0.055625496633514515,245
263 +dsgfn,3,2025-12,0.04269113306696153,245
264 +dsgfn,3,2026-01,0.03291139519321035,245
265 +dsgfn,3,2026-02,0.036795108267388875,245
266 +dsgfn,3,2026-03,0.03453149444147497,245
267 +dsgfn,3,2026-04,0.03171858472788327,245
268 +dsgfn,3,2026-05,0.02867133466200863,245
269 +dsgfn,3,2026-06,0.030110394728180768,245
270 +dsgfn,6,2024-03,0.03801480300889081,245
271 +dsgfn,6,2024-04,0.035539272694981056,245
272 +dsgfn,6,2024-05,0.043396702406783956,245
273 +dsgfn,6,2024-06,0.04639631542049569,245
274 +dsgfn,6,2024-07,0.04192642433901412,245
275 +dsgfn,6,2024-08,0.05147136265990513,245
276 +dsgfn,6,2024-09,0.04499667207659832,245
277 +dsgfn,6,2024-10,0.040326809626244915,245
278 +dsgfn,6,2024-11,0.05705068025207328,245
279 +dsgfn,6,2024-12,0.0357764060613719,245
280 +dsgfn,6,2025-01,0.036995725561221694,245
281 +dsgfn,6,2025-02,0.03854994151730326,245
282 +dsgfn,6,2025-03,0.052165769371867586,245
283 +dsgfn,6,2025-04,0.059993915372259045,245
284 +dsgfn,6,2025-05,0.06394085414528826,245
285 +dsgfn,6,2025-06,0.04984313899814544,245
286 +dsgfn,6,2025-07,0.043774020827388044,245
287 +dsgfn,6,2025-08,0.05837598115459472,245
288 +dsgfn,6,2025-09,0.06776742610909699,245
289 +dsgfn,6,2025-10,0.06086749837893134,245
290 +dsgfn,6,2025-11,0.056253708784050144,245
291 +dsgfn,6,2025-12,0.04214856016154818,245
292 +dsgfn,6,2026-01,0.04655152585689814,245
293 +dsgfn,6,2026-02,0.047333401983724384,245
294 +dsgfn,6,2026-03,0.03691637738178803,245
295 +dsgfn,12,2024-09,0.045973317741947115,245
296 +dsgfn,12,2024-10,0.058381958233299426,245
297 +dsgfn,12,2024-11,0.07569722137966378,245
298 +dsgfn,12,2024-12,0.058346810911496565,245
299 +dsgfn,12,2025-01,0.0738541632092063,245
300 +dsgfn,12,2025-02,0.07142626739921315,245
301 +dsgfn,12,2025-03,0.11608688005640752,245
302 +dsgfn,12,2025-04,0.11435680977511904,245
303 +dsgfn,12,2025-05,0.1228623832041074,245
304 +dsgfn,12,2025-06,0.07661438789364243,245
305 +dsgfn,12,2025-07,0.0855926132290387,245
306 +dsgfn,12,2025-08,0.09923164052111709,245
307 +dsgfn,12,2025-09,0.08458014968915555,245
308 +lightgbm_panel,1,2023-12,0.019688002423057,245
309 +lightgbm_panel,1,2024-01,0.024656771704544254,245
310 +lightgbm_panel,1,2024-02,0.03146366377874933,245
311 +lightgbm_panel,1,2024-03,0.018779809998396624,245
312 +lightgbm_panel,1,2024-04,0.021384656266933828,245
313 +lightgbm_panel,1,2024-05,0.01634914064999005,245
314 +lightgbm_panel,1,2024-06,0.018471529673660333,245
315 +lightgbm_panel,1,2024-07,0.018167890414974432,245
316 +lightgbm_panel,1,2024-08,0.021722081459095693,245
317 +lightgbm_panel,1,2024-09,0.030408656385681656,245
318 +lightgbm_panel,1,2024-10,0.019581281370339567,245
319 +lightgbm_panel,1,2024-11,0.022074064626451034,245
320 +lightgbm_panel,1,2024-12,0.03209782104477741,245
321 +lightgbm_panel,1,2025-01,0.03043418264553939,245
322 +lightgbm_panel,1,2025-02,0.022177950796448378,245
323 +lightgbm_panel,1,2025-03,0.018701871410980547,245
324 +lightgbm_panel,1,2025-04,0.02213987873339424,245
325 +lightgbm_panel,1,2025-05,0.018849969518179917,245
326 +lightgbm_panel,1,2025-06,0.019586657389554937,245
327 +lightgbm_panel,1,2025-07,0.01723468600078406,245
328 +lightgbm_panel,1,2025-08,0.022046355304252998,245
329 +lightgbm_panel,1,2025-09,0.01729093443031474,245
330 +lightgbm_panel,1,2025-10,0.01711750896529325,245
331 +lightgbm_panel,1,2025-11,0.022506010277828517,245
332 +lightgbm_panel,1,2025-12,0.021685959240042497,245
333 +lightgbm_panel,1,2026-01,0.019741495673907643,245
334 +lightgbm_panel,1,2026-02,0.018653187558616276,245
335 +lightgbm_panel,1,2026-03,0.01741854080319506,245
336 +lightgbm_panel,1,2026-04,0.02012176456533946,245
337 +lightgbm_panel,1,2026-05,0.023253701867586744,245
338 +lightgbm_panel,1,2026-06,0.01905390697871599,245
339 +lightgbm_panel,1,2026-07,0.022187345626181458,245
340 +lightgbm_panel,1,2026-08,0.025663846373290364,245
341 +lightgbm_panel,3,2023-12,0.03167031245660157,245
342 +lightgbm_panel,3,2024-01,0.02540810361478654,245
343 +lightgbm_panel,3,2024-02,0.05176634533254711,245
344 +lightgbm_panel,3,2024-03,0.03636494158424383,245
345 +lightgbm_panel,3,2024-04,0.0327157476756074,245
346 +lightgbm_panel,3,2024-05,0.0260879605099079,245
347 +lightgbm_panel,3,2024-06,0.029912986428482273,245
348 +lightgbm_panel,3,2024-07,0.0276400728424205,245
349 +lightgbm_panel,3,2024-08,0.030338226913211877,245
350 +lightgbm_panel,3,2024-09,0.033607015770302916,245
351 +lightgbm_panel,3,2024-10,0.03578395936988246,245
352 +lightgbm_panel,3,2024-11,0.030369743802301077,245
353 +lightgbm_panel,3,2024-12,0.04215981868195425,245
354 +lightgbm_panel,3,2025-01,0.02857759605648655,245
355 +lightgbm_panel,3,2025-02,0.030845374770113856,245
356 +lightgbm_panel,3,2025-03,0.02890466360606723,245
357 +lightgbm_panel,3,2025-04,0.02857053934258095,245
358 +lightgbm_panel,3,2025-05,0.03235327069961339,245
359 +lightgbm_panel,3,2025-06,0.0297138353700063,245
360 +lightgbm_panel,3,2025-07,0.030423422239183245,245
361 +lightgbm_panel,3,2025-08,0.03735743258407965,245
362 +lightgbm_panel,3,2025-09,0.028009413634947144,245
363 +lightgbm_panel,3,2025-10,0.029755256584608092,245
364 +lightgbm_panel,3,2025-11,0.03364720135003084,245
365 +lightgbm_panel,3,2025-12,0.03051876680108643,245
366 +lightgbm_panel,3,2026-01,0.025497749051726346,245
367 +lightgbm_panel,3,2026-02,0.02933763001823477,245
368 +lightgbm_panel,3,2026-03,0.02967804092843801,245
369 +lightgbm_panel,3,2026-04,0.027080377806527688,245
370 +lightgbm_panel,3,2026-05,0.027410083936116453,245
371 +lightgbm_panel,3,2026-06,0.038063125161608855,245
372 +lightgbm_panel,6,2024-03,0.042151992719975384,245
373 +lightgbm_panel,6,2024-04,0.04283115501231503,245
374 +lightgbm_panel,6,2024-05,0.03990815828924085,245
375 +lightgbm_panel,6,2024-06,0.0356022548662444,245
376 +lightgbm_panel,6,2024-07,0.038648545458002115,245
377 +lightgbm_panel,6,2024-08,0.036887651097758524,245
378 +lightgbm_panel,6,2024-09,0.041096226896720614,245
379 +lightgbm_panel,6,2024-10,0.0363691127088588,245
380 +lightgbm_panel,6,2024-11,0.032680929397997216,245
381 +lightgbm_panel,6,2024-12,0.03863266712116121,245
382 +lightgbm_panel,6,2025-01,0.035473965490522244,245
383 +lightgbm_panel,6,2025-02,0.04445734212700066,245
384 +lightgbm_panel,6,2025-03,0.036564361176771934,245
385 +lightgbm_panel,6,2025-04,0.03622429968557862,245
386 +lightgbm_panel,6,2025-05,0.04159204400970925,245
387 +lightgbm_panel,6,2025-06,0.05019890606571257,245
388 +lightgbm_panel,6,2025-07,0.03736861516582983,245
389 +lightgbm_panel,6,2025-08,0.05165528938738342,245
390 +lightgbm_panel,6,2025-09,0.06057093075314634,245
391 +lightgbm_panel,6,2025-10,0.04170542039326276,245
392 +lightgbm_panel,6,2025-11,0.03948924928477804,245
393 +lightgbm_panel,6,2025-12,0.03549421104816225,245
394 +lightgbm_panel,6,2026-01,0.03627645114013466,245
395 +lightgbm_panel,6,2026-02,0.03419220982664183,245
396 +lightgbm_panel,6,2026-03,0.0400037454277928,245
397 +lightgbm_panel,12,2024-09,0.04698801927470287,245
398 +lightgbm_panel,12,2024-10,0.04603806160806046,245
399 +lightgbm_panel,12,2024-11,0.045788213922135126,245
400 +lightgbm_panel,12,2024-12,0.05016151794265576,245
401 +lightgbm_panel,12,2025-01,0.04535923480065027,245
402 +lightgbm_panel,12,2025-02,0.04643323826995227,245
403 +lightgbm_panel,12,2025-03,0.0687831076515601,245
404 +lightgbm_panel,12,2025-04,0.06372001629557199,245
405 +lightgbm_panel,12,2025-05,0.06453673418773177,245
406 +lightgbm_panel,12,2025-06,0.05578792581512883,245
407 +lightgbm_panel,12,2025-07,0.06128481310567802,245
408 +lightgbm_panel,12,2025-08,0.07483193501184708,245
409 +lightgbm_panel,12,2025-09,0.06942645065380497,245
410 +mean_growth,1,2023-12,0.019128884539905824,245
411 +mean_growth,1,2024-01,0.03804824282492823,245
412 +mean_growth,1,2024-02,0.04326204071258304,245
413 +mean_growth,1,2024-03,0.028796909269662028,245
414 +mean_growth,1,2024-04,0.027635803037896544,245
415 +mean_growth,1,2024-05,0.0176110514434101,245
416 +mean_growth,1,2024-06,0.021130366822624185,245
417 +mean_growth,1,2024-07,0.02048207769038013,245
418 +mean_growth,1,2024-08,0.0260198297716807,245
419 +mean_growth,1,2024-09,0.02487553666621071,245
420 +mean_growth,1,2024-10,0.023485583893547636,245
421 +mean_growth,1,2024-11,0.025602364228883488,245
422 +mean_growth,1,2024-12,0.025288890260299363,245
423 +mean_growth,1,2025-01,0.024747430793212285,245
424 +mean_growth,1,2025-02,0.030478841434222734,245
425 +mean_growth,1,2025-03,0.017953010921610023,245
426 +mean_growth,1,2025-04,0.023401128337820536,245
427 +mean_growth,1,2025-05,0.022943479647002284,245
428 +mean_growth,1,2025-06,0.02458674174729272,245
429 +mean_growth,1,2025-07,0.016030011873375934,245
430 +mean_growth,1,2025-08,0.026493829629256366,245
431 +mean_growth,1,2025-09,0.019247714767750047,245
432 +mean_growth,1,2025-10,0.02068860646512519,245
433 +mean_growth,1,2025-11,0.025749457076541048,245
434 +mean_growth,1,2025-12,0.024139595498331067,245
435 +mean_growth,1,2026-01,0.021234910353046654,245
436 +mean_growth,1,2026-02,0.022899775924569335,245
437 +mean_growth,1,2026-03,0.021868614886544697,245
438 +mean_growth,1,2026-04,0.023226899003845,245
439 +mean_growth,1,2026-05,0.024107965819066438,245
440 +mean_growth,1,2026-06,0.027912087169138778,245
441 +mean_growth,1,2026-07,0.024650760838626863,245
442 +mean_growth,1,2026-08,0.02919743089816235,245
443 +mean_growth,3,2023-12,0.03628818839538027,245
444 +mean_growth,3,2024-01,0.038626897579771745,245
445 +mean_growth,3,2024-02,0.08013219203910449,245
446 +mean_growth,3,2024-03,0.05559074374856243,245
447 +mean_growth,3,2024-04,0.03260372422256053,245
448 +mean_growth,3,2024-05,0.029535115144784876,245
449 +mean_growth,3,2024-06,0.046554542147949456,245
450 +mean_growth,3,2024-07,0.031872968978007,245
451 +mean_growth,3,2024-08,0.03159037030618301,245
452 +mean_growth,3,2024-09,0.03779194889720111,245
453 +mean_growth,3,2024-10,0.036913587564110686,245
454 +mean_growth,3,2024-11,0.036643608050062955,245
455 +mean_growth,3,2024-12,0.03981046571691682,245
456 +mean_growth,3,2025-01,0.03734994321467757,245
457 +mean_growth,3,2025-02,0.048124911493869445,245
458 +mean_growth,3,2025-03,0.03961074835963169,245
459 +mean_growth,3,2025-04,0.031149310266394,245
460 +mean_growth,3,2025-05,0.030837707652463343,245
461 +mean_growth,3,2025-06,0.0428698323528846,245
462 +mean_growth,3,2025-07,0.03540820604724197,245
463 +mean_growth,3,2025-08,0.04689353551817995,245
464 +mean_growth,3,2025-09,0.03532060106868001,245
465 +mean_growth,3,2025-10,0.03521472238518017,245
466 +mean_growth,3,2025-11,0.038987637207705914,245
467 +mean_growth,3,2025-12,0.03602613506709315,245
468 +mean_growth,3,2026-01,0.02854005400219158,245
469 +mean_growth,3,2026-02,0.04335186706195171,245
470 +mean_growth,3,2026-03,0.04403831995239892,245
471 +mean_growth,3,2026-04,0.030437955636315538,245
472 +mean_growth,3,2026-05,0.037587437453473996,245
473 +mean_growth,3,2026-06,0.06379584148233332,245
474 +mean_growth,6,2024-03,0.04453511718576652,245
475 +mean_growth,6,2024-04,0.03931171392098195,245
476 +mean_growth,6,2024-05,0.03805833078871289,245
477 +mean_growth,6,2024-06,0.0533111674849698,245
478 +mean_growth,6,2024-07,0.04236943525359455,245
479 +mean_growth,6,2024-08,0.046313159958343744,245
480 +mean_growth,6,2024-09,0.04435804166446646,245
481 +mean_growth,6,2024-10,0.03890902561402026,245
482 +mean_growth,6,2024-11,0.0435017341995477,245
483 +mean_growth,6,2024-12,0.06473902948287333,245
484 +mean_growth,6,2025-01,0.045141768433177916,245
485 +mean_growth,6,2025-02,0.05350292983155267,245
486 +mean_growth,6,2025-03,0.036648364011212194,245
487 +mean_growth,6,2025-04,0.037011546048310744,245
488 +mean_growth,6,2025-05,0.046851490630101855,245
489 +mean_growth,6,2025-06,0.06166237627225286,245
490 +mean_growth,6,2025-07,0.04598794470848955,245
491 +mean_growth,6,2025-08,0.06005558287620146,245
492 +mean_growth,6,2025-09,0.047078564902533225,245
493 +mean_growth,6,2025-10,0.036192956471503245,245
494 +mean_growth,6,2025-11,0.03925157934952028,245
495 +mean_growth,6,2025-12,0.05007951094193102,245
496 +mean_growth,6,2026-01,0.04064248912988558,245
497 +mean_growth,6,2026-02,0.04476988592127912,245
498 +mean_growth,6,2026-03,0.04816806089812961,245
499 +mean_growth,12,2024-09,0.05691711580892101,245
500 +mean_growth,12,2024-10,0.05246939731442153,245
501 +mean_growth,12,2024-11,0.04948966048707148,245
502 +mean_growth,12,2024-12,0.05300747954168514,245
503 +mean_growth,12,2025-01,0.04674218381659817,245
504 +mean_growth,12,2025-02,0.04766326096954659,245
505 +mean_growth,12,2025-03,0.04906444847173573,245
506 +mean_growth,12,2025-04,0.04551318564325835,245
507 +mean_growth,12,2025-05,0.04703415007008832,245
508 +mean_growth,12,2025-06,0.045655934844288495,245
509 +mean_growth,12,2025-07,0.04882723897250931,245
510 +mean_growth,12,2025-08,0.05936279453907913,245
511 +mean_growth,12,2025-09,0.06271727544052261,245
512 +momentum,1,2023-12,0.01875510620294524,245
513 +momentum,1,2024-01,0.03285927324109651,245
514 +momentum,1,2024-02,0.044818502588973304,245
515 +momentum,1,2024-03,0.03305571470315992,245
516 +momentum,1,2024-04,0.03589211409582126,245
517 +momentum,1,2024-05,0.02792774163990713,245
518 +momentum,1,2024-06,0.016707304792582936,245
519 +momentum,1,2024-07,0.01838246244400998,245
520 +momentum,1,2024-08,0.022597946462725935,245
521 +momentum,1,2024-09,0.02757126789260583,245
522 +momentum,1,2024-10,0.01947757574835909,245
523 +momentum,1,2024-11,0.021820524112026916,245
524 +momentum,1,2024-12,0.028013671218364122,245
525 +momentum,1,2025-01,0.023262590480391202,245
526 +momentum,1,2025-02,0.036615389311035085,245
527 +momentum,1,2025-03,0.023674368651415863,245
528 +momentum,1,2025-04,0.028490883088428485,245
529 +momentum,1,2025-05,0.029570741561447525,245
530 +momentum,1,2025-06,0.01799330440101698,245
531 +momentum,1,2025-07,0.02058099101117387,245
532 +momentum,1,2025-08,0.01952050583241124,245
533 +momentum,1,2025-09,0.017209144305390226,245
534 +momentum,1,2025-10,0.01808403387579939,245
535 +momentum,1,2025-11,0.024779521743883814,245
536 +momentum,1,2025-12,0.022789277894052894,245
537 +momentum,1,2026-01,0.020470786554133938,245
538 +momentum,1,2026-02,0.02126322965406096,245
539 +momentum,1,2026-03,0.025590199341081407,245
540 +momentum,1,2026-04,0.02617940997793855,245
541 +momentum,1,2026-05,0.0294010462673277,245
542 +momentum,1,2026-06,0.020343515601075498,245
543 +momentum,1,2026-07,0.02052305360104884,245
544 +momentum,1,2026-08,0.02428589012136298,245
545 +momentum,3,2023-12,0.0357234528248493,245
546 +momentum,3,2024-01,0.04629795933048681,245
547 +momentum,3,2024-02,0.09595541597304165,245
548 +momentum,3,2024-03,0.07423196204149395,245
549 +momentum,3,2024-04,0.04818283346744001,245
550 +momentum,3,2024-05,0.03704518678071118,245
551 +momentum,3,2024-06,0.031470498714936,245
552 +momentum,3,2024-07,0.034100873019069076,245
553 +momentum,3,2024-08,0.029993746451480615,245
554 +momentum,3,2024-09,0.030279879768564968,245
555 +momentum,3,2024-10,0.030762703670189875,245
556 +momentum,3,2024-11,0.03113801979731265,245
557 +momentum,3,2024-12,0.05404568677530955,245
558 +momentum,3,2025-01,0.0513591241373152,245
559 +momentum,3,2025-02,0.06952158479281557,245
560 +momentum,3,2025-03,0.064903232260701,245
561 +momentum,3,2025-04,0.04310203949482437,245
562 +momentum,3,2025-05,0.04110895366291467,245
563 +momentum,3,2025-06,0.02501881313711069,245
564 +momentum,3,2025-07,0.024960978334659056,245
565 +momentum,3,2025-08,0.027771834835636333,245
566 +momentum,3,2025-09,0.028510492150333976,245
567 +momentum,3,2025-10,0.03145260196420803,245
568 +momentum,3,2025-11,0.03596755643818837,245
569 +momentum,3,2025-12,0.03549909118141547,245
570 +momentum,3,2026-01,0.038344510103080875,245
571 +momentum,3,2026-02,0.05406889943416272,245
572 +momentum,3,2026-03,0.06039742505506432,245
573 +momentum,3,2026-04,0.034985140106803356,245
574 +momentum,3,2026-05,0.028862941971887834,245
575 +momentum,3,2026-06,0.03869248089352037,245
576 +momentum,6,2024-03,0.07081003515453718,245
577 +momentum,6,2024-04,0.0670603379728976,245
578 +momentum,6,2024-05,0.06703086680382864,245
579 +momentum,6,2024-06,0.03950650907940605,245
580 +momentum,6,2024-07,0.04862299626236287,245
581 +momentum,6,2024-08,0.03857443373708347,245
582 +momentum,6,2024-09,0.05913355337767175,245
583 +momentum,6,2024-10,0.06295901650068786,245
584 +momentum,6,2024-11,0.07535135206764478,245
585 +momentum,6,2024-12,0.10262977751324141,245
586 +momentum,6,2025-01,0.0766685588026683,245
587 +momentum,6,2025-02,0.09368556214430018,245
588 +momentum,6,2025-03,0.06354548783739039,245
589 +momentum,6,2025-04,0.04927926527435391,245
590 +momentum,6,2025-05,0.03938697796112766,245
591 +momentum,6,2025-06,0.03435147888351891,245
592 +momentum,6,2025-07,0.03341577390378056,245
593 +momentum,6,2025-08,0.037617485336846085,245
594 +momentum,6,2025-09,0.035813777429316074,245
595 +momentum,6,2025-10,0.04621492393598846,245
596 +momentum,6,2025-11,0.06008737658861956,245
597 +momentum,6,2025-12,0.07689764048180087,245
598 +momentum,6,2026-01,0.05696833638314899,245
599 +momentum,6,2026-02,0.05570545701468131,245
600 +momentum,6,2026-03,0.042202445662733276,245
601 +momentum,12,2024-09,0.10237347101412045,245
602 +momentum,12,2024-10,0.08668517449556884,245
603 +momentum,12,2024-11,0.08342412301989581,245
604 +momentum,12,2024-12,0.09746327450357663,245
605 +momentum,12,2025-01,0.08628303836807744,245
606 +momentum,12,2025-02,0.08570506215006773,245
607 +momentum,12,2025-03,0.0710391752770776,245
608 +momentum,12,2025-04,0.07436191197954987,245
609 +momentum,12,2025-05,0.07197235907117065,245
610 +momentum,12,2025-06,0.059739632843901644,245
611 +momentum,12,2025-07,0.059997335710601035,245
612 +momentum,12,2025-08,0.048841122806598046,245
613 +momentum,12,2025-09,0.05191033985817412,245
614 +no_change,1,2023-12,0.019399220851790355,245
615 +no_change,1,2024-01,0.03358159931818455,245
616 +no_change,1,2024-02,0.047034512656081884,245
617 +no_change,1,2024-03,0.0320266212646127,245
618 +no_change,1,2024-04,0.03220414555135274,245
619 +no_change,1,2024-05,0.019842257807695284,245
620 +no_change,1,2024-06,0.01731723041680854,245
621 +no_change,1,2024-07,0.018880496694167578,245
622 +no_change,1,2024-08,0.023462854042145428,245
623 +no_change,1,2024-09,0.028173506926815795,245
624 +no_change,1,2024-10,0.020601786907549796,245
625 +no_change,1,2024-11,0.022145807815935198,245
626 +no_change,1,2024-12,0.028211345966521754,245
627 +no_change,1,2025-01,0.024012557599150636,245
628 +no_change,1,2025-02,0.03541589895674691,245
629 +no_change,1,2025-03,0.021070196351016857,245
630 +no_change,1,2025-04,0.02666384746173274,245
631 +no_change,1,2025-05,0.02711857020687772,245
632 +no_change,1,2025-06,0.01951098200377092,245
633 +no_change,1,2025-07,0.019258351023838348,245
634 +no_change,1,2025-08,0.021188856194381305,245
635 +no_change,1,2025-09,0.018398396182168382,245
636 +no_change,1,2025-10,0.018647967056693752,245
637 +no_change,1,2025-11,0.026103776404942266,245
638 +no_change,1,2025-12,0.023835201804815933,245
639 +no_change,1,2026-01,0.020944715822449233,245
640 +no_change,1,2026-02,0.022695117297067365,245
641 +no_change,1,2026-03,0.025576206451096373,245
642 +no_change,1,2026-04,0.02522866419749429,245
643 +no_change,1,2026-05,0.027452950264570265,245
644 +no_change,1,2026-06,0.023036837125985178,245
645 +no_change,1,2026-07,0.021597453716381228,245
646 +no_change,1,2026-08,0.0249099776385727,245
647 +no_change,3,2023-12,0.03746327381343818,245
648 +no_change,3,2024-01,0.046882557861497066,245
649 +no_change,3,2024-02,0.10147157279862125,245
650 +no_change,3,2024-03,0.0701598520208429,245
651 +no_change,3,2024-04,0.0420796729306181,245
652 +no_change,3,2024-05,0.02770410124880459,245
653 +no_change,3,2024-06,0.030956838527202976,245
654 +no_change,3,2024-07,0.03057992262365985,245
655 +no_change,3,2024-08,0.030743435362921488,245
656 +no_change,3,2024-09,0.031487335465121516,245
657 +no_change,3,2024-10,0.030682907436524375,245
658 +no_change,3,2024-11,0.03113949577028531,245
659 +no_change,3,2024-12,0.053932923092645156,245
660 +no_change,3,2025-01,0.05090467030111081,245
661 +no_change,3,2025-02,0.06622938948787886,245
662 +no_change,3,2025-03,0.056572314885916714,245
663 +no_change,3,2025-04,0.03867876494986404,245
664 +no_change,3,2025-05,0.03594340815141327,245
665 +no_change,3,2025-06,0.02774160583665181,245
666 +no_change,3,2025-07,0.026529450311252797,245
667 +no_change,3,2025-08,0.03122481580777234,245
668 +no_change,3,2025-09,0.029526364028574954,245
669 +no_change,3,2025-10,0.03346667455979076,245
670 +no_change,3,2025-11,0.038617592284060885,245
671 +no_change,3,2025-12,0.03697019796486555,245
672 +no_change,3,2026-01,0.03826458304120322,245
673 +no_change,3,2026-02,0.05484575451170751,245
674 +no_change,3,2026-03,0.05897625404192789,245
675 +no_change,3,2026-04,0.03353249493227417,245
676 +no_change,3,2026-05,0.030011305942403643,245
677 +no_change,3,2026-06,0.04546304561485683,245
678 +no_change,6,2024-03,0.06310874583225455,245
679 +no_change,6,2024-04,0.05635585750781267,245
680 +no_change,6,2024-05,0.036107737642002063,245
681 +no_change,6,2024-06,0.032040921520152865,245
682 +no_change,6,2024-07,0.041109565585062374,245
683 +no_change,6,2024-08,0.03912297156903556,245
684 +no_change,6,2024-09,0.06405151662911131,245
685 +no_change,6,2024-10,0.05881126239526713,245
686 +no_change,6,2024-11,0.07362721796639685,245
687 +no_change,6,2024-12,0.10119657403954223,245
688 +no_change,6,2025-01,0.0748889294334307,245
689 +no_change,6,2025-02,0.08837921535831161,245
690 +no_change,6,2025-03,0.05086719550651579,245
691 +no_change,6,2025-04,0.04017262146652507,245
692 +no_change,6,2025-05,0.03494560178223823,245
693 +no_change,6,2025-06,0.03570344399417429,245
694 +no_change,6,2025-07,0.03112264152229919,245
695 +no_change,6,2025-08,0.03757682805414114,245
696 +no_change,6,2025-09,0.039747555918506865,245
697 +no_change,6,2025-10,0.0483363689256771,245
698 +no_change,6,2025-11,0.06504007041391882,245
699 +no_change,6,2025-12,0.07689739953833769,245
700 +no_change,6,2026-01,0.056810557940835636,245
701 +no_change,6,2026-02,0.05528684998637853,245
702 +no_change,6,2026-03,0.04205019891658679,245
703 +no_change,12,2024-09,0.10165151267439154,245
704 +no_change,12,2024-10,0.08716382211226631,245
705 +no_change,12,2024-11,0.08360462546824393,245
706 +no_change,12,2024-12,0.09742991012633971,245
707 +no_change,12,2025-01,0.08623303855131559,245
708 +no_change,12,2025-02,0.08550449607163248,245
709 +no_change,12,2025-03,0.0678989316519268,245
710 +no_change,12,2025-04,0.07182928265580908,245
711 +no_change,12,2025-05,0.06878805741429189,245
712 +no_change,12,2025-06,0.06527989299838466,245
713 +no_change,12,2025-07,0.0626791412253051,245
714 +no_change,12,2025-08,0.04978253633343932,245
715 +no_change,12,2025-09,0.050162789482221415,245
716 +qanss,1,2023-12,0.020949606768917033,245
717 +qanss,1,2024-01,0.03328320120781117,245
718 +qanss,1,2024-02,0.03143733168712727,245
719 +qanss,1,2024-03,0.024074706485670453,245
720 +qanss,1,2024-04,0.026926446802845633,245
721 +qanss,1,2024-05,0.021805490157140388,245
722 +qanss,1,2024-06,0.022048660803579746,245
723 +qanss,1,2024-07,0.021060304894376655,245
724 +qanss,1,2024-08,0.02132771485637949,245
725 +qanss,1,2024-09,0.027910668670114287,245
726 +qanss,1,2024-10,0.021359007573828158,245
727 +qanss,1,2024-11,0.026310257942662587,245
728 +qanss,1,2024-12,0.02804230414100128,245
729 +qanss,1,2025-01,0.02081004354001559,245
730 +qanss,1,2025-02,0.030355164614131038,245
731 +qanss,1,2025-03,0.01857690561667391,245
732 +qanss,1,2025-04,0.021535694242017317,245
733 +qanss,1,2025-05,0.022484988496561414,245
734 +qanss,1,2025-06,0.021352808599164778,245
735 +qanss,1,2025-07,0.019703648502349003,245
736 +qanss,1,2025-08,0.019545018742176866,245
737 +qanss,1,2025-09,0.019146893308861667,245
738 +qanss,1,2025-10,0.0183697683572412,245
739 +qanss,1,2025-11,0.024343977041197628,245
740 +qanss,1,2025-12,0.02258677982428156,245
741 +qanss,1,2026-01,0.01922877322122083,245
742 +qanss,1,2026-02,0.018809925356675736,245
743 +qanss,1,2026-03,0.018325345204222947,245
744 +qanss,1,2026-04,0.02286459298033764,245
745 +qanss,1,2026-05,0.02253039843895402,245
746 +qanss,1,2026-06,0.023489004309247424,245
747 +qanss,1,2026-07,0.02506512952291137,245
748 +qanss,1,2026-08,0.02399187482135963,245
749 +qanss,3,2023-12,0.03164254997007272,245
750 +qanss,3,2024-01,0.029415022328915567,245
751 +qanss,3,2024-02,0.06578145667607128,245
752 +qanss,3,2024-03,0.03646629313820298,245
753 +qanss,3,2024-04,0.034397811366286175,245
754 +qanss,3,2024-05,0.029426625770012104,245
755 +qanss,3,2024-06,0.03155638030156524,245
756 +qanss,3,2024-07,0.033285563053594404,245
757 +qanss,3,2024-08,0.03292980209997972,245
758 +qanss,3,2024-09,0.02833043277122192,245
759 +qanss,3,2024-10,0.030347043182049793,245
760 +qanss,3,2024-11,0.03131141360745383,245
761 +qanss,3,2024-12,0.03466841463196535,245
762 +qanss,3,2025-01,0.03045767738780453,245
763 +qanss,3,2025-02,0.041440987871194636,245
764 +qanss,3,2025-03,0.03697521200704064,245
765 +qanss,3,2025-04,0.033678969692646936,245
766 +qanss,3,2025-05,0.03555833926001381,245
767 +qanss,3,2025-06,0.02698411363961449,245
768 +qanss,3,2025-07,0.025776196855061672,245
769 +qanss,3,2025-08,0.02894677628685212,245
770 +qanss,3,2025-09,0.03872052812569334,245
771 +qanss,3,2025-10,0.03843531963869982,245
772 +qanss,3,2025-11,0.03955712481086457,245
773 +qanss,3,2025-12,0.03196611318499595,245
774 +qanss,3,2026-01,0.025488100285202837,245
775 +qanss,3,2026-02,0.035151961943536265,245
776 +qanss,3,2026-03,0.03960634852010673,245
777 +qanss,3,2026-04,0.03367928623846956,245
778 +qanss,3,2026-05,0.03583599285450249,245
779 +qanss,3,2026-06,0.051767526857700336,245
780 +qanss,6,2024-03,0.043593774425963246,245
781 +qanss,6,2024-04,0.04654720896676889,245
782 +qanss,6,2024-05,0.04320396883865236,245
783 +qanss,6,2024-06,0.056025120668661665,245
784 +qanss,6,2024-07,0.06478838481242873,245
785 +qanss,6,2024-08,0.047744755581647286,245
786 +qanss,6,2024-09,0.03914287508940555,245
787 +qanss,6,2024-10,0.04252883589842019,245
788 +qanss,6,2024-11,0.04504570660746938,245
789 +qanss,6,2024-12,0.06770815003845537,245
790 +qanss,6,2025-01,0.04800871458927505,245
791 +qanss,6,2025-02,0.052743886944104354,245
792 +qanss,6,2025-03,0.043330827540117065,245
793 +qanss,6,2025-04,0.03838514023906572,245
794 +qanss,6,2025-05,0.041646356516932284,245
795 +qanss,6,2025-06,0.04152954187526973,245
796 +qanss,6,2025-07,0.031253816904132946,245
797 +qanss,6,2025-08,0.03886405788868796,245
798 +qanss,6,2025-09,0.04358939008884569,245
799 +qanss,6,2025-10,0.033234582093877134,245
800 +qanss,6,2025-11,0.03340483621302384,245
801 +qanss,6,2025-12,0.04629531763045593,245
802 +qanss,6,2026-01,0.04412238066672043,245
803 +qanss,6,2026-02,0.04191574538802782,245
804 +qanss,6,2026-03,0.05337874978763067,245
805 +qanss,12,2024-09,0.11804711618800746,245
806 +qanss,12,2024-10,0.1381263539596805,245
807 +qanss,12,2024-11,0.13246637396921176,245
808 +qanss,12,2024-12,0.06719078115972273,245
809 +qanss,12,2025-01,0.053455598631549986,245
810 +qanss,12,2025-02,0.0648730803738213,245
811 +qanss,12,2025-03,0.07940688871482986,245
812 +qanss,12,2025-04,0.07914210779483571,245
813 +qanss,12,2025-05,0.07820297144315727,245
814 +qanss,12,2025-06,0.05647143078217048,245
815 +qanss,12,2025-07,0.06037365692734762,245
816 +qanss,12,2025-08,0.06699110690783064,245
817 +qanss,12,2025-09,0.05882060449886571,245
818 +qrefa,1,2023-12,0.019269343680867225,245
819 +qrefa,1,2024-01,0.035955394090373634,245
820 +qrefa,1,2024-02,0.021391174311916797,245
821 +qrefa,1,2024-03,0.028515779822748544,245
822 +qrefa,1,2024-04,0.032448509874810384,245
823 +qrefa,1,2024-05,0.021969624719210313,245
824 +qrefa,1,2024-06,0.016630015032094186,245
825 +qrefa,1,2024-07,0.028559540704531716,245
826 +qrefa,1,2024-08,0.025743107426355317,245
827 +qrefa,1,2024-09,0.02060817433340975,245
828 +qrefa,1,2024-10,0.023288798522716113,245
829 +qrefa,1,2024-11,0.02665668066505526,245
830 +qrefa,1,2024-12,0.03059499312562564,245
831 +qrefa,1,2025-01,0.02302579492828872,245
832 +qrefa,1,2025-02,0.018679915701852734,245
833 +qrefa,1,2025-03,0.016108905991723238,245
834 +qrefa,1,2025-04,0.021479959434441594,245
835 +qrefa,1,2025-05,0.020368747713251992,245
836 +qrefa,1,2025-06,0.02201037265347063,245
837 +qrefa,1,2025-07,0.016343820819350024,245
838 +qrefa,1,2025-08,0.01912492245628617,245
839 +qrefa,1,2025-09,0.02762560524125849,245
840 +qrefa,1,2025-10,0.030974386691914834,245
841 +qrefa,1,2025-11,0.022288303125433742,245
842 +qrefa,1,2025-12,0.022765550901521058,245
843 +qrefa,1,2026-01,0.02765503597930254,245
844 +qrefa,1,2026-02,0.030561444917566682,245
845 +qrefa,1,2026-03,0.019585858901549454,245
846 +qrefa,1,2026-04,0.020053989726199477,245
847 +qrefa,1,2026-05,0.022736654658611986,245
848 +qrefa,1,2026-06,0.02301625453235165,245
849 +qrefa,1,2026-07,0.02051631855684087,245
850 +qrefa,1,2026-08,0.022859960174412764,245
851 +qrefa,3,2023-12,0.02883588293892151,245
852 +qrefa,3,2024-01,0.03700477696339017,245
853 +qrefa,3,2024-02,0.028379959618914926,245
854 +qrefa,3,2024-03,0.0349755732651828,245
855 +qrefa,3,2024-04,0.03216635913724106,245
856 +qrefa,3,2024-05,0.033451394222735395,245
857 +qrefa,3,2024-06,0.03023635765107534,245
858 +qrefa,3,2024-07,0.02738156837110433,245
859 +qrefa,3,2024-08,0.028323675408389325,245
860 +qrefa,3,2024-09,0.05167416730680061,245
861 +qrefa,3,2024-10,0.03164022975921718,245
862 +qrefa,3,2024-11,0.03310605986073336,245
863 +qrefa,3,2024-12,0.03852689285584947,245
864 +qrefa,3,2025-01,0.03021027127052543,245
865 +qrefa,3,2025-02,0.02965587899700557,245
866 +qrefa,3,2025-03,0.032264120163674775,245
867 +qrefa,3,2025-04,0.04101455204180097,245
868 +qrefa,3,2025-05,0.03140241374242317,245
869 +qrefa,3,2025-06,0.028421636421885627,245
870 +qrefa,3,2025-07,0.029727186765283003,245
871 +qrefa,3,2025-08,0.03718050185201357,245
872 +qrefa,3,2025-09,0.03715919985563616,245
873 +qrefa,3,2025-10,0.043844955557474814,245
874 +qrefa,3,2025-11,0.04976582470078112,245
875 +qrefa,3,2025-12,0.03766961022195467,245
876 +qrefa,3,2026-01,0.03517631489009225,245
877 +qrefa,3,2026-02,0.04116979914972145,245
878 +qrefa,3,2026-03,0.030728473105884946,245
879 +qrefa,3,2026-04,0.028102451160986575,245
880 +qrefa,3,2026-05,0.0273192368213184,245
881 +qrefa,3,2026-06,0.03393100042501999,245
882 +qrefa,6,2024-03,0.038958427729670855,245
883 +qrefa,6,2024-04,0.04061806998567463,245
884 +qrefa,6,2024-05,0.04816150140361565,245
885 +qrefa,6,2024-06,0.037730182332923516,245
886 +qrefa,6,2024-07,0.03594755073164713,245
887 +qrefa,6,2024-08,0.041491948638090394,245
888 +qrefa,6,2024-09,0.045424662405665,245
889 +qrefa,6,2024-10,0.04630927852775845,245
890 +qrefa,6,2024-11,0.057864295935088274,245
891 +qrefa,6,2024-12,0.03245303414901806,245
892 +qrefa,6,2025-01,0.036336194500289784,245
893 +qrefa,6,2025-02,0.03406760422913937,245
894 +qrefa,6,2025-03,0.039721545246228895,245
895 +qrefa,6,2025-04,0.046458986391825885,245
896 +qrefa,6,2025-05,0.047368901075289384,245
897 +qrefa,6,2025-06,0.0523831502089466,245
898 +qrefa,6,2025-07,0.04627792199536157,245
899 +qrefa,6,2025-08,0.06063315321231555,245
900 +qrefa,6,2025-09,0.07008917295729244,245
901 +qrefa,6,2025-10,0.05784926656291389,245
902 +qrefa,6,2025-11,0.05325466010571232,245
903 +qrefa,6,2025-12,0.03628753922331905,245
904 +qrefa,6,2026-01,0.03657361064060887,245
905 +qrefa,6,2026-02,0.037106847306142325,245
906 +qrefa,6,2026-03,0.03963779992584501,245
907 +qrefa,12,2024-09,0.05078963467507474,245
908 +qrefa,12,2024-10,0.05170709061940044,245
909 +qrefa,12,2024-11,0.05540028092097566,245
910 +qrefa,12,2024-12,0.05832148266767168,245
911 +qrefa,12,2025-01,0.06562810420298205,245
912 +qrefa,12,2025-02,0.06505463450394113,245
913 +qrefa,12,2025-03,0.100526526478321,245
914 +qrefa,12,2025-04,0.09645214674707585,245
915 +qrefa,12,2025-05,0.10037355638185332,245
916 +qrefa,12,2025-06,0.0669392720279462,245
917 +qrefa,12,2025-07,0.07810337503147693,245
918 +qrefa,12,2025-08,0.09458174460591103,245
919 +qrefa,12,2025-09,0.1059401753939132,245
920 +raref,1,2023-12,0.021899676050996308,245
921 +raref,1,2024-01,0.03480253404983244,245
922 +raref,1,2024-02,0.03667368636887359,245
923 +raref,1,2024-03,0.026862676793701665,245
924 +raref,1,2024-04,0.028808983491914738,245
925 +raref,1,2024-05,0.020013016260454566,245
926 +raref,1,2024-06,0.023061476070679696,245
927 +raref,1,2024-07,0.023732214741034815,245
928 +raref,1,2024-08,0.023420466097675473,245
929 +raref,1,2024-09,0.022807072620575113,245
930 +raref,1,2024-10,0.021591981996587413,245
931 +raref,1,2024-11,0.033361922891405986,245
932 +raref,1,2024-12,0.017084745191769554,245
933 +raref,1,2025-01,0.024502645986833518,245
934 +raref,1,2025-02,0.02230726582854571,245
935 +raref,1,2025-03,0.016244215742752928,245
936 +raref,1,2025-04,0.025795216537696366,245
937 +raref,1,2025-05,0.02005307960143389,245
938 +raref,1,2025-06,0.024282438758129878,245
939 +raref,1,2025-07,0.018312294122577105,245
940 +raref,1,2025-08,0.021289508049390917,245
941 +raref,1,2025-09,0.02231504968986699,245
942 +raref,1,2025-10,0.027252650953801874,245
943 +raref,1,2025-11,0.021813365625798723,245
944 +raref,1,2025-12,0.02198786275064947,245
945 +raref,1,2026-01,0.022505333810943336,245
946 +raref,1,2026-02,0.02230972018481538,245
947 +raref,1,2026-03,0.015959472055352336,245
948 +raref,1,2026-04,0.02401811609973121,245
949 +raref,1,2026-05,0.02734000484137642,245
950 +raref,1,2026-06,0.026124279102741385,245
951 +raref,1,2026-07,0.02313939771432108,245
952 +raref,1,2026-08,0.02646432801761121,245
953 +raref,3,2023-12,0.032924285476187275,245
954 +raref,3,2024-01,0.03476602293177299,245
955 +raref,3,2024-02,0.03553576146327189,245
956 +raref,3,2024-03,0.029717163409465598,245
957 +raref,3,2024-04,0.03155971723749734,245
958 +raref,3,2024-05,0.02843303759012783,245
959 +raref,3,2024-06,0.03989064771741639,245
960 +raref,3,2024-07,0.02623957941649054,245
961 +raref,3,2024-08,0.02623939973265373,245
962 +raref,3,2024-09,0.032794570598386225,245
963 +raref,3,2024-10,0.02817478369988225,245
964 +raref,3,2024-11,0.036051628893470335,245
965 +raref,3,2024-12,0.04025795901022001,245
966 +raref,3,2025-01,0.04095625640248235,245
967 +raref,3,2025-02,0.030826081571597077,245
968 +raref,3,2025-03,0.031038737151267818,245
969 +raref,3,2025-04,0.04183556681632761,245
970 +raref,3,2025-05,0.03540447744332033,245
971 +raref,3,2025-06,0.037080304613197654,245
972 +raref,3,2025-07,0.034500251960894075,245
973 +raref,3,2025-08,0.041385451261106,245
974 +raref,3,2025-09,0.03555151604491706,245
975 +raref,3,2025-10,0.034042090431202224,245
976 +raref,3,2025-11,0.033327058160727265,245
977 +raref,3,2025-12,0.03420201212737148,245
978 +raref,3,2026-01,0.035228866122470205,245
979 +raref,3,2026-02,0.035267661756057105,245
980 +raref,3,2026-03,0.030579897618193925,245
981 +raref,3,2026-04,0.05053769121979049,245
982 +raref,3,2026-05,0.05563111714081242,245
983 +raref,3,2026-06,0.05029498549793425,245
984 +raref,6,2024-03,0.05128505473530172,245
985 +raref,6,2024-04,0.05437776123675471,245
986 +raref,6,2024-05,0.06997212480455803,245
987 +raref,6,2024-06,0.04452352798496497,245
988 +raref,6,2024-07,0.0395824204304501,245
989 +raref,6,2024-08,0.04967640195764848,245
990 +raref,6,2024-09,0.041951083536621955,245
991 +raref,6,2024-10,0.04145147658351498,245
992 +raref,6,2024-11,0.047280852398557074,245
993 +raref,6,2024-12,0.03324863440550011,245
994 +raref,6,2025-01,0.0430448655370721,245
995 +raref,6,2025-02,0.03770022472365297,245
996 +raref,6,2025-03,0.03993266013808593,245
997 +raref,6,2025-04,0.046516503641738594,245
998 +raref,6,2025-05,0.04755026469100841,245
999 +raref,6,2025-06,0.049219720443779945,245
1000 +raref,6,2025-07,0.04615604205051957,245
1001 +raref,6,2025-08,0.05876483247510286,245
1002 +raref,6,2025-09,0.07411566412252278,245
1003 +raref,6,2025-10,0.059118429236316786,245
1004 +raref,6,2025-11,0.05240305523755517,245
1005 +raref,6,2025-12,0.03616176449387308,245
1006 +raref,6,2026-01,0.03563944530712796,245
1007 +raref,6,2026-02,0.03673335522129068,245
1008 +raref,6,2026-03,0.03719484745200609,245
1009 +raref,12,2024-09,0.050561593319018036,245
1010 +raref,12,2024-10,0.0590951422955216,245
1011 +raref,12,2024-11,0.07135298406200902,245
1012 +raref,12,2024-12,0.08258659874752072,245
1013 +raref,12,2025-01,0.07489223680899441,245
1014 +raref,12,2025-02,0.07416155430002828,245
1015 +raref,12,2025-03,0.09216061282590823,245
1016 +raref,12,2025-04,0.10480700215852043,245
1017 +raref,12,2025-05,0.1116269538301274,245
1018 +raref,12,2025-06,0.07556121764668594,245
1019 +raref,12,2025-07,0.11265246806146931,245
1020 +raref,12,2025-08,0.12570451973951194,245
1021 +raref,12,2025-09,0.10317081995771278,245
1022 +ridge_panel,1,2023-12,0.02162602557085507,245
1023 +ridge_panel,1,2024-01,0.03511272131049051,245
1024 +ridge_panel,1,2024-02,0.03437221140131119,245
1025 +ridge_panel,1,2024-03,0.02737648223001424,245
1026 +ridge_panel,1,2024-04,0.027203601659493752,245
1027 +ridge_panel,1,2024-05,0.022269357263730923,245
1028 +ridge_panel,1,2024-06,0.0238490690638487,245
1029 +ridge_panel,1,2024-07,0.022672901895826898,245
1030 +ridge_panel,1,2024-08,0.02294141273788814,245
1031 +ridge_panel,1,2024-09,0.023077520483771888,245
1032 +ridge_panel,1,2024-10,0.02217692023817122,245
1033 +ridge_panel,1,2024-11,0.03414503516384496,245
1034 +ridge_panel,1,2024-12,0.02134470790299091,245
1035 +ridge_panel,1,2025-01,0.02651114712069882,245
1036 +ridge_panel,1,2025-02,0.02435062580278052,245
1037 +ridge_panel,1,2025-03,0.01828730024242109,245
1038 +ridge_panel,1,2025-04,0.022691211885697695,245
1039 +ridge_panel,1,2025-05,0.019259147425690962,245
1040 +ridge_panel,1,2025-06,0.024071318325532137,245
1041 +ridge_panel,1,2025-07,0.017232100627688984,245
1042 +ridge_panel,1,2025-08,0.023867000556504415,245
1043 +ridge_panel,1,2025-09,0.020614707903342813,245
1044 +ridge_panel,1,2025-10,0.02422707639853073,245
1045 +ridge_panel,1,2025-11,0.025387107899272083,245
1046 +ridge_panel,1,2025-12,0.0210676737032658,245
1047 +ridge_panel,1,2026-01,0.024567813930184097,245
1048 +ridge_panel,1,2026-02,0.02322444934305008,245
1049 +ridge_panel,1,2026-03,0.0163349635776932,245
1050 +ridge_panel,1,2026-04,0.020329978912071896,245
1051 +ridge_panel,1,2026-05,0.022155565433577478,245
1052 +ridge_panel,1,2026-06,0.026735782118110892,245
1053 +ridge_panel,1,2026-07,0.02396252660338258,245
1054 +ridge_panel,1,2026-08,0.027228071564313176,245
1055 +ridge_panel,3,2023-12,0.03276907119091106,245
1056 +ridge_panel,3,2024-01,0.03512574986627864,245
1057 +ridge_panel,3,2024-02,0.03525303604329192,245
1058 +ridge_panel,3,2024-03,0.03556573400723158,245
1059 +ridge_panel,3,2024-04,0.029775347633290865,245
1060 +ridge_panel,3,2024-05,0.02641648483543917,245
1061 +ridge_panel,3,2024-06,0.03796257787051972,245
1062 +ridge_panel,3,2024-07,0.025654660333823694,245
1063 +ridge_panel,3,2024-08,0.02650016871736681,245
1064 +ridge_panel,3,2024-09,0.03257872387892113,245
1065 +ridge_panel,3,2024-10,0.028528389247987437,245
1066 +ridge_panel,3,2024-11,0.03582924305223596,245
1067 +ridge_panel,3,2024-12,0.03853079434737455,245
1068 +ridge_panel,3,2025-01,0.04515879080095392,245
1069 +ridge_panel,3,2025-02,0.03050228556762696,245
1070 +ridge_panel,3,2025-03,0.032218401619626615,245
1071 +ridge_panel,3,2025-04,0.04151232667084773,245
1072 +ridge_panel,3,2025-05,0.03582685309023473,245
1073 +ridge_panel,3,2025-06,0.03730247849744055,245
1074 +ridge_panel,3,2025-07,0.03320635981318571,245
1075 +ridge_panel,3,2025-08,0.041129446443028884,245
1076 +ridge_panel,3,2025-09,0.0382142053239262,245
1077 +ridge_panel,3,2025-10,0.03373905802042486,245
1078 +ridge_panel,3,2025-11,0.03743169705231548,245
1079 +ridge_panel,3,2025-12,0.02990172567876284,245
1080 +ridge_panel,3,2026-01,0.042281381520434744,245
1081 +ridge_panel,3,2026-02,0.03655763424282982,245
1082 +ridge_panel,3,2026-03,0.03127356941183833,245
1083 +ridge_panel,3,2026-04,0.035255838946383775,245
1084 +ridge_panel,3,2026-05,0.039391695541881475,245
1085 +ridge_panel,3,2026-06,0.048931964152692145,245
1086 +ridge_panel,6,2024-03,0.05083937426348769,245
1087 +ridge_panel,6,2024-04,0.053937393001823694,245
1088 +ridge_panel,6,2024-05,0.06942812984028682,245
1089 +ridge_panel,6,2024-06,0.03641194904805762,245
1090 +ridge_panel,6,2024-07,0.035071535894916704,245
1091 +ridge_panel,6,2024-08,0.04179043826222764,245
1092 +ridge_panel,6,2024-09,0.0399291637775856,245
1093 +ridge_panel,6,2024-10,0.03887948535929591,245
1094 +ridge_panel,6,2024-11,0.04526215284650358,245
1095 +ridge_panel,6,2024-12,0.03309390991456753,245
1096 +ridge_panel,6,2025-01,0.043107401440280066,245
1097 +ridge_panel,6,2025-02,0.03751190253128126,245
1098 +ridge_panel,6,2025-03,0.044062929218104695,245
1099 +ridge_panel,6,2025-04,0.0531496459031732,245
1100 +ridge_panel,6,2025-05,0.054124607099263006,245
1101 +ridge_panel,6,2025-06,0.05383733552889842,245
1102 +ridge_panel,6,2025-07,0.04817957959854961,245
1103 +ridge_panel,6,2025-08,0.0649990967124605,245
1104 +ridge_panel,6,2025-09,0.07193932492977985,245
1105 +ridge_panel,6,2025-10,0.05609973640364637,245
1106 +ridge_panel,6,2025-11,0.05199739547220837,245
1107 +ridge_panel,6,2025-12,0.03836357147082831,245
1108 +ridge_panel,6,2026-01,0.041024200031630396,245
1109 +ridge_panel,6,2026-02,0.045218433037099624,245
1110 +ridge_panel,6,2026-03,0.041462516950083426,245
1111 +ridge_panel,12,2024-09,0.050872428644086136,245
1112 +ridge_panel,12,2024-10,0.05999085831504393,245
1113 +ridge_panel,12,2024-11,0.07259067678841534,245
1114 +ridge_panel,12,2024-12,0.07792425053002446,245
1115 +ridge_panel,12,2025-01,0.08094841661784888,245
1116 +ridge_panel,12,2025-02,0.07599074108469016,245
1117 +ridge_panel,12,2025-03,0.11162595584220464,245
1118 +ridge_panel,12,2025-04,0.11000214995068364,245
1119 +ridge_panel,12,2025-05,0.11818235913713694,245
1120 +ridge_panel,12,2025-06,0.08724179054824754,245
1121 +ridge_panel,12,2025-07,0.10294512839129744,245
1122 +ridge_panel,12,2025-08,0.12159477408144259,245
1123 +ridge_panel,12,2025-09,0.11476223223801515,245
1124 +tft_lite,1,2023-12,0.019721600954876666,245
1125 +tft_lite,1,2024-01,0.03092800841775317,245
1126 +tft_lite,1,2024-02,0.030546325981323414,245
1127 +tft_lite,1,2024-03,0.039240304864742524,245
1128 +tft_lite,1,2024-04,0.04788677692575177,245
1129 +tft_lite,1,2024-05,0.053886330391326884,245
1130 +tft_lite,1,2024-06,0.02271251730869208,245
1131 +tft_lite,1,2024-07,0.03018638868765884,245
1132 +tft_lite,1,2024-08,0.027913064976494723,245
1133 +tft_lite,1,2024-09,0.024149053363881186,245
1134 +tft_lite,1,2024-10,0.02076365076314203,245
1135 +tft_lite,1,2024-11,0.023777071112646465,245
1136 +tft_lite,1,2024-12,0.03461624118247587,245
1137 +tft_lite,1,2025-01,0.03269134895742812,245
1138 +tft_lite,1,2025-02,0.031118505365808194,245
1139 +tft_lite,1,2025-03,0.02398079841573953,245
1140 +tft_lite,1,2025-04,0.023305363760982495,245
1141 +tft_lite,1,2025-05,0.021020352400495754,245
1142 +tft_lite,1,2025-06,0.028634843103398658,245
1143 +tft_lite,1,2025-07,0.01720164794169442,245
1144 +tft_lite,1,2025-08,0.023459087263269087,245
1145 +tft_lite,1,2025-09,0.02302359617734853,245
1146 +tft_lite,1,2025-10,0.021113309124859495,245
1147 +tft_lite,1,2025-11,0.025219914453140934,245
1148 +tft_lite,1,2025-12,0.021803733659511246,245
1149 +tft_lite,1,2026-01,0.03174852911005153,245
1150 +tft_lite,1,2026-02,0.029205161229059935,245
1151 +tft_lite,1,2026-03,0.020622719848394207,245
1152 +tft_lite,1,2026-04,0.02172462098634768,245
1153 +tft_lite,1,2026-05,0.024819222469797106,245
1154 +tft_lite,1,2026-06,0.02250299514407869,245
1155 +tft_lite,1,2026-07,0.020974311282795626,245
1156 +tft_lite,1,2026-08,0.026108208131523057,245
1157 +tft_lite,3,2023-12,0.030699696334136394,245
1158 +tft_lite,3,2024-01,0.02898857127160021,245
1159 +tft_lite,3,2024-02,0.04934864992643652,245
1160 +tft_lite,3,2024-03,0.08723278019935429,245
1161 +tft_lite,3,2024-04,0.07736138469590602,245
1162 +tft_lite,3,2024-05,0.10862958626121223,245
1163 +tft_lite,3,2024-06,0.031967758099165425,245
1164 +tft_lite,3,2024-07,0.026141284999856206,245
1165 +tft_lite,3,2024-08,0.032904383204391464,245
1166 +tft_lite,3,2024-09,0.0363450423028714,245
1167 +tft_lite,3,2024-10,0.03235789264816185,245
1168 +tft_lite,3,2024-11,0.0408502756287665,245
1169 +tft_lite,3,2024-12,0.054589002737104896,245
1170 +tft_lite,3,2025-01,0.04068045224865689,245
1171 +tft_lite,3,2025-02,0.035146292890026826,245
1172 +tft_lite,3,2025-03,0.03137090027160281,245
1173 +tft_lite,3,2025-04,0.03727795163345503,245
1174 +tft_lite,3,2025-05,0.034312468669678776,245
1175 +tft_lite,3,2025-06,0.03461472966967147,245
1176 +tft_lite,3,2025-07,0.03465220490583192,245
1177 +tft_lite,3,2025-08,0.04347620899854225,245
1178 +tft_lite,3,2025-09,0.0400188729980183,245
1179 +tft_lite,3,2025-10,0.032744880412412414,245
1180 +tft_lite,3,2025-11,0.03631855772002431,245
1181 +tft_lite,3,2025-12,0.03822171866637053,245
1182 +tft_lite,3,2026-01,0.04182508096264814,245
1183 +tft_lite,3,2026-02,0.03900848234513619,245
1184 +tft_lite,3,2026-03,0.03216610970554411,245
1185 +tft_lite,3,2026-04,0.02906945589892061,245
1186 +tft_lite,3,2026-05,0.027513503086526763,245
1187 +tft_lite,3,2026-06,0.0350264476657545,245
1188 +tft_lite,6,2024-03,0.04020333770400522,245
1189 +tft_lite,6,2024-04,0.043106688977698246,245
1190 +tft_lite,6,2024-05,0.0857224922262732,245
1191 +tft_lite,6,2024-06,0.04588956223903978,245
1192 +tft_lite,6,2024-07,0.03741948669050929,245
1193 +tft_lite,6,2024-08,0.03871906466805445,245
1194 +tft_lite,6,2024-09,0.06969443569590836,245
1195 +tft_lite,6,2024-10,0.07307876019324322,245
1196 +tft_lite,6,2024-11,0.08388190330160339,245
1197 +tft_lite,6,2024-12,0.034994830595785203,245
1198 +tft_lite,6,2025-01,0.04518691593216601,245
1199 +tft_lite,6,2025-02,0.04271263261857893,245
1200 +tft_lite,6,2025-03,0.05752178249156926,245
1201 +tft_lite,6,2025-04,0.06070898780990156,245
1202 +tft_lite,6,2025-05,0.05602149608296598,245
1203 +tft_lite,6,2025-06,0.06100960212693658,245
1204 +tft_lite,6,2025-07,0.046063270849875756,245
1205 +tft_lite,6,2025-08,0.06059043894455891,245
1206 +tft_lite,6,2025-09,0.06230782611500081,245
1207 +tft_lite,6,2025-10,0.04495454384479627,245
1208 +tft_lite,6,2025-11,0.04554968608442595,245
1209 +tft_lite,6,2025-12,0.04236251957959577,245
1210 +tft_lite,6,2026-01,0.037738122028000746,245
1211 +tft_lite,6,2026-02,0.038804308373438214,245
1212 +tft_lite,6,2026-03,0.044131646260978936,245
1213 +tft_lite,12,2024-09,0.05560201334112783,245
1214 +tft_lite,12,2024-10,0.06348072354850313,245
1215 +tft_lite,12,2024-11,0.07371869039905461,245
1216 +tft_lite,12,2024-12,0.05171534252719428,245
1217 +tft_lite,12,2025-01,0.04649281499928854,245
1218 +tft_lite,12,2025-02,0.044983569125616234,245
1219 +tft_lite,12,2025-03,0.10458765494723107,245
1220 +tft_lite,12,2025-04,0.09292713676795472,245
1221 +tft_lite,12,2025-05,0.08705076830645188,245
1222 +tft_lite,12,2025-06,0.05901349994137359,245
1223 +tft_lite,12,2025-07,0.06361482001392806,245
1224 +tft_lite,12,2025-08,0.07803725668967466,245
1225 +tft_lite,12,2025-09,0.08016674542911036,245
added results/extra/error_by_regime_b.csv +121 −0
@@ -0,0 +1,121 @@
1 +model,h,regime,mae,n,origins,mae_nc,mase
2 +lightgbm_panel,1,falling,0.024656771704544254,245,1,0.03358159931818455,0.7342345869510905
3 +tft_lite,1,falling,0.03092800841775317,245,1,0.03358159931818455,0.9209808063252528
4 +momentum,1,falling,0.03285927324109651,245,1,0.03358159931818455,0.9784904205948018
5 +qanss,1,falling,0.03328320120781117,245,1,0.03358159931818455,0.9911142376649167
6 +no_change,1,falling,0.03358159931818455,245,1,0.03358159931818455,1.0
7 +bhpf,1,falling,0.03474119842192404,245,1,0.03358159931818455,1.034530788505703
8 +raref,1,falling,0.03480253404983244,245,1,0.03358159931818455,1.0363572538663084
9 +ridge_panel,1,falling,0.03511272131049051,245,1,0.03358159931818455,1.0455940760235576
10 +qrefa,1,falling,0.035955394090373634,245,1,0.03358159931818455,1.0706873651161595
11 +ar2_cell,1,falling,0.03603963369061085,245,1,0.03358159931818455,1.0731958698314663
12 +mean_growth,1,falling,0.03804824282492823,245,1,0.03358159931818455,1.133008659427515
13 +dsgfn,1,falling,0.04222133406145138,245,1,0.03358159931818455,1.2572758569776747
14 +lightgbm_panel,1,flat,0.021209815581500566,6370,26,0.022535621825909045,0.9411684197289729
15 +qanss,1,flat,0.02204730639749143,6370,26,0.022535621825909045,0.9783313976339362
16 +momentum,1,flat,0.022519691605172275,6370,26,0.022535621825909045,0.999293109333311
17 +no_change,1,flat,0.022535621825909045,6370,26,0.022535621825909045,1.0
18 +ar2_cell,1,flat,0.022638026061711992,6370,26,0.022535621825909045,1.0045441051768633
19 +qrefa,1,flat,0.022706952356216663,6370,26,0.022535621825909045,1.007602653773265
20 +raref,1,flat,0.022714485186326586,6370,26,0.022535621825909045,1.0079369170196095
21 +ridge_panel,1,flat,0.022920855102431147,6370,26,0.022535621825909045,1.0170944152106423
22 +mean_growth,1,flat,0.023015505104033454,6370,26,0.022535621825909045,1.0212944325136257
23 +bhpf,1,flat,0.023017366078716916,6370,26,0.022535621825909045,1.0213770117607321
24 +dsgfn,1,flat,0.024346713280506024,6370,26,0.022535621825909045,1.0803657191529004
25 +tft_lite,1,flat,0.02555289066196417,6370,26,0.022535621825909045,1.133888865342344
26 +lightgbm_panel,1,rising,0.022433191188756446,1470,6,0.03267335719793239,0.6865897205744148
27 +qrefa,1,rising,0.02551279734388946,1470,6,0.03267335719793239,0.7808440739448697
28 +qanss,1,rising,0.02552321153141124,1470,6,0.03267335719793239,0.7811628103226067
29 +bhpf,1,rising,0.026268046729047784,1470,6,0.03267335719793239,0.8039592188191196
30 +ridge_panel,1,rising,0.02653643038705791,1470,6,0.03267335719793239,0.8121733627280017
31 +dsgfn,1,rising,0.026639929311170308,1470,6,0.03267335719793239,0.815341048359001
32 +raref,1,rising,0.027126258200924572,1470,6,0.03267335719793239,0.8302256188917481
33 +mean_growth,1,rising,0.02941241645279237,1470,6,0.03267335719793239,0.9001957244434502
34 +ar2_cell,1,rising,0.02956169191657793,1470,6,0.03267335719793239,0.9047644457683285
35 +no_change,1,rising,0.03267335719793239,1470,6,0.03267335719793239,1.0
36 +momentum,1,rising,0.0333559722402465,1470,6,0.03267335719793239,1.0208920998897935
37 +tft_lite,1,rising,0.03355040635461139,1470,6,0.03267335719793239,1.026842945809514
38 +dsgfn,3,falling,0.030110394728180768,245,1,0.04546304561485683,0.6623048306807896
39 +qrefa,3,falling,0.03393100042501999,245,1,0.04546304561485683,0.7463424406817941
40 +tft_lite,3,falling,0.0350264476657545,245,1,0.04546304561485683,0.7704377740656301
41 +lightgbm_panel,3,falling,0.038063125161608855,245,1,0.04546304561485683,0.8372321881834119
42 +momentum,3,falling,0.03869248089352037,245,1,0.04546304561485683,0.8510754255512544
43 +no_change,3,falling,0.04546304561485683,245,1,0.04546304561485683,1.0
44 +ridge_panel,3,falling,0.048931964152692145,245,1,0.04546304561485683,1.0763019391006596
45 +bhpf,3,falling,0.049791774432256304,245,1,0.04546304561485683,1.0952142285862365
46 +raref,3,falling,0.05029498549793425,245,1,0.04546304561485683,1.106282802168854
47 +qanss,3,falling,0.051767526857700336,245,1,0.04546304561485683,1.138672655066982
48 +ar2_cell,3,falling,0.05660438315389294,245,1,0.04546304561485683,1.2450635981016467
49 +mean_growth,3,falling,0.06379584148233332,245,1,0.04546304561485683,1.403246100641474
50 +momentum,3,flat,0.03002238001950596,3185,13,0.03097751876586329,0.969166712364004
51 +no_change,3,flat,0.03097751876586329,3185,13,0.03097751876586329,1.0
52 +lightgbm_panel,3,flat,0.03107451160196714,3185,13,0.03097751876586329,1.003131071821373
53 +qanss,3,flat,0.03246282209439642,3185,13,0.03097751876586329,1.047947782382426
54 +ridge_panel,3,flat,0.03442066952254291,3185,13,0.03097751876586329,1.1111499853394946
55 +tft_lite,3,flat,0.034608122667249254,3185,13,0.03097751876586329,1.1172012493585133
56 +qrefa,3,flat,0.03506004617936253,3185,13,0.03097751876586329,1.1317900069516904
57 +bhpf,3,flat,0.035313522620699034,3185,13,0.03097751876586329,1.1399726003754036
58 +ar2_cell,3,flat,0.0353622693962597,3185,13,0.03097751876586329,1.141546218195769
59 +raref,3,flat,0.03545449228239663,3185,13,0.03097751876586329,1.1445233089961644
60 +mean_growth,3,flat,0.03797299984437391,3185,13,0.03097751876586329,1.225824448090385
61 +dsgfn,3,flat,0.039956925253002804,3185,13,0.03097751876586329,1.2898684867244652
62 +lightgbm_panel,3,rising,0.0316198375845014,4165,17,0.05003598741380172,0.6319419125878889
63 +qrefa,3,rising,0.03357263080860618,4165,17,0.05003598741380172,0.6709696868967084
64 +dsgfn,3,rising,0.03489988455218414,4165,17,0.05003598741380172,0.6974956697378475
65 +ridge_panel,3,rising,0.03493676620431513,4165,17,0.05003598741380172,0.6982327722522034
66 +bhpf,3,rising,0.03520307886881144,4165,17,0.05003598741380172,0.7035551947377212
67 +raref,3,rising,0.03523948207926007,4165,17,0.05003598741380172,0.704282735300628
68 +qanss,3,rising,0.03563536295720812,4165,17,0.05003598741380172,0.712194658266674
69 +ar2_cell,3,rising,0.038182347462657334,4165,17,0.05003598741380172,0.7630977109912149
70 +mean_growth,3,rising,0.04012083997376871,4165,17,0.05003598741380172,0.8018396767503772
71 +tft_lite,3,rising,0.046819328512811204,4165,17,0.05003598741380172,0.9357130923711271
72 +no_change,3,rising,0.05003598741380172,4165,17,0.05003598741380172,1.0
73 +momentum,3,rising,0.05204544102484883,4165,17,0.05003598741380172,1.0401601670099716
74 +no_change,6,falling,0.03757682805414114,245,1,0.03757682805414114,1.0
75 +momentum,6,falling,0.037617485336846085,245,1,0.03757682805414114,1.001081977506094
76 +qanss,6,falling,0.03886405788868796,245,1,0.03757682805414114,1.034255947114327
77 +lightgbm_panel,6,falling,0.05165528938738342,245,1,0.03757682805414114,1.3746580555697212
78 +ar2_cell,6,falling,0.058052398867755664,245,1,0.03757682805414114,1.5448988611841605
79 +dsgfn,6,falling,0.05837598115459472,245,1,0.03757682805414114,1.5535100799483637
80 +raref,6,falling,0.05876483247510286,245,1,0.03757682805414114,1.5638582477061074
81 +mean_growth,6,falling,0.06005558287620146,245,1,0.03757682805414114,1.5982078846482908
82 +tft_lite,6,falling,0.06059043894455891,245,1,0.03757682805414114,1.6124415519388566
83 +qrefa,6,falling,0.06063315321231555,245,1,0.03757682805414114,1.6135782702295836
84 +ridge_panel,6,falling,0.0649990967124605,245,1,0.03757682805414114,1.7297653920870868
85 +bhpf,6,falling,0.06712974865512429,245,1,0.03757682805414114,1.7864666107102747
86 +no_change,6,flat,0.03567419099549375,1470,6,0.03567419099549375,1.0
87 +momentum,6,flat,0.038976361637879924,1470,6,0.03567419099549375,1.092564695939518
88 +lightgbm_panel,6,flat,0.04004966944387611,1470,6,0.03567419099549375,1.1226510910628655
89 +ar2_cell,6,flat,0.042987134203746606,1470,6,0.03567419099549375,1.2049925451477401
90 +qrefa,6,flat,0.04353327583037643,1470,6,0.03567419099549375,1.220301697545865
91 +ridge_panel,6,flat,0.04490257423865217,1470,6,0.03567419099549375,1.2586851442356217
92 +raref,6,flat,0.04611806292639525,1470,6,0.03567419099549375,1.2927570784217848
93 +qanss,6,flat,0.047164662726512104,1470,6,0.03567419099549375,1.3220948088905446
94 +tft_lite,6,flat,0.04752041377623031,1470,6,0.03567419099549375,1.3320670336219518
95 +bhpf,6,flat,0.0475496940140576,1470,6,0.03567419099549375,1.3328878017181642
96 +mean_growth,6,flat,0.04941592905129206,1470,6,0.03567419099549375,1.3852011124102048
97 +dsgfn,6,flat,0.049558686065039444,1470,6,0.03567419099549375,1.3892028012996718
98 +lightgbm_panel,6,rising,0.0396734682500034,4410,18,0.060651993078745074,0.6541164805333759
99 +ar2_cell,6,rising,0.04267100811795142,4410,18,0.060651993078745074,0.7035384321592076
100 +mean_growth,6,rising,0.043994480488633594,4410,18,0.060651993078745074,0.7253591886340014
101 +qrefa,6,rising,0.04428736095698938,4410,18,0.060651993078745074,0.73018805663139
102 +qanss,6,rising,0.04478778283590437,4410,18,0.060651993078745074,0.7384387645391299
103 +bhpf,6,rising,0.04626222154749114,4410,18,0.060651993078745074,0.7627485792169838
104 +raref,6,rising,0.046562655711780594,4410,18,0.060651993078745074,0.7677019888089719
105 +dsgfn,6,rising,0.04670251092253517,4410,18,0.060651993078745074,0.7700078522052992
106 +ridge_panel,6,rising,0.047517037021759245,4410,18,0.060651993078745074,0.7834373548131784
107 +tft_lite,6,rising,0.05292563443516496,4410,18,0.060651993078745074,0.8726116282188962
108 +no_change,6,rising,0.060651993078745074,4410,18,0.060651993078745074,1.0
109 +momentum,6,rising,0.0645579872747506,4410,18,0.060651993078745074,1.0644000963156204
110 +ar2_cell,12,rising,0.0474118212543349,3185,13,0.07523138744350522,0.63021330412042
111 +mean_growth,12,rising,0.051112625070748145,3185,13,0.07523138744350522,0.6794055886465077
112 +lightgbm_panel,12,rising,0.05685686681072919,3185,13,0.07523138744350522,0.7557599127548417
113 +tft_lite,12,rising,0.06933777200280838,3185,13,0.07523138744350522,0.9216601522187449
114 +no_change,12,rising,0.07523138744350522,3185,13,0.07523138744350522,1.0
115 +momentum,12,rising,0.07536892469987537,3185,13,0.07523138744350522,1.0018281898160317
116 +qrefa,12,rising,0.0761398480197341,3185,13,0.07523138744350522,1.0120755525997853
117 +bhpf,12,rising,0.08090172565325157,3185,13,0.07523138744350522,1.0753719744169876
118 +qanss,12,rising,0.08104369779623316,3185,13,0.07523138744350522,1.0772591141841255
119 +dsgfn,12,rising,0.08330804640333955,3185,13,0.07523138744350522,1.1073575702149516
120 +raref,12,rising,0.08756413105792525,3185,13,0.07523138744350522,1.1639308277237512
121 +ridge_panel,12,rising,0.09112859708993361,3185,13,0.07523138744350522,1.2113108662041672
added results/extra/error_by_year_b.csv +157 −0
@@ -0,0 +1,157 @@
1 +model,h,year,mae,n,mae_nc,mase
2 +momentum,1,2023,0.01875510620294524,245,0.019399220851790355,0.9667968804641106
3 +ar2_cell,1,2023,0.019029691254125517,245,0.019399220851790355,0.9809513175561
4 +mean_growth,1,2023,0.019128884539905824,245,0.019399220851790355,0.9860645788843843
5 +qrefa,1,2023,0.019269343680867225,245,0.019399220851790355,0.9933050315826915
6 +no_change,1,2023,0.019399220851790355,245,0.019399220851790355,1.0
7 +lightgbm_panel,1,2023,0.019688002423057,245,0.019399220851790355,1.014886245868993
8 +tft_lite,1,2023,0.019721600954876666,245,0.019399220851790355,1.0166181985116458
9 +dsgfn,1,2023,0.020547377566828343,245,0.019399220851790355,1.0591857128598041
10 +qanss,1,2023,0.020949606768917033,245,0.019399220851790355,1.0799200096216026
11 +ridge_panel,1,2023,0.02162602557085507,245,0.019399220851790355,1.114788358567463
12 +raref,1,2023,0.021899676050996308,245,0.019399220851790355,1.1288946199597076
13 +bhpf,1,2023,0.021940981879162384,245,0.019399220851790355,1.13102387187563
14 +lightgbm_panel,1,2024,0.022929780614466187,2940,0.026956847113989272,0.8506106265879574
15 +qanss,1,2024,0.025465507935211424,2940,0.026956847113989272,0.9446767950097578
16 +raref,1,2024,0.02601839804787542,2940,0.026956847113989272,0.9651869871077452
17 +qrefa,1,2024,0.026030149385737306,2940,0.026956847113989272,0.9656229185730308
18 +ridge_panel,1,2024,0.02637849511261528,2940,0.026956847113989272,0.9785452653669628
19 +bhpf,1,2024,0.02655415346138175,2940,0.026956847113989272,0.9850615448125406
20 +ar2_cell,1,2024,0.026697723981902538,2940,0.026956847113989272,0.9903874837071631
21 +mean_growth,1,2024,0.026853224718508848,2940,0.026956847113989272,0.9961559897920462
22 +no_change,1,2024,0.026956847113989272,2940,0.026956847113989272,1.0
23 +momentum,1,2024,0.02742700824496941,2940,0.026956847113989272,1.0174412507884183
24 +dsgfn,1,2024,0.02864047278652051,2940,0.026956847113989272,1.0624563275301404
25 +tft_lite,1,2024,0.03221714449799074,2940,0.026956847113989272,1.1951377088632755
26 +lightgbm_panel,1,2025,0.02081433039271779,2940,0.023435383437177982,0.8881583033840128
27 +qanss,1,2025,0.021567640907056,2940,0.023435383437177982,0.9203024548273877
28 +qrefa,1,2025,0.021733023804899436,2940,0.023435383437177982,0.9273594290939607
29 +raref,1,2025,0.022179632803956448,2940,0.023435383437177982,0.9464164673649245
30 +ridge_panel,1,2025,0.02229720149095217,2940,0.023435383437177982,0.9514331843864694
31 +bhpf,1,2025,0.022298837349215568,2940,0.023435383437177982,0.951502987309378
32 +ar2_cell,1,2025,0.022531312254341008,2940,0.023435383437177982,0.9614228124212061
33 +mean_growth,1,2025,0.02303832068262835,2940,0.023435383437177982,0.9830571257511524
34 +no_change,1,2025,0.023435383437177982,2940,0.023435383437177982,1.0
35 +momentum,1,2025,0.023547562679703885,2940,0.023435383437177982,1.0047867466229694
36 +tft_lite,1,2025,0.024381041718639706,2940,0.023435383437177982,1.040351730706549
37 +dsgfn,1,2025,0.02458781798661421,2940,0.023435383437177982,1.0491749816052935
38 +lightgbm_panel,1,2026,0.020761723680854126,1960,0.02393024031420208,0.8675936141156297
39 +qanss,1,2026,0.0217881304818662,1960,0.02393024031420208,0.9104852352416793
40 +dsgfn,1,2026,0.021973573547148115,1960,0.02393024031420208,0.9182345542141203
41 +bhpf,1,2026,0.022828015654565048,1960,0.02393024031420208,0.9539400923198049
42 +ridge_panel,1,2026,0.023067393935297924,1960,0.02393024031420208,0.9639432631024573
43 +qrefa,1,2026,0.023373189680854427,1960,0.02393024031420208,0.9767218955583553
44 +raref,1,2026,0.023482581478361547,1960,0.02393024031420208,0.9812931742446875
45 +momentum,1,2026,0.02350714138975373,1960,0.02393024031420208,0.9823194870217309
46 +no_change,1,2026,0.02393024031420208,1960,0.02393024031420208,1.0
47 +ar2_cell,1,2026,0.02402754208819278,1960,0.02393024031420208,1.00406605920848
48 +mean_growth,1,2026,0.024387305611625013,1960,0.02393024031420208,1.0190999041974382
49 +tft_lite,1,2026,0.024713221025255982,1960,0.02393024031420208,1.032719299964122
50 +dsgfn,3,2023,0.027729231741380242,245,0.03746327381343818,0.7401710773988387
51 +ar2_cell,3,2023,0.028669378127765863,245,0.03746327381343818,0.7652662250110687
52 +qrefa,3,2023,0.02883588293892151,245,0.03746327381343818,0.7697107060776412
53 +tft_lite,3,2023,0.030699696334136394,245,0.03746327381343818,0.8194611204300123
54 +qanss,3,2023,0.03164254997007272,245,0.03746327381343818,0.8446285321365173
55 +lightgbm_panel,3,2023,0.03167031245660157,245,0.03746327381343818,0.8453695908775953
56 +ridge_panel,3,2023,0.03276907119091106,245,0.03746327381343818,0.8746985475454284
57 +raref,3,2023,0.032924285476187275,245,0.03746327381343818,0.8788416527649338
58 +momentum,3,2023,0.0357234528248493,245,0.03746327381343818,0.9535592912340511
59 +bhpf,3,2023,0.035859985056200055,245,0.03746327381343818,0.9572037199625885
60 +mean_growth,3,2023,0.03628818839538027,245,0.03746327381343818,0.9686336697665646
61 +no_change,3,2023,0.03746327381343818,245,0.03746327381343818,1.0
62 +ridge_panel,3,2024,0.03231007581948012,2940,0.04398505126156204,0.734569470599105
63 +raref,3,2024,0.03247168930838793,2940,0.04398505126156204,0.7382437527534387
64 +bhpf,3,2024,0.033248823912262034,2940,0.04398505126156204,0.7559119054913491
65 +lightgbm_panel,3,2024,0.03351291021047068,2940,0.04398505126156204,0.7619159066379713
66 +qrefa,3,2024,0.03390558453505283,2940,0.04398505126156204,0.7708433561536503
67 +qanss,3,2024,0.03482635491060987,2940,0.04398505126156204,0.7917770677021846
68 +ar2_cell,3,2024,0.037802365246972204,2940,0.04398505126156204,0.8594366531978376
69 +dsgfn,3,2024,0.03914566896731361,2940,0.04398505126156204,0.8899766589910173
70 +mean_growth,3,2024,0.04147218036626793,2940,0.04398505126156204,0.9428698882183622
71 +no_change,3,2024,0.04398505126156204,2940,0.04398505126156204,1.0
72 +momentum,3,2024,0.04529206381583636,2940,0.04398505126156204,1.0297149262485117
73 +tft_lite,3,2024,0.050559717664568925,2940,0.04398505126156204,1.1494750196813435
74 +lightgbm_panel,3,2025,0.030723064419900307,2940,0.0393671040474294,0.7804248029747178
75 +qanss,3,2025,0.03404144656337354,2940,0.0393671040474294,0.8647180783824098
76 +qrefa,3,2025,0.03569301263253824,2940,0.0393671040474294,0.9066710263862787
77 +raref,3,2025,0.035845816998700916,2940,0.0393671040474294,0.910552550563891
78 +ridge_panel,3,2025,0.036345302381531205,2940,0.0393671040474294,0.9232404379489654
79 +tft_lite,3,2025,0.0365696032570243,2940,0.0393671040474294,0.9289381106866617
80 +bhpf,3,2025,0.03660760173834244,2940,0.0393671040474294,0.9299033450425431
81 +dsgfn,3,2025,0.037552740752921435,2940,0.0393671040474294,0.9539116900160595
82 +ar2_cell,3,2025,0.03784663473427941,2940,0.0393671040474294,0.9613771612126173
83 +mean_growth,3,2025,0.03814944088616681,2940,0.0393671040474294,0.9690690186457315
84 +no_change,3,2025,0.0393671040474294,2940,0.0393671040474294,1.0
85 +momentum,3,2025,0.03993135853251023,2940,0.0393671040474294,1.014333146893432
86 +lightgbm_panel,3,2026,0.02951116781710869,1470,0.04351557301406221,0.678174864147418
87 +dsgfn,3,2026,0.032456385336691145,1470,0.04351557301406221,0.7458567838737352
88 +qrefa,3,2026,0.03273787925883727,1470,0.04351557301406221,0.7523255926851269
89 +tft_lite,3,2026,0.034101513277421724,1470,0.04351557301406221,0.7836622826132084
90 +qanss,3,2026,0.03692153611658637,1470,0.04351557301406221,0.8484671936792616
91 +ar2_cell,3,2026,0.03815940237794308,1470,0.04351557301406221,0.8769137054822129
92 +bhpf,3,2026,0.03886380273461405,1470,0.04351557301406221,0.8931010220652519
93 +ridge_panel,3,2026,0.03894868063601005,1470,0.04351557301406221,0.8950515399032812
94 +mean_growth,3,2026,0.041291912598110846,1470,0.04351557301406221,0.9488996636851643
95 +momentum,3,2026,0.042558566260753244,1470,0.04351557301406221,0.9780077179955851
96 +raref,3,2026,0.04292336989254306,1470,0.04351557301406221,0.9863910071613264
97 +no_change,3,2026,0.04351557301406221,1470,0.04351557301406221,1.0
98 +lightgbm_panel,6,2024,0.03848086935682741,2450,0.056553237068663754,0.6804361934243677
99 +ar2_cell,6,2024,0.041130379880955394,2450,0.056553237068663754,0.7272860407798974
100 +qrefa,6,2024,0.0424958951839152,2450,0.056553237068663754,0.7514317019964583
101 +dsgfn,6,2024,0.043489544854635916,2450,0.056553237068663754,0.7690018663623687
102 +bhpf,6,2024,0.04367220046054736,2450,0.056553237068663754,0.7722316656696951
103 +ridge_panel,6,2024,0.04446435322087528,2450,0.056553237068663754,0.7862388702328245
104 +mean_growth,6,2024,0.04554067555532772,2450,0.056553237068663754,0.8052708901531984
105 +raref,6,2024,0.047334933807387215,2450,0.056553237068663754,0.8369977787463484
106 +qanss,6,2024,0.04963287809278727,2450,0.056553237068663754,0.877631072338544
107 +tft_lite,6,2024,0.055271056229212044,2450,0.056553237068663754,0.9773278965818534
108 +no_change,6,2024,0.056553237068663754,2450,0.056553237068663754,1.0
109 +momentum,6,2024,0.06316788784693615,2450,0.056553237068663754,1.1169632565902685
110 +qanss,6,2025,0.04102387237698231,2940,0.051973155992839706,0.7893280981942703
111 +lightgbm_panel,6,2025,0.042566219548988156,2940,0.051973155992839706,0.8190039403197386
112 +ar2_cell,6,2025,0.0452146289449501,2940,0.051973155992839706,0.8699611959523734
113 +mean_growth,6,2025,0.046622051206398916,2940,0.051973155992839706,0.897040988098202
114 +qrefa,6,2025,0.04839400797571957,2940,0.051973155992839706,0.9311346800334152
115 +raref,6,2025,0.04922366889926902,2940,0.051973155992839706,0.9470979385213882
116 +ridge_panel,6,2025,0.05144771052570614,2940,0.051973155992839706,0.9898900604149197
117 +bhpf,6,2025,0.05174755203617847,2940,0.051973155992839706,0.9956592215278919
118 +no_change,6,2025,0.051973155992839706,2940,0.051973155992839706,1.0
119 +tft_lite,6,2025,0.05208247520669765,2940,0.051973155992839706,1.002103378403132
120 +dsgfn,6,2025,0.05255637836514123,2940,0.051973155992839706,1.0112216077927205
121 +momentum,6,2025,0.053913692381642585,2940,0.051973155992839706,1.0373372821359979
122 +raref,6,2026,0.03652254932680825,735,0.051382535614600315,0.7107969447196839
123 +lightgbm_panel,6,2026,0.03682413546485643,735,0.051382535614600315,0.716666373591592
124 +qrefa,6,2026,0.037772752624198734,735,0.051382535614600315,0.7351282332097607
125 +tft_lite,6,2026,0.04022469222080597,735,0.051382535614600315,0.7828475519876086
126 +bhpf,6,2026,0.042485090518231745,735,0.051382535614600315,0.8268391197525805
127 +ridge_panel,6,2026,0.042568383339604485,735,0.051382535614600315,0.8284601534438232
128 +ar2_cell,6,2026,0.04339133468813524,735,0.051382535614600315,0.844476321947133
129 +dsgfn,6,2026,0.04360043507413684,735,0.051382535614600315,0.8485458055469689
130 +mean_growth,6,2026,0.0445268119830981,735,0.051382535614600315,0.8665748284023149
131 +qanss,6,2026,0.04647229194745964,735,0.051382535614600315,0.9044374979084249
132 +no_change,6,2026,0.051382535614600315,735,0.051382535614600315,1.0
133 +momentum,6,2026,0.05162541302018786,735,0.051382535614600315,1.004726847413862
134 +lightgbm_panel,12,2024,0.04724395318688856,980,0.09246246759531036,0.5109527618672892
135 +ar2_cell,12,2024,0.047899659764403864,980,0.09246246759531036,0.5180443590803897
136 +mean_growth,12,2024,0.052970913288024786,980,0.09246246759531036,0.5728909758267303
137 +qrefa,12,2024,0.05405462222078063,980,0.09246246759531036,0.5846115037440581
138 +bhpf,12,2024,0.05824048005540375,980,0.09246246759531036,0.6298823897963726
139 +dsgfn,12,2024,0.059599827066601725,980,0.09246246759531036,0.644583998422562
140 +tft_lite,12,2024,0.061129192453969965,980,0.09246246759531036,0.6611243896444572
141 +ridge_panel,12,2024,0.06534455356939246,980,0.09246246759531036,0.7067143595538943
142 +raref,12,2024,0.06589907960601733,980,0.09246246759531036,0.7127116690681927
143 +no_change,12,2024,0.09246246759531036,980,0.09246246759531036,1.0
144 +momentum,12,2024,0.09248651075829044,980,0.09246246759531036,1.00026003159558
145 +qanss,12,2024,0.11395765631915561,980,0.09246246759531036,1.2324747465958334
146 +ar2_cell,12,2025,0.04719500413874869,2205,0.06757312959825848,0.6984285679727497
147 +mean_growth,12,2025,0.050286719196402964,2205,0.06757312959825848,0.7441821844773484
148 +lightgbm_panel,12,2025,0.06112927286576948,2205,0.06757312959825848,0.9046387703100395
149 +qanss,12,2025,0.0664152717860454,2205,0.06757312959825848,0.982865114889648
150 +no_change,12,2025,0.06757312959825848,2205,0.06757312959825848,1.0
151 +momentum,12,2025,0.06776110867391313,2205,0.06757312959825848,1.0027818613222776
152 +tft_lite,12,2025,0.0729860295800699,2205,0.06757312959825848,1.0801043256985825
153 +qrefa,12,2025,0.08595550393038008,2205,0.06757312959825848,1.2720367465797433
154 +bhpf,12,2025,0.09097339036340617,2205,0.06757312959825848,1.3462953529645425
155 +dsgfn,12,2025,0.09384503277522302,2205,0.06757312959825848,1.3887921624047679
156 +raref,12,2025,0.09719304281432875,2205,0.06757312959825848,1.4383386324145278
157 +ridge_panel,12,2025,0.10258817198795189,2205,0.06757312959825848,1.5181799718004452
added results/extra/municipal_mase_b.csv +961 −0
@@ -0,0 +1,961 @@
1 +class,geo_id,model,mae,mean_n,n,mae_nc,mase
2 +condo,56083,no_change,0.020667224323352117,15.064516129032258,31,0.020667224323352117,1.0
3 +condo,97007,lightgbm_panel,0.03244539373107067,0.41935483870967744,31,0.026003932843309957,1.2477110261195707
4 +condo,39062,lightgbm_panel,0.017399207780333877,2.5483870967741935,31,0.019780115171822352,0.879631267522639
5 +condo,67050,qanss,0.013351365026590609,2.2580645161290325,31,0.019021983400938594,0.7018913193842771
6 +condo,39062,qanss,0.016424910917760584,2.5483870967741935,31,0.019780115171822352,0.8303748878650916
7 +plex,73005,no_change,0.11262191222002997,1.8064516129032258,31,0.11262191222002997,1.0
8 +house,36033,ridge_panel,0.03138416057569242,45.45161290322581,31,0.05185831818869241,0.6051904819106854
9 +condo,59020,qanss,0.018944605923236022,4.354838709677419,31,0.022315331790274066,0.8489502240559496
10 +plex,52007,qanss,0.02419550302279443,2.064516129032258,31,0.03415381944202661,0.7084274443701493
11 +house,64008,ar2_cell,0.04253045478741491,103.93548387096774,31,0.049997097642969016,0.8506584740403602
12 +house,67050,qanss,0.03691644154187834,42.193548387096776,31,0.04159016449971364,0.8876243214217757
13 +plex,81017,qanss,0.026210402025295638,44.61290322580645,31,0.034448956494260115,0.760847488360433
14 +condo,93042,qanss,0.011991382574568025,1.0,31,0.02357619042804361,0.5086225703498056
15 +house,49058,lightgbm_panel,0.025684234621614437,71.29032258064517,31,0.038576338909586866,0.6658028041959024
16 +plex,54048,lightgbm_panel,0.03917682154871061,9.35483870967742,31,0.0473858363588674,0.8267622682020971
17 +condo,89008,ar2_cell,0.016573731472251187,1.032258064516129,31,0.027446325447215727,0.60385975908234
18 +plex,58227,no_change,0.03785756266424333,36.87096774193548,31,0.03785756266424333,1.0
19 +plex,59015,qanss,0.035977699112770066,2.129032258064516,31,0.0411503183641954,0.8742994111091497
20 +house,54048,qanss,0.03837154991067152,38.67741935483871,31,0.0412589791459181,0.9300169491582722
21 +condo,75005,lightgbm_panel,0.01893455598767412,0.03225806451612903,31,0.02801200834396392,0.6759442505933057
22 +plex,66023,lightgbm_panel,0.028736429180160856,327.3225806451613,31,0.03683169795933435,0.7802091886148873
23 +condo,36033,ar2_cell,0.05219879441907849,1.6129032258064515,31,0.04732516642857713,1.102981740124604
24 +plex,25213,no_change,0.042253739630389246,21.096774193548388,31,0.042253739630389246,1.0
25 +house,52007,ar2_cell,0.041560625252370004,17.580645161290324,31,0.04669869629194173,0.8899739939751091
26 +house,66142,ar2_cell,0.039359343353724124,32.38709677419355,31,0.04282535405677127,0.9190663853367693
27 +condo,54048,ar2_cell,0.02494363471020134,11.838709677419354,31,0.026008798810985268,0.9590460094476168
28 +house,49058,ar2_cell,0.02860999596875165,71.29032258064517,31,0.038576338909586866,0.7416462209077489
29 +plex,77043,ridge_panel,0.03755254619015215,3.7419354838709675,31,0.03987415489031853,0.9417766042552523
30 +condo,81017,ridge_panel,0.03767393640881915,64.06451612903226,31,0.01714133948740538,2.1978408651494314
31 +plex,62037,lightgbm_panel,0.02954575895679766,1.8387096774193548,31,0.045379686247517696,0.6510789606531013
32 +plex,72015,ar2_cell,0.034128529820584924,2.3870967741935485,31,0.04335487778304856,0.7871900825408147
33 +plex,59015,lightgbm_panel,0.03341827857635609,2.129032258064516,31,0.0411503183641954,0.8121025524175068
34 +house,31084,ridge_panel,0.0374474847907572,24.93548387096774,31,0.053606686577799545,0.6985599592395914
35 +condo,97007,ar2_cell,0.03280254210633696,0.41935483870967744,31,0.026003932843309957,1.2614454245822313
36 +plex,66097,qanss,0.05846130827315418,0.3225806451612903,31,0.05119406630797862,1.1419547711146156
37 +house,81017,ar2_cell,0.03810212768845942,239.4516129032258,31,0.03579933680374744,1.0643249593515076
38 +house,65005,ridge_panel,0.03301220385004262,243.29032258064515,31,0.041379745530324814,0.7977865360687123
39 +plex,25213,lightgbm_panel,0.03134314784195227,21.096774193548388,31,0.042253739630389246,0.7417839963071579
40 +condo,58012,ridge_panel,0.024631146099245934,16.580645161290324,31,0.02034696210739908,1.210556444211833
41 +house,56083,ar2_cell,0.05089730170099319,83.19354838709677,31,0.05205309160046616,0.9777959413372747
42 +condo,58012,no_change,0.02034696210739908,16.580645161290324,31,0.02034696210739908,1.0
43 +condo,25213,no_change,0.02891749372381526,20.225806451612904,31,0.02891749372381526,1.0
44 +plex,23072,no_change,0.03536485260469175,1.1935483870967742,31,0.03536485260469175,1.0
45 +plex,67020,ridge_panel,0.05148911866947618,0.6774193548387096,31,0.049477669192032364,1.0406536829703315
46 +condo,74005,lightgbm_panel,0.015110680693318463,14.193548387096774,31,0.023803078624137133,0.6348204336054126
47 +house,72015,qanss,0.042099555153392906,19.612903225806452,31,0.04921084363839667,0.8554934652765189
48 +plex,43027,qanss,0.03104477060275479,28.741935483870968,31,0.03619729110186907,0.8576545276657948
49 +house,75017,qanss,0.03921417224927842,65.12903225806451,31,0.0515436228550365,0.7607958090095073
50 +plex,62037,qanss,0.03574854794749979,1.8387096774193548,31,0.045379686247517696,0.7877654277403751
51 +condo,59010,no_change,0.02215047220188633,6.354838709677419,31,0.02215047220188633,1.0
52 +house,89008,lightgbm_panel,0.03757219187390388,28.258064516129032,31,0.06225114519865197,0.603558243852476
53 +plex,73010,no_change,0.04264331680898908,6.193548387096774,31,0.04264331680898908,1.0
54 +condo,23027,lightgbm_panel,0.029550552856059415,206.67741935483872,31,0.04315247707704911,0.6847938949900061
55 +house,58007,ridge_panel,0.03526049784615335,53.25806451612903,31,0.04274583538565665,0.8248873259354992
56 +condo,67050,no_change,0.019021983400938594,2.2580645161290325,31,0.019021983400938594,1.0
57 +house,57005,ar2_cell,0.06036577164747617,29.193548387096776,31,0.07481395194669913,0.8068785310323334
58 +condo,64008,ar2_cell,0.025318943794652504,29.161290322580644,31,0.022350951288172907,1.1327904333114502
59 +plex,60013,no_change,0.038276934681138734,5.516129032258065,31,0.038276934681138734,1.0
60 +condo,43027,qanss,0.018252019386029814,21.032258064516128,31,0.027732303052543164,0.6581501489958668
61 +house,58227,ar2_cell,0.04808960587292372,126.61290322580645,31,0.04729289736931875,1.0168462612341835
62 +house,70052,lightgbm_panel,0.03244858986080565,42.645161290322584,31,0.047289861099482314,0.6861637802772245
63 +condo,63048,ar2_cell,0.11174341204595031,0.5483870967741935,31,0.10840198911434598,1.0308243691735184
64 +condo,73015,no_change,0.02113681356166819,12.0,31,0.02113681356166819,1.0
65 +plex,73010,ridge_panel,0.03631213901281281,6.193548387096774,31,0.04264331680898908,0.8515317693383156
66 +condo,65005,lightgbm_panel,0.019402047999074502,106.3225806451613,31,0.02373101542599955,0.8175818712678321
67 +house,73010,no_change,0.04004584204120924,14.67741935483871,31,0.04004584204120924,1.0
68 +plex,66097,ridge_panel,0.076935959589524,0.3225806451612903,31,0.05119406630797862,1.5028296272986914
69 +condo,29073,lightgbm_panel,0.020927499376806467,2.774193548387097,31,0.027267913551409163,0.7674771059161205
70 +house,65005,lightgbm_panel,0.029773693325683807,243.29032258064515,31,0.041379745530324814,0.719523354822576
71 +plex,29073,lightgbm_panel,0.03646651307079706,4.0,31,0.04422468206153482,0.8245737757946358
72 +plex,67050,qanss,0.046735883937793384,3.4838709677419355,31,0.05026861830629679,0.9297228671180547
73 +condo,45072,no_change,0.021456874458969384,8.451612903225806,31,0.021456874458969384,1.0
74 +plex,39062,lightgbm_panel,0.03440596326495833,5.903225806451613,31,0.04305233836240001,0.7991659587765148
75 +plex,77022,lightgbm_panel,0.026246124619592293,4.612903225806452,31,0.04267808014544396,0.614979036782988
76 +plex,56083,qanss,0.03500504350481772,12.935483870967742,31,0.04250873582724773,0.8234788173206458
77 +condo,66142,ar2_cell,0.022542939717916495,7.516129032258065,31,0.016607775144014854,1.3573726475963621
78 +house,64008,lightgbm_panel,0.030758700227367937,103.93548387096774,31,0.049997097642969016,0.6152097157122373
79 +condo,56083,ar2_cell,0.02111911304837882,15.064516129032258,31,0.020667224323352117,1.0218649934774313
80 +house,60013,ridge_panel,0.027322117264795834,71.61290322580645,31,0.04043187610407731,0.6757568507200824
81 +house,58037,ar2_cell,0.037552845556001274,25.483870967741936,31,0.045454688965401946,0.8261599938476051
82 +condo,67050,lightgbm_panel,0.010858462231798807,2.2580645161290325,31,0.019021983400938594,0.5708375411190308
83 +plex,94068,ar2_cell,0.035728576114471715,34.774193548387096,31,0.04750220348743283,0.7521456583361245
84 +condo,71083,lightgbm_panel,0.01183184792681598,9.064516129032258,31,0.018305539174260373,0.6463534241839145
85 +house,49058,qanss,0.027329218256273796,71.29032258064517,31,0.038576338909586866,0.7084450994773386
86 +condo,29073,ridge_panel,0.01788851298317688,2.774193548387097,31,0.027267913551409163,0.6560279336903072
87 +house,74005,no_change,0.057871954942973355,58.16129032258065,31,0.057871954942973355,1.0
88 +plex,52007,ridge_panel,0.026550936582729005,2.064516129032258,31,0.03415381944202661,0.7773928953333347
89 +condo,86042,no_change,0.014319056544310114,1.3548387096774193,31,0.014319056544310114,1.0
90 +house,77043,no_change,0.048336064932705126,20.93548387096774,31,0.048336064932705126,1.0
91 +house,94068,qanss,0.03509563339851777,118.25806451612904,31,0.049232221755305894,0.7128590209263796
92 +condo,53052,no_change,0.020011209271961664,2.3225806451612905,31,0.020011209271961664,1.0
93 +house,66097,lightgbm_panel,0.029483357861999262,23.129032258064516,31,0.043875596271610716,0.6719762320603763
94 +plex,63048,qanss,0.042362930681138326,6.709677419354839,31,0.03830553493100908,1.1059219185278812
95 +condo,47017,ar2_cell,0.023203409348751775,14.258064516129032,31,0.02264416872940787,1.0246968933161862
96 +condo,59010,qanss,0.02114353629816435,6.354838709677419,31,0.02215047220188633,0.9545411088962594
97 +house,57005,lightgbm_panel,0.05411271741471509,29.193548387096776,31,0.07481395194669913,0.7232971391922655
98 +plex,49058,ridge_panel,0.034623899248082506,14.516129032258064,31,0.04457630667672722,0.7767332430472363
99 +house,58037,lightgbm_panel,0.03413909485322125,25.483870967741936,31,0.045454688965401946,0.751057715502275
100 +plex,75005,no_change,0.04858681867096674,3.3870967741935485,31,0.04858681867096674,1.0
101 +condo,93042,lightgbm_panel,0.010800275688153681,1.0,31,0.02357619042804361,0.4581009693282285
102 +plex,67015,ar2_cell,0.04267279905337352,2.096774193548387,31,0.05144541426491628,0.8294772170291311
103 +house,70052,ridge_panel,0.03159604539419321,42.645161290322584,31,0.047289861099482314,0.668135719995572
104 +plex,77043,ar2_cell,0.03261674372243461,3.7419354838709675,31,0.03987415489031853,0.8179921007016496
105 +plex,66142,no_change,0.03464322033434304,0.22580645161290322,31,0.03464322033434304,1.0
106 +plex,74005,ridge_panel,0.04457401865727949,16.806451612903224,31,0.06013443296421019,0.741239527174195
107 +house,77022,no_change,0.044004152441317654,21.677419354838708,31,0.044004152441317654,1.0
108 +plex,70052,qanss,0.03583297245556153,12.612903225806452,31,0.04570453322970466,0.784013530462503
109 +condo,54048,lightgbm_panel,0.0195166439561004,11.838709677419354,31,0.026008798810985268,0.7503862096029289
110 +house,59010,lightgbm_panel,0.04149697603948432,30.032258064516128,31,0.07093713073413009,0.5849824430454278
111 +condo,47017,no_change,0.02264416872940787,14.258064516129032,31,0.02264416872940787,1.0
112 +house,75017,no_change,0.0515436228550365,65.12903225806451,31,0.0515436228550365,1.0
113 +condo,67035,lightgbm_panel,0.04751128166313515,6.548387096774194,31,0.05125393045448844,0.9269783066749072
114 +plex,67035,ridge_panel,0.042521106238843955,1.8387096774193548,31,0.05458335596662332,0.7790123103615101
115 +plex,70052,ar2_cell,0.03568773565552654,12.612903225806452,31,0.04570453322970466,0.7808357975381769
116 +condo,23027,ridge_panel,0.02929735238261284,206.67741935483872,31,0.04315247707704911,0.6789263181879958
117 +condo,94068,ridge_panel,0.015862589292055477,9.0,31,0.02395382559589923,0.6622152786639254
118 +plex,75017,lightgbm_panel,0.04340073550562269,22.225806451612904,31,0.04485191596319712,0.9676450732056757
119 +condo,46078,ridge_panel,0.03392304142658683,5.903225806451613,31,0.02451927636475571,1.3835253912855356
120 +plex,67035,no_change,0.05458335596662332,1.8387096774193548,31,0.05458335596662332,1.0
121 +plex,10043,qanss,0.022794134741887535,5.129032258064516,31,0.03459142469954136,0.6589533371312618
122 +house,54048,ar2_cell,0.03264249986146201,38.67741935483871,31,0.0412589791459181,0.7911611129790024
123 +house,71105,ar2_cell,0.061556110737307365,23.774193548387096,31,0.062278506108098805,0.9884005668097183
124 +plex,94068,lightgbm_panel,0.0338373095237488,34.774193548387096,31,0.04750220348743283,0.712331366537571
125 +house,64015,lightgbm_panel,0.03413309866230732,45.25806451612903,31,0.05584029507055853,0.6112628634783809
126 +house,64008,no_change,0.049997097642969016,103.93548387096774,31,0.049997097642969016,1.0
127 +condo,72005,no_change,0.026595215410543986,11.32258064516129,31,0.026595215410543986,1.0
128 +condo,57035,ridge_panel,0.031545624337499585,7.870967741935484,31,0.01532486156195089,2.0584606399200487
129 +condo,57040,lightgbm_panel,0.01756293941101281,7.064516129032258,31,0.016365534667589835,1.0731662464896001
130 +condo,52007,ar2_cell,0.02395217213172872,0.4838709677419355,31,0.02323295529710769,1.0309567519682081
131 +house,72005,lightgbm_panel,0.03725742533559305,39.29032258064516,31,0.0538945005594945,0.6913029149321892
132 +plex,58227,qanss,0.03331762993781944,36.87096774193548,31,0.03785756266424333,0.8800785785738954
133 +condo,81017,no_change,0.01714133948740538,64.06451612903226,31,0.01714133948740538,1.0
134 +condo,60013,ridge_panel,0.034490823016232026,26.419354838709676,31,0.028624259866592363,1.2049507367869652
135 +condo,60028,ridge_panel,0.02983962182442326,3.7096774193548385,31,0.030911044899383993,0.9653385034880498
136 +house,73015,ridge_panel,0.026879733661753474,55.12903225806452,31,0.03660299678554128,0.7343588236570664
137 +plex,39062,qanss,0.035848431300495226,5.903225806451613,31,0.04305233836240001,0.8326709457390042
138 +plex,37067,qanss,0.03635573103543724,28.258064516129032,31,0.049867401931253656,0.7290480279192533
139 +house,66142,lightgbm_panel,0.03399730264689389,32.38709677419355,31,0.04282535405677127,0.7938592311887368
140 +condo,57040,qanss,0.02030873070927638,7.064516129032258,31,0.016365534667589835,1.240945140001788
141 +condo,71105,qanss,0.01808631165576029,0.9354838709677419,31,0.017236888695607726,1.0492793667785887
142 +plex,73005,ar2_cell,0.11027398880290538,1.8064516129032258,31,0.11262191222002997,0.9791521616811351
143 +condo,57040,ar2_cell,0.024118121262909104,7.064516129032258,31,0.016365534667589835,1.4737142264390801
144 +condo,60013,ar2_cell,0.02718230002634244,26.419354838709676,31,0.028624259866592363,0.94962455459214
145 +house,29073,qanss,0.05167991308729053,29.548387096774192,31,0.05437088358660437,0.9505071405538675
146 +condo,66023,ar2_cell,0.021284965438794008,650.0322580645161,31,0.01999067162592292,1.0647448888707027
147 +plex,58037,no_change,0.03850021495403664,0.3225806451612903,31,0.03850021495403664,1.0
148 +plex,63048,no_change,0.03830553493100908,6.709677419354839,31,0.03830553493100908,1.0
149 +plex,57035,ridge_panel,0.08600714489506822,0.8387096774193549,31,0.08399501363571772,1.023955365589641
150 +condo,31084,ar2_cell,0.026857246824586876,0.45161290322580644,31,0.02830470765268615,0.9488614810702025
151 +condo,70052,ar2_cell,0.02072671989400265,3.4193548387096775,31,0.017722565754334185,1.1695101139028798
152 +house,47017,ridge_panel,0.042810088653738074,57.516129032258064,31,0.06052674791096199,0.7072920672479207
153 +plex,94068,ridge_panel,0.03198948527922206,34.774193548387096,31,0.04750220348743283,0.673431608023935
154 +house,52007,qanss,0.0420841494437689,17.580645161290324,31,0.04669869629194173,0.9011846750640635
155 +condo,58037,ridge_panel,0.026734278278460265,6.354838709677419,31,0.018184980073822334,1.4701296438011955
156 +plex,59015,no_change,0.0411503183641954,2.129032258064516,31,0.0411503183641954,1.0
157 +plex,47017,ar2_cell,0.056198215258399166,10.741935483870968,31,0.06004426134857524,0.93594648341415
158 +plex,64008,ar2_cell,0.04263194348352463,14.32258064516129,31,0.05117722509265536,0.83302569465891
159 +house,39062,ridge_panel,0.024687168056315687,42.645161290322584,31,0.04222309311293329,0.5846840256417358
160 +plex,67015,lightgbm_panel,0.03802518053827915,2.096774193548387,31,0.05144541426491628,0.7391364435801775
161 +house,73005,ridge_panel,0.044265210069013974,21.161290322580644,31,0.0458492500640935,0.965451125310334
162 +plex,29073,ridge_panel,0.027015800425191226,4.0,31,0.04422468206153482,0.6108760801852928
163 +plex,31084,qanss,0.03893247009328036,6.580645161290323,31,0.04394431158707675,0.8859501648156372
164 +plex,57005,ar2_cell,0.08203840708559738,2.129032258064516,31,0.08347570427522993,0.9827818500950456
165 +plex,71083,no_change,0.03995544215767985,1.6129032258064515,31,0.03995544215767985,1.0
166 +house,57040,qanss,0.041811861496223665,25.806451612903224,31,0.05883188748045653,0.7107006639913299
167 +plex,66023,no_change,0.03683169795933435,327.3225806451613,31,0.03683169795933435,1.0
168 +plex,64015,ar2_cell,0.042426650771355254,6.741935483870968,31,0.05138163816712156,0.8257161952166701
169 +house,81017,no_change,0.03579933680374744,239.4516129032258,31,0.03579933680374744,1.0
170 +house,59020,ridge_panel,0.0626384959342264,17.516129032258064,31,0.07726397627349975,0.8107076409386189
171 +house,64015,qanss,0.03555780994531847,45.25806451612903,31,0.05584029507055853,0.6367768991977645
172 +plex,58007,lightgbm_panel,0.03145711747473024,2.2903225806451615,31,0.04106606969004364,0.7660123725538054
173 +condo,75045,ridge_panel,0.02557213019610823,0.03225806451612903,31,0.027567478140892183,0.9276194966189469
174 +house,67050,ar2_cell,0.035860402074147604,42.193548387096776,31,0.04159016449971364,0.8622327539578382
175 +house,62037,ar2_cell,0.036711965072010036,17.93548387096774,31,0.03876282944562176,0.9470919846940283
176 +house,93042,qanss,0.0531625935613585,28.0,31,0.06864221092399593,0.7744883628562427
177 +house,67020,ar2_cell,0.05150709878176968,23.258064516129032,31,0.05515306632914995,0.9338936565082099
178 +plex,65005,lightgbm_panel,0.0235562914666027,32.354838709677416,31,0.03666756988636981,0.6424284876145863
179 +condo,66142,qanss,0.01884392426208396,7.516129032258065,31,0.016607775144014854,1.1346447130141315
180 +plex,46078,ar2_cell,0.05871394765907872,1.032258064516129,31,0.05068820948551821,1.1583354049200236
181 +house,73010,ridge_panel,0.029508407611411602,14.67741935483871,31,0.04004584204120924,0.736865704585408
182 +plex,77022,ridge_panel,0.03119474780695596,4.612903225806452,31,0.04267808014544396,0.7309313750910632
183 +condo,67020,qanss,0.015022152961138836,8.67741935483871,31,0.019298102869673456,0.778426411268945
184 +plex,75045,ar2_cell,0.03443749743624428,2.6451612903225805,31,0.04524363309448174,0.7611567657338407
185 +plex,66023,ar2_cell,0.033476095793442184,327.3225806451613,31,0.03683169795933435,0.9088936336957077
186 +condo,77043,ar2_cell,0.0344271515076839,2.870967741935484,31,0.03229926382975352,1.0658803770001162
187 +plex,46078,qanss,0.0668868533470451,1.032258064516129,31,0.05068820948551821,1.3195741973516524
188 +house,53052,lightgbm_panel,0.02683235427046938,34.0,31,0.039846841615424185,0.6733872292674491
189 +plex,29073,no_change,0.04422468206153482,4.0,31,0.04422468206153482,1.0
190 +house,36033,qanss,0.035298861253065056,45.45161290322581,31,0.05185831818869241,0.6806788666887754
191 +condo,58033,no_change,0.04998527906843036,16.161290322580644,31,0.04998527906843036,1.0
192 +house,93042,ridge_panel,0.044968099784591035,28.0,31,0.06864221092399593,0.655108557537314
193 +condo,67020,no_change,0.019298102869673456,8.67741935483871,31,0.019298102869673456,1.0
194 +plex,45072,qanss,0.0248055175139,4.548387096774194,31,0.03226703268651503,0.7687573181858358
195 +condo,57005,qanss,0.024610168048231393,13.419354838709678,31,0.01924783452678323,1.278594119976796
196 +plex,57035,qanss,0.08478248816057912,0.8387096774193549,31,0.08399501363571772,1.0093752532534448
197 +condo,58012,lightgbm_panel,0.01365874234319992,16.580645161290324,31,0.02034696210739908,0.6712914817997808
198 +plex,71083,ar2_cell,0.03224009801504372,1.6129032258064515,31,0.03995544215767985,0.8069012948927369
199 +plex,10043,lightgbm_panel,0.026555062736379174,5.129032258064516,31,0.03459142469954136,0.7676776243544332
200 +condo,77022,ar2_cell,0.03269792421504786,3.032258064516129,31,0.03368421633122685,0.9707194578469486
201 +house,74005,lightgbm_panel,0.031668144523013926,58.16129032258065,31,0.057871954942973355,0.5472105539586404
202 +house,60028,no_change,0.04802941077653713,21.06451612903226,31,0.04802941077653713,1.0
203 +plex,58033,ridge_panel,0.028698089060519304,1.4838709677419355,31,0.04098607539926355,0.700191193739788
204 +plex,75017,no_change,0.04485191596319712,22.225806451612904,31,0.04485191596319712,1.0
205 +condo,59015,no_change,0.02127217810570437,5.0,31,0.02127217810570437,1.0
206 +house,73015,qanss,0.02944270083583921,55.12903225806452,31,0.03660299678554128,0.804379515927218
207 +house,94068,no_change,0.049232221755305894,118.25806451612904,31,0.049232221755305894,1.0
208 +condo,58007,no_change,0.0163216874623934,52.70967741935484,31,0.0163216874623934,1.0
209 +plex,56083,no_change,0.04250873582724773,12.935483870967742,31,0.04250873582724773,1.0
210 +condo,59020,ar2_cell,0.019214586244895915,4.354838709677419,31,0.022315331790274066,0.8610486469786848
211 +house,75005,lightgbm_panel,0.03228640800586928,21.225806451612904,31,0.05345600043508866,0.6039809889083358
212 +condo,66142,lightgbm_panel,0.018919650493689162,7.516129032258065,31,0.016607775144014854,1.1392043985197782
213 +house,73005,no_change,0.0458492500640935,21.161290322580644,31,0.0458492500640935,1.0
214 +house,10043,qanss,0.06192053426293252,43.354838709677416,31,0.08409389427762744,0.7363261601194039
215 +house,63048,no_change,0.06289317944714591,31.580645161290324,31,0.06289317944714591,1.0
216 +condo,60028,ar2_cell,0.025244818851727555,3.7096774193548385,31,0.030911044899383993,0.8166925101982121
217 +house,73010,lightgbm_panel,0.026908593546259612,14.67741935483871,31,0.04004584204120924,0.6719447556769883
218 +condo,59015,ar2_cell,0.019606654391482386,5.0,31,0.02127217810570437,0.9217041289356562
219 +condo,73010,no_change,0.022341556055840858,12.419354838709678,31,0.022341556055840858,1.0
220 +house,31084,lightgbm_panel,0.0449491123861399,24.93548387096774,31,0.053606686577799545,0.8384982407167643
221 +house,29073,lightgbm_panel,0.04457517621540511,29.548387096774192,31,0.05437088358660437,0.8198354206328794
222 +condo,49058,no_change,0.020082203937462777,2.3225806451612905,31,0.020082203937462777,1.0
223 +condo,73005,lightgbm_panel,0.0232390606699612,4.064516129032258,31,0.03159246505716242,0.7355887116726463
224 +house,73005,ar2_cell,0.04515894787904926,21.161290322580644,31,0.0458492500640935,0.9849440899452171
225 +condo,64015,ridge_panel,0.03053501710360777,23.548387096774192,31,0.02192500669747209,1.392702749191333
226 +house,67035,no_change,0.054086779656309564,24.70967741935484,31,0.054086779656309564,1.0
227 +condo,57040,no_change,0.016365534667589835,7.064516129032258,31,0.016365534667589835,1.0
228 +condo,58007,qanss,0.013095156018566432,52.70967741935484,31,0.0163216874623934,0.8023163075961858
229 +condo,77022,qanss,0.03654499050712578,3.032258064516129,31,0.03368421633122685,1.0849292187108672
230 +plex,59010,ar2_cell,0.13445541190841329,1.3548387096774193,31,0.1398889974677805,0.9611578776192268
231 +condo,58007,lightgbm_panel,0.013338637190333156,52.70967741935484,31,0.0163216874623934,0.8172339545813843
232 +condo,74005,ar2_cell,0.020603451994070866,14.193548387096774,31,0.023803078624137133,0.8655792941497182
233 +plex,75028,lightgbm_panel,0.07769678424507108,6.0,31,0.0861077084608662,0.902320891286781
234 +condo,73015,lightgbm_panel,0.018150902015186033,12.0,31,0.02113681356166819,0.8587340737159581
235 +house,57035,ridge_panel,0.0481534172504527,20.29032258064516,31,0.063868571135985,0.753945428776345
236 +house,58012,no_change,0.04487488781505725,14.35483870967742,31,0.04487488781505725,1.0
237 +condo,36033,ridge_panel,0.0569817068284805,1.6129032258064515,31,0.04732516642857713,1.204046623152968
238 +house,58012,ar2_cell,0.042491057667094455,14.35483870967742,31,0.04487488781505725,0.9468783040129867
239 +condo,71105,ridge_panel,0.03047787495282648,0.9354838709677419,31,0.017236888695607726,1.7681772790348642
240 +plex,71105,no_change,0.039506321886504735,0.6774193548387096,31,0.039506321886504735,1.0
241 +condo,67015,ridge_panel,0.02635879817150396,9.193548387096774,31,0.01835236067676886,1.4362619957044525
242 +house,46078,qanss,0.051342782061398064,16.483870967741936,31,0.06231486181034645,0.8239251531626339
243 +condo,58037,ar2_cell,0.019135608341210378,6.354838709677419,31,0.018184980073822334,1.0522754637909388
244 +plex,58012,no_change,0.03890905819338008,1.3870967741935485,31,0.03890905819338008,1.0
245 +condo,73010,lightgbm_panel,0.017063032351500366,12.419354838709678,31,0.022341556055840858,0.7637351807032929
246 +house,43027,ridge_panel,0.0319147380568584,135.5483870967742,31,0.06012064179280478,0.5308449328742519
247 +house,66023,ar2_cell,0.04826110613726618,293.7096774193548,31,0.04990598058484665,0.9670405344549042
248 +plex,64015,no_change,0.05138163816712156,6.741935483870968,31,0.05138163816712156,1.0
249 +house,29073,ar2_cell,0.04732409475324053,29.548387096774192,31,0.05437088358660437,0.8703940718171446
250 +condo,52007,ridge_panel,0.03160971353824334,0.4838709677419355,31,0.02323295529710769,1.3605550018933017
251 +condo,29073,no_change,0.027267913551409163,2.774193548387097,31,0.027267913551409163,1.0
252 +condo,58012,qanss,0.015215389940251862,16.580645161290324,31,0.02034696210739908,0.7477966420706537
253 +plex,66142,ar2_cell,0.03234432373657412,0.22580645161290322,31,0.03464322033434304,0.9336407939105493
254 +plex,45072,lightgbm_panel,0.01913122996564207,4.548387096774194,31,0.03226703268651503,0.5929032939442662
255 +house,29073,ridge_panel,0.04294933809615969,29.548387096774192,31,0.05437088358660437,0.7899326857130814
256 +condo,72005,ar2_cell,0.027089690460328768,11.32258064516129,31,0.026595215410543986,1.0185926318757599
257 +house,67020,no_change,0.05515306632914995,23.258064516129032,31,0.05515306632914995,1.0
258 +plex,67015,no_change,0.05144541426491628,2.096774193548387,31,0.05144541426491628,1.0
259 +condo,81017,lightgbm_panel,0.024646429076703516,64.06451612903226,31,0.01714133948740538,1.4378356542563382
260 +condo,54048,ridge_panel,0.025407745376767904,11.838709677419354,31,0.026008798810985268,0.976890380882815
261 +condo,43027,lightgbm_panel,0.02000226947081814,21.032258064516128,31,0.027732303052543164,0.7212624726089546
262 +house,31084,no_change,0.053606686577799545,24.93548387096774,31,0.053606686577799545,1.0
263 +condo,25213,qanss,0.021125572651369877,20.225806451612904,31,0.02891749372381526,0.730546459286398
264 +house,53052,ar2_cell,0.03840422862320794,34.0,31,0.039846841615424185,0.9637960517388202
265 +house,23072,ridge_panel,0.07042172435718091,13.483870967741936,31,0.09983719388119296,0.7053656219643284
266 +plex,62037,no_change,0.045379686247517696,1.8387096774193548,31,0.045379686247517696,1.0
267 +plex,65005,no_change,0.03666756988636981,32.354838709677416,31,0.03666756988636981,1.0
268 +plex,59020,lightgbm_panel,0.03455963477627565,1.935483870967742,31,0.04978100303484061,0.694233395660753
269 +house,54048,lightgbm_panel,0.033653028351313105,38.67741935483871,31,0.0412589791459181,0.8156534419403473
270 +condo,60013,no_change,0.028624259866592363,26.419354838709676,31,0.028624259866592363,1.0
271 +condo,56083,qanss,0.019217311415152823,15.064516129032258,31,0.020667224323352117,0.9298448168213367
272 +house,66142,qanss,0.041284789479658024,32.38709677419355,31,0.04282535405677127,0.9640268104947596
273 +condo,72005,lightgbm_panel,0.023965372242231137,11.32258064516129,31,0.026595215410543986,0.9011159290226987
274 +plex,53052,qanss,0.035564703612847054,8.0,31,0.042374739526830324,0.8392902000100467
275 +house,57035,no_change,0.063868571135985,20.29032258064516,31,0.063868571135985,1.0
276 +condo,75017,ar2_cell,0.023456185015965695,26.06451612903226,31,0.027149973464123366,0.8639487271308485
277 +house,52007,lightgbm_panel,0.036727961726304964,17.580645161290324,31,0.04669869629194173,0.78648794597383
278 +plex,72015,qanss,0.041800471514487195,2.3870967741935485,31,0.04335487778304856,0.9641469115346204
279 +plex,62037,ar2_cell,0.028710882358731784,1.8387096774193548,31,0.045379686247517696,0.6326813764672578
280 +condo,58227,ridge_panel,0.027104619133787138,90.7741935483871,31,0.017898659666376982,1.5143379246829163
281 +house,49058,no_change,0.038576338909586866,71.29032258064517,31,0.038576338909586866,1.0
282 +condo,72015,qanss,0.03286161052961211,8.935483870967742,31,0.033215725578710484,0.9893389338053377
283 +condo,58037,lightgbm_panel,0.014289385576163065,6.354838709677419,31,0.018184980073822334,0.7857795564336604
284 +condo,49058,ar2_cell,0.014952626445264397,2.3225806451612905,31,0.020082203937462777,0.7445709889127606
285 +plex,23027,no_change,0.035919313188354667,86.58064516129032,31,0.035919313188354667,1.0
286 +condo,81017,ar2_cell,0.023485904368000052,64.06451612903226,31,0.01714133948740538,1.3701323858182934
287 +house,23072,ar2_cell,0.0818555695736842,13.483870967741936,31,0.09983719388119296,0.81989052768343
288 +plex,25213,ridge_panel,0.02560131491566794,21.096774193548388,31,0.042253739630389246,0.6058946531032074
289 +plex,60013,lightgbm_panel,0.03016250962806724,5.516129032258065,31,0.038276934681138734,0.7880074483323258
290 +house,57035,lightgbm_panel,0.04934107181980084,20.29032258064516,31,0.063868571135985,0.772540718262616
291 +condo,67020,ar2_cell,0.017529248829041364,8.67741935483871,31,0.019298102869673456,0.9083405217301538
292 +plex,89008,no_change,0.040821175723862846,6.032258064516129,31,0.040821175723862846,1.0
293 +condo,71083,ridge_panel,0.028768684905640073,9.064516129032258,31,0.018305539174260373,1.5715835863546728
294 +condo,97007,ridge_panel,0.04240576571920198,0.41935483870967744,31,0.026003932843309957,1.6307443175893193
295 +condo,49058,lightgbm_panel,0.015118992021949478,2.3225806451612905,31,0.020082203937462777,0.752855217934792
296 +plex,65005,qanss,0.025773598608879462,32.354838709677416,31,0.03666756988636981,0.7028990109993657
297 +condo,62037,lightgbm_panel,0.03999506939658265,0.7096774193548387,31,0.03616204057581137,1.105995921683003
298 +condo,65005,qanss,0.01875836972606861,106.3225806451613,31,0.02373101542599955,0.7904579466716396
299 +condo,39062,no_change,0.019780115171822352,2.5483870967741935,31,0.019780115171822352,1.0
300 +condo,23027,no_change,0.04315247707704911,206.67741935483872,31,0.04315247707704911,1.0
301 +condo,52007,lightgbm_panel,0.02055645152706242,0.4838709677419355,31,0.02323295529710769,0.8847971023996904
302 +house,59010,no_change,0.07093713073413009,30.032258064516128,31,0.07093713073413009,1.0
303 +plex,75045,no_change,0.04524363309448174,2.6451612903225805,31,0.04524363309448174,1.0
304 +plex,58007,ridge_panel,0.028636828336728534,2.2903225806451615,31,0.04106606969004364,0.6973355023471228
305 +condo,52007,no_change,0.02323295529710769,0.4838709677419355,31,0.02323295529710769,1.0
306 +house,67050,lightgbm_panel,0.03133584993557939,42.193548387096776,31,0.04159016449971364,0.7534437603822208
307 +condo,63048,no_change,0.10840198911434598,0.5483870967741935,31,0.10840198911434598,1.0
308 +house,56083,ridge_panel,0.03846224606387872,83.19354838709677,31,0.05205309160046616,0.7389041626786731
309 +house,74005,ar2_cell,0.04437051111842547,58.16129032258065,31,0.057871954942973355,0.7667014387564388
310 +house,57005,qanss,0.045106756097998905,29.193548387096776,31,0.07481395194669913,0.6029190401562401
311 +house,67035,lightgbm_panel,0.05242899295303271,24.70967741935484,31,0.054086779656309564,0.9693495025251802
312 +house,67020,lightgbm_panel,0.03953319098291571,23.258064516129032,31,0.05515306632914995,0.7167904454665163
313 +house,94068,ar2_cell,0.04832517773529944,118.25806451612904,31,0.049232221755305894,0.9815762119265175
314 +condo,58227,lightgbm_panel,0.014644300835096009,90.7741935483871,31,0.017898659666376982,0.8181786294649561
315 +house,46078,ar2_cell,0.05784430724483032,16.483870967741936,31,0.06231486181034645,0.9282586138259901
316 +plex,64008,no_change,0.05117722509265536,14.32258064516129,31,0.05117722509265536,1.0
317 +house,72015,ridge_panel,0.036200632069335444,19.612903225806452,31,0.04921084363839667,0.7356230739578292
318 +plex,59015,ridge_panel,0.03448057772879944,2.129032258064516,31,0.0411503183641954,0.8379176419398191
319 +plex,77022,qanss,0.03136971758833254,4.612903225806452,31,0.04267808014544396,0.7350311326429563
320 +plex,86042,lightgbm_panel,0.02585870405522599,8.741935483870968,31,0.0421136533245558,0.6140218673488531
321 +plex,57040,ridge_panel,0.07592181996270923,1.8064516129032258,31,0.08351832822287102,0.9090438180241074
322 +house,57035,ar2_cell,0.050408289629206966,20.29032258064516,31,0.063868571135985,0.7892503109531097
323 +plex,75045,ridge_panel,0.03978057695899003,2.6451612903225805,31,0.04524363309448174,0.8792524878786088
324 +plex,75028,qanss,0.0817383887966491,6.0,31,0.0861077084608662,0.9492575085051435
325 +condo,53052,qanss,0.013963774100973535,2.3225806451612905,31,0.020011209271961664,0.6977976148867034
326 +condo,60028,no_change,0.030911044899383993,3.7096774193548385,31,0.030911044899383993,1.0
327 +plex,75028,ridge_panel,0.06719314854824104,6.0,31,0.0861077084608662,0.7803383663238309
328 +house,63048,lightgbm_panel,0.04624536044059638,31.580645161290324,31,0.06289317944714591,0.7353000889303107
329 +condo,66023,no_change,0.01999067162592292,650.0322580645161,31,0.01999067162592292,1.0
330 +plex,10043,ar2_cell,0.025892408261060183,5.129032258064516,31,0.03459142469954136,0.7485210131111912
331 +house,73005,lightgbm_panel,0.04608545031864157,21.161290322580644,31,0.0458492500640935,1.0051516710571684
332 +plex,66142,lightgbm_panel,0.027917387769792884,0.22580645161290322,31,0.03464322033434304,0.8058542912685688
333 +plex,58007,ar2_cell,0.03097139592403434,2.2903225806451615,31,0.04106606969004364,0.7541845654526631
334 +condo,47017,qanss,0.016249006792243413,14.258064516129032,31,0.02264416872940787,0.7175801852748478
335 +house,56083,no_change,0.05205309160046616,83.19354838709677,31,0.05205309160046616,1.0
336 +plex,73005,lightgbm_panel,0.08359684396610342,1.8064516129032258,31,0.11262191222002997,0.7422786766644476
337 +condo,62037,ridge_panel,0.05349501178713494,0.7096774193548387,31,0.03616204057581137,1.4793139694367115
338 +condo,65005,ridge_panel,0.030776321750600393,106.3225806451613,31,0.02373101542599955,1.2968817894274365
339 +condo,37067,lightgbm_panel,0.014524827080958218,13.612903225806452,31,0.024895368597045987,0.5834349077555611
340 +condo,58033,ar2_cell,0.04923275796199468,16.161290322580644,31,0.04998527906843036,0.9849451454416115
341 +condo,70052,ridge_panel,0.025439597238005065,3.4193548387096775,31,0.017722565754334185,1.4354353421870432
342 +plex,36033,no_change,0.04814805015467382,16.06451612903226,31,0.04814805015467382,1.0
343 +house,31084,qanss,0.03931071409766978,24.93548387096774,31,0.053606686577799545,0.7333173640683429
344 +plex,49058,no_change,0.04457630667672722,14.516129032258064,31,0.04457630667672722,1.0
345 +condo,37067,ridge_panel,0.01817860706912746,13.612903225806452,31,0.024895368597045987,0.7302003582820815
346 +condo,75045,ar2_cell,0.023514969183154735,0.03225806451612903,31,0.027567478140892183,0.8529967472169258
347 +condo,31084,ridge_panel,0.029407170269130714,0.45161290322580644,31,0.02830470765268615,1.0389497969727286
348 +house,89008,qanss,0.04482018172144291,28.258064516129032,31,0.06225114519865197,0.719989673738781
349 +house,58007,lightgbm_panel,0.034049237480015135,53.25806451612903,31,0.04274583538565665,0.7965509896536107
350 +plex,23072,ar2_cell,0.026400844402180886,1.1935483870967742,31,0.03536485260469175,0.7465277657817345
351 +plex,56083,ar2_cell,0.03393520705753711,12.935483870967742,31,0.04250873582724773,0.7983113681725849
352 +house,54048,no_change,0.0412589791459181,38.67741935483871,31,0.0412589791459181,1.0
353 +house,89008,ridge_panel,0.03832334539570274,28.258064516129032,31,0.06225114519865197,0.6156247451096309
354 +house,65005,ar2_cell,0.040610513842591456,243.29032258064515,31,0.041379745530324814,0.9814104297193024
355 +plex,75005,qanss,0.0615316879099038,3.3870967741935485,31,0.04858681867096674,1.2664275948297954
356 +condo,25213,ar2_cell,0.02051280792127373,20.225806451612904,31,0.02891749372381526,0.7093563542258235
357 +house,60013,lightgbm_panel,0.026766989166940713,71.61290322580645,31,0.04043187610407731,0.662026889329566
358 +plex,72005,no_change,0.08304598225275957,3.7419354838709675,31,0.08304598225275957,1.0
359 +plex,58007,no_change,0.04106606969004364,2.2903225806451615,31,0.04106606969004364,1.0
360 +condo,45072,qanss,0.017566257486453577,8.451612903225806,31,0.021456874458969384,0.8186773670156114
361 +plex,64008,qanss,0.04675285101615594,14.32258064516129,31,0.05117722509265536,0.9135479880261351
362 +plex,58033,ar2_cell,0.03178974719856117,1.4838709677419355,31,0.04098607539926355,0.775623108308935
363 +condo,72015,ar2_cell,0.029595565677507023,8.935483870967742,31,0.033215725578710484,0.8910106632286308
364 +plex,47017,qanss,0.05029222156667481,10.741935483870968,31,0.06004426134857524,0.8375858148160593
365 +condo,86042,ridge_panel,0.02770930692211786,1.3548387096774193,31,0.014319056544310114,1.9351349606289918
366 +plex,58227,ar2_cell,0.03095334817821075,36.87096774193548,31,0.03785756266424333,0.8176265453942272
367 +house,43027,qanss,0.036003914334491204,135.5483870967742,31,0.06012064179280478,0.598861110940438
368 +house,23027,ar2_cell,0.04266852934025038,331.4193548387097,31,0.050999907884849545,0.8366393413217487
369 +house,58033,qanss,0.039923685597105955,37.61290322580645,31,0.04492332877735862,0.8887071969882052
370 +condo,65005,no_change,0.02373101542599955,106.3225806451613,31,0.02373101542599955,1.0
371 +plex,75005,ridge_panel,0.057338235590219916,3.3870967741935485,31,0.04858681867096674,1.1801191590360829
372 +condo,66142,ridge_panel,0.03045140142363312,7.516129032258065,31,0.016607775144014854,1.833562964308754
373 +plex,97007,no_change,0.03222354310206974,3.193548387096774,31,0.03222354310206974,1.0
374 +plex,70052,no_change,0.04570453322970466,12.612903225806452,31,0.04570453322970466,1.0
375 +condo,67015,qanss,0.013899291751046336,9.193548387096774,31,0.01835236067676886,0.7573571594329336
376 +house,89008,no_change,0.06225114519865197,28.258064516129032,31,0.06225114519865197,1.0
377 +plex,58227,lightgbm_panel,0.034431097526807446,36.87096774193548,31,0.03785756266424333,0.9094906038239963
378 +plex,52007,ar2_cell,0.022177440809718972,2.064516129032258,31,0.03415381944202661,0.6493399910180884
379 +condo,10043,lightgbm_panel,0.01344342818603027,5.129032258064516,31,0.020513984828815956,0.6553299272770403
380 +house,59010,qanss,0.05726135607318634,30.032258064516128,31,0.07093713073413009,0.8072127457170479
381 +house,75005,ar2_cell,0.04662175134881168,21.225806451612904,31,0.05345600043508866,0.8721518813481794
382 +house,75028,lightgbm_panel,0.03680471878078513,22.032258064516128,31,0.05830042237291534,0.6312942047892182
383 +house,54048,ridge_panel,0.03243680593312682,38.67741935483871,31,0.0412589791459181,0.7861756787149182
384 +condo,58007,ar2_cell,0.018314279495422907,52.70967741935484,31,0.0163216874623934,1.1220824769265196
385 +house,75017,ar2_cell,0.04354597790673822,65.12903225806451,31,0.0515436228550365,0.8448373531912726
386 +condo,67050,ridge_panel,0.021158546425869,2.2580645161290325,31,0.019021983400938594,1.1123207280700804
387 +plex,57035,lightgbm_panel,0.08222815253347986,0.8387096774193549,31,0.08399501363571772,0.9789646905719825
388 +condo,59015,lightgbm_panel,0.01505993668645436,5.0,31,0.02127217810570437,0.707964018147059
389 +plex,10043,ridge_panel,0.02621835882827166,5.129032258064516,31,0.03459142469954136,0.7579438851103257
390 +condo,64015,qanss,0.02197471594280829,23.548387096774192,31,0.02192500669747209,1.0022672396876362
391 +condo,73005,ridge_panel,0.028289399232262875,4.064516129032258,31,0.03159246505716242,0.8954476702301298
392 +house,45072,no_change,0.056349940040470725,27.838709677419356,31,0.056349940040470725,1.0
393 +condo,94068,qanss,0.010349537427061859,9.0,31,0.02395382559589923,0.43206198465574724
394 +house,89008,ar2_cell,0.05945622878687219,28.258064516129032,31,0.06225114519865197,0.9551025703565643
395 +condo,53052,ridge_panel,0.024274702031365513,2.3225806451612905,31,0.020011209271961664,1.2130552282703657
396 +house,23072,no_change,0.09983719388119296,13.483870967741936,31,0.09983719388119296,1.0
397 +plex,57005,no_change,0.08347570427522993,2.129032258064516,31,0.08347570427522993,1.0
398 +house,59020,lightgbm_panel,0.05292653275073402,17.516129032258064,31,0.07726397627349975,0.6850091763771539
399 +house,58227,qanss,0.03168298894121292,126.61290322580645,31,0.04729289736931875,0.6699312307680106
400 +condo,75028,no_change,0.1505321778372725,0.12903225806451613,31,0.1505321778372725,1.0
401 +condo,59020,ridge_panel,0.023604912555016073,4.354838709677419,31,0.022315331790274066,1.0577890025056254
402 +house,59015,lightgbm_panel,0.06928607542633033,14.096774193548388,31,0.09469235203782474,0.7316966358450374
403 +house,77022,lightgbm_panel,0.02930476826469593,21.677419354838708,31,0.044004152441317654,0.665954611982942
404 +house,31084,ar2_cell,0.055229347285156355,24.93548387096774,31,0.053606686577799545,1.0302697445215503
405 +house,57005,ridge_panel,0.05964226120936873,29.193548387096776,31,0.07481395194669913,0.7972077354216043
406 +condo,37067,qanss,0.018679872680068738,13.612903225806452,31,0.024895368597045987,0.750335252408564
407 +house,77043,ridge_panel,0.0329664740168059,20.93548387096774,31,0.048336064932705126,0.6820264343550263
408 +condo,57035,lightgbm_panel,0.017516816368875452,7.870967741935484,31,0.01532486156195089,1.143032600853428
409 +house,58012,ridge_panel,0.032877518442056365,14.35483870967742,31,0.04487488781505725,0.7326484820988164
410 +house,58037,ridge_panel,0.031430697153099464,25.483870967741936,31,0.045454688965401946,0.691473154222287
411 +house,71105,ridge_panel,0.050124220501499395,23.774193548387096,31,0.062278506108098805,0.8048398016242904
412 +plex,67050,ridge_panel,0.049223352780107026,3.4838709677419355,31,0.05026861830629679,0.9792064003068326
413 +house,58007,qanss,0.03699615571250431,53.25806451612903,31,0.04274583538565665,0.8654914655128803
414 +condo,63048,qanss,0.12483422839325399,0.5483870967741935,31,0.10840198911434598,1.1515861416673336
415 +plex,77043,qanss,0.030720976830192554,3.7419354838709675,31,0.03987415489031853,0.7704483496815534
416 +condo,66097,no_change,0.02179156434253552,7.645161290322581,31,0.02179156434253552,1.0
417 +condo,75028,ar2_cell,0.14945707647705567,0.12903225806451613,31,0.1505321778372725,0.9928579963721841
418 +plex,57005,ridge_panel,0.07457537179851521,2.129032258064516,31,0.08347570427522993,0.8933781684863754
419 +condo,66097,ar2_cell,0.024410968003397374,7.645161290322581,31,0.02179156434253552,1.1202026444585702
420 +house,60013,ar2_cell,0.03604056950504533,71.61290322580645,31,0.04043187610407731,0.8913899867587609
421 +plex,57040,no_change,0.08351832822287102,1.8064516129032258,31,0.08351832822287102,1.0
422 +plex,70052,ridge_panel,0.02892480535715263,12.612903225806452,31,0.04570453322970466,0.6328651298500427
423 +house,43027,lightgbm_panel,0.03368893671162389,135.5483870967742,31,0.06012064179280478,0.5603555735104573
424 +plex,60028,ar2_cell,0.04703058087477735,2.7419354838709675,31,0.046779150280574375,1.0053748431233773
425 +plex,74005,qanss,0.04677463560707238,16.806451612903224,31,0.06013443296421019,0.7778344835297761
426 +plex,59010,no_change,0.1398889974677805,1.3548387096774193,31,0.1398889974677805,1.0
427 +condo,77043,lightgbm_panel,0.03282521610315127,2.870967741935484,31,0.03229926382975352,1.016283723250474
428 +house,53052,no_change,0.039846841615424185,34.0,31,0.039846841615424185,1.0
429 +condo,73010,qanss,0.017207532707078407,12.419354838709678,31,0.022341556055840858,0.7702029645593894
430 +plex,60028,ridge_panel,0.04324465330909209,2.7419354838709675,31,0.046779150280574375,0.9244428992343192
431 +plex,58037,ar2_cell,0.030800741529929673,0.3225806451612903,31,0.03850021495403664,0.8000147938576717
432 +house,47017,no_change,0.06052674791096199,57.516129032258064,31,0.06052674791096199,1.0
433 +plex,49058,lightgbm_panel,0.03671009190540365,14.516129032258064,31,0.04457630667672722,0.8235337254750531
434 +plex,31084,lightgbm_panel,0.03413889720849557,6.580645161290323,31,0.04394431158707675,0.7768672662182566
435 +plex,31084,ridge_panel,0.029023124258367252,6.580645161290323,31,0.04394431158707675,0.6604523591377056
436 +plex,72015,no_change,0.04335487778304856,2.3870967741935485,31,0.04335487778304856,1.0
437 +condo,94068,no_change,0.02395382559589923,9.0,31,0.02395382559589923,1.0
438 +plex,59010,qanss,0.13366462978220447,1.3548387096774193,31,0.1398889974677805,0.9555049517957291
439 +condo,10043,qanss,0.011448535848850961,5.129032258064516,31,0.020513984828815956,0.5580844455324557
440 +house,81017,ridge_panel,0.034316677093411366,239.4516129032258,31,0.03579933680374744,0.958584157062349
441 +condo,43027,ridge_panel,0.022524008789708953,21.032258064516128,31,0.027732303052543164,0.8121939511130292
442 +house,67035,ridge_panel,0.04833555438379976,24.70967741935484,31,0.054086779656309564,0.8936667091467538
443 +house,74005,ridge_panel,0.037435134289031745,58.16129032258065,31,0.057871954942973355,0.6468614085340659
444 +plex,59015,ar2_cell,0.03301620875518459,2.129032258064516,31,0.0411503183641954,0.8023317939603538
445 +plex,46078,lightgbm_panel,0.06409829927277393,1.032258064516129,31,0.05068820948551821,1.2645603370757657
446 +house,37067,lightgbm_panel,0.026813065329657302,105.90322580645162,31,0.042348025499698155,0.6331597521553495
447 +condo,59020,lightgbm_panel,0.014287017924125412,4.354838709677419,31,0.022315331790274066,0.6402332736254578
448 +house,47017,ar2_cell,0.051759822060154906,57.516129032258064,31,0.06052674791096199,0.8551561722149075
449 +house,75005,ridge_panel,0.03377864557470935,21.225806451612904,31,0.05345600043508866,0.6318962380233923
450 +house,58037,qanss,0.03703232043456658,25.483870967741936,31,0.045454688965401946,0.8147084773312145
451 +house,37067,no_change,0.042348025499698155,105.90322580645162,31,0.042348025499698155,1.0
452 +condo,57005,lightgbm_panel,0.02168994774200192,13.419354838709678,31,0.01924783452678323,1.1268772968626941
453 +plex,89008,lightgbm_panel,0.02581371082002106,6.032258064516129,31,0.040821175723862846,0.6323607873188016
454 +condo,73010,ridge_panel,0.02811141121234693,12.419354838709678,31,0.022341556055840858,1.258256638082182
455 +plex,23072,lightgbm_panel,0.02840232534444425,1.1935483870967742,31,0.03536485260469175,0.8031229668033791
456 +condo,62037,no_change,0.03616204057581137,0.7096774193548387,31,0.03616204057581137,1.0
457 +house,45072,lightgbm_panel,0.03673318780530768,27.838709677419356,31,0.056349940040470725,0.6518762536202484
458 +condo,72015,ridge_panel,0.04210591798525493,8.935483870967742,31,0.033215725578710484,1.2676501040291166
459 +plex,63048,ridge_panel,0.048134808250034945,6.709677419354839,31,0.03830553493100908,1.2566019071846686
460 +plex,36033,ar2_cell,0.037720545190253994,16.06451612903226,31,0.04814805015467382,0.7834283022693161
461 +house,59020,qanss,0.06575620409682556,17.516129032258064,31,0.07726397627349975,0.8510590221769215
462 +plex,66023,qanss,0.02970525102307239,327.3225806451613,31,0.03683169795933435,0.806513211958617
463 +condo,58033,ridge_panel,0.05745247386065083,16.161290322580644,31,0.04998527906843036,1.1493878784191203
464 +condo,29073,ar2_cell,0.02159990721094434,2.774193548387097,31,0.027267913551409163,0.7921364122788959
465 +house,60028,qanss,0.036204033300523346,21.06451612903226,31,0.04802941077653713,0.7537888288691935
466 +house,97007,ar2_cell,0.045485796172735966,19.741935483870968,31,0.046568619400292464,0.9767477919358353
467 +condo,74005,qanss,0.016067998488429283,14.193548387096774,31,0.023803078624137133,0.6750386679870807
468 +plex,39062,no_change,0.04305233836240001,5.903225806451613,31,0.04305233836240001,1.0
469 +house,75028,qanss,0.05468483301694988,22.032258064516128,31,0.05830042237291534,0.9379834792132629
470 +condo,75017,lightgbm_panel,0.019584231693666274,26.06451612903226,31,0.027149973464123366,0.7213352057063832
471 +condo,57005,ridge_panel,0.03151497084465514,13.419354838709678,31,0.01924783452678323,1.637325528791422
472 +plex,59010,ridge_panel,0.1271416819216133,1.3548387096774193,31,0.1398889974677805,0.9088754957365165
473 +condo,64015,ar2_cell,0.023629589125955898,23.548387096774192,31,0.02192500669747209,1.0777460391234608
474 +plex,72005,lightgbm_panel,0.07218543833607588,3.7419354838709675,31,0.08304598225275957,0.8692225244126991
475 +condo,62037,ar2_cell,0.03996324694980654,0.7096774193548387,31,0.03616204057581137,1.1051159258014267
476 +plex,56083,lightgbm_panel,0.03383105838147965,12.935483870967742,31,0.04250873582724773,0.7958613146946195
477 +house,71105,lightgbm_panel,0.04873894319661856,23.774193548387096,31,0.062278506108098805,0.7825965367894473
478 +plex,65005,ridge_panel,0.02593023023847665,32.354838709677416,31,0.03666756988636981,0.7071706774905615
479 +house,97007,ridge_panel,0.027913253468065162,19.741935483870968,31,0.046568619400292464,0.5994004938847266
480 +house,10043,lightgbm_panel,0.0530113846810798,43.354838709677416,31,0.08409389427762744,0.6303832773645623
481 +house,75005,no_change,0.05345600043508866,21.225806451612904,31,0.05345600043508866,1.0
482 +plex,97007,ar2_cell,0.029320032060843316,3.193548387096774,31,0.03222354310206974,0.9098947303209518
483 +plex,43027,ridge_panel,0.026809616924206654,28.741935483870968,31,0.03619729110186907,0.740652576701308
484 +plex,58012,ar2_cell,0.032624339449666834,1.3870967741935485,31,0.03890905819338008,0.8384767189049434
485 +condo,64015,lightgbm_panel,0.01932944344091134,23.548387096774192,31,0.02192500669747209,0.8816163072433627
486 +house,86042,qanss,0.037947860423796005,31.129032258064516,31,0.048913991190868616,0.775807892586778
487 +plex,45072,ar2_cell,0.027331155210058165,4.548387096774194,31,0.03226703268651503,0.847030325830994
488 +house,77043,ar2_cell,0.044100175847488175,20.93548387096774,31,0.048336064932705126,0.9123658681956366
489 +condo,73005,ar2_cell,0.029395438826298328,4.064516129032258,31,0.03159246505716242,0.9304572711597888
490 +condo,75017,no_change,0.027149973464123366,26.06451612903226,31,0.027149973464123366,1.0
491 +condo,86042,ar2_cell,0.01696281482112454,1.3548387096774193,31,0.014319056544310114,1.1846321556614678
492 +plex,58033,qanss,0.03532530049972142,1.4838709677419355,31,0.04098607539926355,0.8618854124382974
493 +plex,97007,qanss,0.030023409254941243,3.193548387096774,31,0.03222354310206974,0.931722782930497
494 +condo,39062,ar2_cell,0.016597469482519337,2.5483870967741935,31,0.019780115171822352,0.8390987281086798
495 +plex,81017,ar2_cell,0.02857081598744992,44.61290322580645,31,0.034448956494260115,0.8293666599802635
496 +house,72005,ridge_panel,0.036311950093259666,39.29032258064516,31,0.0538945005594945,0.6737598403602361
497 +house,66142,ridge_panel,0.03383044251268051,32.38709677419355,31,0.04282535405677127,0.7899629380257618
498 +condo,57035,no_change,0.01532486156195089,7.870967741935484,31,0.01532486156195089,1.0
499 +condo,46078,no_change,0.02451927636475571,5.903225806451613,31,0.02451927636475571,1.0
500 +plex,23072,ridge_panel,0.022941272245461993,1.1935483870967742,31,0.03536485260469175,0.6487026116551223
501 +house,36033,lightgbm_panel,0.03377541976577265,45.45161290322581,31,0.05185831818869241,0.6513018729777724
502 +house,71083,ridge_panel,0.03894835202087938,38.74193548387097,31,0.04653390370965805,0.8369887096490403
503 +plex,23027,lightgbm_panel,0.024612171277548882,86.58064516129032,31,0.035919313188354667,0.6852071794493094
504 +condo,49058,qanss,0.015428713366982429,2.3225806451612905,31,0.020082203937462777,0.7682778949476061
505 +plex,58012,qanss,0.03542743751864256,1.3870967741935485,31,0.03890905819338008,0.9105190195703612
506 +plex,60013,ar2_cell,0.027777172692628648,5.516129032258065,31,0.038276934681138734,0.7256895810498658
507 +condo,53052,ar2_cell,0.01825195811065412,2.3225806451612905,31,0.020011209271961664,0.9120867141311402
508 +plex,57040,qanss,0.07994649689724401,1.8064516129032258,31,0.08351832822287102,0.9572329642890424
509 +house,10043,no_change,0.08409389427762744,43.354838709677416,31,0.08409389427762744,1.0
510 +condo,59010,ridge_panel,0.024512453195793052,6.354838709677419,31,0.02215047220188633,1.1066334375348248
511 +house,66097,ar2_cell,0.03988806643873075,23.129032258064516,31,0.043875596271610716,0.9091173642816096
512 +plex,47017,lightgbm_panel,0.03516948686359853,10.741935483870968,31,0.06004426134857524,0.5857260306597651
513 +house,62037,qanss,0.02786059503731223,17.93548387096774,31,0.03876282944562176,0.7187451338245658
514 +house,39062,lightgbm_panel,0.029571438337564013,42.645161290322584,31,0.04222309311293329,0.7003617252404948
515 +condo,73005,no_change,0.03159246505716242,4.064516129032258,31,0.03159246505716242,1.0
516 +house,73010,ar2_cell,0.03862145899143098,14.67741935483871,31,0.04004584204120924,0.9644311874298337
517 +condo,49058,ridge_panel,0.025276490006335934,2.3225806451612905,31,0.020082203937462777,1.2586511961061886
518 +condo,94068,ar2_cell,0.012160930469945829,9.0,31,0.02395382559589923,0.5076821830091188
519 +condo,59010,lightgbm_panel,0.014667128055074188,6.354838709677419,31,0.02215047220188633,0.6621587080127862
520 +plex,57035,ar2_cell,0.08026048744882894,0.8387096774193549,31,0.08399501363571772,0.9555387156303677
521 +house,45072,ridge_panel,0.037084456729964355,27.838709677419356,31,0.056349940040470725,0.6581099590049283
522 +house,23072,lightgbm_panel,0.0691756613824882,13.483870967741936,31,0.09983719388119296,0.6928846724679358
523 +house,60028,ridge_panel,0.034274508918833865,21.06451612903226,31,0.04802941077653713,0.7136150197282313
524 +condo,25213,lightgbm_panel,0.01969188337548084,20.225806451612904,31,0.02891749372381526,0.6809678447085964
525 +plex,75028,ar2_cell,0.0744786618143883,6.0,31,0.0861077084608662,0.8649476701407863
526 +house,75028,ar2_cell,0.055845089433890285,22.032258064516128,31,0.05830042237291534,0.9578848173119628
527 +plex,73015,qanss,0.04486229081333283,8.419354838709678,31,0.043195280421150034,1.0385924197257108
528 +condo,67020,ridge_panel,0.025506876686081266,8.67741935483871,31,0.019298102869673456,1.3217297502421734
529 +house,59020,ar2_cell,0.06672556867703702,17.516129032258064,31,0.07726397627349975,0.8636051611017433
530 +house,70052,no_change,0.047289861099482314,42.645161290322584,31,0.047289861099482314,1.0
531 +condo,70052,lightgbm_panel,0.013772609655795454,3.4193548387096775,31,0.017722565754334185,0.7771227849684949
532 +plex,74005,lightgbm_panel,0.04054419839122046,16.806451612903224,31,0.06013443296421019,0.6742260031844132
533 +house,10043,ridge_panel,0.05041439198227537,43.354838709677416,31,0.08409389427762744,0.5995012172445883
534 +plex,47017,no_change,0.06004426134857524,10.741935483870968,31,0.06004426134857524,1.0
535 +condo,57040,ridge_panel,0.03502072578036226,7.064516129032258,31,0.016365534667589835,2.139907219146161
536 +house,71105,qanss,0.05442107417813421,23.774193548387096,31,0.062278506108098805,0.8738339690369868
537 +plex,81017,no_change,0.034448956494260115,44.61290322580645,31,0.034448956494260115,1.0
538 +plex,89008,ar2_cell,0.03356541139704515,6.032258064516129,31,0.040821175723862846,0.8222548910423423
539 +house,77043,lightgbm_panel,0.03064596588628653,20.93548387096774,31,0.048336064932705126,0.6340186345113682
540 +house,62037,no_change,0.03876282944562176,17.93548387096774,31,0.03876282944562176,1.0
541 +plex,73010,lightgbm_panel,0.035805941071321755,6.193548387096774,31,0.04264331680898908,0.8396612588018476
542 +condo,56083,ridge_panel,0.030173223354241413,15.064516129032258,31,0.020667224323352117,1.45995528389114
543 +plex,64015,ridge_panel,0.03442662242671488,6.741935483870968,31,0.05138163816712156,0.6700179997130576
544 +house,23072,qanss,0.09051072567608927,13.483870967741936,31,0.09983719388119296,0.9065832297309733
545 +plex,94068,qanss,0.03317908236389698,34.774193548387096,31,0.04750220348743283,0.6984745954506053
546 +plex,67050,lightgbm_panel,0.047388774862342956,3.4838709677419355,31,0.05026861830629679,0.9427109090923015
547 +plex,66142,ridge_panel,0.03336952237434334,0.22580645161290322,31,0.03464322033434304,0.963233846400329
548 +plex,58033,no_change,0.04098607539926355,1.4838709677419355,31,0.04098607539926355,1.0
549 +house,77022,ar2_cell,0.04162003728913623,21.677419354838708,31,0.044004152441317654,0.9458206778244214
550 +house,63048,qanss,0.053734405127011504,31.580645161290324,31,0.06289317944714591,0.8543757144949041
551 +plex,58007,qanss,0.04262166516549873,2.2903225806451615,31,0.04106606969004364,1.0378803106115666
552 +plex,53052,no_change,0.042374739526830324,8.0,31,0.042374739526830324,1.0
553 +condo,58037,qanss,0.01443592019292446,6.354838709677419,31,0.018184980073822334,0.7938375590361672
554 +plex,77043,no_change,0.03987415489031853,3.7419354838709675,31,0.03987415489031853,1.0
555 +house,67015,qanss,0.056868537206932086,22.06451612903226,31,0.058004210395505955,0.9804208490930193
556 +condo,66142,no_change,0.016607775144014854,7.516129032258065,31,0.016607775144014854,1.0
557 +house,57040,ar2_cell,0.05534506681859885,25.806451612903224,31,0.05883188748045653,0.9407324699039109
558 +house,93042,lightgbm_panel,0.05088093255011002,28.0,31,0.06864221092399593,0.7412484514295135
559 +condo,75045,no_change,0.027567478140892183,0.03225806451612903,31,0.027567478140892183,1.0
560 +condo,63048,lightgbm_panel,0.10219797215953073,0.5483870967741935,31,0.10840198911434598,0.9427684214514639
561 +condo,57005,ar2_cell,0.023971511834040338,13.419354838709678,31,0.01924783452678323,1.2454134412203173
562 +condo,77043,ridge_panel,0.04209049331058725,2.870967741935484,31,0.03229926382975352,1.303140948736244
563 +plex,63048,lightgbm_panel,0.04318881178178445,6.709677419354839,31,0.03830553493100908,1.1274822779415687
564 +plex,45072,no_change,0.03226703268651503,4.548387096774194,31,0.03226703268651503,1.0
565 +condo,62037,qanss,0.049410303050156215,0.7096774193548387,31,0.03616204057581137,1.3663582658332216
566 +plex,75045,lightgbm_panel,0.043446043869734635,2.6451612903225805,31,0.04524363309448174,0.9602686808773022
567 +condo,65005,ar2_cell,0.01995675848799694,106.3225806451613,31,0.02373101542599955,0.8409567871306696
568 +plex,60028,lightgbm_panel,0.045479851022576775,2.7419354838709675,31,0.046779150280574375,0.9722248213102505
569 +plex,66097,no_change,0.05119406630797862,0.3225806451612903,31,0.05119406630797862,1.0
570 +plex,45072,ridge_panel,0.02424387436691901,4.548387096774194,31,0.03226703268651503,0.7513512197559759
571 +house,46078,no_change,0.06231486181034645,16.483870967741936,31,0.06231486181034645,1.0
572 +plex,60028,no_change,0.046779150280574375,2.7419354838709675,31,0.046779150280574375,1.0
573 +plex,75017,ar2_cell,0.034186070187577675,22.225806451612904,31,0.04485191596319712,0.7621986587067714
574 +house,64015,no_change,0.05584029507055853,45.25806451612903,31,0.05584029507055853,1.0
575 +condo,75005,ridge_panel,0.02519302174410199,0.03225806451612903,31,0.02801200834396392,0.8993650663941284
576 +house,58037,no_change,0.045454688965401946,25.483870967741936,31,0.045454688965401946,1.0
577 +condo,56083,lightgbm_panel,0.016468823786491994,15.064516129032258,31,0.020667224323352117,0.7968570684106667
578 +plex,67020,qanss,0.05613898959324447,0.6774193548387096,31,0.049477669192032364,1.1346328658966984
579 +plex,66097,ar2_cell,0.05906854672932601,0.3225806451612903,31,0.05119406630797862,1.1538162718697762
580 +house,75045,qanss,0.07029288721574947,20.387096774193548,31,0.09293699871561867,0.7563498734324449
581 +house,37067,ridge_panel,0.028085623403142572,105.90322580645162,31,0.042348025499698155,0.6632097499644407
582 +condo,97007,no_change,0.026003932843309957,0.41935483870967744,31,0.026003932843309957,1.0
583 +house,59010,ridge_panel,0.05090436934494693,30.032258064516128,31,0.07093713073413009,0.7175983694031092
584 +condo,66097,lightgbm_panel,0.021841548107479715,7.645161290322581,31,0.02179156434253552,1.00229372082511
585 +condo,39062,ridge_panel,0.02608303328975439,2.5483870967741935,31,0.019780115171822352,1.318649212260949
586 +plex,93042,no_change,0.048276651651072366,7.225806451612903,31,0.048276651651072366,1.0
587 +plex,67035,qanss,0.0412377423869478,1.8387096774193548,31,0.05458335596662332,0.7555003106105072
588 +condo,75045,qanss,0.020185686969350865,0.03225806451612903,31,0.027567478140892183,0.7322282751503647
589 +condo,58227,no_change,0.017898659666376982,90.7741935483871,31,0.017898659666376982,1.0
590 +house,58033,lightgbm_panel,0.03440260105374835,37.61290322580645,31,0.04492332877735862,0.7658070314479295
591 +condo,72005,ridge_panel,0.03309824535804918,11.32258064516129,31,0.026595215410543986,1.2445187920879555
592 +house,52007,ridge_panel,0.03829931546001701,17.580645161290324,31,0.04669869629194173,0.8201367168921564
593 +condo,58012,ar2_cell,0.01897980371763681,16.580645161290324,31,0.02034696210739908,0.9328077389368555
594 +condo,59015,qanss,0.01817376526224907,5.0,31,0.02127217810570437,0.8543443540168354
595 +plex,74005,no_change,0.06013443296421019,16.806451612903224,31,0.06013443296421019,1.0
596 +condo,75017,qanss,0.01895741499693713,26.06451612903226,31,0.027149973464123366,0.6982480119911689
597 +house,58227,no_change,0.04729289736931875,126.61290322580645,31,0.04729289736931875,1.0
598 +condo,23072,ar2_cell,0.03697835175421757,7.483870967741935,31,0.046714921979306503,0.7915747300316164
599 +house,60013,no_change,0.04043187610407731,71.61290322580645,31,0.04043187610407731,1.0
600 +condo,71083,ar2_cell,0.019314207687735136,9.064516129032258,31,0.018305539174260373,1.0551018193931738
601 +condo,58033,qanss,0.053470190510867176,16.161290322580644,31,0.04998527906843036,1.0697187553492686
602 +plex,56083,ridge_panel,0.033329068713541174,12.935483870967742,31,0.04250873582724773,0.7840522204421222
603 +condo,71105,lightgbm_panel,0.011364655206264907,0.9354838709677419,31,0.017236888695607726,0.6593217260352112
604 +house,77043,qanss,0.03308550490119207,20.93548387096774,31,0.048336064932705126,0.6844890031336781
605 +plex,29073,ar2_cell,0.035625353279422275,4.0,31,0.04422468206153482,0.8055536324682375
606 +house,59010,ar2_cell,0.06877673688979866,30.032258064516128,31,0.07093713073413009,0.9695449502683084
607 +plex,67015,ridge_panel,0.041237501239690555,2.096774193548387,31,0.05144541426491628,0.8015777854822891
608 +house,58033,ar2_cell,0.04007266413128073,37.61290322580645,31,0.04492332877735862,0.892023481382737
609 +condo,89008,qanss,0.01879102622493382,1.032258064516129,31,0.027446325447215727,0.6846463385808195
610 +house,71083,qanss,0.04747449290386615,38.74193548387097,31,0.04653390370965805,1.0202129870744732
611 +house,43027,no_change,0.06012064179280478,135.5483870967742,31,0.06012064179280478,1.0
612 +condo,31084,no_change,0.02830470765268615,0.45161290322580644,31,0.02830470765268615,1.0
613 +condo,67015,no_change,0.01835236067676886,9.193548387096774,31,0.01835236067676886,1.0
614 +plex,62037,ridge_panel,0.024170048691322502,1.8387096774193548,31,0.045379686247517696,0.5326182415517389
615 +house,58007,ar2_cell,0.039406875205658116,53.25806451612903,31,0.04274583538565665,0.9218880588044627
616 +house,39062,ar2_cell,0.03428606859573265,42.645161290322584,31,0.04222309311293329,0.8120217176896151
617 +condo,71083,qanss,0.014236499970749114,9.064516129032258,31,0.018305539174260373,0.777715413636503
618 +house,23027,qanss,0.03014504369779495,331.4193548387097,31,0.050999907884849545,0.5910803557892325
619 +house,66023,lightgbm_panel,0.03670361613554775,293.7096774193548,31,0.04990598058484665,0.7354552641871616
620 +house,59015,no_change,0.09469235203782474,14.096774193548388,31,0.09469235203782474,1.0
621 +condo,58033,lightgbm_panel,0.050499473429866854,16.161290322580644,31,0.04998527906843036,1.0102869158884271
622 +plex,72015,lightgbm_panel,0.03322024671601273,2.3870967741935485,31,0.04335487778304856,0.7662401190991618
623 +plex,59020,ridge_panel,0.03172946586590319,1.935483870967742,31,0.04978100303484061,0.6373810074436718
624 +plex,73005,qanss,0.10815287918144662,1.8064516129032258,31,0.11262191222002997,0.9603182635555665
625 +house,63048,ar2_cell,0.05951135602726345,31.580645161290324,31,0.06289317944714591,0.9462290911413618
626 +house,58227,ridge_panel,0.03614993937150105,126.61290322580645,31,0.04729289736931875,0.7643841122526215
627 +plex,74005,ar2_cell,0.047765035258120536,16.806451612903224,31,0.06013443296421019,0.7943042430706636
628 +plex,25213,ar2_cell,0.03478389611436316,21.096774193548388,31,0.042253739630389246,0.8232146176559078
629 +house,75045,ridge_panel,0.06958223062852711,20.387096774193548,31,0.09293699871561867,0.7487032246591514
630 +plex,36033,lightgbm_panel,0.03423153679304246,16.06451612903226,31,0.04814805015467382,0.7109641342292142
631 +condo,74005,ridge_panel,0.02443218778565964,14.193548387096774,31,0.023803078624137133,1.0264297392558528
632 +plex,58012,ridge_panel,0.03277262609364752,1.3870967741935485,31,0.03890905819338008,0.8422878274453685
633 +plex,66023,ridge_panel,0.03269347158688563,327.3225806451613,31,0.03683169795933435,0.8876449742551182
634 +condo,70052,qanss,0.01686936581727029,3.4193548387096775,31,0.017722565754334185,0.9518579900398881
635 +house,62037,lightgbm_panel,0.024580991338807825,17.93548387096774,31,0.03876282944562176,0.6341382115382249
636 +condo,67035,qanss,0.0454088274116719,6.548387096774194,31,0.05125393045448844,0.8859579550097767
637 +plex,53052,lightgbm_panel,0.0338502352836336,8.0,31,0.042374739526830324,0.7988305217121328
638 +plex,60013,qanss,0.0305600865526451,5.516129032258065,31,0.038276934681138734,0.7983943021357932
639 +plex,86042,qanss,0.02778599286306506,8.741935483870968,31,0.0421136533245558,0.659785857306839
640 +condo,10043,ridge_panel,0.018665138247028784,5.129032258064516,31,0.020513984828815956,0.9098738447349293
641 +plex,57005,qanss,0.07291866180619491,2.129032258064516,31,0.08347570427522993,0.8735315555502579
642 +plex,47017,ridge_panel,0.036099974167908964,10.741935483870968,31,0.06004426134857524,0.6012227206583092
643 +plex,49058,ar2_cell,0.036251378870331835,14.516129032258064,31,0.04457630667672722,0.8132432131094043
644 +condo,60013,lightgbm_panel,0.02398203169022957,26.419354838709676,31,0.028624259866592363,0.8378218966010443
645 +house,77022,ridge_panel,0.033332158948547144,21.677419354838708,31,0.044004152441317654,0.7574775810759611
646 +plex,77043,lightgbm_panel,0.02956290871758763,3.7419354838709675,31,0.03987415489031853,0.7414052736391793
647 +condo,67020,lightgbm_panel,0.010132972990553999,8.67741935483871,31,0.019298102869673456,0.5250761206417727
648 +condo,54048,qanss,0.02344852353424747,11.838709677419354,31,0.026008798810985268,0.901561187221902
649 +plex,49058,qanss,0.03678525144236163,14.516129032258064,31,0.04457630667672722,0.8252198126043222
650 +house,64015,ridge_panel,0.036881129259373494,45.25806451612903,31,0.05584029507055853,0.6604751857555791
651 +condo,75045,lightgbm_panel,0.02207013108766616,0.03225806451612903,31,0.027567478140892183,0.800585783540659
652 +house,58033,ridge_panel,0.0329563302992095,37.61290322580645,31,0.04492332877735862,0.7336128287051495
653 +plex,71083,ridge_panel,0.02832465024896774,1.6129032258064515,31,0.03995544215767985,0.7089059392006615
654 +house,62037,ridge_panel,0.028834692798637214,17.93548387096774,31,0.03876282944562176,0.7438748205697372
655 +plex,57040,lightgbm_panel,0.07185417950114913,1.8064516129032258,31,0.08351832822287102,0.8603402514164822
656 +house,71105,no_change,0.062278506108098805,23.774193548387096,31,0.062278506108098805,1.0
657 +condo,75028,ridge_panel,0.14428598589641123,0.12903225806451613,31,0.1505321778372725,0.9585059352053387
658 +plex,81017,ridge_panel,0.0272511140637625,44.61290322580645,31,0.034448956494260115,0.7910577514388013
659 +condo,53052,lightgbm_panel,0.012641866813453733,2.3225806451612905,31,0.020011209271961664,0.6317392738062387
660 +plex,73010,ar2_cell,0.04118314757438466,6.193548387096774,31,0.04264331680898908,0.9657585445066361
661 +house,75028,ridge_panel,0.044563052978393074,22.032258064516128,31,0.05830042237291534,0.7643692989623306
662 +house,67015,ar2_cell,0.05400084962320104,22.06451612903226,31,0.058004210395505955,0.9309815486667656
663 +condo,60013,qanss,0.02545538352734965,26.419354838709676,31,0.028624259866592363,0.889294034011299
664 +condo,29073,qanss,0.01939329955025572,2.774193548387097,31,0.027267913551409163,0.7112131815180082
665 +condo,67035,no_change,0.05125393045448844,6.548387096774194,31,0.05125393045448844,1.0
666 +plex,66097,lightgbm_panel,0.06682727956428632,0.3225806451612903,31,0.05119406630797862,1.3053715866651376
667 +plex,86042,no_change,0.0421136533245558,8.741935483870968,31,0.0421136533245558,1.0
668 +house,81017,lightgbm_panel,0.02999525987252597,239.4516129032258,31,0.03579933680374744,0.837871942627331
669 +condo,74005,no_change,0.023803078624137133,14.193548387096774,31,0.023803078624137133,1.0
670 +house,43027,ar2_cell,0.05352578984644654,135.5483870967742,31,0.06012064179280478,0.8903063615141329
671 +house,58007,no_change,0.04274583538565665,53.25806451612903,31,0.04274583538565665,1.0
672 +house,23027,lightgbm_panel,0.03361049946588253,331.4193548387097,31,0.050999907884849545,0.6590305916193064
673 +house,75045,lightgbm_panel,0.06538581028437597,20.387096774193548,31,0.09293699871561867,0.70354983685725
674 +house,75045,no_change,0.09293699871561867,20.387096774193548,31,0.09293699871561867,1.0
675 +house,39062,qanss,0.02778650153641849,42.645161290322584,31,0.04222309311293329,0.6580877782236009
676 +house,77022,qanss,0.0319390386123828,21.677419354838708,31,0.044004152441317654,0.7258187430146632
677 +house,52007,no_change,0.04669869629194173,17.580645161290324,31,0.04669869629194173,1.0
678 +condo,93042,no_change,0.02357619042804361,1.0,31,0.02357619042804361,1.0
679 +condo,59010,ar2_cell,0.019378850595468268,6.354838709677419,31,0.02215047220188633,0.87487302387251
680 +condo,73015,ridge_panel,0.027718117463697484,12.0,31,0.02113681356166819,1.311366889944308
681 +plex,25213,qanss,0.03117180461704999,21.096774193548388,31,0.042253739630389246,0.7377288942877606
682 +house,74005,qanss,0.045114897758494026,58.16129032258065,31,0.057871954942973355,0.7795640876993001
683 +condo,43027,ar2_cell,0.023657716692318812,21.032258064516128,31,0.027732303052543164,0.853074360520855
684 +house,57040,ridge_panel,0.049666722341460044,25.806451612903224,31,0.05883188748045653,0.844214327782003
685 +house,46078,lightgbm_panel,0.03879995566614538,16.483870967741936,31,0.06231486181034645,0.6226436926753038
686 +plex,81017,lightgbm_panel,0.023532084643007708,44.61290322580645,31,0.034448956494260115,0.6831000714616312
687 +plex,72005,ridge_panel,0.0683874060669826,3.7419354838709675,31,0.08304598225275957,0.8234884363079482
688 +plex,36033,ridge_panel,0.02922000296912988,16.06451612903226,31,0.04814805015467382,0.6068782198918068
689 +house,60028,ar2_cell,0.04698666328076065,21.06451612903226,31,0.04802941077653713,0.9782893964569336
690 +plex,77022,ar2_cell,0.033582983079667866,4.612903225806452,31,0.04267808014544396,0.7868906699931059
691 +house,66023,ridge_panel,0.040096754896490595,293.7096774193548,31,0.04990598058484665,0.803445888180093
692 +condo,73015,ar2_cell,0.02437561211743557,12.0,31,0.02113681356166819,1.1532302182785477
693 +house,72015,no_change,0.04921084363839667,19.612903225806452,31,0.04921084363839667,1.0
694 +condo,64008,ridge_panel,0.03761885963370615,29.161290322580644,31,0.022350951288172907,1.683098815289008
695 +plex,52007,lightgbm_panel,0.023129147239024088,2.064516129032258,31,0.03415381944202661,0.6772052911471285
696 +condo,60028,qanss,0.03171724622806355,3.7096774193548385,31,0.030911044899383993,1.0260813353706988
697 +condo,66097,qanss,0.02418385933301323,7.645161290322581,31,0.02179156434253552,1.1097807827319734
698 +condo,60028,lightgbm_panel,0.021718675951608597,3.7096774193548385,31,0.030911044899383993,0.7026186278174444
699 +plex,37067,ridge_panel,0.025613735057366648,28.258064516129032,31,0.049867401931253656,0.513636846224259
700 +house,75005,qanss,0.042682422079850374,21.225806451612904,31,0.05345600043508866,0.7984589518940799
701 +condo,23027,ar2_cell,0.03675675421935796,206.67741935483872,31,0.04315247707704911,0.851787816345478
702 +house,75017,ridge_panel,0.03135788844043301,65.12903225806451,31,0.0515436228550365,0.6083757156268446
703 +condo,47017,lightgbm_panel,0.01841340688048405,14.258064516129032,31,0.02264416872940787,0.8131632960573487
704 +plex,73005,ridge_panel,0.08711363942772953,1.8064516129032258,31,0.11262191222002997,0.7735052416579039
705 +plex,36033,qanss,0.03754595657491275,16.06451612903226,31,0.04814805015467382,0.7798022236476401
706 +house,58012,qanss,0.03820421487633402,14.35483870967742,31,0.04487488781505725,0.8513495350402867
707 +house,67035,ar2_cell,0.048806506125822935,24.70967741935484,31,0.054086779656309564,0.9023740447473535
708 +condo,43027,no_change,0.027732303052543164,21.032258064516128,31,0.027732303052543164,1.0
709 +condo,77022,lightgbm_panel,0.029968356217720583,3.032258064516129,31,0.03368421633122685,0.8896854218911577
710 +condo,23072,no_change,0.046714921979306503,7.483870967741935,31,0.046714921979306503,1.0
711 +plex,43027,lightgbm_panel,0.023870926800498928,28.741935483870968,31,0.03619729110186907,0.6594672162985793
712 +house,29073,no_change,0.05437088358660437,29.548387096774192,31,0.05437088358660437,1.0
713 +plex,93042,ar2_cell,0.03588563617344519,7.225806451612903,31,0.048276651651072366,0.7433331630539473
714 +plex,67020,no_change,0.049477669192032364,0.6774193548387096,31,0.049477669192032364,1.0
715 +plex,64015,qanss,0.041767409842837784,6.741935483870968,31,0.05138163816712156,0.8128859128038507
716 +condo,64008,qanss,0.024916769058505848,29.161290322580644,31,0.022350951288172907,1.1147968038251086
717 +condo,77022,no_change,0.03368421633122685,3.032258064516129,31,0.03368421633122685,1.0
718 +house,67015,lightgbm_panel,0.03779792961082053,22.06451612903226,31,0.058004210395505955,0.6516411369638958
719 +plex,54048,no_change,0.0473858363588674,9.35483870967742,31,0.0473858363588674,1.0
720 +condo,66023,qanss,0.013887094310254897,650.0322580645161,31,0.01999067162592292,0.6946787266640305
721 +plex,46078,no_change,0.05068820948551821,1.032258064516129,31,0.05068820948551821,1.0
722 +plex,73015,ridge_panel,0.03453197033130713,8.419354838709678,31,0.043195280421150034,0.7994385033416516
723 +plex,71105,ridge_panel,0.033080826396225345,0.6774193548387096,31,0.039506321886504735,0.8373552590205994
724 +plex,75005,ar2_cell,0.047285350824585744,3.3870967741935485,31,0.04858681867096674,0.973213561167801
725 +plex,71083,qanss,0.03909805039567655,1.6129032258064515,31,0.03995544215767985,0.9785413021180019
726 +condo,77043,qanss,0.033283907519923946,2.870967741935484,31,0.03229926382975352,1.0304850195769288
727 +plex,31084,no_change,0.04394431158707675,6.580645161290323,31,0.04394431158707675,1.0
728 +plex,75017,ridge_panel,0.03714707255742044,22.225806451612904,31,0.04485191596319712,0.8282159582190686
729 +plex,65005,ar2_cell,0.024214393706548685,32.354838709677416,31,0.03666756988636981,0.6603762884092774
730 +house,73015,ar2_cell,0.028237981811138645,55.12903225806452,31,0.03660299678554128,0.7714663904867227
731 +condo,70052,no_change,0.017722565754334185,3.4193548387096775,31,0.017722565754334185,1.0
732 +plex,64008,lightgbm_panel,0.03721714297727719,14.32258064516129,31,0.05117722509265536,0.7272208078866387
733 +condo,58007,ridge_panel,0.02603280016175309,52.70967741935484,31,0.0163216874623934,1.5949821500831298
734 +plex,43027,ar2_cell,0.034019030504392596,28.741935483870968,31,0.03619729110186907,0.9398225521532467
735 +plex,70052,lightgbm_panel,0.03076191562510301,12.612903225806452,31,0.04570453322970466,0.6730604920631806
736 +house,93042,no_change,0.06864221092399593,28.0,31,0.06864221092399593,1.0
737 +condo,36033,no_change,0.04732516642857713,1.6129032258064515,31,0.04732516642857713,1.0
738 +house,37067,qanss,0.026841576629265597,105.90322580645162,31,0.042348025499698155,0.6338330137601556
739 +plex,93042,qanss,0.031393299127965714,7.225806451612903,31,0.048276651651072366,0.6502791319262585
740 +condo,10043,no_change,0.020513984828815956,5.129032258064516,31,0.020513984828815956,1.0
741 +condo,47017,ridge_panel,0.023448915022591534,14.258064516129032,31,0.02264416872940787,1.0355387871729884
742 +house,71083,ar2_cell,0.044400412346342656,38.74193548387097,31,0.04653390370965805,0.9541518937111526
743 +house,57005,no_change,0.07481395194669913,29.193548387096776,31,0.07481395194669913,1.0
744 +house,66097,no_change,0.043875596271610716,23.129032258064516,31,0.043875596271610716,1.0
745 +condo,71083,no_change,0.018305539174260373,9.064516129032258,31,0.018305539174260373,1.0
746 +condo,59015,ridge_panel,0.02646544658358893,5.0,31,0.02127217810570437,1.2441343078305613
747 +condo,46078,qanss,0.03349513183653035,5.903225806451613,31,0.02451927636475571,1.3660734247718924
748 +condo,67015,lightgbm_panel,0.011173139491401302,9.193548387096774,31,0.01835236067676886,0.6088121135034524
749 +house,46078,ridge_panel,0.04174023295749047,16.483870967741936,31,0.06231486181034645,0.6698278989131953
750 +house,73010,qanss,0.02783043374110182,14.67741935483871,31,0.04004584204120924,0.6949643788851503
751 +condo,58227,ar2_cell,0.019615831823368103,90.7741935483871,31,0.017898659666376982,1.0959385892015627
752 +house,47017,lightgbm_panel,0.04178589140693417,57.516129032258064,31,0.06052674791096199,0.6903706683267272
753 +house,59015,ar2_cell,0.07830748848503105,14.096774193548388,31,0.09469235203782474,0.8269674033838681
754 +house,93042,ar2_cell,0.06636313843368183,28.0,31,0.06864221092399593,0.966797798910679
755 +condo,94068,lightgbm_panel,0.010078777769982764,9.0,31,0.02395382559589923,0.42075858528869803
756 +condo,45072,lightgbm_panel,0.01803809547474377,8.451612903225806,31,0.021456874458969384,0.840667428484837
757 +plex,58037,ridge_panel,0.030317000605999466,0.3225806451612903,31,0.03850021495403664,0.7874501646859199
758 +condo,52007,qanss,0.0204442899216897,0.4838709677419355,31,0.02323295529710769,0.8799694081206642
759 +plex,53052,ridge_panel,0.032845071329355616,8.0,31,0.042374739526830324,0.7751096926167339
760 +plex,54048,qanss,0.03768338666698188,9.35483870967742,31,0.0473858363588674,0.7952457857152523
761 +house,66023,qanss,0.04329760109339727,293.7096774193548,31,0.04990598058484665,0.8675834155745266
762 +condo,23072,ridge_panel,0.03559868484503895,7.483870967741935,31,0.046714921979306503,0.7620409782726008
763 +house,75045,ar2_cell,0.08156134418556678,20.387096774193548,31,0.09293699871561867,0.87759821505684
764 +house,37067,ar2_cell,0.037712273716188856,105.90322580645162,31,0.042348025499698155,0.8905320442025723
765 +condo,75017,ridge_panel,0.028429821691579683,26.06451612903226,31,0.027149973464123366,1.0471399439541824
766 +plex,71105,qanss,0.03705640515041271,0.6774193548387096,31,0.039506321886504735,0.937986716578419
767 +house,10043,ar2_cell,0.08244613691349638,43.354838709677416,31,0.08409389427762744,0.9804057431483533
768 +house,36033,no_change,0.05185831818869241,45.45161290322581,31,0.05185831818869241,1.0
769 +house,94068,ridge_panel,0.030347969587730974,118.25806451612904,31,0.049232221755305894,0.6164249449997712
770 +house,66097,ridge_panel,0.03217350572343949,23.129032258064516,31,0.043875596271610716,0.7332893101730231
771 +house,23027,no_change,0.050999907884849545,331.4193548387097,31,0.050999907884849545,1.0
772 +house,57040,lightgbm_panel,0.039051878483587495,25.806451612903224,31,0.05883188748045653,0.6637876185182774
773 +house,36033,ar2_cell,0.04722667547545266,45.45161290322581,31,0.05185831818869241,0.910686600047711
774 +plex,73015,lightgbm_panel,0.036133285682099184,8.419354838709678,31,0.043195280421150034,0.8365100383607411
775 +condo,77043,no_change,0.03229926382975352,2.870967741935484,31,0.03229926382975352,1.0
776 +house,81017,qanss,0.0340503466043641,239.4516129032258,31,0.03579933680374744,0.9511446201092683
777 +house,53052,qanss,0.03057432528905002,34.0,31,0.039846841615424185,0.7672960779208936
778 +condo,46078,lightgbm_panel,0.022994826517623163,5.903225806451613,31,0.02451927636475571,0.937826474792551
779 +house,75017,lightgbm_panel,0.028544907112887884,65.12903225806451,31,0.0515436228550365,0.5538009463007443
780 +plex,97007,lightgbm_panel,0.026897253663988704,3.193548387096774,31,0.03222354310206974,0.8347081380464668
781 +house,86042,lightgbm_panel,0.031084112641289633,31.129032258064516,31,0.048913991190868616,0.635485101184965
782 +condo,36033,qanss,0.044722962251642046,1.6129032258064515,31,0.04732516642857713,0.9450143681826811
783 +condo,64008,no_change,0.022350951288172907,29.161290322580644,31,0.022350951288172907,1.0
784 +plex,59020,ar2_cell,0.039580900826147285,1.935483870967742,31,0.04978100303484061,0.795100508490066
785 +condo,58037,no_change,0.018184980073822334,6.354838709677419,31,0.018184980073822334,1.0
786 +plex,77022,no_change,0.04267808014544396,4.612903225806452,31,0.04267808014544396,1.0
787 +condo,58227,qanss,0.013813870331319719,90.7741935483871,31,0.017898659666376982,0.7717823897880673
788 +plex,63048,ar2_cell,0.03488490708853806,6.709677419354839,31,0.03830553493100908,0.9107014730734917
789 +house,56083,qanss,0.032708127083124414,83.19354838709677,31,0.05205309160046616,0.6283608922631504
790 +house,66023,no_change,0.04990598058484665,293.7096774193548,31,0.04990598058484665,1.0
791 +plex,64008,ridge_panel,0.035594518696422515,14.32258064516129,31,0.05117722509265536,0.695514823869003
792 +house,64008,ridge_panel,0.031119350773442217,103.93548387096774,31,0.049997097642969016,0.6224231453526876
793 +plex,71083,lightgbm_panel,0.027208328911047533,1.6129032258064515,31,0.03995544215767985,0.680966783039787
794 +condo,23072,lightgbm_panel,0.036284128143438614,7.483870967741935,31,0.046714921979306503,0.7767138765534392
795 +plex,66142,qanss,0.032805322679169954,0.22580645161290322,31,0.03464322033434304,0.9469478403729369
796 +condo,86042,qanss,0.01298772942623786,1.3548387096774193,31,0.014319056544310114,0.9070241035816513
797 +condo,64008,lightgbm_panel,0.025223896282064773,29.161290322580644,31,0.022350951288172907,1.1285379291847903
798 +house,86042,ar2_cell,0.046905335283968924,31.129032258064516,31,0.048913991190868616,0.9589349415576892
799 +house,65005,no_change,0.041379745530324814,243.29032258064515,31,0.041379745530324814,1.0
800 +condo,93042,ridge_panel,0.018282638954457454,1.0,31,0.02357619042804361,0.7754704480461976
801 +house,60013,qanss,0.028245641554379218,71.61290322580645,31,0.04043187610407731,0.6985983406179566
802 +house,58033,no_change,0.04492332877735862,37.61290322580645,31,0.04492332877735862,1.0
803 +house,73015,no_change,0.03660299678554128,55.12903225806452,31,0.03660299678554128,1.0
804 +house,86042,ridge_panel,0.03152093117292164,31.129032258064516,31,0.048913991190868616,0.64441544035781
805 +condo,97007,qanss,0.030844965667581725,0.41935483870967744,31,0.026003932843309957,1.1861654101878372
806 +plex,64015,lightgbm_panel,0.03666063524018422,6.741935483870968,31,0.05138163816712156,0.7134968161377712
807 +condo,75028,qanss,0.15802158535457295,0.12903225806451613,31,0.1505321778372725,1.0497528676253964
808 +house,72005,no_change,0.0538945005594945,39.29032258064516,31,0.0538945005594945,1.0
809 +condo,25213,ridge_panel,0.017563666845438322,20.225806451612904,31,0.02891749372381526,0.6073716834932208
810 +house,71083,no_change,0.04653390370965805,38.74193548387097,31,0.04653390370965805,1.0
811 +condo,77022,ridge_panel,0.03955962927227204,3.032258064516129,31,0.03368421633122685,1.1744262916278212
812 +condo,57005,no_change,0.01924783452678323,13.419354838709678,31,0.01924783452678323,1.0
813 +condo,71105,ar2_cell,0.01972965449943234,0.9354838709677419,31,0.017236888695607726,1.1446180832193813
814 +plex,72015,ridge_panel,0.038251123569239306,2.3870967741935485,31,0.04335487778304856,0.8822795847943832
815 +house,67015,ridge_panel,0.04507684286253872,22.06451612903226,31,0.058004210395505955,0.777130531648978
816 +plex,58037,qanss,0.03825116825218294,0.3225806451612903,31,0.03850021495403664,0.9935312906135454
817 +condo,89008,ridge_panel,0.020327667904635166,1.032258064516129,31,0.027446325447215727,0.7406334936794715
818 +plex,75045,qanss,0.041525079586932884,2.6451612903225805,31,0.04524363309448174,0.9178104574452842
819 +house,25213,no_change,0.057400505327128745,129.74193548387098,31,0.057400505327128745,1.0
820 +plex,39062,ar2_cell,0.03487548702905697,5.903225806451613,31,0.04305233836240001,0.8100718417542603
821 +house,60028,lightgbm_panel,0.03681700496227864,21.06451612903226,31,0.04802941077653713,0.7665512519729709
822 +plex,54048,ridge_panel,0.04362907161539256,9.35483870967742,31,0.0473858363588674,0.920719670008065
823 +condo,72015,lightgbm_panel,0.03176942210026914,8.935483870967742,31,0.033215725578710484,0.956457266754144
824 +plex,67050,ar2_cell,0.047146332542790645,3.4838709677419355,31,0.05026861830629679,0.9378879732782502
825 +house,66097,qanss,0.03569107432683513,23.129032258064516,31,0.043875596271610716,0.8134607244056692
826 +condo,45072,ar2_cell,0.021010320863608406,8.451612903225806,31,0.021456874458969384,0.9791883204511033
827 +plex,37067,no_change,0.049867401931253656,28.258064516129032,31,0.049867401931253656,1.0
828 +house,57040,no_change,0.05883188748045653,25.806451612903224,31,0.05883188748045653,1.0
829 +condo,31084,qanss,0.02561844374234267,0.45161290322580644,31,0.02830470765268615,0.9050948010731865
830 +plex,23027,ridge_panel,0.01745131548637399,86.58064516129032,31,0.035919313188354667,0.48584769410434747
831 +condo,73005,qanss,0.028239358814811884,4.064516129032258,31,0.03159246505716242,0.8938637350303773
832 +plex,86042,ridge_panel,0.02780235028054371,8.741935483870968,31,0.0421136533245558,0.6601742685746194
833 +plex,86042,ar2_cell,0.032240557019089906,8.741935483870968,31,0.0421136533245558,0.7655606786384156
834 +condo,67035,ar2_cell,0.053639106707259666,6.548387096774194,31,0.05125393045448844,1.0465364554800176
835 +condo,73010,ar2_cell,0.023127032041962797,12.419354838709678,31,0.022341556055840858,1.0351576221530276
836 +plex,67015,qanss,0.04221282812200315,2.096774193548387,31,0.05144541426491628,0.8205362659658981
837 +condo,23072,qanss,0.03823079981470127,7.483870967741935,31,0.046714921979306503,0.8183851796142679
838 +plex,57005,lightgbm_panel,0.07102614241514354,2.129032258064516,31,0.08347570427522993,0.8508600560105655
839 +condo,75028,lightgbm_panel,0.1329150959766056,0.12903225806451613,31,0.1505321778372725,0.8829679998404647
840 +condo,72015,no_change,0.033215725578710484,8.935483870967742,31,0.033215725578710484,1.0
841 +condo,72005,qanss,0.02340422515650637,11.32258064516129,31,0.026595215410543986,0.8800163787065056
842 +house,97007,lightgbm_panel,0.02904330980256011,19.741935483870968,31,0.046568619400292464,0.6236669709469143
843 +condo,89008,no_change,0.027446325447215727,1.032258064516129,31,0.027446325447215727,1.0
844 +house,72005,qanss,0.04466377024812968,39.29032258064516,31,0.0538945005594945,0.8287259327846456
845 +house,23027,ridge_panel,0.03259705455153104,331.4193548387097,31,0.050999907884849545,0.6391590868189508
846 +condo,57035,ar2_cell,0.022862474268061306,7.870967741935484,31,0.01532486156195089,1.4918551907069142
847 +house,72015,lightgbm_panel,0.03131170924805687,19.612903225806452,31,0.04921084363839667,0.6362766198063299
848 +condo,93042,ar2_cell,0.011992070279625365,1.0,31,0.02357619042804361,0.5086517398231113
849 +plex,89008,qanss,0.027688489682001743,6.032258064516129,31,0.040821175723862846,0.6782874131137746
850 +condo,45072,ridge_panel,0.02407191493913954,8.451612903225806,31,0.021456874458969384,1.1218742499132728
851 +house,59020,no_change,0.07726397627349975,17.516129032258064,31,0.07726397627349975,1.0
852 +condo,46078,ar2_cell,0.030297338698031015,5.903225806451613,31,0.02451927636475571,1.2356538687079996
853 +house,58227,lightgbm_panel,0.030807620784467867,126.61290322580645,31,0.04729289736931875,0.6514217249978492
854 +plex,75005,lightgbm_panel,0.05145727270099172,3.3870967741935485,31,0.04858681867096674,1.059078863538358
855 +house,73015,lightgbm_panel,0.023716903334544077,55.12903225806452,31,0.03660299678554128,0.6479497696186615
856 +plex,58012,lightgbm_panel,0.029829395659212575,1.3870967741935485,31,0.03890905819338008,0.7666439909945623
857 +plex,67020,lightgbm_panel,0.041912729715739595,0.6774193548387096,31,0.049477669192032364,0.8471039642766561
858 +plex,67050,no_change,0.05026861830629679,3.4838709677419355,31,0.05026861830629679,1.0
859 +house,67050,ridge_panel,0.031002442270817627,42.193548387096776,31,0.04159016449971364,0.745427257712123
860 +house,72015,ar2_cell,0.050553755830428634,19.612903225806452,31,0.04921084363839667,1.0272889487914438
861 +plex,39062,ridge_panel,0.030277910620962373,5.903225806451613,31,0.04305233836240001,0.7032814423712174
862 +plex,75017,qanss,0.046838470053658425,22.225806451612904,31,0.04485191596319712,1.0442913986571132
863 +condo,71105,no_change,0.017236888695607726,0.9354838709677419,31,0.017236888695607726,1.0
864 +plex,60013,ridge_panel,0.030341684671938284,5.516129032258065,31,0.038276934681138734,0.7926884669500296
865 +condo,67050,ar2_cell,0.017614873111422402,2.2580645161290325,31,0.019021983400938594,0.9260271518559541
866 +house,53052,ridge_panel,0.03215555403041449,34.0,31,0.039846841615424185,0.8069787397645967
867 +condo,75005,qanss,0.021882950996460124,0.03225806451612903,31,0.02801200834396392,0.7811989318208061
868 +plex,67035,ar2_cell,0.045148124919342225,1.8387096774193548,31,0.05458335596662332,0.8271408769176714
869 +house,67035,qanss,0.049543020608782205,24.70967741935484,31,0.054086779656309564,0.9159913184626569
870 +plex,53052,ar2_cell,0.03414532976424549,8.0,31,0.042374739526830324,0.8057944460667602
871 +condo,73015,qanss,0.017204495761502323,12.0,31,0.02113681356166819,0.8139588169856803
872 +house,86042,no_change,0.048913991190868616,31.129032258064516,31,0.048913991190868616,1.0
873 +house,67015,no_change,0.058004210395505955,22.06451612903226,31,0.058004210395505955,1.0
874 +condo,75005,no_change,0.02801200834396392,0.03225806451612903,31,0.02801200834396392,1.0
875 +plex,58037,lightgbm_panel,0.032007781122127654,0.3225806451612903,31,0.03850021495403664,0.8313662965347088
876 +condo,86042,lightgbm_panel,0.016729099595267697,1.3548387096774193,31,0.014319056544310114,1.1683101846479718
877 +condo,31084,lightgbm_panel,0.025526890213194958,0.45161290322580644,31,0.02830470765268615,0.9018602321007342
878 +house,70052,qanss,0.036502570047882425,42.645161290322584,31,0.047289861099482314,0.7718899823176267
879 +house,45072,qanss,0.04531756666436213,27.838709677419356,31,0.056349940040470725,0.8042167681423422
880 +plex,46078,ridge_panel,0.0769026646412073,1.032258064516129,31,0.05068820948551821,1.517170667927788
881 +house,45072,ar2_cell,0.057947763972213885,27.838709677419356,31,0.056349940040470725,1.0283553794484181
882 +house,25213,qanss,0.03796580981004167,129.74193548387098,31,0.057400505327128745,0.6614194351368923
883 +condo,67035,ridge_panel,0.04810920741914317,6.548387096774194,31,0.05125393045448844,0.938644256011982
884 +plex,97007,ridge_panel,0.04149623579106052,3.193548387096774,31,0.03222354310206974,1.287761425229344
885 +condo,66023,ridge_panel,0.023373811770144217,650.0322580645161,31,0.01999067162592292,1.1692359420197873
886 +condo,37067,no_change,0.024895368597045987,13.612903225806452,31,0.024895368597045987,1.0
887 +house,64015,ar2_cell,0.04931259468517401,45.25806451612903,31,0.05584029507055853,0.8831005391870465
888 +condo,81017,qanss,0.02033241965770401,64.06451612903226,31,0.01714133948740538,1.186162824243886
889 +plex,67035,lightgbm_panel,0.04231335945718816,1.8387096774193548,31,0.05458335596662332,0.7752062640315112
890 +house,49058,ridge_panel,0.022957892837022934,71.29032258064517,31,0.038576338909586866,0.5951288661899824
891 +condo,66097,ridge_panel,0.036423341251656874,7.645161290322581,31,0.02179156434253552,1.6714422461429814
892 +plex,43027,no_change,0.03619729110186907,28.741935483870968,31,0.03619729110186907,1.0
893 +plex,57035,no_change,0.08399501363571772,0.8387096774193549,31,0.08399501363571772,1.0
894 +plex,71105,ar2_cell,0.03210551554971714,0.6774193548387096,31,0.039506321886504735,0.8126677963580383
895 +plex,73015,ar2_cell,0.03889675897299931,8.419354838709678,31,0.043195280421150034,0.9004863168790541
896 +house,56083,lightgbm_panel,0.03670606365042599,83.19354838709677,31,0.05205309160046616,0.7051658704955244
897 +plex,71105,lightgbm_panel,0.02952311631189131,0.6774193548387096,31,0.039506321886504735,0.7473010622630586
898 +plex,37067,lightgbm_panel,0.03455729394692007,28.258064516129032,31,0.049867401931253656,0.6929836447978615
899 +plex,93042,lightgbm_panel,0.03480026069327411,7.225806451612903,31,0.048276651651072366,0.72085075296437
900 +house,39062,no_change,0.04222309311293329,42.645161290322584,31,0.04222309311293329,1.0
901 +plex,59020,no_change,0.04978100303484061,1.935483870967742,31,0.04978100303484061,1.0
902 +house,97007,no_change,0.046568619400292464,19.741935483870968,31,0.046568619400292464,1.0
903 +plex,60028,qanss,0.05049684664561243,2.7419354838709675,31,0.046779150280574375,1.079473362443308
904 +house,70052,ar2_cell,0.03969464066625458,42.645161290322584,31,0.047289861099482314,0.8393900879249807
905 +plex,73015,no_change,0.043195280421150034,8.419354838709678,31,0.043195280421150034,1.0
906 +plex,58227,ridge_panel,0.03204843870198197,36.87096774193548,31,0.03785756266424333,0.8465531441159547
907 +house,59015,ridge_panel,0.07442664940449777,14.096774193548388,31,0.09469235203782474,0.7859837442285533
908 +condo,37067,ar2_cell,0.017047861906959325,13.612903225806452,31,0.024895368597045987,0.6847804578793091
909 +plex,54048,ar2_cell,0.03837176424024941,9.35483870967742,31,0.0473858363588674,0.8097728601780568
910 +condo,36033,lightgbm_panel,0.05635290883837328,1.6129032258064515,31,0.04732516642857713,1.190759866072965
911 +plex,67020,ar2_cell,0.04428755756679636,0.6774193548387096,31,0.049477669192032364,0.895101937702599
912 +plex,59020,qanss,0.04547590620797982,1.935483870967742,31,0.04978100303484061,0.9135192831721822
913 +house,97007,qanss,0.03402288979569675,19.741935483870968,31,0.046568619400292464,0.7305969177064132
914 +house,25213,lightgbm_panel,0.03762055344713439,129.74193548387098,31,0.057400505327128745,0.6554045688750076
915 +plex,10043,no_change,0.03459142469954136,5.129032258064516,31,0.03459142469954136,1.0
916 +plex,94068,no_change,0.04750220348743283,34.774193548387096,31,0.04750220348743283,1.0
917 +house,47017,qanss,0.045235264312290906,57.516129032258064,31,0.06052674791096199,0.7473599007637803
918 +house,59015,qanss,0.07434872224846903,14.096774193548388,31,0.09469235203782474,0.7851607933317627
919 +house,58012,lightgbm_panel,0.0353608459105456,14.35483870967742,31,0.04487488781505725,0.7879873941140121
920 +condo,67015,ar2_cell,0.0186124856023191,9.193548387096774,31,0.01835236067676886,1.0141739218257362
921 +house,66142,no_change,0.04282535405677127,32.38709677419355,31,0.04282535405677127,1.0
922 +plex,23027,ar2_cell,0.023721599023590004,86.58064516129032,31,0.035919313188354667,0.6604134911822518
923 +plex,75028,no_change,0.0861077084608662,6.0,31,0.0861077084608662,1.0
924 +plex,93042,ridge_panel,0.03064484072202915,7.225806451612903,31,0.048276651651072366,0.6347756042303825
925 +house,94068,lightgbm_panel,0.029863705211948897,118.25806451612904,31,0.049232221755305894,0.6065886150817559
926 +condo,10043,ar2_cell,0.01339946765518867,5.129032258064516,31,0.020513984828815956,0.6531869730334627
927 +house,25213,ridge_panel,0.03355606772654239,129.74193548387098,31,0.057400505327128745,0.5845953364923262
928 +house,63048,ridge_panel,0.04874484827918456,31.580645161290324,31,0.06289317944714591,0.7750418838365246
929 +condo,75005,ar2_cell,0.02319942330716182,0.03225806451612903,31,0.02801200834396392,0.8281956446068557
930 +condo,59020,no_change,0.022315331790274066,4.354838709677419,31,0.022315331790274066,1.0
931 +condo,89008,lightgbm_panel,0.016620609952174643,1.032258064516129,31,0.027446325447215727,0.6055677647683329
932 +plex,52007,no_change,0.03415381944202661,2.064516129032258,31,0.03415381944202661,1.0
933 +house,75028,no_change,0.05830042237291534,22.032258064516128,31,0.05830042237291534,1.0
934 +condo,66023,lightgbm_panel,0.015263683540365034,650.0322580645161,31,0.01999067162592292,0.763540306498349
935 +house,73005,qanss,0.05021439542418621,21.161290322580644,31,0.0458492500640935,1.0952064723848391
936 +plex,37067,ar2_cell,0.03762680714475115,28.258064516129032,31,0.049867401931253656,0.7545371462628596
937 +condo,54048,no_change,0.026008798810985268,11.838709677419354,31,0.026008798810985268,1.0
938 +plex,73010,qanss,0.043355319492792706,6.193548387096774,31,0.04264331680898908,1.0166967003761194
939 +condo,57035,qanss,0.019067255319590835,7.870967741935484,31,0.01532486156195089,1.2442040825302914
940 +plex,23072,qanss,0.03565046495276472,1.1935483870967742,31,0.03536485260469175,1.0080761639604594
941 +plex,72005,ar2_cell,0.07044932041656982,3.7419354838709675,31,0.08304598225275957,0.848317022756737
942 +plex,59010,lightgbm_panel,0.12651600056294515,1.3548387096774193,31,0.1398889974677805,0.9044027968824679
943 +plex,23027,qanss,0.026739558320076115,86.58064516129032,31,0.035919313188354667,0.7444340090763567
944 +house,64008,qanss,0.03326651912684149,103.93548387096774,31,0.049997097642969016,0.6653690053050447
945 +condo,63048,ridge_panel,0.11108421229351945,0.5483870967741935,31,0.10840198911434598,1.0247433022316976
946 +house,67050,no_change,0.04159016449971364,42.193548387096776,31,0.04159016449971364,1.0
947 +house,65005,qanss,0.030747302972810326,243.29032258064515,31,0.041379745530324814,0.7430520071777003
948 +condo,64015,no_change,0.02192500669747209,23.548387096774192,31,0.02192500669747209,1.0
949 +plex,31084,ar2_cell,0.034949362393569924,6.580645161290323,31,0.04394431158707675,0.7953102718270348
950 +plex,58033,lightgbm_panel,0.03343914315887629,1.4838709677419355,31,0.04098607539926355,0.8158659455224917
951 +plex,72005,qanss,0.0675849944778673,3.7419354838709675,31,0.08304598225275957,0.8138261797201091
952 +house,72005,ar2_cell,0.04861741294205251,39.29032258064516,31,0.0538945005594945,0.9020848590735788
953 +plex,89008,ridge_panel,0.030927187979514822,6.032258064516129,31,0.040821175723862846,0.7576260955520618
954 +house,71083,lightgbm_panel,0.03106692727633187,38.74193548387097,31,0.04653390370965805,0.6676191937424749
955 +plex,29073,qanss,0.03684820816007737,4.0,31,0.04422468206153482,0.8332045916985061
956 +house,25213,ar2_cell,0.05217574791966208,129.74193548387098,31,0.057400505327128745,0.9089771531158048
957 +plex,57040,ar2_cell,0.08305782092687408,1.8064516129032258,31,0.08351832822287102,0.9944861528505688
958 +house,67020,qanss,0.047460961541995875,23.258064516129032,31,0.05515306632914995,0.8605316929933127
959 +house,67020,ridge_panel,0.04763498764815535,23.258064516129032,31,0.05515306632914995,0.8636870226556909
960 +house,57035,qanss,0.07318952974661579,20.29032258064516,31,0.063868571135985,1.1459396765082654
961 +condo,23027,qanss,0.032551645479997296,206.67741935483872,31,0.04315247707704911,0.7543401372272571
added results/extra/municipal_mase_summary_b.csv +5 −0
@@ -0,0 +1,5 @@
1 +model,median_mase,share_beating_no_change,p10,p90,cells
2 +lightgbm_panel,0.7447898694637531,0.90625,0.6152097157122373,0.9722248213102505,192
3 +ridge_panel,0.7974971357451583,0.71875,0.6318962380233923,1.4354353421870432,192
4 +qanss,0.8237019852416398,0.828125,0.6806788666887754,1.079473362443308,192
5 +ar2_cell,0.9053572832387536,0.8020833333333334,0.7611567657338407,1.0777460391234608,192
added results/extra/raref_regimes.csv +94 −0
@@ -0,0 +1,94 @@
1 +origin,class,p_low,p_mid,p_high,mu_low,mu_high,prov_growth_last
2 +2023-12,house,1.3960141289734638e-7,0.9999998603985871,1.3827470978060958e-19,-0.014761768231425818,0.02766309207691326,-0.010834278427879707
3 +2023-12,condo,0.0,0.9980060635647896,0.0019939364352105195,-0.020477093420909004,0.011146942416753586,-0.0028232284557639375
4 +2023-12,plex,0.9999992766874569,7.597031444322456e-8,6.473422287586151e-7,-0.0172677037583087,0.02620798158379756,-0.013600949302284726
5 +2024-01,house,2.5474746030864812e-8,0.9999999744734329,5.182125124725799e-11,-0.014761612121914834,0.027663525087305345,0.00776093056811844
6 +2024-01,condo,0.0,0.9979029603958421,0.002097039604157867,-0.020477093420909004,0.011424654497490621,0.007755996449460734
7 +2024-01,plex,1.9909416932094327e-18,0.9999995194264713,4.805735287779905e-7,-0.012860388642925828,0.026190370886960142,0.014984980721095775
8 +2024-02,house,7.489493229358726e-8,0.9999999251050677,5.012619112744628e-32,-0.014761687354515616,0.02766259384449226,-0.026792776869139612
9 +2024-02,condo,0.0,0.9996878147662267,0.00031218523377324933,-0.020477093420909004,0.011296269846594612,0.0016373314660749205
10 +2024-02,plex,1.3577382557025935e-17,0.9999999999999999,8.9006340900149e-17,-0.012860706409496048,0.025937751205164596,-0.03943049089483261
11 +2024-03,house,3.3580818691121328e-9,2.4693457165865627e-6,0.9999975272962015,-0.014661814397413497,0.03058249779240768,0.04236770550855373
12 +2024-03,condo,0.0,0.9980594040729359,0.0019405959270640408,-0.020477093420909004,0.011015187852222023,0.01361985770054569
13 +2024-03,plex,4.983912230271104e-38,3.6831200494317484e-9,0.99999999631688,-0.018382406245473343,0.030046665867391253,0.04564042937711868
14 +2024-04,house,9.350161070369228e-10,0.010938671920251794,0.9890613271447322,-0.014781641655815435,0.027670107126115975,0.02763480820864439
15 +2024-04,condo,0.0,0.9979751810458668,0.002024818954133175,-0.020477093420909004,0.011021676326393264,0.014130051406736899
16 +2024-04,plex,3.530352949876714e-21,0.9999887156834095,0.000011284316590560122,-0.012860400596844342,0.02615145891455684,0.019383833791424332
17 +2024-05,house,0.014308231385579046,0.0006215997408911898,0.9850701688735298,-0.015182419966897407,0.027813382572427475,0.02841185103715499
18 +2024-05,condo,0.0,0.999763954293304,0.0002360457066959731,-0.020477093420909004,0.011180660921899314,0.01306830555195404
19 +2024-05,plex,1.5565908145483682e-24,1.0,3.115455302849984e-23,-0.012861051344699712,0.02735545473890775,0.03578559220686833
20 +2024-06,house,0.000735514373176484,0.018869248568619396,0.9803952370582041,-0.015238609174028738,0.028725467921082094,0.019212698674201556
21 +2024-06,condo,0.0,0.9998838558790822,0.00011614412091786188,-0.020477093420909004,0.011201701831787259,0.006088921893244559
22 +2024-06,plex,7.961514306508743e-28,1.0,7.721184540427058e-46,-0.012861054173740406,0.02736426827568638,0.010253364043915358
23 +2024-07,house,0.0002029723641138956,0.9997957824321219,1.2452037642785763e-6,-0.015081819805671394,0.03010313933934561,-0.007343433091525575
24 +2024-07,condo,0.0,0.9997190555716159,0.0002809444283841355,-0.020477093420909004,0.010987622475950238,0.004727576124460842
25 +2024-07,plex,4.0687041692471995e-29,1.0,1.7298417568135755e-81,-0.012861054788535824,0.02736619836183998,-0.0007314054504435341
26 +2024-08,house,0.000028429219319595445,0.08352046933076329,0.9164511014499171,-0.015282312925646616,0.02811937714248156,0.014855088316047038
27 +2024-08,condo,0.0,0.9996296890764996,0.000370310923500425,-0.020477093420909004,0.010752513925659938,-0.0021323627550338675
28 +2024-08,plex,3.7663899008232983e-34,1.0,8.534714999690088e-90,-0.012861059011906052,0.027379601875370967,-0.0019023046668490973
29 +2024-09,house,0.006695469301129883,0.993303371294601,1.1594042691489133e-6,-0.01508695961608558,0.02860165206013092,-0.009800794762744425
30 +2024-09,condo,0.0,0.9997618728594201,0.00023812714057994778,-0.020477093420909004,0.01077037479527113,0.008451476068508879
31 +2024-09,plex,5.476798318760575e-35,1.0,7.037277851988809e-114,-0.012861059041742583,0.02737969747345557,-0.006928899544170308
32 +2024-10,house,0.05867321001237165,0.9413257639883279,1.0259993004404167e-6,-0.015014154326116986,0.02858871617512018,0.0007099377479380942
33 +2024-10,condo,0.0,0.999937385449426,0.00006261455057400564,-0.020477093420909004,0.010931750858694782,0.005556210101447134
34 +2024-10,plex,1.154680508282468e-41,1.0,4.886185834625053e-47,-0.012861063778063918,0.027395037240318915,0.041141731885471544
35 +2024-11,house,0.058576969591999366,0.9409760358693564,0.00044699453864415324,-0.014882014485654172,0.028852480725976435,0.007028721560337847
36 +2024-11,condo,0.0,0.9993903410975876,0.0006096589024124192,-0.020477093420909004,0.014734681073028019,-0.0028989997462619543
37 +2024-11,plex,0.9999101646862719,2.7790590956913696e-13,0.00008983531345006149,-0.009311540997796382,0.026831817176088634,-0.018189641910734966
38 +2024-12,house,0.20095762791407704,0.7990423707886938,1.2972292201090837e-9,-0.01495584796656948,0.028713437398175903,-0.013601938806184932
39 +2024-12,condo,0.0,0.9999895237725602,0.000010476227439710163,-0.020477093420909004,0.010996310047799494,0.0009087852102634963
40 +2024-12,plex,0.0004716483398434241,0.999454142440101,0.00007420922005549885,-0.03128972397718436,0.028495040126552452,-0.0026946951276948794
41 +2025-01,house,0.06296807422987903,0.8903770877620978,0.04665483800802311,-0.014472565715167751,0.02881604829316498,0.01690146697967254
42 +2025-01,condo,0.0,0.9999924924844971,7.507515502878911e-6,-0.020477093420909004,0.010960878591839623,0.009177893497554157
43 +2025-01,plex,6.8260215577783495e-9,0.00032560115270455453,0.9996743920212738,-0.023100643944188287,0.03052839695164746,0.03291407876826574
44 +2025-02,house,0.04477881724075204,0.9552153900680566,5.792691191317961e-6,-0.015431361494928882,0.028741108354940915,0.00005640588133193347
45 +2025-02,condo,0.0,0.9999907177575873,9.28224241278212e-6,-0.020477093420909004,0.010830612260636438,0.014273893343465183
46 +2025-02,plex,0.4183026270223828,0.581695989023352,1.3839542652593395e-6,-0.022153279089034642,0.030004693381487507,-0.01641663615490524
47 +2025-03,house,0.0354934950390618,0.07894262528076215,0.885563879680176,-0.01374584637179051,0.028471769667169345,0.02589456318959954
48 +2025-03,condo,0.0,0.999996738381302,3.2616186980243883e-6,-0.020477093420909004,0.010892767137287766,0.014487158623853913
49 +2025-03,plex,0.0002499812040295739,0.08949593316669174,0.9102540856292787,-0.0011513413052937776,0.037563028515680504,0.0343506757507146
50 +2025-04,house,0.04871944449156565,0.17168685378613682,0.7795937017222975,-0.012160025749261038,0.027301810128117786,0.021059904102114446
51 +2025-04,condo,0.0,0.9999995749658717,4.250341283144406e-7,-0.020477093420909004,0.011053951962060136,0.00734078809092803
52 +2025-04,plex,0.3334528584307393,0.6665471386087471,2.9605136128221147e-9,-0.0012460289830778586,0.03725029711933895,0.00299156984594956
53 +2025-05,house,0.10241638661881534,0.11192324126986135,0.7856603721113233,-0.00888503833026818,0.02879728808389949,0.029084090185651168
54 +2025-05,condo,0.0,0.9999987616207079,1.23837929205192e-6,-0.020477093420909004,0.010865762264990213,0.009768996047619438
55 +2025-05,plex,8.169194925291397e-47,1.0,4.177259450180736e-55,-0.012861057198179673,0.02737381460430788,0.014861616501513852
56 +2025-06,house,0.0366627211861262,0.0727417712931984,0.8905955075206754,-0.008006650172921851,0.027552072660210186,0.020078873542933362
57 +2025-06,condo,0.0,0.9999984209901606,1.579009839351526e-6,-0.020477093420909004,0.010742797533198244,0.007721934321619439
58 +2025-06,plex,0.00010540138103996198,0.36516653835313573,0.6347280602658243,-0.010856648189761597,0.032116437186757,0.025986598332244593
59 +2025-07,house,0.05572209190323771,0.9442742278782726,3.680218489721759e-6,-0.00803404038356055,0.02772880346335827,-0.006870682956411689
60 +2025-07,condo,0.0,0.9999990603625598,9.396374401243509e-7,-0.020477093420909004,0.0107273991084621,-0.006616030705549891
61 +2025-07,plex,0.8948160350930773,0.10518396490692283,5.657061527274516e-31,-0.0034645777160532513,0.03676286762179321,-0.0005834669928787006
62 +2025-08,house,0.0041086069542704525,0.9159605159547373,0.0799308770909924,-0.0077561760159903965,0.027568458094261405,0.008725037017579096
63 +2025-08,condo,0.0,0.9999996599434551,3.4005654489108136e-7,-0.020477093420909004,0.010788986132599583,0.003332014619710444
64 +2025-08,plex,4.615397573208293e-53,1.0,6.106287976784881e-74,-0.012861060006730832,0.027382796290286258,0.00913885673065723
65 +2025-09,house,0.9829717619767067,0.01702823802328815,5.1770813768493336e-15,-0.0027943092601009213,0.025841117383032724,-0.015236306472889871
66 +2025-09,condo,0.0,0.9999998269611662,1.7303883373744895e-7,-0.020477093420909004,0.010803504207995971,-0.0007248268623808451
67 +2025-09,plex,0.4508487745312469,0.5491512253545631,1.1419004207714084e-10,-0.0014431334773796368,0.035394499305527065,-0.00695303556957072
68 +2025-10,house,0.102107975513513,0.8978604348711813,0.00003158961530560587,-0.002366131979826654,0.026153150065003662,0.0075016048293714555
69 +2025-10,condo,0.0,0.999999888322233,1.1167776702050582e-7,-0.020477093420909004,0.010792516497428548,0.0017395272195505074
70 +2025-10,plex,0.8634780896952844,0.1309240436384321,0.005597866666283534,-0.002824159413838405,0.024188798846744453,-0.0034331211515667426
71 +2025-11,house,0.12130019480827052,0.8786996623906367,1.4280109289036133e-7,-0.0063321161332491145,0.026886400962316148,-0.005007362856711439
72 +2025-11,condo,0.0,0.9999999605339557,3.946604445696057e-8,-0.020477093420909004,0.010843076897759804,0.0013424060032225515
73 +2025-11,plex,1.3119932124839418e-10,0.04514660569741215,0.9548533941713886,-0.012159772556715326,0.009218867923516364,0.0031019825833064063
74 +2025-12,house,0.19227101401045898,0.807728971045243,1.4944298026395966e-8,-0.006789773040233834,0.02692798902535092,-0.008907078656085532
75 +2025-12,condo,0.0,0.999999985161806,1.4838194032443745e-8,-0.020477093420909004,0.01087254941857548,-0.0013195436429211393
76 +2025-12,plex,4.714789975106513e-17,0.9999578864287699,0.0000421135712301185,-0.012861061577024052,0.0273878676284203,0.027121951627950336
77 +2026-01,house,0.14585295673573445,0.8533947256328612,0.0007523176314044072,-0.0011936420941520752,0.025949946314302638,0.009176891125764697
78 +2026-01,condo,0.0,0.9521233930463266,0.04787660695367333,-0.020477093420909004,0.011616056125506523,0.0021841369002610356
79 +2026-01,plex,0.880210576581176,0.11599948465485672,0.00378993876396726,-0.0016695444092631932,0.024426397366395493,0.0002774358518036757
80 +2026-02,house,0.11449171672209803,0.8855082807057949,2.572107063562182e-9,-0.004908154483091716,0.026606487061069942,-0.008430251960884427
81 +2026-02,condo,0.0,0.9028138629231105,0.09718613707688963,-0.020477093420909004,0.011208770166017082,0.004810699089039139
82 +2026-02,plex,0.9146247337634175,0.08240871273529495,0.0029665535012875764,0.00014566695196358763,0.02489841706410422,0.004087229497112488
83 +2026-03,house,0.09536368148944982,0.05189420591007204,0.8527421126004782,-0.007072768079633364,0.027198448753913747,0.028185137414457828
84 +2026-03,condo,0.0,0.9769661888355216,0.023033811164478484,-0.020477093420909004,0.01101333947094332,-0.0012553170936136504
85 +2026-03,plex,0.35677636573967664,0.6432112133619132,0.000012420898410109993,-0.0009007134137983872,0.03435404635891533,0.00363193832634201
86 +2026-04,house,0.4557903571161708,0.2780420732942031,0.26616756958962606,-0.0012190479277991379,0.025716665172307505,0.019915562524943864
87 +2026-04,condo,0.0,0.3660299332571347,0.6339700667428653,-0.020477093420909004,0.012349823696812399,0.011601678101765434
88 +2026-04,plex,1.5592223107339606e-30,1.0,1.1960283208461412e-26,-0.012861060390465646,0.027384032307018007,0.013117321305888607
89 +2026-05,house,0.43935935358194983,0.2741978701626424,0.2864427762554078,-0.0013799764634320273,0.025723875744692332,0.02053977477404434
90 +2026-05,condo,0.0,0.42221411869913095,0.577785881300869,-0.020477093420909004,0.011162248593381986,0.011039093243384424
91 +2026-05,plex,0.17318454721171062,0.8267883809731075,0.00002707181518205944,-0.0017480095094311672,0.0343192883589262,0.006373651851954376
92 +2026-06,house,0.03662509155500701,0.07301770158259278,0.8903572068624003,-0.001861353478114055,0.025527674407703534,0.019636913017594848
93 +2026-06,condo,0.0,0.8534961915367885,0.14650380846321157,-0.020477093420909004,0.010817127251071815,0.006953256607608094
94 +2026-06,plex,0.15184801023454142,0.8072804858596848,0.04087150390577369,-0.003792216335061781,0.03596435654929956,0.022344092244141467
added results/extra/selection_rates.csv +37 −0
@@ -0,0 +1,37 @@
1 +class,dimension,quintile,stock_units,sales_2021_2026,annual_sale_rate_pct
2 +condo,age_q,,1085,239,3.830895612101783
3 +condo,age_q,age1,79069,25263,5.556621706852628
4 +condo,age_q,age2,66819,27722,7.21533903725639
5 +condo,age_q,age3,61561,22143,6.25551326609238
6 +condo,age_q,age4,72745,25627,6.1267022684959676
7 +condo,age_q,age5,63120,21988,6.05830164765526
8 +condo,fa_q,,5736,1975,5.988114729246256
9 +condo,fa_q,fa1,67994,22523,5.760866368004338
10 +condo,fa_q,fa2,67942,24956,6.388057332788965
11 +condo,fa_q,fa3,67713,25896,6.651089412539754
12 +condo,fa_q,fa4,67494,26398,6.802021693393681
13 +condo,fa_q,fa5,67520,21234,5.469297341850401
14 +house,age_q,,27312,4034,2.5687068592241666
15 +house,age_q,age1,393295,108006,4.77597024470513
16 +house,age_q,age2,366413,77080,3.6584993958468583
17 +house,age_q,age3,400635,76077,3.3024530080236754
18 +house,age_q,age4,367585,81880,3.8739339200457037
19 +house,age_q,age5,344229,75581,3.8185399077737303
20 +house,fa_q,,26451,3669,2.412335853169026
21 +house,fa_q,fa1,375728,93206,4.314221758941251
22 +house,fa_q,fa2,375812,83785,3.877285543789471
23 +house,fa_q,fa3,373462,83503,3.8885511429717665
24 +house,fa_q,fa4,373891,82494,3.837156446316079
25 +house,fa_q,fa5,374125,76001,3.53292755560075
26 +plex,age_q,,8030,1784,3.863771725594239
27 +plex,age_q,age1,67391,17891,4.617053109272106
28 +plex,age_q,age2,66817,15368,4.000023425436511
29 +plex,age_q,age3,63909,15188,4.1330505943573295
30 +plex,age_q,age4,65980,17845,4.703665142269727
31 +plex,age_q,age5,64156,18247,4.946367143132094
32 +plex,fa_q,,8571,1877,3.808596226912795
33 +plex,fa_q,fa1,65585,20960,5.558004713431955
34 +plex,fa_q,fa2,65694,18252,4.831888558415103
35 +plex,fa_q,fa3,65385,15943,4.2405684058635975
36 +plex,fa_q,fa4,65518,15076,4.00182094001383
37 +plex,fa_q,fa5,65530,14215,3.7725834168220334
added results/extra/tests_holm_a.csv +34 −0
@@ -0,0 +1,34 @@
1 +h,model,reference,n_origins,mean_sq_diff,dm_stat,dm_p,gw_stat,gw_p,boot_ci_lo,boot_ci_hi,dm_p_holm,dm_p_bonferroni
2 +1-3,hedonic_ols,naive_mun_median,12,-0.10176270226777091,-120.54182491619301,0.0,NaN,NaN,-0.10323961159272235,-0.10011836279295769,0.0,0.0
3 +1-3,ridge,naive_mun_median,12,-0.10176280421045077,-120.5361689524081,0.0,NaN,NaN,-0.10323978441566739,-0.10011837130417145,0.0,0.0
4 +1-3,elastic_net,naive_mun_median,12,-0.10167200924053704,-105.19490171011431,0.0,NaN,NaN,-0.1032667295556599,-0.09983441978976014,0.0,0.0
5 +1-3,random_forest,naive_mun_median,12,-0.11164128615902626,-123.38123905196595,0.0,NaN,NaN,-0.11335182035496753,-0.1099478285491832,0.0,0.0
6 +1-3,xgboost,naive_mun_median,12,-0.11638854977178724,-131.10589822060308,0.0,NaN,NaN,-0.1180122532280134,-0.11485385850884962,0.0,0.0
7 +1-3,lightgbm,naive_mun_median,12,-0.11713160975562813,-132.28465797891917,0.0,NaN,NaN,-0.11876759682290643,-0.11550021093759738,0.0,0.0
8 +1-3,hshn_full,naive_mun_median,12,-0.10274567827562471,-61.234208834860084,2.6645352591003757e-15,NaN,NaN,-0.10544625770956502,-0.09944945357712975,1.3322676295501878e-14,2.930988785010413e-14
9 +1-3,hshn_none,naive_mun_median,12,-0.10368378677100022,-52.70012047012284,1.4210854715202004e-14,NaN,NaN,-0.1065856041684689,-0.09996492912468549,5.684341886080802e-14,1.5631940186722204e-13
10 +1-3,hshn_partial,naive_mun_median,12,-0.10357211817013508,-51.40520589278546,1.865174681370263e-14,NaN,NaN,-0.10653549592296054,-0.09977548758602427,5.684341886080802e-14,2.0516921495072893e-13
11 +1-3,svr,naive_mun_median,12,-0.09412896341382888,-50.38858170300251,2.3092638912203256e-14,NaN,NaN,-0.09700778913272833,-0.0906801459728759,5.684341886080802e-14,2.540190280342358e-13
12 +1-3,mlp,naive_mun_median,12,-0.0709263126663738,-7.46314285403188,0.00001256453457920692,NaN,NaN,-0.08411958068753912,-0.053686136577472066,0.00001256453457920692,0.00013820988037127613
13 +7-12,lightgbm,naive_mun_median,12,-0.11626561070614895,-47.72343702078561,4.196643033083092e-14,NaN,NaN,-0.1180199855811455,-0.11442327468644327,4.616307336391401e-13,4.616307336391401e-13
14 +7-12,xgboost,naive_mun_median,12,-0.11462259145055319,-45.71260153550541,6.705747068735946e-14,NaN,NaN,-0.11649336403893579,-0.1127590091904277,6.705747068735946e-13,7.37632177560954e-13
15 +7-12,ridge,naive_mun_median,12,-0.10252598618248952,-42.08015739987875,1.6608936448392342e-13,NaN,NaN,-0.10446195975111996,-0.10062472962929396,1.4948042803553108e-12,1.8269830093231576e-12
16 +7-12,hedonic_ols,naive_mun_median,12,-0.10252553249300639,-42.082258334649886,1.6608936448392342e-13,NaN,NaN,-0.10446156973569357,-0.10062438016915667,1.4948042803553108e-12,1.8269830093231576e-12
17 +7-12,elastic_net,naive_mun_median,12,-0.10272438821315723,-39.91686138507093,2.9598545836506673e-13,NaN,NaN,-0.10458229859082285,-0.10070704068326941,2.071898208555467e-12,3.255840042015734e-12
18 +7-12,random_forest,naive_mun_median,12,-0.11170459605382325,-29.498631600602447,8.008038676621254e-12,NaN,NaN,-0.11377153946023734,-0.1096056663918153,4.8048232059727525e-11,8.80884254428338e-11
19 +7-12,hshn_full,naive_mun_median,12,-0.10105698257192752,-26.847837446014008,2.226618889267229e-11,NaN,NaN,-0.10336044511950587,-0.09848921308979545,1.1133094446336145e-10,2.449280778193952e-10
20 +7-12,hshn_none,naive_mun_median,12,-0.10280575410806043,-23.941485850297386,7.699596515919893e-11,NaN,NaN,-0.10529136266550071,-0.10015486265636098,3.079838606367957e-10,8.469556167511882e-10
21 +7-12,hshn_partial,naive_mun_median,12,-0.10270417710978064,-23.517437053319437,9.339640172356667e-11,NaN,NaN,-0.10520635785845939,-0.1000338911577909,3.079838606367957e-10,1.0273604189592334e-9
22 +7-12,svr,naive_mun_median,12,-0.09884678103581103,-16.37433628810692,4.514141505040925e-9,NaN,NaN,-0.10176048316052576,-0.09581038424192398,9.02828301008185e-9,4.9655556555450175e-8
23 +7-12,mlp,naive_mun_median,12,-0.07660005407023951,-1.6897883636899185,0.11917602167784125,NaN,NaN,-0.09441734356184955,-0.05771628076350301,0.11917602167784125,1.0
24 +4-6,lightgbm,naive_mun_median,12,-0.11774227553576211,-67.50801383470541,8.881784197001252e-16,NaN,NaN,-0.12021971327838127,-0.11539458654472805,9.769962616701378e-15,9.769962616701378e-15
25 +4-6,hedonic_ols,naive_mun_median,12,-0.10366688546806724,-66.44933141867676,1.1102230246251565e-15,NaN,NaN,-0.10628175390087395,-0.10126499857334781,1.1102230246251565e-14,1.2212453270876722e-14
26 +4-6,ridge,naive_mun_median,12,-0.10366727361725532,-66.44818689078123,1.1102230246251565e-15,NaN,NaN,-0.10628218844945284,-0.10126528756239726,1.1102230246251565e-14,1.2212453270876722e-14
27 +4-6,xgboost,naive_mun_median,12,-0.1166902579268289,-62.96591904218319,1.9984014443252818e-15,NaN,NaN,-0.11924177009718326,-0.11429503231958388,1.5987211554602254e-14,2.19824158875781e-14
28 +4-6,elastic_net,naive_mun_median,12,-0.10379949498054518,-61.19958831090054,2.6645352591003757e-15,NaN,NaN,-0.10675486006951924,-0.10121621895339006,1.865174681370263e-14,2.930988785010413e-14
29 +4-6,random_forest,naive_mun_median,12,-0.11352992343289571,-57.547731423369726,5.329070518200751e-15,NaN,NaN,-0.11640598222452926,-0.11092424048023862,3.197442310920451e-14,5.861977570020827e-14
30 +4-6,hshn_full,naive_mun_median,12,-0.103455533697632,-42.3296615910775,1.5565326805244695e-13,NaN,NaN,-0.1062864979098995,-0.10089048477165519,7.782663402622347e-13,1.7121859485769164e-12
31 +4-6,hshn_none,naive_mun_median,12,-0.10496637425607924,-38.57127213509431,4.303224443447107e-13,NaN,NaN,-0.10787061170378646,-0.10227807732855433,1.7212897773788427e-12,4.7335468877918174e-12
32 +4-6,hshn_partial,naive_mun_median,12,-0.10485063794418019,-37.603452431274505,5.682121440031551e-13,NaN,NaN,-0.1077667279440602,-0.10211627936958256,1.7212897773788427e-12,6.250333584034706e-12
33 +4-6,svr,naive_mun_median,12,-0.09687482752035653,-30.65765174990292,5.2657878057971175e-12,NaN,NaN,-0.10019805044189102,-0.09366361356399514,1.0531575611594235e-11,5.792366586376829e-11
34 +4-6,mlp,naive_mun_median,12,-0.07532820344965073,-4.178358057778904,0.0015408174137703234,NaN,NaN,-0.09135144085510567,-0.05859207666430262,0.0015408174137703234,0.016948991551473558
added results/extra/tests_holm_b.csv +73 −0
@@ -0,0 +1,73 @@
1 +h,model,reference,n_origins,mean_sq_diff,dm_stat,dm_p,gw_stat,gw_p,boot_ci_lo,boot_ci_hi,dm_p_holm,dm_p_bonferroni
2 +3,local_linear_trend,no_change,31,0.00507271676846072,8.078772454130444,5.111579381988918e-9,103.25491452149102,0.0,0.0039317584426743065,0.006362804392160033,9.200842887580052e-8,9.200842887580052e-8
3 +3,lightgbm_panel,no_change,31,-0.0014107860376370936,-2.911407602651308,0.006726615748706477,10.74162070470091,0.004650361351740351,-0.002267360116663805,-0.0006380695909737433,0.11435246772801011,0.12107908347671659
4 +3,qanss,no_change,31,-0.0009045980331833501,-2.1840734816137073,0.03690848542382752,5.438102549454465,0.06593728112640496,-0.001644956405908316,-0.0002913818531563228,0.5905357667812403,0.6643527376288954
5 +3,qrefa,no_change,31,-0.0011816683852870966,-2.0440070741368412,0.04981780471611619,4.680734289219618,0.09629227854879652,-0.0022907151563549733,-0.00032135132484177766,0.7472670707417428,0.8967204848900914
6 +3,ridge_panel,no_change,31,-0.001120709807778601,-2.0218546918303817,0.05218906585573091,4.64202279770507,0.09817424205908909,-0.0021371646881531764,-0.00030685570954089644,0.7472670707417428,0.9394031854031564
7 +3,bhpf,no_change,31,-0.0010573145145015407,-1.9224606962460093,0.06408847427248077,4.239341507697632,0.12007115496977461,-0.002081544249955321,-0.00024310451235997612,0.83315016554225,1.0
8 +3,ar2_cell,no_change,31,-0.0006720961258489032,-1.8638167584288836,0.07216122675150882,4.619325602276005,0.09929472798450101,-0.0012928055129757183,-0.00007622233183786958,0.8659347210181059,1.0
9 +3,raref,no_change,31,-0.001044348577611065,-1.7408437400099837,0.0919597253221256,3.5312002158567304,0.17108408675568298,-0.0021951124243310216,-0.0001796516684244232,1.0,1.0
10 +3,gru,no_change,31,-0.0009374396314905094,-1.6677841018325357,0.10576539475159086,3.3245558310800893,0.18970635249562406,-0.0020775720121415245,-0.00003090899384418048,1.0,1.0
11 +3,tcn,no_change,31,-0.0007750483010963631,-1.2861234853000874,0.2082380532830137,3.026071140278799,0.22024040700574288,-0.0019832597551307438,0.0002261479486956156,1.0,1.0
12 +3,dsgfn,no_change,31,-0.0007737665857743937,-1.2444036543300385,0.22298576285490102,3.744166552691028,0.15380291385551148,-0.0019487979079324937,0.00018067001505896223,1.0,1.0
13 +3,mlp_panel,no_change,31,-0.0007086569173029839,-1.2285666343825057,0.2287852750093755,2.234087681467808,0.32724575672671397,-0.0018326670149720725,0.00021941606981970972,1.0,1.0
14 +3,rw_drift,no_change,31,0.0003629950163435784,1.1445626462736291,0.26144035424105994,20.968284346756242,0.000027976598268253383,-0.00015162029004764157,0.0008235292005226034,1.0,1.0
15 +3,seasonal_naive,no_change,31,0.0005996261710026072,1.124651306665567,0.26965505301964576,14.393178168090785,0.0007491366977835368,-0.0003704931075323685,0.0013893274932546137,1.0,1.0
16 +3,lstm,no_change,31,-0.0006495489122728281,-1.0233439077040538,0.31432684104760833,3.382093096630373,0.18432651640953224,-0.001910357251364381,0.0004003280248171119,1.0,1.0
17 +3,momentum,no_change,31,-0.00010221235824024602,-0.961199009854551,0.34413588162939,5.531173964883624,0.06293914433047831,-0.0002899548745035709,0.00008468381969890004,1.0,1.0
18 +3,mean_growth,no_change,31,-0.0002038104216616008,-0.5891321279246756,0.5601831976867242,13.828335729273741,0.0009936079310940427,-0.0007585314745313134,0.00029169255361134185,1.0,1.0
19 +3,tft_lite,no_change,31,0.00020109161308657652,0.23388313005427855,0.8166644373980072,2.6880505684129767,0.2607937838338801,-0.0009989477840993053,0.0017786583546712425,1.0,1.0
20 +6,local_linear_trend,no_change,25,0.01535900182162245,10.46516301406498,2.007887189847679e-10,471.1785413955145,0.0,0.013251953830708922,0.017721590481035204,3.6141969417258224e-9,3.6141969417258224e-9
21 +6,lightgbm_panel,no_change,25,-0.0020342234984908896,-1.7892806790059101,0.08619865699737561,5.418116715858697,0.0665994900794813,-0.0032645070848641706,-0.0006694649529776694,1.0,1.0
22 +6,ar2_cell,no_change,25,-0.0015723310020638195,-1.6651181771383876,0.108891515263835,6.728724677471108,0.03458406200506081,-0.002545519809407774,-0.0004118042767136899,1.0,1.0
23 +6,qrefa,no_change,25,-0.0015009990801796522,-1.2732264360264005,0.21513256019018256,8.073495570506017,0.017654796339252377,-0.0028177863542601348,-2.36933676282929e-6,1.0,1.0
24 +6,qanss,no_change,25,-0.0011205967434744072,-1.2687496683662223,0.21669843221232665,13.782913053314317,0.0010164323015641186,-0.0021202548465786147,0.00007106750773317064,1.0,1.0
25 +6,tcn,no_change,25,-0.0010865190830891402,-1.23404009460135,0.22913609283178804,6.21333924986336,0.044749740868249566,-0.002108684724377038,0.0001301731288641831,1.0,1.0
26 +6,gru,no_change,25,-0.0012800315979698915,-1.233425373267221,0.2293611443549679,9.894810176614204,0.007101813618652364,-0.0024213282106250716,0.000023075618675567996,1.0,1.0
27 +6,lstm,no_change,25,-0.0012758362390018652,-1.1679524387122306,0.2542980997449553,12.628669289490956,0.001810169765976588,-0.0024840605858381273,0.0001257770690841541,1.0,1.0
28 +6,seasonal_naive,no_change,25,0.0010217171755325682,1.0005373783866303,0.3270322150429805,61.26278947317716,4.973799150320701e-14,-0.0003881992163607208,0.002122886218326578,1.0,1.0
29 +6,raref,no_change,25,-0.0011943639443882,-0.925550035476887,0.363893675365083,14.240771881406499,0.0008084546753406308,-0.002585732206582571,0.0003445636009673543,1.0,1.0
30 +6,ridge_panel,no_change,25,-0.0012004699277736895,-0.9189233025233179,0.36727949472096855,10.926817982554233,0.004239080098079717,-0.002587102489197774,0.0003609657902895531,1.0,1.0
31 +6,dsgfn,no_change,25,-0.0010597681348910144,-0.9105747485217236,0.37157467218409024,8.399483158702672,0.01499945248792145,-0.0023981014704288458,0.0004467104076741862,1.0,1.0
32 +6,rw_drift,no_change,25,0.0008913004493892636,0.904241589710308,0.37485498113994775,29.94251275063142,3.148226491722639e-7,-0.00041574435000864897,0.0020313856803232137,1.0,1.0
33 +6,bhpf,no_change,25,-0.0009935923638241053,-0.7363639410363293,0.4686463031217585,13.109232212305567,0.0014235292462408955,-0.002415133638099465,0.0006471748625480187,1.0,1.0
34 +6,mean_growth,no_change,25,-0.0007173257100953768,-0.729632054772079,0.4726768394538292,11.507846064762315,0.0031703191041764223,-0.0018406292044246997,0.0004419949860673104,1.0,1.0
35 +6,momentum,no_change,25,0.00020340265564327696,0.5699368488026949,0.574017503055948,5.347857663817832,0.06898067873650027,-0.0002479364922121654,0.0006468858333688041,1.0,1.0
36 +6,mlp_panel,no_change,25,-0.0006214375513363897,-0.5168397311121554,0.6099983892517016,11.617723687759073,0.003000843557879551,-0.0019954885589567807,0.0009047855027480189,1.0,1.0
37 +6,tft_lite,no_change,25,-0.00016646302916638545,-0.15717878074582786,0.8764187969063832,9.033494587398058,0.010924500130429449,-0.0014716862494376492,0.0012646179830296358,1.0,1.0
38 +1,local_linear_trend,no_change,33,0.000654107777419944,7.186623166634712,3.683159044420847e-8,50.95080417993893,8.63320526178768e-12,0.0005198810172714753,0.0008133512118329029,6.629686279957525e-7,6.629686279957525e-7
39 +1,seasonal_naive,no_change,33,0.0004990444263432449,4.997022179151343,0.0000200444125524335,25.801586353701964,2.496069715807181e-6,0.0002847607642083742,0.0007042212452090037,0.0003407550133913695,0.000360799425943803
40 +1,lightgbm_panel,no_change,33,-0.00028387114159236435,-3.8476180996964047,0.0005363160566240754,15.505892146488298,0.0004294754089495534,-0.00047874088272892784,-0.00013022420958328027,0.008581056905985207,0.009653689019233358
41 +1,rw_drift,no_change,33,0.00009380887871493016,2.4026038470149045,0.022252443915668607,6.239205410061398,0.044174715325982605,0.000019354303719638538,0.00016482757323776987,0.3337866587350291,0.40054399048203493
42 +1,qanss,no_change,33,-0.00013859317013641077,-2.269967724086572,0.030083181600848885,7.257196570921887,0.02655337859182394,-0.0002780481069012647,-0.000022728540595518145,0.4211645424118844,0.5414972688152799
43 +1,raref,no_change,33,-0.00013909374799145807,-1.9879638445241046,0.055427971582944435,5.185987428937652,0.07479578734768977,-0.0002760525901954923,-0.000015299228329465612,0.7205636305782777,0.9977034884929998
44 +1,ridge_panel,no_change,33,-0.00013380730045621644,-1.8990124967129978,0.06661041208186158,4.538849795005898,0.10337161226400149,-0.0002732960126354334,-5.128929102797914e-6,0.799324944982339,1.0
45 +1,lstm,no_change,33,0.000891043369684131,1.8823212624511807,0.06891295561392252,3.793391334299188,0.15006366116576886,-8.849364696402012e-6,0.0021329725115371598,0.799324944982339,1.0
46 +1,bhpf,no_change,33,-0.0001290313562692453,-1.7931833902648386,0.08240054458672663,4.282397990142851,0.11751385998074204,-0.000266240218070492,3.2803772656216633e-6,0.8240054458672663,1.0
47 +1,qrefa,no_change,33,-0.00017637909717452561,-1.7394629978941434,0.09156562970742121,6.528084249907006,0.03823354050355954,-0.0004020511982973061,9.897552000874431e-6,0.8240906673667909,1.0
48 +1,gru,no_change,33,0.0005772044106779943,1.580388655865718,0.1238531257403912,2.831271632413553,0.2427712064990929,-0.00007578443753450223,0.0015084476229044474,0.9908250059231296,1.0
49 +1,tft_lite,no_change,33,0.00018142942479498205,1.2425478002876462,0.22306315875370242,2.3809981345739586,0.3040694750654178,-0.00009897508766232265,0.0005703700711638199,1.0,1.0
50 +1,ar2_cell,no_change,33,-0.00005602726854674192,-1.1042351100767787,0.27772549946155656,1.401290326520477,0.4962650285238561,-0.0001535955387910956,0.00002801381435714301,1.0,1.0
51 +1,momentum,no_change,33,-0.00002502045723798141,-1.0012107420274348,0.32423617164185226,5.175215383110637,0.07519972600712022,-0.00007123437435305095,0.000029923596172099475,1.0,1.0
52 +1,mlp_panel,no_change,33,0.0001295893917574745,0.7300747450002799,0.4706557611647608,0.718068307926953,0.6983504995068046,-0.00016780879018294921,0.0005390921177807485,1.0,1.0
53 +1,tcn,no_change,33,0.00010741151419640574,0.6812428859499785,0.5006184556272588,0.8660417304654908,0.648546959580542,-0.00017069960654531816,0.00045514039957294427,1.0,1.0
54 +1,dsgfn,no_change,33,-0.000058524882068571454,-0.5224273810585598,0.604971064092652,2.27578493036072,0.32049376231055815,-0.0002888323436388226,0.00014423096850084763,1.0,1.0
55 +1,mean_growth,no_change,33,9.565112971437082e-6,0.2560138460501052,0.7995787888537134,0.05613400829227154,0.9723232149317641,-0.00006081074089875132,0.00007746369808640293,1.0,1.0
56 +12,local_linear_trend,no_change,13,0.043388964883359755,4.879460450263494,0.000378866286424806,2218.615108390378,0.0,0.041208525245899255,0.04570922987508578,0.006819593155646508,0.006819593155646508
57 +12,mlp_panel,no_change,13,0.008846636087837315,0.5462118851272639,0.5949299984737997,159.16122566027286,0.0,0.004926055941683255,0.012596673777489353,1.0,1.0
58 +12,ar2_cell,no_change,13,-0.004001303243616557,-0.3780476315653641,0.7119976957938932,16.063414139518027,0.00032499294948606927,-0.005221496894598254,-0.002684859665676308,1.0,1.0
59 +12,seasonal_naive,no_change,13,0.002028168485285463,0.29448686060662804,0.773418116886186,13.196547508497789,0.001362718395156448,0.0010623390894687963,0.003057474274730315,1.0,1.0
60 +12,rw_drift,no_change,13,0.0020281684852854623,0.29448686060662804,0.773418116886186,13.196547508497805,0.001362718395156448,0.001062339089468796,0.003057474274730314,1.0,1.0
61 +12,qanss,no_change,13,0.0034618547453914594,0.26985703769966696,0.7918548887721317,11.265887464885356,0.0035780270549808924,0.001536596533553838,0.005818270860608339,1.0,1.0
62 +12,mean_growth,no_change,13,-0.0023718990271547843,-0.2617379358781741,0.7979620401592116,19.156394783437083,0.0000692216147856195,-0.0035020640989607667,-0.0011098879940347605,1.0,1.0
63 +12,lightgbm_panel,no_change,13,-0.0027759506548058525,-0.18669824662764214,0.8550163955137768,9.033579725218395,0.01092403509626283,-0.004524534749631591,-0.0009036788870848966,1.0,1.0
64 +12,tcn,no_change,13,0.0021283471470391717,0.154485887681953,0.8797944927484902,6.179279026159522,0.04551836022089317,-0.0007201427311419969,0.005036938935741576,1.0,1.0
65 +12,gru,no_change,13,0.0009725285533115021,0.13556853630069426,0.8944099582238154,9.954506918100014,0.00689296840275766,-0.0002215148207411768,0.0022578848517333596,1.0,1.0
66 +12,momentum,no_change,13,0.000051631021657914476,0.13295199358628715,0.8964348092709993,1.9549267137186341,0.3762643376781497,-0.00005032147493127288,0.000152055535723142,1.0,1.0
67 +12,ridge_panel,no_change,13,0.0032222044235059354,0.13147122848336318,0.8975810603128207,9.143538695077977,0.010339649090786551,0.00015056690078920048,0.006291616774925707,1.0,1.0
68 +12,raref,no_change,13,0.0025916149109520797,0.10878502447229967,0.9151709003110302,8.234151788026935,0.01629208464013321,-0.0003739501499139679,0.0056871914110830585,1.0,1.0
69 +12,bhpf,no_change,13,0.002218216356633585,0.10555504688435767,0.9176793268323502,22.764654280622146,0.000011395099763111816,-0.0005470258199203568,0.00502354364182346,1.0,1.0
70 +12,dsgfn,no_change,13,0.002155824673956394,0.10434641701530144,0.9186181980173911,26.78957182889846,1.523064834918486e-6,-0.0011078024014217211,0.0052377810819021825,1.0,1.0
71 +12,lstm,no_change,13,0.0007424097281783149,0.07040997473929776,0.9450271468108122,4.471183301423258,0.10692884660598323,-0.0012550981893412062,0.0028909336666367814,1.0,1.0
72 +12,qrefa,no_change,13,0.0010224065757117947,0.052000576672242005,0.9593838433919502,32.939882312946075,7.033887827745389e-8,-0.0014184913281867675,0.0034369075769012415,1.0,1.0
73 +12,tft_lite,no_change,13,-0.0006260624322423729,-0.04332967533733047,0.9661513861533662,38.165039631567325,5.1590167693404965e-9,-0.0026701592525679666,0.0014788170417007335,1.0,1.0
added scripts/39_extra_analysis.py +176 −0
@@ -0,0 +1,176 @@
1 +#!/usr/bin/env python3
2 +# Author: Simon-Pierre Boucher — simon-pierre.boucher@uqo.ca
3 +"""Additional analyses (protocol §8–§11): temporal evolution of errors, regime-dependent accuracy (ex-post regimes and the
4 +RAREF origin-dated regime probabilities), directional accuracy and turning points, probabilities of decline (Brier score,
5 +reliability), Holm-adjusted multiple-testing, equal-weight combinations, municipal performance distributions, computational
6 +cost, economic magnitude, and transaction-selection rates. Writes results/extra/*.csv."""
7 +from __future__ import annotations
8 +
9 +import glob
10 +import sys
11 +from pathlib import Path
12 +
13 +sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
14 +import numpy as np
15 +import polars as pl
16 +from scipy import stats
17 +
18 +from wp23 import config as C
19 +from wp23 import evaluation as E
20 +from wp23.data import month_add
21 +
22 +OUT = C.RESULTS / "extra"; OUT.mkdir(parents=True, exist_ok=True)
23 +TAUS = np.array([0.05, 0.25, 0.5, 0.75, 0.95])
24 +KEY_B = ["no_change", "mean_growth", "momentum", "ar2_cell", "ridge_panel", "lightgbm_panel", "tft_lite", "bhpf", "raref", "qanss", "dsgfn", "qrefa"]
25 +
26 +
27 +def load_b():
28 + p = pl.concat([pl.read_parquet(f) for f in sorted(glob.glob(str(C.RESULTS / "task_b" / "predictions_*.parquet")))], how="diagonal")
29 + return p.with_columns((pl.col("pred") - pl.col("target")).abs().alias("ae"), ((pl.col("pred") - pl.col("target")) ** 2).alias("se"))
30 +
31 +
32 +def prob_below(Q: np.ndarray, x: float = 0.0) -> np.ndarray:
33 + """P(target < x) from the 5-quantile forecast by piecewise-linear interpolation of the quantile function (tails extrapolated with the 5–25 and 75–95 slopes)."""
34 + out = np.empty(len(Q))
35 + for i, q in enumerate(Q):
36 + q = np.sort(q); lo, hi = q[0] - (q[1] - q[0]) * 2, q[-1] + (q[-1] - q[-2]) * 2
37 + xs = np.concatenate([[lo], q, [hi]]); ps = np.concatenate([[0.0], TAUS, [1.0]])
38 + out[i] = float(np.interp(x, xs, ps)) if np.all(np.isfinite(xs)) else np.nan
39 + return out
40 +
41 +
42 +def temporal_b(p):
43 + d = p.filter(pl.col("model").is_in(KEY_B)).group_by(["model", "h", "origin"]).agg(pl.col("ae").mean().alias("mae"), pl.len().alias("n")).sort(["model", "h", "origin"])
44 + d.write_csv(OUT / "error_by_origin_b.csv")
45 + y = p.filter(pl.col("model").is_in(KEY_B)).with_columns(pl.col("origin").str.slice(0, 4).alias("year")).group_by(["model", "h", "year"]).agg(pl.col("ae").mean().alias("mae"), pl.len().alias("n"))
46 + nc = y.filter(pl.col("model") == "no_change").select(["h", "year", pl.col("mae").alias("mae_nc")])
47 + y.join(nc, on=["h", "year"]).with_columns((pl.col("mae") / pl.col("mae_nc")).alias("mase")).sort(["h", "year", "mae"]).write_csv(OUT / "error_by_year_b.csv")
48 +
49 +
50 +def regimes_b(p):
51 + # ex-post regimes from the realised provincial 3-month house change at the origin's horizon window: rising (> +2 pts), falling (< −2 pts), flat
52 + prov = p.filter((pl.col("level") == "province") & (pl.col("class") == "house") & (pl.col("model") == "no_change")).select(["origin", "h", pl.col("target").alias("prov_target")])
53 + d = p.filter(pl.col("model").is_in(KEY_B)).join(prov, on=["origin", "h"], how="left").with_columns(
54 + pl.when(pl.col("prov_target") > 0.02).then(pl.lit("rising")).when(pl.col("prov_target") < -0.02).then(pl.lit("falling")).otherwise(pl.lit("flat")).alias("regime"))
55 + g = d.group_by(["model", "h", "regime"]).agg(pl.col("ae").mean().alias("mae"), pl.len().alias("n"), pl.col("origin").n_unique().alias("origins"))
56 + nc = g.filter(pl.col("model") == "no_change").select(["h", "regime", pl.col("mae").alias("mae_nc")])
57 + g.join(nc, on=["h", "regime"]).with_columns((pl.col("mae") / pl.col("mae_nc")).alias("mase")).sort(["h", "regime", "mae"]).write_csv(OUT / "error_by_regime_b.csv")
58 + # RAREF regime probabilities by origin (origin-dated): refit the HMM gating on the h=3 panel with expanding training
59 + from wp23.models_b import RAREF
60 + panel = pl.read_parquet(C.PROCESSED / "task_b_panel.parquet").filter(pl.col("h") == 3)
61 + origins = sorted(panel["origin"].unique().to_list()); rows = []
62 + for o in origins[10:]:
63 + tr = panel.filter(pl.col("origin").map_elements(lambda x: month_add(x, 3), return_dtype=pl.Utf8) <= o); te = panel.filter(pl.col("origin") == o)
64 + if tr["origin"].n_unique() < 10: continue
65 + m = RAREF().fit(tr); both = pl.concat([tr.select(te.columns), te], how="diagonal"); P = m._probs(both)[-te.height:]
66 + for (cls, lvl), pr in zip(te.select(["class", "level"]).iter_rows(), P):
67 + if lvl == "province":
68 + hmm = m.hmm_for(m._growth_series(both, o, cls)); order = np.argsort(hmm.mu) # states ordered by mean growth
69 + rows.append({"origin": o, "class": cls, "p_low": float(pr[order[0]]), "p_mid": float(pr[order[1]]), "p_high": float(pr[order[2]]), "mu_low": float(hmm.mu[order[0]]), "mu_high": float(hmm.mu[order[2]]),
70 + "prov_growth_last": float(np.diff(np.array(te.filter((pl.col("class") == cls) & (pl.col("level") == "province"))["hist"][0]))[-1])})
71 + pl.DataFrame(rows).write_csv(OUT / "raref_regimes.csv")
72 +
73 +
74 +def direction_b(p):
75 + d = p.filter(pl.col("model").is_in(KEY_B) & (pl.col("target").abs() > 0.005)).with_columns((np.sign(pl.col("pred")) == np.sign(pl.col("target"))).cast(pl.Float64).alias("hit"))
76 + g = d.group_by(["model", "h"]).agg(pl.col("hit").mean().alias("directional_accuracy"), pl.len().alias("n"))
77 + # turning points: origins where the realised change of the cell changes sign relative to the previous origin's realised change
78 + s = p.filter(pl.col("model") == "no_change").sort(["class", "level", "geo_id", "h", "origin"]).with_columns(pl.col("target").shift(1).over(["class", "level", "geo_id", "h"]).alias("prev"))
79 + tp = s.filter((np.sign(pl.col("target")) != np.sign(pl.col("prev"))) & pl.col("prev").is_not_null() & (pl.col("target").abs() > 0.01)).select(["class", "level", "geo_id", "h", "origin"]).with_columns(pl.lit(True).alias("turning"))
80 + dd = d.join(tp, on=["class", "level", "geo_id", "h", "origin"], how="left").with_columns(pl.col("turning").fill_null(False))
81 + g2 = dd.filter(pl.col("turning")).group_by(["model", "h"]).agg(pl.col("hit").mean().alias("directional_accuracy_at_turning_points"), pl.len().alias("n_turning"))
82 + g.join(g2, on=["model", "h"], how="left").sort(["h", "directional_accuracy"], descending=[False, True]).write_csv(OUT / "directional_b.csv")
83 +
84 +
85 +def decline_b(p):
86 + rows, rel = [], []
87 + for (m, h), d in p.filter(pl.col("model").is_in(KEY_B)).group_by(["model", "h"]):
88 + Q = d.select(["q05", "q25", "q50", "q75", "q95"]).to_numpy(); y = d["target"].to_numpy(); ok = np.all(np.isfinite(Q), axis=1)
89 + pd_ = prob_below(Q[ok], 0.0); yd = (y[ok] < 0).astype(float); pa = 1 - prob_below(Q[ok], 0.02); ya = (y[ok] > 0.02).astype(float)
90 + brier_d = float(np.mean((pd_ - yd) ** 2)); brier_a = float(np.mean((pa - ya) ** 2)); base_d = float(np.mean((yd.mean() - yd) ** 2)); base_a = float(np.mean((ya.mean() - ya) ** 2))
91 + rows.append({"model": m, "h": h, "n": int(ok.sum()), "share_declines": float(yd.mean()), "brier_decline": brier_d, "brier_skill_decline": 1 - brier_d / base_d, "brier_up2": brier_a, "brier_skill_up2": 1 - brier_a / base_a})
92 + bins = np.linspace(0, 1, 6)
93 + for b in range(5):
94 + sel = (pd_ >= bins[b]) & (pd_ < bins[b + 1] + (b == 4))
95 + if sel.sum() >= 30: rel.append({"model": m, "h": h, "bin": b, "p_mean": float(pd_[sel].mean()), "freq": float(yd[sel].mean()), "n": int(sel.sum())})
96 + pl.DataFrame(rows).sort(["h", "brier_decline"]).write_csv(OUT / "decline_b.csv"); pl.DataFrame(rel).write_csv(OUT / "decline_reliability_b.csv")
97 +
98 +
99 +def holm_tests():
100 + for tag in ["a", "b"]:
101 + f = C.RESULTS / f"eval_{tag}" / "tests_vs_reference.csv"
102 + if not f.exists(): continue
103 + t = pl.read_csv(f, infer_schema_length=None); out = []
104 + for h, d in t.group_by("h"):
105 + d = d.filter(pl.col("dm_p").is_not_null()).sort("dm_p"); pv = d["dm_p"].to_numpy(); m = len(pv); adj = np.minimum.accumulate(np.minimum(1, pv * (m - np.arange(m)))[::-1])[::-1]
106 + adj = np.maximum.accumulate(np.minimum(1, pv * (m - np.arange(m)))) # Holm step-down
107 + out.append(d.with_columns(pl.Series("dm_p_holm", adj), pl.Series("dm_p_bonferroni", np.minimum(1, pv * m))))
108 + pl.concat(out).write_csv(OUT / f"tests_holm_{tag}.csv")
109 +
110 +
111 +def combos_b(p):
112 + base = p.filter(pl.col("model").is_in(["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell", "no_change", "qrefa"])).select(["class", "level", "geo_id", "origin", "h", "target", "model", "pred"])
113 + w = base.pivot(on="model", index=["class", "level", "geo_id", "origin", "h", "target"], values="pred").drop_nulls()
114 + combos = {"eq_lgbm_qanss": ["lightgbm_panel", "qanss"], "eq_lgbm_qanss_ridge_ar2": ["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell"], "eq_lgbm_ar2": ["lightgbm_panel", "ar2_cell"], "eq_all_with_nochange": ["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell", "no_change"]}
115 + rows = []
116 + for h, d in w.group_by("h"):
117 + h = h[0]; y = d["target"].to_numpy(); nc = np.abs(d["no_change"].to_numpy() - y).mean()
118 + for name, cols in combos.items():
119 + pr = np.mean(np.column_stack([d[c].to_numpy() for c in cols]), axis=1); rows.append({"h": h, "combination": name, "mae": float(np.mean(np.abs(pr - y))), "mase": float(np.mean(np.abs(pr - y)) / nc), "n": d.height})
120 + for c in ["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell", "qrefa"]:
121 + rows.append({"h": h, "combination": c, "mae": float(np.mean(np.abs(d[c].to_numpy() - y))), "mase": float(np.mean(np.abs(d[c].to_numpy() - y)) / nc), "n": d.height})
122 + pl.DataFrame(rows).sort(["h", "mae"]).write_csv(OUT / "combinations_b.csv")
123 +
124 +
125 +def municipal_distribution_b(p):
126 + d = p.filter((pl.col("level") == "municipality") & (pl.col("h") == 3) & pl.col("model").is_in(["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell", "no_change"]))
127 + g = d.group_by(["class", "geo_id", "model"]).agg(pl.col("ae").mean().alias("mae"), pl.col("n_last").mean().alias("mean_n"), pl.len().alias("n"))
128 + nc = g.filter(pl.col("model") == "no_change").select(["class", "geo_id", pl.col("mae").alias("mae_nc")])
129 + g = g.join(nc, on=["class", "geo_id"]).with_columns((pl.col("mae") / pl.col("mae_nc")).alias("mase")); g.write_csv(OUT / "municipal_mase_b.csv")
130 + g.filter(pl.col("model") != "no_change").group_by("model").agg(pl.col("mase").median().alias("median_mase"), (pl.col("mase") < 1).mean().alias("share_beating_no_change"), pl.col("mase").quantile(0.1).alias("p10"), pl.col("mase").quantile(0.9).alias("p90"), pl.len().alias("cells")).sort("median_mase").write_csv(OUT / "municipal_mase_summary_b.csv")
131 +
132 +
133 +def cost():
134 + rows = []
135 + for tag in ["a", "b"]:
136 + t = pl.concat([pl.read_csv(f) for f in sorted(glob.glob(str(C.RESULTS / f"task_{tag}" / "timing_*.csv")))])
137 + g = t.group_by("model").agg(pl.col("seconds").mean().alias("mean_seconds_per_fit"), pl.col("seconds").sum().alias("total_seconds"), pl.len().alias("fits"), pl.col("n_train").mean().alias("mean_train_rows")).with_columns(pl.lit(tag.upper()).alias("task"))
138 + rows.append(g)
139 + pl.concat(rows).sort(["task", "mean_seconds_per_fit"]).write_csv(OUT / "computational_cost.csv")
140 +
141 +
142 +def temporal_a():
143 + files = sorted(glob.glob(str(C.RESULTS / "task_a" / "predictions_*.parquet")))
144 + if not files: return
145 + pred = pl.concat([pl.read_parquet(f) for f in files], how="diagonal").filter(pl.col("model").is_in(["lightgbm", "hshn_partial", "hedonic_ols", "naive_mun_median", "xgboost", "random_forest", "mlp"]))
146 + tg = pl.concat([pl.read_parquet(f) for f in sorted(glob.glob(str(C.RESULTS / "task_a" / "targets_*.parquet")))])
147 + j = pred.join(tg, on=["tx_id", "h", "origin"]).with_columns((pl.col("pred") - pl.col("y")).abs().alias("ae"), (pl.col("pred") - pl.col("y")).alias("err"))
148 + j.group_by(["model", "origin"]).agg(pl.col("ae").mean().alias("mae"), pl.col("err").mean().alias("bias"), pl.len().alias("n")).sort(["model", "origin"]).write_csv(OUT / "error_by_origin_a.csv")
149 + j.filter(pl.col("model").is_in(["lightgbm", "hshn_partial", "hedonic_ols"])).group_by(["model", "h"]).agg(pl.col("ae").mean().alias("mae"), pl.col("err").mean().alias("bias")).sort(["model", "h"]).write_csv(OUT / "error_by_month_horizon_a.csv")
150 + # economic magnitude: MAE in dollars at the class median price
151 + sales = pl.read_parquet(C.WP22_ANALYTIC, columns=["tx_id", "property_class", "price"]); jj = j.join(sales, on="tx_id")
152 + jj.filter(pl.col("model").is_in(["lightgbm", "hedonic_ols", "naive_mun_median"]) & (pl.col("h") <= 3)).group_by(["model", "property_class"]).agg(pl.col("ae").mean().alias("mae_log"), pl.col("price").median().alias("median_price"), (pl.col("pred").exp() - pl.col("price")).abs().median().alias("median_abs_dollar_error")).sort(["property_class", "mae_log"]).write_csv(OUT / "dollar_errors_a.csv")
153 +
154 +
155 +def selection():
156 + """Transaction selection: annual sale rate of the roll stock by class, floor-area and age decile (sold units / stock units)."""
157 + st = pl.read_parquet(C.WP22_STOCK, columns=["id_provinc", "cubf", "nb_logements", "lien_physique", "annee_construction", "aire_etages_m2"]).filter(pl.col("cubf") == 1000)
158 + st = st.with_columns(pl.when(pl.col("nb_logements") >= 6).then(None).when(pl.col("nb_logements").is_between(2, 5)).then(pl.lit("plex")).when((pl.col("nb_logements") <= 1) & (pl.col("lien_physique") == "Intégré")).then(pl.lit("condo")).when(pl.col("nb_logements") <= 1).then(pl.lit("house")).otherwise(None).alias("cls")).filter(pl.col("cls").is_not_null())
159 + sold = pl.read_parquet(C.WP22_ANALYTIC, columns=["parcel_id", "property_class"]).group_by(["parcel_id", "property_class"]).agg(pl.len().alias("sales"))
160 + j = st.join(sold, left_on=["id_provinc", "cls"], right_on=["parcel_id", "property_class"], how="left").with_columns(pl.col("sales").fill_null(0))
161 + rows = []
162 + for cls in ["house", "condo", "plex"]:
163 + d = j.filter(pl.col("cls") == cls).with_columns(pl.col("aire_etages_m2").qcut(5, labels=["fa1", "fa2", "fa3", "fa4", "fa5"]).alias("fa_q"), (2026 - pl.col("annee_construction")).qcut(5, labels=["age1", "age2", "age3", "age4", "age5"]).alias("age_q"))
164 + for col in ["fa_q", "age_q"]:
165 + for g, s in d.group_by(col):
166 + rows.append({"class": cls, "dimension": col, "quintile": g[0], "stock_units": s.height, "sales_2021_2026": int(s["sales"].sum()), "annual_sale_rate_pct": 100 * float(s["sales"].sum()) / s.height / 5.75})
167 + pl.DataFrame(rows).sort(["class", "dimension", "quintile"]).write_csv(OUT / "selection_rates.csv")
168 +
169 +
170 +if __name__ == "__main__":
171 + p = load_b()
172 + for fn in [lambda: temporal_b(p), lambda: regimes_b(p), lambda: direction_b(p), lambda: decline_b(p), holm_tests, lambda: combos_b(p), lambda: municipal_distribution_b(p), cost, temporal_a, selection]:
173 + try: fn(); print("ok", getattr(fn, "__name__", "λ"))
174 + except Exception as ex:
175 + import traceback; traceback.print_exc()
176 + print("done")
modified scripts/50_tables.py +109 −13
@@ -35,21 +35,24 @@ def ok(*p):
35 35 return not miss
36 36
37 37
38 −def table(name, header, rows, caption, label, align=None, notes="", size="\\small"):
38 +def table(name, header, rows, caption, label, align=None, notes="", size="\\small", fit=None):
39 39 align = align or "l" + "r" * (len(header) - 1); body = "\n".join(" & ".join(esc(c) for c in r) + " \\\\" for r in rows)
40 − (T / f"{name}.tex").write_text(f"""\\begin{{table}}[htbp]
41 −\\centering{size}
42 −\\caption{{{caption}}}\\label{{{label}}}
43 −\\begin{{threeparttable}}
44 −\\begin{{tabular}}{{{align}}}
40 + fit = (len(header) > 7) if fit is None else fit
41 + tab = f"""\\begin{{tabular}}{{{align}}}
45 42 \\toprule
46 43 {' & '.join(esc(h) for h in header)} \\\\
47 44 \\midrule
48 45 {body}
49 46 \\bottomrule
50 −\\end{{tabular}}
51 −{('\\begin{tablenotes}\\footnotesize\\item ' + notes + '\\end{tablenotes}') if notes else ''}
52 −\\end{{threeparttable}}
47 +\\end{{tabular}}"""
48 + if fit: # wide table: scale the tabular to the text width; notes in a full-width parbox (threeparttable mis-measures scaled boxes)
49 + inner = "\\resizebox{\\textwidth}{!}{%\n" + tab + "}" + (("\n\\par\\vspace{3pt}\\parbox{\\textwidth}{\\footnotesize " + notes + "}") if notes else "")
50 + else:
51 + inner = "\\begin{threeparttable}\n" + tab + "\n" + (("\\begin{tablenotes}\\footnotesize\\item " + notes + "\\end{tablenotes}\n") if notes else "") + "\\end{threeparttable}"
52 + (T / f"{name}.tex").write_text(f"""\\begin{{table}}[htbp]
53 +\\centering{size}
54 +\\caption{{{caption}}}\\label{{{label}}}
55 +{inner}
53 56 \\end{{table}}
54 57 """); print("table", name)
55 58
@@ -184,7 +187,7 @@ def t_ablation():
184 187 if diff == diff and diff is not None: macro(f"AblDiff{m}h{h}", 100 * diff, "{:+.2f}")
185 188 rows.append(r)
186 189 table("tab_ablation_b", ["Variant", "h=1: MAE", "vs ref", "h=3: MAE", "vs ref", "h=6: MAE", "vs ref"], rows, "Task B ablations at the municipality level: MAE (×100) and difference to the reference variant (per-origin mean, * = 95\\% stationary-bootstrap interval excludes zero)", "tab:ablation_b", size="\\scriptsize",
187 − notes="Reference variants: DSGFN, QANSS, QREFA and the full ridge panel. Positive differences mean the ablated variant is worse.")
190 + notes="Reference variants: DSGFN, QANSS, QREFA and the full ridge panel. Positive differences mean the ablated variant is worse.", fit=True)
188 191 a = R / "ablation_b" / "dsgfn_attention_summary.csv"
189 192 if a.exists():
190 193 x = pl.read_csv(a, infer_schema_length=None)
@@ -206,7 +209,7 @@ def t_robust():
206 209 if x.height: macro(f"Rob{m}{v}", 100 * x["mae"][0], "{:.2f}"); macro(f"RobCov{m}{v}", 100 * x["cov90"][0], "{:.0f}")
207 210 rows.append(r)
208 211 table("tab_robust_b", ["Model"] + [labv[v] for v in variants], rows, "Task B robustness at the municipality level, horizon 3: MAE (×100) under alternative designs", "tab:robust_b", size="\\scriptsize",
209 − notes="Rolling: models estimated on the 24 most recent origins only. Seeds: neural models re-estimated with different random seeds (the baseline is seed 0). Winsorised: targets clipped at the 1st and 99th percentiles in training and test.")
212 + notes="Rolling: models estimated on the 24 most recent origins only. Seeds: neural models re-estimated with different random seeds (the baseline is seed 0). Winsorised: targets clipped at the 1st and 99th percentiles in training and test.", fit=True)
210 213
211 214
212 215 def t_interpret():
@@ -218,7 +221,7 @@ def t_interpret():
218 221 "reg_q_12": "region: quality-stripped level, 12 m", "reg_q_3": "region: level, 3 m", "lfa2": "log floor area squared", "mun_mom_3_12": "municipality: momentum 3 vs 12 m", "reg_mom_3_12": "region: momentum", "mun_vol_ratio": "municipality: volume ratio"}
219 222 rows = [[lab.get(r["feature"], r["feature"])] + [f"{100*r[c]:.1f}" for c in cols] + [f"{100*r['mean']:.1f}"] for r in d.iter_rows(named=True)]
220 223 table("tab_shap", ["Feature"] + cols + ["Mean"], rows, "Task A — mean absolute SHAP value (×100, log-price units) of the LightGBM model at three origins, 4,000 test sales each", "tab:shap", size="\\footnotesize",
221 − notes="Importance is predictive, not causal. Origin-month importance declines as the training history lengthens.")
224 + notes="Importance is predictive, not causal. Origin-month importance declines as the training history lengthens.", fit=True)
222 225 for r in d.iter_rows(named=True):
223 226 macro(f"Shap{r['feature']}", 100 * r["mean"], "{:.1f}")
224 227 for c in cols: macro(f"Shap{r['feature']}{c}", 100 * r[c], "{:.1f}")
@@ -227,6 +230,99 @@ def t_interpret():
227 230 x = a.filter(pl.col("feature") == feat).sort("bin"); macro(f"ALE{feat}Range", 100 * (x["ale"].max() - x["ale"].min()), "{:.1f}"); macro(f"ALE{feat}Top", 100 * x["ale"][-1], "{:+.1f}"); macro(f"ALE{feat}Bottom", 100 * x["ale"][0], "{:+.1f}")
228 231
229 232
233 +def t_extra():
234 + X = R / "extra"
235 + if not ok(X / "tests_holm_b.csv"): return
236 + t = pl.read_csv(X / "tests_holm_b.csv", infer_schema_length=None)
237 + rows, rows2 = [], []
238 + for m in ORDER_B:
239 + if m == "no_change": continue
240 + r, r2 = [LABELS.get(m, m)], [LABELS.get(m, m)]
241 + for h in (1, 3, 6, 12):
242 + x = t.filter((pl.col("model") == m) & (pl.col("h") == h))
243 + has = x.height and x["dm_stat"][0] is not None
244 + r += [f"{x['dm_stat'][0]:+.2f}" if has else "—", f"{x['dm_p_holm'][0]:.2f}" if has else "—"]
245 + r2 += [f"{x['dm_p'][0]:.3f}" if has else "—", f"{x['gw_p'][0]:.3f}" if has and x["gw_p"][0] is not None else "—"]
246 + if has: macro(f"HolmP{m}h{h}", x["dm_p_holm"][0], "{:.2f}"); macro(f"DMP{m}h{h}", x["dm_p"][0], "{:.3f}"); macro(f"GWP{m}h{h}", x["gw_p"][0], "{:.3f}")
247 + rows.append(r); rows2.append(r2)
248 + table("tab_tests_b", ["Model"] + [f"h={h}: {k}" for h in (1, 3, 6, 12) for k in ("DM", "Holm $p$")], rows, "Task B — Diebold--Mariano statistics against the no-change forecast (negative = better than no change) and Holm-adjusted $p$-values across the 18 models of each horizon", "tab:tests_b", size="\\scriptsize", fit=True,
249 + notes="HAC variance with $h-1$ Bartlett lags and the Harvey--Leybourne--Newbold correction; $t_{n-1}$ reference distribution; Holm step-down over the 18 two-sided $p$-values of each horizon.")
250 + table("tab_gw_b", ["Model"] + [f"h={h}: {k}" for h in (1, 3, 6, 12) for k in ("DM $p$", "GW $p$")], rows2, "Task B — unadjusted Diebold--Mariano $p$-values and Giacomini--White conditional-predictive-ability $p$-values against the no-change forecast", "tab:gw_b", size="\\scriptsize", fit=True,
251 + notes="The Giacomini--White test regresses the loss differential on a constant and its own lag; a rejection means the relative accuracy of the two forecasts is predictable from the past.")
252 + c = pl.read_csv(X / "computational_cost.csv", infer_schema_length=None)
253 + rows = [[r["task"], LABELS.get(r["model"], r["model"]), f"{r['mean_seconds_per_fit']:.1f}", f"{r['total_seconds']:.0f}", str(r["fits"]), f"{r['mean_train_rows']:,.0f}".replace(",", "{,}")] for r in c.iter_rows(named=True)]
254 + table("tab_cost", ["Task", "Model", "Seconds per fit", "Total seconds", "Fits", "Mean training rows"], rows, "Computational cost (wall-clock on a 32-core Mac Studio M3 Ultra; tree models 10 threads, neural models 8 threads)", "tab:cost", size="\\scriptsize")
255 + for r in c.iter_rows(named=True): macro(f"Cost{r['task']}{r['model']}", r["mean_seconds_per_fit"], "{:.1f}")
256 + y = pl.read_csv(X / "error_by_year_b.csv", infer_schema_length=None).filter(pl.col("h") == 3)
257 + yrs = sorted(y["year"].unique().to_list()); rows = []
258 + for m in KEYS_B:
259 + x = y.filter(pl.col("model") == m)
260 + if x.height == 0: continue
261 + rows.append([LABELS.get(m, m)] + [f"{100*x.filter(pl.col('year') == yr)['mae'][0]:.2f} ({x.filter(pl.col('year') == yr)['mase'][0]:.2f})" if x.filter(pl.col("year") == yr).height else "—" for yr in yrs])
262 + for yr in yrs:
263 + z = x.filter(pl.col("year") == yr)
264 + if z.height: macro(f"Year{m}{yr}", z["mase"][0], "{:.2f}")
265 + table("tab_year_b", ["Model"] + [f"Origins in {yr}" for yr in yrs], rows, "Task B, horizon 3 — MAE (×100) and MASE (in parentheses) by year of the forecast origin", "tab:year_b", size="\\scriptsize", notes="2023 covers origins from October to December only; 2026 covers January to June.")
266 + g = pl.read_csv(X / "error_by_regime_b.csv", infer_schema_length=None).filter(pl.col("h") == 3); regs = ["rising", "flat", "falling"]; rows = []
267 + for m in KEYS_B:
268 + x = g.filter(pl.col("model") == m)
269 + if x.height == 0: continue
270 + rows.append([LABELS.get(m, m)] + [f"{100*x.filter(pl.col('regime') == rg)['mae'][0]:.2f} ({x.filter(pl.col('regime') == rg)['mase'][0]:.2f})" if x.filter(pl.col("regime") == rg).height else "—" for rg in regs])
271 + for rg in regs:
272 + z = x.filter(pl.col("regime") == rg)
273 + if z.height: macro(f"Regime{m}{rg}", z["mase"][0], "{:.2f}")
274 + ns = {rg: (int(g.filter((pl.col("regime") == rg) & (pl.col("model") == "no_change"))["origins"][0]) if g.filter((pl.col("regime") == rg) & (pl.col("model") == "no_change")).height else 0) for rg in regs}
275 + table("tab_regime_b", ["Model"] + [f"{rg} ({ns[rg]} origins)" for rg in regs], rows, "Task B, horizon 3 — MAE (×100) and MASE (in parentheses) by ex-post provincial regime of the target window (rising: provincial house index change above +2 log points over the horizon; falling: below $-2$; flat otherwise)", "tab:regime_b", size="\\scriptsize")
276 + for rg in regs: macro(f"RegimeOrigins{rg}", ns[rg], "{:.0f}")
277 + d = pl.read_csv(X / "directional_b.csv", infer_schema_length=None); rows = []
278 + for m in KEYS_B:
279 + if m == "no_change": continue
280 + r = [LABELS.get(m, m)]
281 + for h in (1, 3, 6, 12):
282 + x = d.filter((pl.col("model") == m) & (pl.col("h") == h))
283 + r += [f"{100*x['directional_accuracy'][0]:.0f}" if x.height else "—", f"{100*x['directional_accuracy_at_turning_points'][0]:.0f}" if x.height and x["directional_accuracy_at_turning_points"][0] is not None else "—"]
284 + if x.height: macro(f"Dir{m}h{h}", 100 * x["directional_accuracy"][0], "{:.0f}"); macro(f"DirTP{m}h{h}", 100 * x["directional_accuracy_at_turning_points"][0] if x["directional_accuracy_at_turning_points"][0] is not None else None, "{:.0f}")
285 + rows.append(r)
286 + table("tab_direction_b", ["Model"] + [f"h={h}: {k}" for h in (1, 3, 6, 12) for k in ("all", "turning pts")], rows, "Task B — directional accuracy (\\% of forecasts with the sign of the realised change, changes above 0.5 log points) overall and at turning points (origins where the realised change reverses sign)", "tab:direction_b", size="\\scriptsize",
287 + notes="The no-change forecast has no sign; momentum has the sign of the last three-month change.", fit=True)
288 + dc = pl.read_csv(X / "decline_b.csv", infer_schema_length=None); rows = []
289 + for m in KEYS_B:
290 + r = [LABELS.get(m, m)]
291 + for h in (1, 3, 6, 12):
292 + x = dc.filter((pl.col("model") == m) & (pl.col("h") == h))
293 + r += [f"{x['brier_decline'][0]:.3f}" if x.height else "—", f"{x['brier_skill_decline'][0]:+.2f}" if x.height else "—"]
294 + if x.height: macro(f"BrierSkill{m}h{h}", x["brier_skill_decline"][0], "{:+.2f}"); macro(f"ShareDeclinesh{h}", 100 * x["share_declines"][0], "{:.0f}")
295 + rows.append(r)
296 + table("tab_decline_b", ["Model"] + [f"h={h}: {k}" for h in (1, 3, 6, 12) for k in ("Brier", "skill")], rows, "Task C — probability of an index decline over the horizon: Brier score and Brier skill score relative to the climatological frequency of declines", "tab:decline_b", size="\\scriptsize",
297 + notes="Probabilities are read off the five-quantile forecasts by linear interpolation of the quantile function. Skill = $1 - $ Brier / Brier of the constant climatological probability.")
298 + cb = pl.read_csv(X / "combinations_b.csv", infer_schema_length=None); lab = {"eq_lgbm_qanss": "Equal weights: LightGBM + QANSS", "eq_lgbm_qanss_ridge_ar2": "Equal weights: LightGBM + QANSS + ridge + AR(2)", "eq_lgbm_ar2": "Equal weights: LightGBM + AR(2)", "eq_all_with_nochange": "Equal weights: four models + no change"}
299 + rows = []
300 + for name in ["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell", "qrefa", "eq_lgbm_qanss", "eq_lgbm_ar2", "eq_lgbm_qanss_ridge_ar2", "eq_all_with_nochange"]:
301 + x = cb.filter(pl.col("combination") == name); r = [lab.get(name, LABELS.get(name, name))]
302 + for h in (1, 3, 6, 12):
303 + z = x.filter(pl.col("h") == h); r.append(f"{z['mase'][0]:.3f}" if z.height else "—")
304 + if z.height: macro(f"Combo{name}h{h}", z["mase"][0], "{:.3f}")
305 + rows.append(r)
306 + table("tab_combo_b", ["Forecast", "h=1", "h=3", "h=6", "h=12"], rows, "Task B — MASE of equal-weight combinations versus their components (same cells and origins)", "tab:combo_b", size="\\footnotesize")
307 + md = pl.read_csv(X / "municipal_mase_summary_b.csv", infer_schema_length=None)
308 + rows = [[LABELS.get(r["model"], r["model"]), f"{r['median_mase']:.2f}", f"{r['p10']:.2f}", f"{r['p90']:.2f}", f"{100*r['share_beating_no_change']:.0f}", str(r["cells"])] for r in md.iter_rows(named=True)]
309 + table("tab_mun_dist_b", ["Model", "Median MASE", "P10", "P90", "% of cells beating no change", "Cells"], rows, "Task B, horizon 3 — distribution of the MASE across the 192 municipal cells (64 municipalities × 3 classes)", "tab:mun_dist_b", size="\\footnotesize")
310 + for r in md.iter_rows(named=True): macro(f"MunShare{r['model']}", 100 * r["share_beating_no_change"], "{:.0f}"); macro(f"MunMedMASE{r['model']}", r["median_mase"], "{:.2f}"); macro(f"MunPninety{r['model']}", r["p90"], "{:.2f}")
311 + de = pl.read_csv(X / "dollar_errors_a.csv", infer_schema_length=None)
312 + rows = [[r["property_class"], LABELS.get(r["model"], r["model"]), f"{100*r['mae_log']:.1f}", f"{r['median_price']:,.0f}".replace(",", "{,}"), f"{r['median_abs_dollar_error']:,.0f}".replace(",", "{,}")] for r in de.iter_rows(named=True)]
313 + table("tab_dollar_a", ["Class", "Model", "MAE (log ×100)", "Median price (\\$)", "Median absolute error (\\$)"], rows, "Task A, horizons 1--3 months — economic magnitude of forecast errors", "tab:dollar_a", size="\\footnotesize")
314 + for r in de.iter_rows(named=True): macro(f"Dollar{r['model']}{r['property_class']}", r["median_abs_dollar_error"], "{:,.0f}")
315 + sr = pl.read_csv(X / "selection_rates.csv", infer_schema_length=None).filter(pl.col("quintile").is_not_null()); rows = []
316 + for cls in ["house", "condo", "plex"]:
317 + for dim, lab2 in [("fa_q", "floor area"), ("age_q", "age")]:
318 + x = sr.filter((pl.col("class") == cls) & (pl.col("dimension") == dim)).sort("quintile"); rows.append([f"{cls}, by {lab2} quintile (1 = smallest / newest)"] + [f"{v:.1f}" for v in x["annual_sale_rate_pct"].to_list()])
319 + for q, v in zip(x["quintile"].to_list(), x["annual_sale_rate_pct"].to_list()): macro(f"SaleRate{cls}{q}", v, "{:.1f}")
320 + table("tab_selection_rates", ["Class and dimension", "Q1", "Q2", "Q3", "Q4", "Q5"], rows, "Transaction selection — annual sale rate of the roll stock (\\% of units sold per year, 2021--2026) by quintile of floor area and of age", "tab:selection_rates", size="\\footnotesize")
321 +
322 +
323 +KEYS_B = ["no_change", "mean_growth", "momentum", "ar2_cell", "ridge_panel", "lightgbm_panel", "tft_lite", "bhpf", "raref", "qanss", "dsgfn", "qrefa"]
324 +
325 +
230 326 def t_simulation():
231 327 f = R / "simulation" / "summary.csv"
232 328 if not ok(f): return
@@ -246,7 +342,7 @@ def t_simulation():
246 342
247 343
248 344 if __name__ == "__main__":
249 − for fn in [t_data, t_results, t_ablation, t_robust, t_interpret, t_simulation]:
345 + for fn in [t_data, t_results, t_ablation, t_robust, t_interpret, t_extra, t_simulation]:
250 346 try: fn()
251 347 except Exception as ex:
252 348 import traceback; traceback.print_exc(); print("FAILED", fn.__name__)
modified scripts/60_figures.py +63 −0
@@ -146,3 +146,66 @@ if __name__ == "__main__":
146 146 try: fn()
147 147 except Exception as ex:
148 148 import traceback; traceback.print_exc()
149 +
150 +
151 +def fig_error_time():
152 + X = R / "extra"
153 + if ok(X / "error_by_origin_b.csv"):
154 + d = pl.read_csv(X / "error_by_origin_b.csv", infer_schema_length=None).filter(pl.col("h") == 3)
155 + fig, ax = plt.subplots(figsize=(8.4, 3.0))
156 + for m in ["no_change", "ar2_cell", "ridge_panel", "lightgbm_panel", "qanss", "qrefa", "dsgfn"]:
157 + s = d.filter(pl.col("model") == m).sort("origin")
158 + if s.height: ax.plot(range(s.height), 100 * s["mae"], color=COL.get(m, "#999"), lw=1.6 if m in ("lightgbm_panel", "no_change") else 1.0, label=LAB.get(m, m))
159 + orig = d.filter(pl.col("model") == "no_change").sort("origin")["origin"].to_list(); idx = [i for i, o in enumerate(orig) if o.endswith(("-01", "-07"))]
160 + ax.set_xticks(idx); ax.set_xticklabels([orig[i] for i in idx], rotation=45, fontsize=7); ax.set_ylabel("MAE (log points ×100), h = 3"); ax.legend(fontsize=6.5, ncol=4); save(fig, "fig_error_time_b")
161 + if ok(X / "error_by_origin_a.csv"):
162 + d = pl.read_csv(X / "error_by_origin_a.csv", infer_schema_length=None)
163 + fig, axes = plt.subplots(1, 2, figsize=(8.4, 2.8))
164 + for m in ["naive_mun_median", "hedonic_ols", "lightgbm", "hshn_partial", "mlp"]:
165 + s = d.filter(pl.col("model") == m).sort("origin")
166 + if s.height:
167 + axes[0].plot(range(s.height), 100 * s["mae"], marker="o", ms=3, color=COLA.get(m, "#999"), label=LAB.get(m, m)); axes[1].plot(range(s.height), 100 * s["bias"], marker="o", ms=3, color=COLA.get(m, "#999"))
168 + orig = d.filter(pl.col("model") == "lightgbm").sort("origin")["origin"].to_list()
169 + for ax, yl in zip(axes, ["MAE (log ×100), all horizons", "Bias (log ×100)"]):
170 + ax.set_xticks(range(len(orig))); ax.set_xticklabels(orig, rotation=45, fontsize=6.5); ax.set_ylabel(yl)
171 + axes[1].axhline(0, color=INK2, lw=0.5); axes[0].legend(fontsize=6.5); save(fig, "fig_error_time_a")
172 +
173 +
174 +def fig_regimes():
175 + X = R / "extra"
176 + if not ok(X / "raref_regimes.csv"): return
177 + d = pl.read_csv(X / "raref_regimes.csv", infer_schema_length=None).filter(pl.col("class") == "house").sort("origin")
178 + fig, ax = plt.subplots(figsize=(8.4, 2.8)); x = np.arange(d.height)
179 + ax.stackplot(x, d["p_low"], d["p_mid"], d["p_high"], colors=[SERIES[7], "#d9d9d6", SERIES[2]], alpha=0.75, labels=["low-growth state", "middle state", "high-growth state"], lw=0)
180 + ax2 = ax.twinx() if False else None # single axis rule: growth shown as markers scaled to [0,1]
181 + g = d["prov_growth_last"].to_numpy(); ax.plot(x, 0.5 + 10 * g, color="#0b0b0b", lw=1.2, label="provincial monthly growth (×10, centred at 0.5)")
182 + idx = [i for i, o in enumerate(d["origin"].to_list()) if o.endswith(("-01", "-07"))]; ax.set_xticks(idx); ax.set_xticklabels([d["origin"][i] for i in idx], rotation=45, fontsize=7)
183 + ax.set_ylim(0, 1); ax.set_ylabel("Filtered regime probability (RAREF), houses"); ax.legend(fontsize=6.5, loc="upper center", bbox_to_anchor=(0.5, -0.32), ncol=4, frameon=False); save(fig, "fig_regimes")
184 +
185 +
186 +def fig_decline_reliability():
187 + X = R / "extra"
188 + if not ok(X / "decline_reliability_b.csv"): return
189 + d = pl.read_csv(X / "decline_reliability_b.csv", infer_schema_length=None).filter(pl.col("h") == 3)
190 + fig, ax = plt.subplots(figsize=(4.2, 3.6)); ax.plot([0, 1], [0, 1], color=INK2, lw=0.6, ls="--")
191 + for m in ["lightgbm_panel", "qrefa", "bhpf", "qanss", "ridge_panel", "dsgfn"]:
192 + s = d.filter(pl.col("model") == m).sort("p_mean")
193 + if s.height: ax.plot(s["p_mean"], s["freq"], marker="o", ms=4, color=COL.get(m, "#999"), label=LAB.get(m, m))
194 + ax.set_xlabel("Forecast probability of a decline (h = 3)"); ax.set_ylabel("Observed frequency of declines"); ax.legend(fontsize=6.5); save(fig, "fig_decline_reliability")
195 +
196 +
197 +def fig_mun_distribution():
198 + X = R / "extra"
199 + if not ok(X / "municipal_mase_b.csv"): return
200 + d = pl.read_csv(X / "municipal_mase_b.csv", infer_schema_length=None)
201 + fig, ax = plt.subplots(figsize=(5.2, 3.0))
202 + for m in ["lightgbm_panel", "qanss", "ridge_panel", "ar2_cell"]:
203 + s = d.filter(pl.col("model") == m)["mase"].to_numpy(); ax.hist(s, bins=np.linspace(0.4, 1.6, 31), histtype="step", lw=1.4, color=COL.get(m, "#999"), label=LAB.get(m, m))
204 + ax.axvline(1, color=INK2, lw=0.6, ls="--"); ax.set_xlabel("MASE relative to no change, h = 3 (192 municipal cells)"); ax.set_ylabel("Cells"); ax.legend(fontsize=6.5); save(fig, "fig_mun_distribution")
205 +
206 +
207 +if __name__ == "__main__":
208 + for fn in [fig_error_time, fig_regimes, fig_decline_reliability, fig_mun_distribution]:
209 + try: fn()
210 + except Exception as ex:
211 + import traceback; traceback.print_exc()
149 212