A readout to a client's leadership team
Case study

Sunrock replaced two Excel models with one probabilistic financial twin

Financing and operating models lived in two Excel files, gave single-point answers, and could not recall past scenarios.

Sunrock · Finance and reporting · L2

10,000financial scenarios simulated per forecast run

The workflow before

Sunrock tracked each solar project in two separate Excel models: a banking model for financing projections and an operational model for actual performance. Versions drifted, errors crept in, and nobody could reliably reproduce the what-if scenario that sat behind a past decision. Every forecast was a single number, with no view of how solar output or financial variables might swing.

What we built

We merged the banking and operational models into one version-controlled financial twin. Every calculation input and output is captured and versioned, so the team can recall the exact scenario behind any past decision.

We extended Sunrock's deterministic Python model with PyMC. Fixed inputs such as solar yield and financing terms became probability distributions, and the model now runs thousands of Monte Carlo scenarios to show the range of outcomes, not one guess.

We designed the target architecture on Microsoft Fabric: Lakehouses for the raw and cleaned layers and a Warehouse for the reporting layer, with the Python models running next to the data.

Before and after

MeasureBeforeAfter
Models to reconcile2 Excel files1 versioned financial twin
Forecast outputOne deterministic numberFull probability range across 10,000 scenarios
Recalling a past what-ifRebuild from old spreadsheet versions, often daysExact recall in minutes

What's next

With every scenario versioned in one place, the next step is letting finance ask the model questions directly, such as which projects carry the widest downside, instead of waiting on an analyst to rerun it.

ShareLinkedInEmail

The probabilistic layer uses PyMC (Markov chain Monte Carlo) to replace point estimates with priors on the uncertain inputs, then samples the full financial model to produce distributions for cash flow and returns.

Time travel is implemented by versioning every input set and output, keyed to model version and run, so any historical result can be reproduced exactly.

The recommended deployment is Microsoft Fabric: Lakehouses for bronze and silver layers, a Warehouse for the gold layer, with compute and storage in one workspace.

Next step

Let's build the case study we tell next.