Valuation Core Engine is a Python valuation kernel for real estate workflows. The current implementation centers on the Valuation Intelligence Kernel (VIK): market normalization, comparable adjustments, approach weighting, IFRS 13 hierarchy classification, uncertainty modeling, and a Valuation Confidence Index.
The repository also includes a small CLI pipeline that reads sample subject and comparable data, runs the VIK workflow, and writes JSON or Excel valuation outputs.
This project is an active MVP. The tested production path is the app/ pipeline and the VIK modules under src/core/intelligence_kernel/.
Some forward-looking files describe a broader package architecture that is not fully implemented yet. See docs/maintenance-audit.md before extending the package surface.
valuation-core-engine/
|-- app/
| |-- cli.py # command-line entry point
| |-- io.py # JSON, Excel, and output helpers
| `-- pipeline.py # orchestration across VIK modules
|-- data/
| |-- subject.json
| `-- comparables.xlsx
|-- outputs/
| `-- valuation_results.json
|-- src/
| `-- core/
| |-- valuation_engine.py
| `-- intelligence_kernel/
|-- tests/
|-- requirements.txt
|-- setup.py
`-- pytest.ini
- Loads subject property data and comparable sales.
- Normalizes market observations by price per square foot.
- Applies comparable adjustments for size, rooms, age, location, and time.
- Reconciles market, income, and cost approach values through the weighting engine.
- Classifies the result under the IFRS 13 fair value hierarchy.
- Calculates uncertainty metrics and a Valuation Confidence Index.
- Writes valuation results to JSON and Excel.
- Python 3.11 or 3.12
- Dependencies from
requirements.txt
The CI workflow validates Python 3.11 and 3.12.
python -m venv .venv
.venv\Scripts\activate
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
python -m pip install -e .On macOS or Linux, activate with:
source .venv/bin/activatepython app/cli.pyBy default, the CLI reads:
data/subject.jsondata/comparables.xlsx
And writes:
outputs/valuation_results.jsonoutputs/valuation_results.xlsx
python -m pytestThe test suite currently focuses on the VIK modules and the end-to-end ValuationPipeline.
- Keep sample inputs small and anonymized.
- Treat files under
outputs/as generated artifacts. - Add or update tests when changing valuation logic.
- Avoid expanding
src/core/valuation_engine.pyuntil its missing dependency modules are either implemented or the public package design is simplified.
See CONTRIBUTING.md and docs/maintenance-audit.md for the current maintenance inventory, known technical debt, and safe next steps.