ROLLFORWARD

ROLLFORWARD

Description

Rolls the values of OriginalNode forward with the influence of Node1 and other optional Nodes. The rollforward starts after the last value along the finest time level and is done for each shared dimension individually. If Node is not of type percent, the percentage-wise differences are calculated relative to the first value of the Node. Both nodes need to have the time dimension available. The dimensions of OriginalNode are retained and determine the dimensionality of the result. Node1 is rolled up according to its aggregation function to match the dimensions of OriginalNode.

New in Version 2.0: the first argument is now optional. The rollforward will work as if a "flat" growth was supplied.

See examples of usage at Basic Data Upload & Model Definition, Model One-Time Effects to Correct the Simulation Basis

Signature

Version 1.19 and before: ROLLFORWARD('OriginalNode', 'Node1' [, 'Node2', …])

Version 2.0 (End of Feb. 2018): ROLLFORWARD('OriginalNode' [, 'Node1', …])

Parameters

  • OriginalNode: Input node, specified using the node name in single quotes (e.g. 'Revenue')
  • Node1: Input node, specified using the node name in single quotes (e.g. 'Revenue')

Example

Rollforward with a Percentage Node as Input

OriginalNode = 

Year

Revenue

2016

95

2017

100

Inflation (Unit:Percent) = 

Year

Inflation in %

2017

0.02

2018

0.1

2019

0.2

Output ROLLFORWARD('OriginalNode', 'Inflation')

Year

Revenue

2016

95

2017

100

2018

110

2019

132

Rollforward with an absolute Node as Input

Market in EUR:

Year Market Size
2017 10000
2018 10100
2019 10500

Output ROLLFORWARD('OriginalNode', 'Market')

Year Market Size
2016 95
2017 100
2018 100+(10100/10000) = 101
2019 101+(10500/10100) = 102,03


Rollforward with multiple driver nodes

(warning) When working with multiple drivers, the effects are calculated and applied individually per timeframe (e.g. year).

Inflation in Percent:

Year Inflation
2017 10%
2018 10%
2019 10%

Growth in Percent:

Year Growth
2017 20%
2018 20%
2019 20%

Revenue in EUR:

Year Revenue
2017 1000

ROLLFORWARD('Revenue','Inflation','Growth'):

Year ROLLFORWARD(...)
2018 1000 + (1000 * 0.1) + (1000 * 0.2) = 1300
2019 1300 + (1300 * 0.1) + (1300 * 0.2) = 1690

(lightbulb) See the Combined Growth Pattern if you prefer to have the effects "influence each other" in the respective time frame.


See also: Simulate Future Values of your Data with Rollforward , Model One-Time Effects to Correct the Simulation Basis,  Creating a Model with periodic Loops

Was this helpful?

Yes | Somewhat | No