You are on page 1of 18

FINANCIAL MODELING

Financial modeling

Financial modeling is the task of building an abstract representation (a


model) of a financial decision making situation. This is a mathematical model,
such as a computer simulation, designed to represent (a simplified version of) the
performance of a financial asset or a portfolio, of a business, a project, or any other
form of financial investment. Many financial models are inherently stochastic.

Financial modeling is a general term that means different things to different users.
In the US and particularly in business schools it means the development of a
mathematical model, often using complex algorithms, and the associated computer
implementation to simulate scenarios of financial events, such as asset prices,
market movements, portfolio returns and the like. Or it might mean the
development of optimization models for managing and controlling the risk of a
financial investment. In Europe and in the accounting profession financial
modelling is defined as cash flow forecasting, involving the preparation of large,
detailed spreadsheets for management decision making purposes.

While there has been some debate in the industry as to the nature of financial
modeling : whether it is a tradecraft, such as welding, or a science, such as
metallurgy, the task of financial modeling has been gaining acceptance and rigor
over the years.

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Selected areas of financial modeling application

• Business valuation, especially discounted cash flow


• Cost of capital or WACC
• Financial statement analysis
• Modeling and analysis of financial markets
• Modeling the term structure of interest rate and credit spread
• Portfolio problems
• Project finance
• Real options
• Risk modeling
• Valuation (finance)
• Option pricing

 Mathematical representation of key financial and operational relationships.


 Comprising of one or several sets of equations, it is used in analyzing how a
business will react to different economic situations or events, and in
estimating the outcome of financial decisions before committing any funds.
 A financial model generally includes cash flow projections, depreciation
schedules, debt service, inventory levels, rate of inflation, etc.
 It may also quantify the financial impact of the firm's policies, and of
restrictions or covenants imposed by investors and/or lenders. A cash budget
(whether computed by hand or with a spreadsheet program) is a basic
financial model.

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Financial Modeling
What is a financial model?
A simple, practical answer is that a financial model is designed to represent
in mathematical terms the relationships among the variables of a financial problem
so that it can be used to answer “what if” questions or make projections. In
creating financial models, you always have to keep in mind that you want to
capture as many of the interdependencies among the variables of the model as
possible. In addition, you want to structure your models in such a way that it is
easy to ask “what if” questions, that is, change the values of the independent
variables and observe how they affect the values of the key dependent variables.
You also should recognize that some of the relationships, as in the case of taxes,
are easy to establish and exact; but many others will be approximate or even
unknown. You will have to come up with them based on financial theory, analysis
of data, and so on, and coming up with these relationships is one of the major
challenges of financial modeling. Generally, the more of these relationships you
can come up with and incorporate into your model, the more useful your model
will be.

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Independent and Dependent Variables


We can say that the purpose of a model is to calculate the values of certain
dependent variables for the values provided for its independent variables. It is
therefore important to understand the difference between independent and
dependent variables.
Independent variables are also called the input or external variables. The
model’s user or creator inputs the values of these variables—they are not
calculated by the model. These are the variables you change to ask “what if”
questions.
Dependent variables are the ones whose values we want to project or determine
when we ask “what if” questions.
STEPS IN CREATING A MODEL
Whether you are creating a financial model using Excel or VBA, you must take a
systematic approach. A systematic approach always involves planning ahead and
this takes some time. Most people do not like to plan and think they can save time
by starting to build a model right away without spending time on planning.
However, for all but the simplest models, not taking the time upfront to do some
planning and not taking a systematic approach ends up being both frustrating and a
waste of time.
Here are the key steps you should follow in creating both Excel and VBA
models.

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

You should keep two other things in mind.


First, in practice, you do not have to follow the steps strictly in this order, nor do
you have to finish one completely before going onto the next one. Most of the
time you will have to go back and forth to some extent. It will depend on the
circumstances.
Second, over time, you should try to create your own variation on this basic
approach and learn to adapt it to different situations.
Excel and VBA are flexible tools and you can usually make changes almost
at any stage without a great deal of difficulty. But this still will take more time
than if you do it right the first time, and making changes later increases the
chances of missing some of the other changes that have to go with them.
Step 1: Define and Structure the Problem
In real life, problems rarely come neatly defined and structured. Unless you take
the time upfront to define and structure the problem and agree on them with the
user (your boss, for example), you may end up having to extensively change the
model you first create.
Start by discussing and defining why the model is needed and what decisions,
if any, will be made based on its output—that is, what questions the model is
supposed to answer. Then establish how accurate or realistic the outputs need to
be. As we discussed, all models have to capture the relationships among their
variables, and discovering and quantifying these can take a lot of time. How much
effort you put into doing this should depend on how important the project is and
how accurate or realistic the outputs need to be.
Step 2: Define the Input and Output Variables of the Model
SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Make a list of all the inputs the model will need and decide who will provide
them or where they will come from. This is crucial. For example, if you are
creating a model to do the business plan for your company, the inputs must come
from the business managers. You cannot just guess what sales growth rates they
will be able to achieve, how much they will have to spend on plants and equipment
to support those sales growths, and so forth. You may not need the actual numbers
upfront, but the list of inputs should be established based on your discussions with
the business managers so that you can make them independent variables in your
model. Otherwise you may have go back later on and change a lot of things in the
model.
Make a list of the tabular, graphical, and other outputs the model needs to
create. To some extent, these should be driven by the decisions that will be made
based on them.
Step 3: Decide Who Will Use the Model and How Often
Who will use the model and how often it will be used make a lot of difference.
In this, I am assuming that you are developing the models either for your
own use or for use by others who are familiar with Excel and understand the
model, at least to some extent. When you create models for others’ use, it
involves much more work. You have to make sure that these people cannot enter
data that do not make sense, they cannot accidentally damage parts of the model,
and they can get the necessary outputs automatically and so forth. These are
collectively called the user interface, and the more elegant, more easy to use, and
more robust you want to make a model, the more work it is. You also have to plan
for many of these features ahead of time.
How frequently a model will be used is another important issue. If a model
is going to be used only once in a while, then it does not matter if it takes a long
SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

time to run or if it takes some extra work every time to create the outputs. A
model that will be used frequently, however, should be designed differently.

Step 4: Understand the Financial and Mathematical Aspects of the Model


It is important to remember that the computer cannot do any thinking; you have
to tell it exactly how all the calculations in the model will have to be done. In
most situations, if you do not know how you would do the calculations by hand,
you are not going to be able to write the necessary formulas or instructions for
the computer to do it. It does not pay to start building the model until you are
sure you could solve the problem by hand.
It usually takes beginners a lot of time to create a model and they often think
that it is their Excel or VBA skills that are slowing things down. This may be
partly true, but at least as often the problem is in their understanding of the
finance and mathematics of the model they are trying to create. You will save lot
of time if you do not even sit down in front of the computer to create a model until
you are sure that you know how to solve the problem.
Step 5: Design the Model
There are two aspects to designing a model. One is to sketch the steps that Excel or
VBA will have to follow to solve the problem. For simple models, you may want
to write down only the broad steps or perhaps even do it in your head. For more
complex problems, however, you should work on paper and use a degree of detail
that suits your level of experience and the complexity of the problem.
The less experience you have, the more detailed the sketch should be. Once again,
remember that this may seem like a waste of time, but ultimately it will save you

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

time compared to plunging into your spreadsheet or VBA program without such a
sketch of the model.

The other aspect of design is planning how the model will be laid out in Excel
or VBA. Are you going to do the entire model in one spreadsheet (or VBA
module) or split it into several spreadsheets (or VBA modules or procedures)?
Editing an Excel or VBA model is easy. So you do not have to decide every detail
ahead of time, but you need to have an overall design in mind or on paper
depending on the complexity of the problem and your level of experience.
Step 6: Create the Spreadsheets or Write the VBA Codes
For most models, this is the big step.
Step 7: Test the Model
Almost no model works correctly the first time it is used; you have to find the
problems (bugs) and fix them. The bugs that prevent the model from working at
all or produce obviously wrong answers are generally easier to find and fix.
However, models often include hidden bugs that create problems only for certain
values or certain combinations of values for the input variables. To find them, you
have to test a model extensively with a wide range of input variables.
You have to take somewhat different approaches to testing and debugging a
model depending on whether you are working with Excel or VBA. Both Excel
and VBA provide some special tools for this purpose.
Here are a few helpful hints that apply to both:
■ There is no standard approach to testing and debugging a model. You almost
SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

always have to use your ingenuity to figure out what will be the best way to
test and debug a particular model. Your ability to do so will improve with
experience.
■ The better you understand a problem and a model, the easier it will be to
debug it. If you understand how changes in certain independent variables
affect the values of certain dependent variables, then you can change the values
of the independent variables to see if the dependent variables are changing
in the right direction and by the right orders of magnitude.
■ Checking a model’s output against hand-calculated answers is a common and
effective approach to debugging. In some situations, doing hand calculations
may not be practical, but you may be able to use Excel itself to do some side
calculations to test individual parts of the model.
Step 8: Protect the Model
Once you have completed a model, and especially if you are going to give it to
others to use, you should consider protecting it against accidental or unauthorized
changes. In addition, you may also want to hide parts of the model so that
others cannot see certain formulas, data, and so on. Excel provides several flexible
tools that you can use to hide and protect parts or all of your model.
There is less need to protect VBA modules because most users do not even
know how to open them. Nonetheless, if you think it is necessary, you can protect
parts of your VBA models as well.
Step 9: Document the Model
Documenting a model means putting in writing, diagrams, flowcharts, and so on,
the information that someone else (or you yourself in the future) will need to figure

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

out what it does, how it is structured, and what assumptions are built into it. One
can then efficiently and effectively make changes to (update) the model if
necessary.
For large systems (for example, the reservation systems for airlines), the amount of
necessary documentation can be enormous; it is often put on CDs for easy access
and use. Professional system development organizations have elaborate standards
for documentation, because different pieces of large systems are developed by
different people—many of whom may not be around for very long.

Also, it is almost certain that the systems will have to be constantly updated. Over
time, anyone who creates models develops his own system of documentation.
Step 10: Update the Model as Necessary
This is not a part of the initial model development, but almost all models require
updating at some point, either because some things have changed or because you
want to adapt it to do something else. This is where the documentation becomes
useful. Depending on how much updating is involved, you may want to go through
all of the above steps again. You should also thoroughly update the documentation
and include in it the information on who updated it, when and why, and what
changes were made.
Overview
Financial models need to be:
• Useful – they need to assist the user in solving the business problem. This
needs good business analysis and design skills.
• Accurate – they must do exactly what they say they do. This needs correct
logic, accurate calculations & relevant results.
SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

• Flexible, so they can evolve throughout the analytical process and beyond.
• Provable – the inputs, calculations and results can all be verified. This needs
clear layout, good documentation, data validation & results testing.

A good guiding rule is to keep things as simple and as clear as possible, for
example:

• using common functions rather than complex or rarely used functions


• keeping formulae short
• not being "clever", which may just confuse other people

Specifying a model

Find out first –

• what exactly it is for, & what it needs to do


• what inputs it needs and where the data & assumptions will come from
• what business logic is required
• what level of detail it needs to provide
• what flexibility is required – i.e. what needs to be able to change
• who will use it & how, & what are their skills
• how often it will be used, & for how long
• how soon it is needed

For anything except a small model with a clear cut specification and design, it is a
good idea - and essential in many cases - to document the specification clearly,

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

It is extremely important to fully understand and document the business logic, i.e.
all the business rules that need to go into the model. For example, most business
models involve tax, so you’d expect some rules on how tax affects the model. As
you will see, errors in logic – and especially omissions – are among the hardest to
find – and they can be extremely dangerous.

You should always ensure you have copies of all relevant correspondence or
documents, and anything that will help you understand the business. For example,
if you are modelling a workers’ compensation portfolio, you would need
documentation on the benefits that are paid, previous actuaries’ reports,
publications that might indicate recent trends or issues, etc.

Writing a specification

A specification is a written description of your model. It should cover

• what your model will and won’t do


• what data and other information it needs
• what results it will produce
• documentation and support (if applicable)
• maintenance (if applicable)
• timing
• cost

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Design patterns

Design patterns are used where the same set of needs comes up
over and over again. They are standard and well-tested
approaches to designing models, and you can build up a
library of patterns to make it easier to design professional
solutions.

Contents

Tabular pattern : The tabular pattern below is one all spreadsheet users are
familiar with. This is the simplest and most obvious way to build models, and it is
used for most business spreadsheets. It has two main problems:

1. the formulae must be copied down correctly in each column – this is a common
error,

2. it can be hard to check formulae, when they are crammed into successive
columns. There is little room for any explanation, users can only see one formula at
a time (unless they turn on the formula view, and then you can't see the values), and
users can only see a few columns at a time. This means that as a model gets more
complex, this pattern can become very difficult to follow, and even unworkable.

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Block pattern : In more complex models, it may be difficult to fit


everything into one sheet using the tabular pattern above.
The model can be divided into sections such as tax,
depreciation, revenue cashflows, etc, and each of these can
be put into a separate "block", usually on a separate sheet.
The results are then consolidated in a summary sheet.

This is a pattern commonly used in large finance models, eg for toll roads, power
stations, etc, where a large number of cashflows are projected forward in time, and
where the model can be broken up into logical chunks. The models can get very
big, eg 15 meg, with 3,000-4,000 unique formulae.

The advantage is that each sheet can be checked independently, and each sheet is
on a particular topic. When a problem is complex, it helps if you can check it a
piece at a time.

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Merge pattern : The following approach is a powerful alternative to


the tabular pattern. It works well where you have to carry out
a series of calculations for many rows of data. You first build a
calculation sheet based on a single record of data, showing that
data at the top of the sheet, listing any assumptions you need (explaining as
you go), and then setting out the calculations down the sheet, as spread out as
you like.

The result is that, given any one of the data records (ie rows), you can produce the
correct results clearly and accurately for that single row.

VBA pattern : VBA can be used to read in the data and


assumptions, carry out all the calculations, and then put the
results back in the sheet. This is a very powerful approach
where there are large amounts of data, or where a worksheet
would be very slow, because

• VBA can process data extremely quickly, and


• it can read from and write to data files, databases and websites,
• and it is very compact, because all its calculations are done in memory and
are discarded once the results are put back in a sheet

Generally, VBA should be used for complex models involving a lot of data, like a
simulation or a very large datafile.

Building for safety

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

The more you work with spreadsheets, the more you will see how inventive people
can be in making mistakes, or in misunderstanding what was intended. You have to
assume that if it can be read the wrong way, someone will read it wrong.

The guidelines below are all aimed at making it harder to make mistakes.

Inputs and Data

• Separate inputs & assumptions from calculations (this is crucial)


• Label & colour input cells clearly
• Protect & constrain inputs with data validation or user controls
• If you are importing data, keep it separate from the calculations
• Give important variables range names, and use them in formulae
• Treat constants (eg tax rates) as (unchangeable) inputs – never hard code
them into formulae as numbers
• Clearly explain anything that may be unfamiliar or confusing

Formulae & Calculations

• Protect calculations – on a separate sheet, or protect the sheet


• Flow calculations from left to right, top to bottom, to echo Excel's
calculation sequence, and also the way people will "read" the spreadsheet
• Highlight any cells with inconsistent formulae (ie different to neighbours) –
preferably don’t do this at all because these anomalies can be very hard to

SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

find and may be overwritten if someone else makes a change and copies it
down a whole column!
• Use colours carefully – keep bright colours for warnings
• Use a consistent layout & design between sheets
• Use consistent magnitudes/time intervals (eg months or years)
• Show sources (references, links to source documents, extracts)
• Include anomaly checks and self-tests (eg cross-totals) so that the model
checks itself as much as possible
• Don’t be clever! eg don’t use obscure functions that no-one else understands
• Don’t create incredibly long formulae – rather use more columns
• Don’t distract or confuse the checker

Results

• Set results out clearly and unambiguously


• State all key assumptions, especially in printable results
• Put date (and version number if any) on printouts

Testing

The most important thing to remember is that you are the last line of defense. You
aren’t just there to look for typos, and anything you miss could cost a lot of money
or embarrassment, so be careful and don’t rush. In the notes that follow, we’ll
assume we are checking a model which is important enough to spend a day or two
checking, and that we definitely want no errors. We’ll also consider what can be
done to make a model easier to check. We’ll use the words “check”, “test” &
“review” a lot below. They all have the same objective – ensuring the model is
correct, or close enough to correct.
SAMRITI GOEL

MBALECTURER
FINANCIAL MODELING

Analysis

Making sense of the results is crucial. The first test is that your results give you the
information you need to analyse the client problem. Then you need to play with the
model to test the effect of different inputs, to get a feel for the sensitivity to
change. Ideally, you want results which are robust (ie they are not too sensitive to
your inputs).

USES OR BENEFITS OF FINANCIAL MODELS

1. Increase the breadth of analysis leading to decision making.


2. Provides a framework for long- range planning.
3. Evaluating new forms and uses of financial information
4. Tools for special problems
5. Understand the inherent logic of the financial system

ABUSES OF FINANCIAL MODELLING

1. Don’t meander into financial modeling


2. Problems of excessive evaluation of computer software
3. Beware of sophisticated statistical models
4. Recognize the “future stock” syndrome
5. Financial models are not for everyone
6. Financial models, budgets , and general ledgers are different
SAMRITI GOEL

MBALECTURER

You might also like