- CapeTools Calendars
General Description
These functions provide Calendar objects. Calendar objects contain a list of holidays. These Calendar objects can be passed to numerous functions that require date calculation or manipulation. This category does contain a few functions that you can use to query these Calendar objects.
Additionally, you can add and remove dates from these objects. You can also merge Calendar objects.
- CapeTools Indexes
General Description
These functions provide Index creation objects. An index object is used to provide information concerning how an interest rate is fixed over a period of time. They are applied to floating rate legs. A typical index is a LIBOR index fixed by BBA. All indexes have to define the period length (ie - three months) that the interest rate fixing is applied upon, the number of days before the start date of the interest rate period that the fixing must occur, the holiday center etc... A YieldCurve object is also needed in order to acquire the discount factors needed to compute the fixing.
An optional Basis Swap curve can be passed to the Index creation functions which will be stripped in order to compute a spread that will be added to the fixed (Index) rate.
Why a Basis swap curve?
As an example, the United States is awash in one month money (index) from mortgage payments, car payments, and everything else, so you have to pay someone to take it away and turn it into three month money (index). This payment is captured via a basis spread on the three month money (index). Each currency has its preferred index for creating floating legs, for the United States this is 3m Libor, for Euros its 6m Euribor. Whatever these indices are, they are usually called the currency's "cash" leg.
A floating payment (for the interval tSt to tEnd) is valued as:
V = notional * dcf(tSt, tEnd) * Rfwd * DF(tEnd),
where the dcf is the day count fraction of the interval, Rfwd is the forward rate for the index, and DF is ccy's discount factor to the pay date. This is just the definition of the forward rate.
The forward rate is .
RFwd = RTrue + bs(tEnd)
where bs is the forward basis spread for the index, and the true rate is just the rate you'd expect from the discount factor:
RTrue = ((DF(tSt)/DF(tEnd)) - 1) / dcf(tSt, tEnd)
Or if you like...
RTrue = [DF(tSt) - DF(tEnd)] / dcf(tSt,tEnd) * DF(tEnd)
Whenever you see a floating rate index in a deal, immediately replaces it with the basis spread plus the true rate, the true rate is the mathematically idealized rate for the currency. One usually assumes the forward basis spread curve bs(tEnd) doesn't change. The forward basis spread curves are stripped from the basis swap market.
Yon can view the stripped forward spread curve stored within an Index object by executing the ShowIndexFwdSpreads() function. These forward spread curves are the basis for pricing currency basis swaps.
- CapeTools Query Market
General Description
Functions to query some market objects (ie - Index, Libor type, objects and Calendar objects). You can retrieve detailed information given an Index objects as well as test for business days, test for holidays, retrieve a list of holidays or business days and apply date adjustments.
- CapeTools Currency
General Description
Functions to create Exchange Rate Manager objects and Money objects. Money objects can be created in any currency. You can apply addition, subtraction, multiplication and division of money objects and then view the results in any currency. You can also create Exchange Rate objects as well as Exchange Rate Chain objects. These objects can be queried for their conversion rates.
You can also make comparisons of the Money objects (LessThan, EqualTo, GreaterThan etc...) as well as extract information regarding a currency code (see CapeTools Currency Enums for a list of currency codes).
Copyright (c) 2003-2007 CapeTools - All Rights Reserved.