Simple model examples

Here are some simple model examples. Please feel free to use them, but only subject to the disclaimer that you do so at your own risk, verdigris makes no representations as to their correctness, and takes no responsibility for their use.

Simple debt corkscrew.mortgage style

Simple debt corkscrew.equal principal repayments

Simple property rental model

Sickness decrement model: We put this together for interest to understand what sort of drivers the rate of infections for COVID19 has. The model is extremely sensitive to changes in assumptions (of which there are several). Due to the sensitivity, and to lack of available data for determining the assumptions, it probably doesn’t make a good predictor for infection rates. The influence of a future vaccine is also ignored. If you’re interested, play with the number of contacts per person per day, and the probability of transfer given contact with a sick person. It’s clear from playing with these just how sensitive the infection rate is to very small changes.

Modelling an infrastructure portfolio

Infrastructure investors may over time acquire a portfolio of assets, whether they be equity or debt investors. In South Africa, this is happening in the renewable energy space, with different investors acquiring sizable portfolios of wind and solar projects. Sometimes investments into individual projects may be quite small in comparison to the full portfolio, but the work associated with managing an investment into a project is, unfortunately, not proportional to the size of the investment.

Investors will likely need to value their investments periodically – for example, when they are completing their annual financial statements. They may also need to manage their liquidity, and therefore need to identify what future capital commitments they may have, or debt payments or equity distributions they may receive.

These exercises require a project model for each project in the portfolio. Usually the project model will be the lenders’ base case model (also the bid model in South Africa). As a result the investor will need to maintain several different models, updating each of them for each valuation or exercise. Clearly this becomes more onerous as more projects are added to the portfolio, particularly since each model may have its own idiosyncrasies.

So what steps can such an investor take to simplify the modelling requirements for their portfolio of assets?

I wrote a proof-of-concept portfolio consolidation model recently. Here is the approach I took:

1)    Write a generic project model which does away with much of the complexity required for a full bid model and a full bankers’ base case model. In my case, I was looking at operational projects, so I removed construction-period functionality. I also removed all bid-related functionality.

2)    Assumptions for the model will be either constant over the full project life (eg name plate capacity), or time-based (eg interest rate curves, CPI curves, debt sculpting). Constant assumptions should be in a single column in the assumptions sheet, which should contain references to the curves applicable to that project. Because assumptions are in a single column, it is possible for the model to include assumptions for multiple projects, each in its own column. I also created a single column for the assumptions which feed through to the active selected case using a lookup to the active project’s assumptions column.

No alt text provided for this image

Time-based assumptions, or curves, should be in a separate sheet. I wrote a macro which creates named ranges for each curve item, so that I can then pull a curve into my model dynamically using Excel’s INDIRECT function.

No alt text provided for this image

3)    The generic project model should be in a single sheet, to the extent possible. By selecting the project in the Assumptions sheet, the calculations will update to represent that project. Given that projects may be structured differently, it may be necessary to have some functionality which is superfluous to some projects, but necessary in others. Examples of this may include multiple debt facilities, a mezzanine facility, O&M bonuses which are structured in a particular fashion, different lease arrangements, and so on. It is necessary that you be able to zero each of these without breaking the model.

No alt text provided for this image

4)    I created functionality to pull time-based tariffs and balance sheet items into the model. This is because as these change over time, the future distributions to capital providers change too. For example, an increase in tariff (relative to the original base case) will increase the distributions to shareholders. Similarly, a change in the tax depreciation schedule will influence the amount of tax paid in the future and therefore CFADS. It is important that these be included only in the time-based assumptions, and that no changes are made in the calculation sheet, since we will iterate through the projects when working at a portfolio level, and hard-coded figures in the working will clearly break this functionality. You can see an example of these in the Curves sheet in the image above.

5)    Now that we have a full project model which is able to represent multiple different project by changing only the assumptions, and the ability to switch between different projects by selecting which set of assumptions to use, it is possible to iterate through the projects using a macro by selecting the relevant project, resolving any circular references, and hard-copying the desired output into a portfolio view for each project. Since each project can have different length and starting-month periods, I used a monthly timeline and a lookup to copy distributions to shareholders (the output I chose for my proof of concept) into a table.

No alt text provided for this image

I also created basic error checking, focusing on whether the circular references had been resolved in each iteration, and whether the assumptions in the relevant project were different at the time of running the portfolio consolidation macro to those presently persisting in the model assumptions, using a checksum of the model assumptions.

6)    Finally, I aggregated these results into more usable time periods (eg annual), and calculated a range of NPVs.

No alt text provided for this image

The approach described here has a few significant advantages:

  • Most obviously, the investor only has to understand and maintain a single model.
  • This also means that the single model can be audited at much lower cost than auditing several models.
  • Implementing scenarios across all projects simultaneously is trivial – for example if the house view on CPI changes, or the VAT rate changes.
  • Implementing structural layers, such as structurally-subordinated funding, is also fairly trivial.

Overall, these amount to a significant decrease in the amount of time required to perform any function requiring the project model(s), better operational risk management, reduced costs, and to better understanding of the portfolio.

Valuing infrastructure projects

From time to time an infrastructure project or its [potential future] shareholders may need to know the value of the project’s equity. Generally this will be for the purposes of a sale or purchase, or possibly for a listing.

It is most common to use a discounted cash flow methodology when conducting such a valuation. Most of the time this is fairly easy, as the project is likely to have a project model which produces distributions to shareholders at the bottom of the cash flow waterfall.

However, there are a few considerations to take into account when conducting a valuation:

Starting balances

Unless you are conducting the valuation as at financial close, the project will have built up certain actual balances during the construction period and any operations period that has elapsed. These will include the likes of cash in bank, debtors, creditors and plant and equipment. It is best to source these from the most recent set of financial accounts or management accounts available, as these will be the most accurate figures available. These balances will need to be incorporated into the project model such that in due course they feed through to the cash flow waterfall accurately. For example, a debtor balance will, via the model’s working capital assumptions, feed through into the cash flow waterfall and ultimately to distributions.

Starting balances, even cash balances, should not be included as stand-alone sums in the valuation. This is because the timing of distributions creates a material difference to the valuation, and generally any balance lacks this information unless it feeds through the waterfall. For example, a cash balance may result from a debt covenant lock up, which may only be cured in several months’ time.

More information about incorporating balances into the project model is available here: Operationalising Project Models.

Input assumptions

There are three main sources of assumptions available to the valuer:

  • The Project Documents and the Finance Documents. Good examples of such assumptions are base tariffs prior to inflation and interest margins. These assumptions will, all things being equal, hold for the life of the project, and consequently the valuer should leave them unchanged in the base case project model.

 

  • Expert information. Certain technical and macroeconomic assumptions may have been set by experts at the beginning of the project life or subsequently. An example of such would be future fx or inflation assumptions. These are best sourced from a (reputable and justifiable) expert source. Some technical assumptions may not change considerably over the life of the project, and may therefore be left alone without significantly effecting the valuation. An example of this might be power plant capacity.

Note that some project models may have a lenders’ base case and an equity base case. Typically it is most appropriate to use the equity base case (eg P50 energy yield assumptions) since it is the distributions which are being valued.

 

  • Actual experience. The performance of the project may differ to the original expected performance, in which case, in the absence of a reason to the contrary, the assumptions should be updated to reflect the most recent experience. Experience should be of reasonable duration – 12 months might be a good starting point to incorporate a reasonable sample size and any seasonality effects. Non-contracted opex inputs are a good example here, as is recent technical performance. Obviously when updating assumptions to reflect recent performance, one needs to apply a reasonability filter. Updating opex or technical assumptions to reflect an abnormally good or bad year will create bias in the valuation. One also needs to ensure that the experience is adjusted to account for the model’s inflation from the base date of the assumptions to the present.

A critical valuation assumption which deserves particular mention is the risk discount rate used to discount the distributions back to the valuation date. There are different means of arriving at, and influences upon, the appropriate discount rate for the valuation, and often some judgement will be required. These may include the following:

  • If the valuation is part of a sale negotiation, the risk discount rate may have been negotiated in advance, with the monetary valuation flowing from the risk discount rate as a result;
  • There may be recent sales which provide discount rate market benchmarks;
  • The project may have been structured so as to arrive at a reasonable risk discount rate for the risk profile of the project, as at the date of development;
  • The project may have experienced certain milestones and events which increase or decrease risk. An obvious one of these is the project completing construction and reaching Commercial Operation Date successfully. Another is the acquisition of an operating track record of a statistically significant sample length;
  • For completeness, there are theoretical models for determining an appropriate risk discount rate using the market risk free rate and the project’s beta and leverage – the Capital Asset Pricing Model (CAPM). Such a model is perhaps less relevant for an infrastructure project than for a normal operating company.

If a particular assumption has considerable uncertainty and has a significant effect on the distributions of the project – eg if plant output is very uncertain in the future for some reason – then it may make sense to model that assumption into the project’s future explicitly, rather than by modifying the risk discount rate to reflect the additional uncertainty. This allows greater understanding of the change in the valuation resulting from poor performance relating to the assumption in question. A good example of an assumption like this may be the traffic experience in a toll road project.

 

Valuation date

The date of the valuation may have considerable impact upon the valuation. In particular, moving the valuation date later by a month will have the following effect:

  • The valuation will increase by approximately 1/12th of the discount rate; and
  • The valuation will decrease by any distribution that was in the valuation period before the date change, but is no longer in the date change.

Consequently, if distributions are semi-annual, the valuation can move as much as 41% of the discount rate from a 5-month change in valuation date.

 

Termination amount

If one simply discounts the distributions in the project model, it is possible to miss the residual value of the project at the end of the project term (usually the end of the offtake contract term). This may be completely appropriate, for example in the case of a Build Own Operate Transfer project. However, in other instances it may not be appropriate at all, such as in the case where it may be feasible to enter into another subsequent offtake contract, or dispose of some of the project’s assets for a sum. Conversely, a rehabilitation cost may be applicable at the end of the term. Such an amount may be modeled explicitly by discounting the sales price or rehabilitation cost, or by extending the term of the modeled operations period using a new set of (possibly conservative) assumptions.

 

Sensitivities

The valuer may be asked to provide a single valuation figure, but it is nonetheless good practice to provide sensitivities to those assumptions which either:

  • Have considerable uncertainty;
  • To which the valuation outcome is very sensitive; or
  • Both.

The purpose of the sensitivities is to help the client in any final negotiations or decisions around the final price or valuation. If the final report is a public document, or shared with the other side of the negotiating table, these sensitivities could be removed from the final public version of the valuation report.

Operationalising project models

Why do it?

Once a project has been through its financing and construction phases, the project may want to operationalise the project model. This can have the following benefits for the project:

  • The model can be simplified, making it more tractable to use, since much of the financing-related functionality is no longer necessary;
  • The construction period can be removed, further simplifying the model;
  • We can incorporate actual experience, making the stepping-off point for projections much more valid than under the original base case model;
  • We can integrate the model into the project’s existing administration systems; and
  • We can incorporate new line items which were not considered relevant at the financing stage – in particular, new opex items are common.

Operationalising a model may be more important for a project if the project’s reality has evolved in a fashion which is significantly different to that portrayed by the original model. Such an eventuality may necessitate frequent reconciliations between model and accounts, explanations of budgets and justification of covenant ratios.

Starting point

The inputs required to operationalise a model include the following, assuming the modeler has some familiarity with the project:

  • The original model;
  • At least two sets of financial statements and/or management accounts (or general ledger and mappings from the ledger to the fields in the model);
  • An indication of what new functionality is desired, if any;
  • An indication of how frequently the project would like to incorporate actuals into the model, in order to determine the period of the new model.

I recommend that the modeler start afresh or use a template for the new model, rather than trying to modify or simplify the existing model. This is because simplifying an existing model comes with any baggage associated with that model, and it can therefore be cumbersome. A simplified model may end up with inputs and calculations with no dependents, and may incorporate logic errors which were overlooked in the original model build.

Process

I recommend splitting the process into three main sections:

Stage 1: Replication and simplification

Replicate the existing model in a simplified manner. There will be much functionality which is no longer required, such as being able to select between different facility types (eg mortgage-style vs equal principal repayments). In this example the project has now fully determined which is applicable, so abandon the other. Another example may be excess facilities penciled in in case they were required, or construction period functionality.

Having the original model available is very helpful in understanding what the mechanics are for the transaction, and also to check numbers against. In particular, numbers which are point-in-time (such as revenue received in a period) as opposed to cumulative (such as cash balance) are ideal to check against the original model at this stage. I tend to check these as I work through the model build, and colour code my checked values to easily see which are exactly the same as the original model, which are similar, and which differ. Doing this will also help model users (lenders, for example) reconcile the new model back to the original model. This is helpful because it’s very likely that they made themselves comfortable with the original model, which was probably audited. It will also assist with model audit, if such is required.

Stage 2: Incorporating actuals

I like to incorporate a full new sheet which only contains actuals (i.e. figures that have actually occurred, and can therefore be found under existing sources of macroeconomic data (eg inflation) or in the project’s financial statements or general ledger). The benefits of this are:

  • That the project / model users do not have to search through all your calculations to determine where to fill in their actuals;
  • This in turn means that there is a reduced possibility of modifying the model’s calculations and thereby breaking it;
  • Actuals are all in one place, and can be located with appropriate mappings so that new line items can be more easily incorporated into the model in the future. It should therefore also be evident if one or more actuals are omitted.

Actuals on a single sheet, incorporating mapping information

Depending on what the client wants, the actuals to include may be a full dump of the management accounts, general ledger or financial statements, or a subset of that information. Since the project will be updating this sheet periodically, it needs to be clear what each actuals line item incorporates, and how that information is to be sourced in subsequent periods.

If a subset of the management accounts is acceptable, it’s usually sufficient to use a combination of balance sheet and income statement items. Cash flow statement items can typically be implied from these.

As implied above, the actuals sheet may also include a series of mappings. This is because the model is likely to have less detail, aggregating several rows from the AFS or general ledger into fewer lines. The mappings, in conjunction with a SUMIF function, can effect this.

From the Actuals sheet, I typically import the aggregated/mapped rows straight into the top of my Working (i.e. main calculations) sheet. These then feed down into the model’s projection calculations using a formula similar to the following: =IF(actual <> “”, actual, projection). You may also need to infer certain revenue items or expenses from the balance sheet items which you import. This is necessary to minimize the size of any balancing items. I also tend to place conditional formatting in my worksheet to indicate where the figure observed has been pulled through from actuals, or is a projected figure.

Conditionally-formatted actuals pulling into the Working sheet

Finally, one or two balancing figures will probably be required. If you import actual cash balance at the end of the period, it is unlikely that the cash flow waterfall will balance, since some items will be projections/ calculated values and some will be actuals. A balancing cash flow is therefore required to reconcile the starting balance and sum of all cash flows in the period with the ending balance. This balancing cash flow should automatically be zero in periods which have no actuals being pulled through. Obviously this should be as small as possible. Another balancing figure may be required to reconcile starting balance sheet figures plus income statement items with the actual end-of-period balance sheet position. Again, this should be as small as possible. However, note that this balancing figure will persist (without changing, otherwise something is wrong with your model) into projected periods.

Stage 3: Importing actuals

Finally, you should import at least two periods’ worth of actuals into your model. This will ‘settle’ the figures, since the first period sets the base line, and the second period creates the first accurate set of the implied / calculated values which result from the previous accumulated position and the present period’s actuals.

As a corollary, many of the calculated figures in the first period may be incorrect / spurious. This is because the model is moving from one basis (projections) to another (actuals). Any accumulated values (such as cash balance) may differ significantly between the two bases.

A second advantage of incorporating multiple sets of actuals into the model is that it will provide a better base for model users to compare against when they first need to incorporate actuals without the benefit of having the modeler present to assist.

Amount of work required

Operationalising a model is significantly less work than building a project model in the first instance. This is not so much because there is less functionality (although that may be partially true if the new model is much simpler than the old model), but because there are fewer moving parts to the project itself, and because the old model provides as good a set of assumptions and inputs as a modeler is likely to receive.

 

Using VBA functions and procedures

Functions

Sometimes it may be very tempting to use vba functions in your project model. However, if at all possible, it’s best to avoid doing so.

This is simply because:

  • Vba functions can slow down your spreadsheet considerably, which may become cumbersome when it gets large, and
  • Your model will probably need to go through a model audit prior to financial close, and model auditors don’t like functions – they’re more specialised than vanilla excel.

Procedures

On the other hand, I recommend building a toolbox of procedures and shipping it from project to project. Many of the procedures can be deleted prior to shipping the model off to the auditors, and are therefore not problematic as per bullet two above, but can save significant time during the model build. I make regular use of procedures to do the following:

  • Circular reference resolution
  • Copying the current cell across to the full row, linked to a keyboard shortcut
  • Sculpting debt
  • Sizing debt to fit funding requirements

Dealing with circular references

Circular references arise naturally in project models.

Examples of typical circular references include:

  • The DSRA is funded by a draw down at Commercial Operation Date (COD). The DSRA is sized as equal to the next 6 month’s debt service, which is in turn a function of the total debt amount, which is a function of, inter alia, the size of the DSRA…
  • The interest payable during construction is a function of the amount of debt outstanding, which is a function of, inter alia, the amount of interest already paid…

Sometimes circular references can be dealt with by referencing only past cells, which can solve the circular reference all together. If this is possible, it is the optimal solution to a circular reference.

If such a solution is not possible, it is almost always possible to resolve a circular reference by iterating through successive loops until the difference between successive iterations becomes negligible.

Please (please!) do NOT enable iterative calculations in the Excel Option / Formulas settings to do this. It works, but has the downside that an error can iterate through your circular reference and become impossible to resolve, effectively trashing your model.

A better, but more cumbersome, solution is to create a copy-past values macro. If you are not familiar with VBA, follow these steps to do so:

  • Copy the offending row
  • Paste-values the row immediately below
  • Create a named range for each row – e.g. DSRA_Copy and DSRA_Paste
  • Create a sum of each row on the left (adjacent to the description of the row)
  • Create a named range for each sum – e.g. DSRA_Copy_Sum and DSRA_Paste_Sum
  • Record a macro
    • Turn on macro recording
    • Copy the offending row
    • Paste-values the row immediately below
    • Turn off macro recording
  • Find the macro in the VBA editor (Alt + F11 opens the editor)
  • Modify the macro you just created as follows:

Dim i As Integer

For i = 1 To 100
   Range(“DSRA_Copy”).Select
   Selection.Copy
   Range(“DSRA_Paste”).Select
   Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,SkipBlanks _:=False, Transpose:=False
   If Abs(Range(“DSRA_Copy_Sum”).Cells(1, 1)-Range(“DSRA_Copy_Paste”).Cells(1, 1)) <= 1 Then Exit For
Next

You already have the copy-paste syntax from the macro recording. The rest is as follows:

  • Dim i as integer tells VBA that i will be a variable of type integer – not a problem in VBA if you leave this line out
  • For i = 1 to 100 … Next is a loop which recurs 100 times. I prefer for-next loops to do-while loops because they can’t result in getting stuck in an infinite loop if the circular reference resolution doesn’t tend towards zero (or if I make a stupid error in the code!)
  • If Abs(…) is a condition which tells VBA to stop executing the loop if the sums of the rows are the same. I use an absolute value because I don’t know whether the past or copy row will be bigger, and I use 1 as an acceptable degree of difference. You can change that to be bigger or smaller depending on how much precision you require

 

  • I recommend creating another formula next to your circular reference resolution with a condition that the absolute value of the difference between the sums is less than an acceptable difference, with output “Circular reference resolved” or “Circular reference unresolved”, and applying some green and red conditional formatting to it.
  • Similarly, it’s good practice to aggregate all circular references checks into a master check at the top of the Working sheet, which should always be visible.
  • If you have more than one circular reference to resolve, it is fine to put more than one copy-paste into the for-next loop, and expand the conditions in the if statement using the AND boolean operator.

Debt corkscrews

An example of a simple Simple debt corkscrew.equal principal repayments can be downloaded here, and you can download a mortgage-style debt corkscrew here.

Debt is usually modelled by means of a debt corkscrew, so named because the principal outstanding at the beginning of the period is equal to the principal outstanding at the end of the previous period, and the principal outstanding at the end of the current period is a function of the principal outstanding at the beginning of the period, plus drawdowns, interest and repayments in the period. This creates a sawtooth (or corkscrew)-shaped dependency pattern.

An example of a Simple debt corkscrew.equal principal repayments can be downloaded here.

Pertinent points relating to the example:

  • Note the monthly period used throughout the model
  • As a consequence, indicators are required for repayment periods and capitalisation periods. I’ve used the modulus function here to identify which months an event occurs in. (Typically repayment and capitalisation periods are the same, although not always, as 3-month interest rates may be cheaper to hedge than 6-month interest rates, as their market is more liquid. I have used different periods to illustrate the point here.)
  • It is helpful to understand when in a period a figure relates to. For short periods (like a month) we use only the beginning and end of a period. Draw downs typically happen at the beginning of a period, while fees, interest and repayments typically accrue or occur at the end of a period.
  • The draw downs in this example are hard-coded. However, in a normal project model, they would feed off the capital requirements, which would in turn be a function of the capex, initial DSRA funding, postage and petties, upfront fees, etc.
  • I have split interest into three rows to account for capitalisation and payment periods being different to the model period. Interest accrued occurs only on principal outstanding at the beginning of the period and draw downs, not on previous interest accrued (at least until it is capitalised, at which point it enters into principal o/s).
  • You’ll note that I use OFFSET functions in calculating capitalised interest. I do this so that changing the input assumptions (B14) will flow through to the model. If the OFFSET is causing a #REF error, check the appropriate indicator using an IF statement. An example of this is in cell B23, where I calculated the equal principal repayment.
  • Day count conventions: I have used an actual / 365 day count convention, which simply means that I’ve calculated the number of days in the period and divided it by 365 [days in a year] when calculating how much interest accrues. Other conventions exist. Be sure you use the correct convention as per the financing documents.
  • You may hear a term such as nacq or nacs. These stand for ‘Notional annual, compounded quarterly’ and ‘Notional annual, compounded semi-annually’. These relate to the compounding convention for the interest rate. It simply means that the interest rate is stated as an annual figure, and that you should add the accrued interest back to the principal (i.e. compound it) quarterly or semi-annually, as applicable.
  • Repayment methods: There are three typical repayment methods in project finance, being equal principal repayments, mortgage-style, or sculpted.
    • The example uses equal principal repayments, the meaning of which is pretty obvious. As a consequence, total repayments (including interest) should be higher at the beginning and reduce over time. This is often a poor match for project cash flows, since the project’s revenues will often increase with time.
    • Mortgage-style repayments imply an equal repayment over both principal and interest in every period. This can be calculated using the PMT function. Note that it is good practice to use forward-looking parameters for mortgage-style repayments, rather than calculating a single repayment from the beginning. This allows sensitivities (e.g. a delay in repayment), as well as different interest rates at different durations. It’s actually good practice for equal principal repayments too, but I didn’t do it in the example! You can download a mortgage-style debt corkscrew here.
    • Sculpted repayments simply imply that the repayment schedule is manually sculpted according to criteria other than those laid out above. An often-encountered example is DSCR, in which, for example, the amount of principal repaid in each repayment period is an amount calculated to make the DSCR equal to a specified target value. Another reason to sculpt payments may be because of increasing revenues: A project may wish to have smaller early-duration repayments and larger payments towards the back end of the debt term.

Model periods

In the past, project models usually had a monthly period during construction, and a quarterly, semi-annual or annual period during operations. This made a lot of sense, because Excel allowed only a limited number of columns, and one didn’t want to run out of columns before the end of the project term!

However, this is not strictly necessary any more, since Excel now allows several thousand columns. Consequently, it is, in my opinion, far easier for the modeller to use the same period throughout the model. For a lenders’ model, I recommend that the period be one month per column. If you nonetheless want to use a multi-month period, you need to ensure that the number of months in the repayment period is divisible by the number of months in your model period.

Having a one-month period will mean that you may need to identify whether a non-monthly event occurs in a given period, such as a quarterly repayment. Modulus is a helpful function in this respect. E.g.

=if(mod(present month – starting month,3)=0,1,0)

could be used as a quarterly repayment indicator.

Period also has an effect on the way interest is calculated. If the interest compounding period is greater than that of the model, you will need to create additional rows to accrue uncompounded interest. More on this point in the Debt corkscrews article

 

Model layout

I have a profound dislike of models with excessive tabs (or sheets). I believe this makes it difficult to trace the flow of logic in a model. Consequently, I believe the model should have only three main tabs, with ancillary presentation sheets referencing those sheets, but not containing calculations themselves.

My preferred sheets are:

  • Assumptions sheet: This contains assumptions which are not series in time. The assumptions sheet should contain a Case selector at the top, the name of the assumptions down the left column, the active case assumptions next to this column, and then different scenario cases off to the right. Examples of different cases are:
    • The base case
    • Increased opex case
    • Increased construction price case
    • etc

The active case assumptions should reference the selected case through the use of the index function, or similar

 

  • A Time-based Assumptions sheet, which specifies assumptions which change in time, such as fx rates, interest rates, inflation, etc. These should generally be specified with the same periodicity as the model itself

 

  • A Working sheet, which contains all of the calculations relating to the model. Generally, the Working sheet contains the following sections:
    • Dates, period numbers, etc
    • Indicators (construction period, operations period, repayment period, etc)
    • Construction (funding requirements, VAT, etc)
    • Technical calculations (how much the plant produces, what its technical assumptions are)
    • Revenue calculations (dependent upon the technical performance of the plant)
    • Opex (dependent on, inter alia, the technical performance of the plant)
    • Equity and shareholder loan draw downs
    • Tax and depreciation calculations
    • Calculation of Cash flow available for debt service (CFADS) per the facility documents’ priority of payments (also called the cash flow waterfall)
    • Debt (draw downs over the construction period, repayments over the operating period. Possibly more than one facility, either ranking pari passu (repayments and draws occur proportionally) or not (one facility drawn or repaid after the other)
    • Debt service reserve account (DSRA) funding and draws and Maintenance Reserve Account (MRA or MMRA) funding and draws
    • Covenant ratio calculations (DSCR, LLCR and PLCR)
    • Distributions to shareholders
    • Financial statements

As mentioned above, other sheets may be required by lenders or project sponsors. These usually include presentation sheets for Annual Financial Statements and a Summary sheet.

Mixing model uses

Be careful not to mix up different model uses if they are incompatible.

An error which often arises is the following:

  • A model is created to determine the price or tariff of the project’s output. In order to do so, the tariff must change depending upon the input parameters to the model (e.g. capex, opex, cost of finance, etc)
  • The model is modified to turn it into the lenders’ base case model. However, the tariff still changes when certain input parameters change.
  • When lenders run sensitivity tests to determine the effect of an adverse scenario, the tariff increases, and the project appears to be insensitive to that particular downside scenario…

In short, tariffs and prices must be locked down prior to the model being turned into a lenders base case model.