StAIr

Alejandro Varela Vázquez

Data Science and Engineering, Universidade da Coruña. Based in Turku, Finland. I built STAIR and I keep it running.

Not a demo

STAIR has been running unattended in production since late June 2026: a daily pipeline, 72 models in production, automatic monthly retraining with verified promotion, a public API and a multilingual front end. I submitted it as my final degree project and the system kept running. One person built it, deploys it, and fixes it when it breaks. Time from first commit to production: two and a half months.

Three things worth knowing

A bug silently corrupted eight months of data.

No test caught it. No monitor flagged it. It was invisible because every check I had verified that the system was responding, not that it was responding correctly. Coverage is not the same as knowing what you are covering.

Hyperparameter search: 8 h 23 min against 4 minutes.

Optimising six neural networks took 8 h 23 min. The equivalent tree-based models took 4 minutes, on a 2 vCPU / 3.8 GB server. When compute is a real constraint rather than a line in a cloud bill, model selection is an engineering decision before it is a statistical one.

Most of the models do not beat buy and hold.

None of the 72 robustly beat the baseline once transaction costs are discounted. That result is on the front page of this site, not buried in an appendix. Building the infrastructure to measure it honestly was the point.

Stack

  • PostgreSQL 14
  • Python · Prefect · pandas · SQLAlchemy
  • scikit-learn · XGBoost · PyTorch
  • FastAPI
  • Next.js · TypeScript