Why Group Cash Flows into Buckets?
An asset-liability portfolio can contain many dated payments. A bucket summary groups nearby payment dates into broader maturity ranges so that asset inflows and liability outflows can be compared without listing every date in the first view. This is useful for spotting broad mismatches, but it is only a summary: two cash flows in the same bucket may occur at different times, and an asset payment arriving later cannot automatically fund a liability due earlier.
This tutorial treats cash flows as deterministic amounts due at specified integer times. Unless stated otherwise, the examples assume a constant annual effective interest rate, no transaction costs, no default, and no external contributions. Those assumptions make the effect of timing visible; they do not make a bucket-total match equivalent to full cash-flow matching. The methods are aligned with the SOA Exam FM (Financial Mathematics) syllabus.
Buckets should be defined before the totals are calculated. For example, one could use \([1,2]\) and \((2,4]\), where the first bucket includes times 1 and 2, and the second includes times after 2 through time 4. Clear, non-overlapping boundaries ensure each cash flow is counted once. A bucket that is too broad can hide important timing differences; a finer partition provides more detail but still does not prove that assets are available on every liability date.
What a Bucket Gap Does—and Does Not—Measure
The gap \(G_j\) compares cash amounts within a bucket. It does not, by itself, compare present values or account for interest earned or borrowing costs between dates. In particular, adding cash amounts at different dates is a useful screening calculation, but it treats those amounts as if their timing did not matter. If dates differ, a valuation at a common time requires an interest assumption.
For annual dates and a constant annual effective rate \(i\), a simple way to expose timing is to track the account balance immediately after each date. With \(B_t\) denoting that balance, a negative value representing borrowing, the recurrence is
This recurrence assumes that any positive balance earns \(i\) and any deficit can be financed at the same rate \(i\). If borrowing is unavailable, a negative balance instead signals that the portfolio cannot meet the payment from the stated assets alone. If positive and negative balances earn and incur different rates, the recurrence must be changed to reflect those rates.
Why Aggregation Can Conceal a Mismatch
The arithmetic behind a bucket total is straightforward: summing all the dated asset inflows in a bucket and subtracting all the dated liability outflows gives the same result as adding each date's net flow. But that equality concerns only the total across the interval. It does not say that each intermediate net flow is nonnegative.
For a bucket with dates \(t_1,\ldots,t_n\), define the dated net flow \(N_{t_k}=A_{t_k}-L_{t_k}\). Then
Even if \(G_j=0\), an early \(N_{t_k}\) may be negative and a later one positive. The later positive amount may restore the total by the end of the bucket, but it cannot retroactively provide cash for the earlier payment. This is why a bucket summary is a partial matching tool rather than a certificate of payment-date solvency.
Write down the interval for each bucket and assign every dated cash flow to exactly one interval.
Sum asset inflows and liability outflows separately; subtract liabilities from assets to obtain each bucket gap.
Check the sequence of dated net flows, especially whether liabilities precede asset inflows.
Use an explicit interest and financing assumption to track balances or value dated flows at a common time.
Worked Examples
Worked Example: Equal Bucket Totals, but a Shortfall Before the Bucket Ends
A hypothetical fund has one bucket covering times 1 through 3. It receives an asset payment of $60 at time 2. It must pay $40 at time 1 and $20 at time 3. The annual effective interest rate is \(i=5\%\). Assume any deficit can be borrowed at 5%. Calculate the bucket gap, track the balance, and compare present values at time 0.
Method. First compare the bucket totals, then use the dated-balance recurrence to test whether the timing is adequate. This avoids treating a later asset inflow as though it arrived before an earlier liability.
The bucket asset total is \(60\), and the bucket liability total is \(40+20=60\). Thus
The bucket totals match. Now track the balance with \(B_0=0\). At time 1, the fund pays $40 and receives no asset cash flow:
At time 2, the time-1 deficit accumulates interest of \(40(0.05)=2\), and the fund receives $60:
At time 3, the $18 balance earns \(18(0.05)=0.90\), after which the $20 liability is paid:
The fund has a $40 shortfall at time 1 under the stated no-opening-reserve setup. Even if it borrows, it ends time 3 with a $1.10 deficit. For a present-value check, the asset value is \(60/(1.05)^2=60/1.1025=54.4218\). The liability value is
The time-0 present-value surplus is \(54.4218-55.3720=-0.9502\), or \(-$0.95\) to the nearest cent. Accumulating this deficit to time 3 gives \((-0.9502)(1.05)^3\approx-$1.10\), consistent with the balance calculation. The bucket match is therefore not a dated cash-flow match.
Worked Example: A Zero Gap That Hides an Intermediate Deficit
A hypothetical portfolio has a single bucket covering times 1 through 3. Asset inflows are $30 at time 1 and $70 at time 3. Liability outflows are $30 at time 1, $40 at time 2, and $30 at time 3. The annual effective interest rate is \(i=5\%\), with deficits financed at that rate. Determine whether the equal bucket totals imply that all payments can be made without borrowing.
Method. Calculate the bucket totals and then track the balance date by date. The key check is the balance after the time-2 payment, not merely the balance at the bucket's end.
The asset total is \(30+70=100\), and the liability total is \(30+40+30=100\). Therefore, \(G=100-100=0\). At time 1, the asset and liability flows cancel:
At time 2, there is no asset inflow and a $40 liability:
So the portfolio cannot meet the time-2 payment from its assets without borrowing or an opening reserve. At time 3, the deficit accrues $2 of interest, the fund receives $70, and it pays $30:
The portfolio ends with a $2 deficit under the borrowing assumption. Without borrowing, the more immediate conclusion is that the time-2 payment is unfunded. The zero bucket gap conceals both the intermediate shortfall and its financing cost.
Worked Example: How Finer Buckets Reveal the Direction of a Mismatch
A hypothetical portfolio has asset inflows of $40 at time 1 and $60 at time 2. Its liability outflows are $50 at each of those times. First group both dates into one bucket, \([1,2]\), then use separate buckets for time 1 and time 2. The annual effective interest rate is \(i=4\%\). Calculate the bucket gaps and the present-value surplus at time 0.
Method. Compare the coarse and fine bucket summaries, then value each dated flow at time 0 using the stated rate. This avoids interpreting an equal total across two dates as equal present value.
For the broad bucket, total assets are \(40+60=100\), and total liabilities are \(50+50=100\). Its gap is zero. With separate date buckets, the time-1 gap is \(40-50=-10\), and the time-2 gap is \(60-50=10\). The finer view shows an early shortfall followed by a later surplus.
The asset present value is
The liability present value is
Thus the time-0 present-value surplus is \(93.934911-94.304734=-0.369823\), which is \(-$0.37\) to the nearest cent. As a check, the dated balance after time 1 is \(40-50=-10\). At time 2, that deficit accumulates to \(-10(1.04)=-10.40\), and the time-2 net inflow of \(60-50=10\) leaves \(-$0.40\). The time-0 present-value deficit accumulates to \((-0.369823)(1.04)^2\approx-$0.40\), as expected.
Choosing and Interpreting Buckets
Bucket design affects what a summary reveals. A broad interval can combine an early liability with a later asset and report a small or zero gap. Narrower intervals can separate those flows, making their direction clearer. But even a separate bucket for each year may conceal a mismatch if payments occur at different dates within that year. The time unit and boundary convention must match the cash-flow information available.
A practical review can report both the bucket gap and the largest interim funding need identified from the dated flows. These answer different questions: the gap describes the net total over a maturity range; the interim need describes whether and how much cash is required before later inflows arrive. When flows are valued at a common date, state the interest assumption. A present-value comparison and an undiscounted bucket total are not interchangeable.
The same caution applies when a bucket has a positive gap. A surplus at the end of an interval does not guarantee that every liability during the interval was payable on time. Conversely, an early surplus may be carried forward and help fund later liabilities, but the amount carried depends on the return earned and the dates involved. Bucket summaries are most informative when accompanied by clear boundaries, dated cash flows where available, and explicit assumptions about carrying or borrowing funds.
Check Your Understanding
For each problem, distinguish the bucket total from the timing information it leaves out. All amounts are hypothetical.
- A bucket covers times 1 through 3. Asset inflows are $25 at time 1 and $45 at time 3; liability outflows are $30 at time 1 and $40 at time 2. Find the bucket gap and the cumulative net cash flow after time 2, ignoring interest. (Answer: Bucket gap $0; cumulative net cash flow after time 2 is \(-$45\).)
- At \(i=6\%\), a portfolio receives $20 at time 1 and $50 at time 3, and pays $20 at time 1, $30 at time 2, and $20 at time 3. Starting with \(B_0=0\), calculate \(B_1,B_2,B_3\), assuming deficits are financed at 6%. (Answer: \(B_1=$0,\ B_2=-$30,\ B_3=-$1.80\).)
- At \(i=3\%\), assets pay $80 at time 1 and $20 at time 2; liabilities require $70 at time 1 and $30 at time 2. With \(B_0=0\), calculate the balance after each date. Do the two-date bucket totals match? (Answer: \(B_1=$10,\ B_2=$0.30\); yes, both bucket totals are $100.)
- At \(i=5\%\), a broad bucket covers times 1 and 2. Assets pay $100 at time 1; liabilities require $100 at time 2. Calculate each total in the bucket and the time-0 present-value surplus. Explain briefly why a zero total gap does not mean same-date matching. (Answer: Asset total $100, liability total $100, bucket gap $0; present-value surplus \(100/1.05-100/(1.05)^2=$4.54\) to the nearest cent; the asset arrives one year before the liability.)