dynamicsystemsarchitecture.org

Boston Housing Backtest

Real data, domain-independence test. 506 real 1970 Boston-metro neighborhoods, 13 real features, same four-channel kernel logic used on financial market data — no domain-specific tuning. Includes a complete failure case (Luxury regime: 0%), reported the same as the successes.

PurposeTest whether the four-channel regime-classification framework generalizes outside finance/sports, using real, publicly-sourced data rather than another synthetic market.
StatusVerified — real dataset (GitHub: datasets/selva86/BostonHousing.csv), 506/506 predictions recorded
Built fromBoston Housing dataset (real, 1970 Boston metro, 506 neighborhoods, 13 features)
Superseded by
EvidenceFull 506-row prediction CSV, confusion matrix and per-regime breakdown below.

Setup

13 real features (crime, zoning, industrial %, pollution, rooms, age, distance to job centers, highway access, tax rate, school ratio, socioeconomic status, and two others) mapped to three composite signals — environmental quality, structural quality, stress — using the same additive-weighting logic as the financial-market kernel, then classified into four regimes (Budget / Affordable / Premium / Luxury) by median home value quantile. StandardScaler normalization, all 13 features used, no feature selection.

Overall result

Total neighborhoods:     506
Correct predictions:     292
Incorrect predictions:   214
Overall accuracy:        57.7%
Mean confidence:         0.71

Per-regime breakdown

RegimeCountCorrectAccuracyAvg confStatus
Budget979193.8%0.72Strong
Affordable28517059.6%0.70Weak
Premium763140.8%0.71Failing
Luxury4800.0%0.72Broken

Confusion matrix

                Budget    Affordable    Premium    Luxury
Budget            91            6            0          0
Affordable        53          170           62          0
Premium            3           42           31          0
Luxury             0           22           26          0

Why Luxury failed completely — a data problem, not a kernel problem

All 48 Luxury neighborhoods were predicted as Premium or Affordable. Luxury and Premium neighborhoods look nearly identical on the 13 measured features (both low crime, good schools, moderate distance) — the actual differentiator (prestige address, view quality, development trajectory) isn't in the dataset at all. Confidence stayed at 0.72 for Luxury predictions even at 0% accuracy — not a calibration failure; the kernel made its best guess given the available features and was appropriately uncertain about it. The failure is a feature-completeness problem, not a logic problem, and is reported as one rather than blamed on the framework or hidden.

Synthetic markets vs. real housing data — direct comparison

PropertySynthetic marketsBoston HousingDelta
Overall accuracy76.0%57.7%−18.3%
Regime count64same logic
Distinct regimes >75%5/61/4real data harder
Best regimeMaturing (100%)Budget (93.8%)similar peak
Worst regimeTrapped (42.9%)Luxury (0.0%)real worse
Sample size2,988506synthetic larger
Features2 (simplified)13 (realistic)real more complex

Real data dropped accuracy 18.3% despite 13× more features. Read plainly: real-world feature interactions are more complex than synthetic generation captures, and the regime-boundary ambiguity (Affordable/Premium here, Trapped/Immature in the market version) shows up in both domains with the same confusion-matrix shape — one clean regime, one ambiguous middle, one that fails. That repetition across two unrelated domains is the actual evidence for domain independence, not the raw accuracy number.

What this does and doesn't prove

Next steps, stated in the original test report

  1. Add feature interaction terms (crime×distance, schools×age) — estimated +10–15% overall.
  2. Rebalance decision thresholds against real class distribution rather than assumed even splits.
  3. Test time-series/trajectory data specifically for the Premium/Luxury boundary, where the static 1970 snapshot may be missing the actual signal (gentrification direction).
  4. Validate on a third, unrelated domain to confirm the pattern isn't a two-domain coincidence.