Forecasts that survive regime change.
Time-series forecasting, demand prediction, price modelling, and risk scoring at production scale. 9 projects shipped - from GMR's 96-block electricity market forecasts to Dr. Reddy's demand planning to NCSI Oman's national statistics platform.
systems shipped
at GMR
day-ahead horizon

What this is
Forecasting at production cadence.
Most forecasting work dies in the notebook. AiSPRY's forecasting practice has been shipping production time-series systems since 2018 - built around the brutal reality that forecasts must survive regime change, missing data, and adversarial conditions, not just clean test sets.
Forecasts with calibrated uncertainty
Point forecasts are insufficient for trading desks, supply chains, and trading rooms. Every model ships with prediction intervals - quantile regression, conformal prediction, or bootstrapped - so downstream decisions can hedge appropriately.
Hierarchical reconciliation
Item-level forecasts have to roll up to category, region, and total. We use MinT and bottom-up reconciliation so the numbers add up across the hierarchy without double-counting or drift.
Drift detection & auto-retrain
Markets shift. Demand patterns break. Models that don't detect their own degradation are liabilities. Every production forecast has drift monitoring on residuals, with retraining triggers tied to PSI and KS-stat thresholds.
Backtesting at horizon
Forecasts are evaluated at the horizon they're used for - not just one-step-ahead. A 96-block day-ahead forecast is backtested with rolling-origin evaluation across the full 24-hour window. We catch horizon-degradation early.
How we do it
Six forecasting capabilities.
Each block is a discipline we've shipped to production. Most engagements use two or three; the GMR Power Trading platform uses all six.
Time-Series Forecasting
Univariate and multivariate forecasting at horizons from 15-minute to 24-month. Statistical baselines (ARIMA, ETS, Theta) ground every project before we move to ML or deep learning.
Probabilistic Forecasts
Prediction intervals, quantile forecasts, and conformal prediction so trading desks and supply chains can hedge. Every production forecast ships with calibrated uncertainty bounds.
Gradient Boosting at Scale
LightGBM and XGBoost remain the workhorse for tabular forecasting at GMR, Dr. Reddy's, and Volvo. We engineer features (lags, rolling stats, calendar effects) before reaching for transformers.
Deep Learning Forecasters
Temporal Fusion Transformers, N-BEATS, and DeepAR for problems where exogenous covariates and long-range dependencies justify the complexity. Used selectively - not by default.
Hierarchical Reconciliation
Item → category → region → total forecasts that reconcile cleanly using MinT, bottom-up, or top-down approaches. Critical for retail, pharma, and energy applications.
Backtesting & Evaluation
Rolling-origin evaluation at production horizon, with metrics that match the business cost (MAPE for retail, RMSE for energy, pinball loss for probabilistic). No leak-prone test sets.
Use cases
Where forecasting moves the needle.
A representative selection - not exhaustive. Most engagements involve adapting one of these patterns to a specific domain.
Electricity market price forecasting (MCP)
96-block day-ahead Market Clearing Price forecasts integrated into IPP trading desks. Probabilistic outputs feed risk dashboards and what-if simulators for traders.
Demand forecasting & supply planning
Item-level demand forecasts that reconcile to category and region. Drives MRP, procurement, and capacity planning across cement, steel, and FMCG operations.
Pharma demand & spend modelling
SKU-level demand for generics and branded products with calibrated uncertainty intervals - used for production scheduling and procurement budgeting.
National statistics & macroeconomic forecasting
Multi-frequency forecasts of household expenditure, prices, and macroeconomic indicators for the Sultanate of Oman's national statistics organisation.
Credit risk & default scoring
Time-aware default probability models with vintage analysis and economic-cycle stress testing. Used for portfolio risk monitoring.
Predictive maintenance & failure forecasting
Survival analysis and remaining-useful-life models for industrial assets - turbines, motors, pumps - driven by sensor telemetry.
Tech stack
The moving parts.
- ProphetStatistical baseline for daily/weekly seasonality
- LightGBM & XGBoostTabular gradient boosting workhorse
- Darts & sktimeUnified time-series modelling
- TFT & N-BEATSDeep learning for multi-horizon forecasts
- NGBoost & MAPIEProbabilistic & conformal prediction
- tsfresh & tsfeaturesAutomated feature extraction
- FeaturetoolsDeep feature synthesis
- Calendar & holiday libsIndia, Gulf, and ASEAN calendars
- Lag & rolling featuresCustom feature stores via Feast
- External regressorsWeather, prices, indices integration
- MLflowModel registry & experiment tracking
- Airflow & PrefectOrchestrated retraining pipelines
- FeastFeature store for online inference
- FastAPIReal-time forecast APIs
- Drift monitoringPSI, KS-stat, residual diagnostics
Selected work
Three systems, all in production.

96-block IEX MCP forecasting in production
Probabilistic forecasts for the Market Clearing Price across 96 fifteen-minute blocks, integrated into GMR's trading desk with risk dashboards, what-if simulators, and auto-retrain on regime change.
blocks/day
day-ahead
retrain

SKU-level demand & supply forecasting
Hierarchical demand forecasts at SKU-region-month grain, reconciled to category totals. Drives production scheduling and procurement across the generics portfolio.
forecast
SKU-level
cadence

Household expenditure forecasting at national scale
Multi-frequency forecasts powering Oman's national household expenditure platform. First-of-its-kind AI/ML engagement with the National Centre for Statistics & Information.
frequencies
NCSI
at NCSI
Frequently asked
Common questions about this capability.
Quick answers to what teams ask before bringing us in. Don't see your question? Talk to us directly.
Prophet for statistical baselines, LightGBM and XGBoost for tabular gradient boosting (the workhorse for most production work), and Darts/sktime for unified modelling. Deep-learning forecasters - TFT, N-BEATS, DeepAR - are used selectively where exogenous covariates and long-range dependencies justify the complexity. We always start with a statistical baseline before reaching for ML.
Every production forecast ships with prediction intervals. We use quantile regression for tabular models, conformal prediction (MAPIE) for distribution-free intervals, and NGBoost or Bayesian methods where calibrated probabilistic forecasts are critical. For trading desks like GMR, this is non-negotiable - point forecasts are insufficient for hedging decisions.
It depends on the problem. The GMR Power Trading platform retrains daily because electricity market regimes shift fast. Pharma demand models retrain monthly. Macroeconomic forecasts retrain quarterly. Every model has drift detection on residuals (PSI, KS-stat) and an auto-retrain trigger when the threshold is breached.
Yes - the GMR engagement is 96-block fifteen-minute forecasts. We've also done hourly forecasts for energy and minute-level for high-frequency operational signals. The architecture is the same; what changes is the feature engineering (lag horizons), the model class (sometimes TFT), and the latency budget for inference.
MinT (Minimum Trace) reconciliation when we have full hierarchies, bottom-up for sparse data, and top-down for top-heavy revenue distributions. The Nixtla HierarchicalForecast library is our default. Reconciliation matters for retail, pharma, and energy where item-level forecasts must roll up cleanly to category and region totals.
For new SKUs without history, we use embedding-based similarity to comparable products, plus prior distributions from category-level data. For seasonally new launches we add hierarchical pooling - the new product borrows strength from its category. Pure cold-start is hard; we set expectations clearly with clients about the wider intervals.
Got a forecasting problem? Let's talk specifics.
30-minute discussion with our forecasting architects. Bring your data shape, your horizon, and your decision context - we'll map it to a concrete approach.