powered by
Compute the duration or the convexity of a series of CF
duration(cashFlows, timeIds, i, k = 1, macaulay = TRUE)convexity(cashFlows, timeIds, i, k = 1)
convexity(cashFlows, timeIds, i, k = 1)
A numeric value representing either the duration or the convexity of the cash flow series
A vector representing the cash flows amounts.
Cash flows times
APR interest, i.e. nominal interest rate compounded m-thly.
Compounding frequency for the nominal interest rate.
Use the Macaulay formula
The Macaulay duration is defined as \(\sum\limits_t^{T} \frac{t*CF_{t}\left( 1 + \frac{i}{k} \right)^{ - t*k}}{P}\), while \(\sum\limits_{t}^{T} t*\left( t + \frac{1}{k} \right) * CF_t \left(1 + \frac{y}{k} \right)^{ - k*t - 2}\)
Broverman, S.A., Mathematics of Investment and Credit (Fourth Edition), 2008, ACTEX Publications.
#evaluate the duration/convexity of a coupon payment cf=c(10,10,10,10,10,110) t=c(1,2,3,4,5,6) duration(cf, t, i=0.03) convexity(cf, t, i=0.03)
Run the code above in your browser using DataLab