Calendars and holidays for a given currency, stock exchange, etc. More...

Classes

class  julian::CADHoliday
 Holidays set for CAD currency. More...
 
class  julian::Calendar
 Class implements calendar object. More...
 
class  julian::BuildCalendar
 Class implements builder design pattern supporting construction of calendars. More...
 
class  julian::CHFHoliday
 Holidays set for CHF currency. More...
 
class  julian::CorpusChristi
 Corpus Christi. More...
 
class  julian::CZKHoliday
 Holidays set for CZK currency. More...
 
class  julian::EasterMonday
 Easter Monday. More...
 
class  julian::EURHoliday
 TARGET2 holiday set. More...
 
class  julian::FixedHoliday
 Fixed date holiday. More...
 
class  julian::GoodFriday
 Good Friday. More...
 
class  julian::Holiday
 Class is an abstract class expressing the concept of holiday calendar for different currencies and stock exchange. More...
 
class  julian::HUFHoliday
 Holidays set for HUF currency. More...
 
class  julian::PLNHoliday
 Holidays set for PLN currency. More...
 
class  julian::SettlementDateConvention
 Interface for classes implementing settlement date conventions. More...
 
class  julian::SettlementFromExpiry
 Class calculating settlement date from expiry date. More...
 
class  julian::SettlementFromSpot
 Class calculating settlement date from expiry date. More...
 
class  julian::USDHoliday
 Holidays set for USD currency. More...
 
class  julian::WhitMonday
 Whit Monday. More...
 

Enumerations

enum  julian::DayRollingConvention {
  julian::FOLLOWING, julian::PRECEDING, julian::MODIFIEDFOLLOWING, julian::MODIFIEDPRECEDING,
  julian::UNADJUSTED, julian::NEAREST
}
 

Functions

template<class Archive >
void julian::serialize (Archive &ar, DayRollingConvention &g, const unsigned int version)
 interface used by Boost serialization library More...
 
Date julian::EasterForAGivenYear (int year)
 Function calculating Easter date for a given year. More...
 

Detailed Description

Calendars and holidays for a given currency, stock exchange, etc.

The financial contracts have to start and be settled on business day. Apart from Saturdays and Sundays, every currency/stock exchange/market has additional non-working days- usually religious or public holidays. Module contains definition of holidays and set of holidays that allow to correctly established the commence and maturity of a contract.

Enumeration Type Documentation

Enumeration contains names of day rolling convention that are used to adjust the payment date if payment is occurring at non-business day.

Enumerator
FOLLOWING 

Move to the next working day

PRECEDING 

Move to the previous working day

MODIFIEDFOLLOWING 

Move to the next working day, unless this day extends to a next month, in that case the previous working day is used.

MODIFIEDPRECEDING 

Move to the previous working day, unless this day extends to a previous month, in that case the next working day is used.

UNADJUSTED 

Leave date unchanged

NEAREST 

Move to the nearest working day (prefer the next working day).

Function Documentation

Date julian::EasterForAGivenYear ( int  year)

Function calculating Easter date for a given year.

Easter date is calculated according to algorithm presented by C.F. Gauss.

a = year mod 19

b = year mod 4

c = year mod 7

d = 19a + 24

e = 2b + 4c + 6d + X mod 7

n = e + d

Then Easter is n days from 22MAR. For years 1900 - 2099 X = 5. For years 2100-2199 X = 6 There are few exceptions from this algorithm (1954, 1981, 2049, 2076, 2106, 2133)

Parameters
yearAn integer describing the year.
Returns
A date of Easter for a given year.
template<class Archive >
void julian::serialize ( Archive &  ar,
DayRollingConvention g,
const unsigned int  version 
)

interface used by Boost serialization library