QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
Public Types | Static Public Member Functions | List of all members
IMM Struct Reference

Main cycle of the International Money Market (a.k.a. IMM) months. More...

#include <ql/time/imm.hpp>

Public Types

enum  Month {
  F = 1, G = 2, H = 3, J = 4,
  K = 5, M = 6, N = 7, Q = 8,
  U = 9, V = 10, X = 11, Z = 12
}
 

Static Public Member Functions

static bool isIMMdate (const Date &d, bool mainCycle=true)
 returns whether or not the given date is an IMM date
 
static bool isIMMcode (const std::string &in, bool mainCycle=true)
 returns whether or not the given string is an IMM code
 
static std::string code (const Date &immDate)
 
static Date date (const std::string &immCode, const Date &referenceDate=Date())
 
static Date nextDate (const Date &d=Date(), bool mainCycle=true)
 next IMM date following the given date More...
 
static Date nextDate (const std::string &immCode, bool mainCycle=true, const Date &referenceDate=Date())
 next IMM date following the given IMM code More...
 
static std::string nextCode (const Date &d=Date(), bool mainCycle=true)
 next IMM code following the given date More...
 
static std::string nextCode (const std::string &immCode, bool mainCycle=true, const Date &referenceDate=Date())
 next IMM code following the given code More...
 

Detailed Description

Main cycle of the International Money Market (a.k.a. IMM) months.

Member Function Documentation

◆ code()

static std::string code ( const Date immDate)
static

returns the IMM code for the given date (e.g. H3 for March 20th, 2013).

Warning:
It raises an exception if the input date is not an IMM date

◆ date()

static Date date ( const std::string &  immCode,
const Date referenceDate = Date() 
)
static

returns the IMM date for the given IMM code (e.g. March 20th, 2013 for H3).

Warning:
It raises an exception if the input string is not an IMM code

◆ nextDate() [1/2]

static Date nextDate ( const Date d = Date(),
bool  mainCycle = true 
)
static

next IMM date following the given date

returns the 1st delivery date for next contract listed in the International Money Market section of the Chicago Mercantile Exchange.

◆ nextDate() [2/2]

static Date nextDate ( const std::string &  immCode,
bool  mainCycle = true,
const Date referenceDate = Date() 
)
static

next IMM date following the given IMM code

returns the 1st delivery date for next contract listed in the International Money Market section of the Chicago Mercantile Exchange.

◆ nextCode() [1/2]

static std::string nextCode ( const Date d = Date(),
bool  mainCycle = true 
)
static

next IMM code following the given date

returns the IMM code for next contract listed in the International Money Market section of the Chicago Mercantile Exchange.

◆ nextCode() [2/2]

static std::string nextCode ( const std::string &  immCode,
bool  mainCycle = true,
const Date referenceDate = Date() 
)
static

next IMM code following the given code

returns the IMM code for next contract listed in the International Money Market section of the Chicago Mercantile Exchange.