Cash flow matching is a process of hedging in which a company or other entity matches its cash outflows (i.e., financial obligations) with its cash inflows over a given time horizon.
[1] It is a subset of immunization strategies in finance.
[2] Cash flow matching is of particular importance to defined benefit pension plans.
[3] It is possible to solve the simple cash flow matching problem using linear programming.
[4] Suppose that we have a choice of
bonds with which to receive cash flows over
time periods in order to cover liabilities
for each time period.
th bond in time period
is assumed to have known cash flows
{\displaystyle F_{tj}}
and initial price
It possible to buy
bonds and to run a surplus
in a given time period, both of which must be non-negative, and leads to the set of constraints:
{\displaystyle {\begin{aligned}\sum _{j=1}^{n}F_{1j}x_{j}-s_{1}&=L_{1}\\\sum _{j=1}^{n}F_{tj}x_{j}+s_{t-1}-s_{t}&=L_{t},\quad t=2,...,T\end{aligned}}}
Our goal is to minimize the initial cost of purchasing bonds to meet the liabilities in each time period, given by
Together, these requirements give rise to the associated linear programming problem:
min
, with entries:
In the instance when fixed income instruments (not necessarily bonds) are used to provide the dedicated cash flows, it is unlikely to be the case that fractional components are available for purchase.
Therefore, a more realistic approach to cash flow matching is to employ mixed-integer linear programming to select a discrete number of instruments with which to match liabilities.