Forward Rate Agreements
FRA
Returns the theoretical forward rate between tenor A and tenor B.
=FRA(rate_a, ttm_a, rate_a, rate_b, basis)
rate_ais the rate through point A.ttm_ais time in days to point A.rate_bis the rate through point B.ttm_bis time in days to point B.basisis the basis in days (360,365, etc.).
FRAFromFXLong
For short-term contracts with a maturity of less than one year from now, returns the theoretical long forward rate given a currency forward and FX rates.
=FRAFromFXLong(fx_spot, fx_swap_long, fx_swap_short, foreign_fra,
start_days, end_days, domestic_basis, foreign_basis)
fx_spotis the foreign exchange spot rate.fx_swap_longis the long foreign exchange swap.fx_swap_shortis the short foreign exchange swap.foreign_frais the foreign forward rate agreement.start_daysis the time in days to the start of the FRA.end_daysis the time in days to the end of the FRA.domestic_basisis the domestic basis in days (360,365, etc.).foreign_basisis the foreign basis in days (360,365, etc.).
FRAFromFXShort
For short-term contracts with a maturity of less than one year from now, returns the theoretical short forward rate given a currency forward and FX rates.
=FRAFromFXShort(fx_spot, fx_swap_long, fx_swap_short, foreign_fra,
start_days, end_days, domestic_basis, foreign_basis)
fx_spotis the foreign exchange spot rate.fx_swap_longis the long foreign exchange swap.fx_swap_shortis the short foreign exchange swap.foreign_frais the foreign forward rate agreement.start_daysis the time in days to the start of the FRA.end_daysis the time in days to the end of the FRA.domestic_basisis the domestic basis in days (360,365, etc.).foreign_basisis the foreign basis in days (360,365, etc.).
Yield Curve Interpolation
ContinuousInterpolation
Returns the interpolated rate given two sets of continuously compounded rates and tenors.
=ContinuousInterpolation(tenors, rates, tenor_interp)
=ContinuousInterpolation({0, 1, 2, 3}, {0.25, 0.5, 1, 2}, 1.5) // returns 0.8333
tenorsis a range of tenors in years.ratesis a range of continuously compounded rates.tenor_interpis the tenor for which you want an interpolated rate.
CubicSpline
Interpolates a rate based on a cubic spline.
=CubicSpline(interp_dates, known_dates, known_rates)
interp_datesis a range of unknown dates for which to find the interpolated rates.known_datesis a range of known dates or term points.known_ratesis a range of known rates.
Stub
Calculates the spot stub.
=Stub(valuation_date, overnight_start, overnight_value, term_start, term_ends, term_values)
valuation_dateis the target valuation date.overnight_startis the overnight value date (for LIBOR, usually 1 business day after trade date).overnight_valueis the overnight value.term_startis the term valuation date (for LIBOR, usually 2 business days after trade date).term_endsis either 1 or 2 term LIBOR expiration dates.term_valuesis either 1 or 2 term LIBOR values.