NAME
Finance::YieldCurve - provides methods for interpolation on interest rates or dividends
SYNOPSIS
use Finance::YieldCurve;
my $rates = Finance::YieldCurve->new(
data => {
1 => 0.014,
7 => 0.011,
14 => 0.012,
},
asset => 'USD',
);
# For dividends, we return the closest value with no interpolation
my $dividend_rate = $rates->find_closest_to(7 * 24 * 60 * 60);
# For interest rates, we interpolate linearly between the points
my $interest_rate = $rates->interpolate(7 * 24 * 60 * 60);
DESCRIPTION
Handles interpolation methods for different types of yield curve.
Instantiate with a set of data points, then use either the "find_closest_to" or "interpolate" methods to find the appropriate value for a given time (measured in years).
ATTRIBUTES
data
The data points, as a hashref of days => value.
asset
String representing the currency, stock or index, for example USD
.
METHODS
interpolate
Get the interpolated rate for this yield curve over the given time period (fractional years).
Example:
my $rate = $curve->interpolate(7 * 24 * 60 * 60);
find_closest_to
Returns the closest point to the request value.
Example:
my $rate = $curve->find_closest_to(7 * 24 * 60 * 60);
day_count
Returns the day count for our asset.
This is an integer value, and will either be 365 or 360.