ForecastIQ
Demand forecasts per brand, tested against simple baselines.
2nd Place at the Lilly × WSU Hackathon, 16 Oct 2026

Walkthrough
The problem
A finance analyst plans how many units wholesalers will order each month, then has to explain why the forecast changed. They work in Excel, not statistics. Orders swing when wholesalers stock up or run stock down, so a month can look like a drop in demand when pharmacies sold as much as ever.
How it picks a method
- Each method sees only the orders up to a past cutoff.
- It forecasts the next months, and the forecast is compared with what was actually ordered.
- The cutoff moves forward and the test repeats. Every method is tested on the same months.
- Methods are ranked by WAPE (total miss as a percentage of total orders) against simple baselines. Each brand is forecast with its best one.
Result
2nd Place at the Lilly × WSU Hackathon, Launch Pad, Factory of the Future, 16 Oct 2026.
Upload
Load the month's orders, pharmacy sales and wholesaler stock, as CSV or Excel. The forecast builds once all three files are read.

Snapshot
Last month in one sentence: orders, pharmacy sales and wholesaler stock. Each brand is marked as real demand, stocking up or using stock.

Plan
The next 12 months per brand, with an 80% range, revenue at an assumed price, and external factors Alex adds.

Change a month
Alex overrides a month as a share or in units, with a reason. Other months rescale so the year adds up, and the change is kept in the history.

Report
A summary for leadership, figures for finance and supply, and one copy into Excel.

Who did what
Gylles Varga
Led the build
The forecasting engine: backtests, per-brand method selection, the FastAPI service.
Tommy Tran
External factors
Monthly external-factor scenarios, compared with the base forecast and included in the export.
Meenu Meenu
Dashboard design, pitch
The first dashboard designs, including a finance view. The pitch script.