DateGeneration Struct Reference
Date and time calculations

Date-generation rule. More...

`#include <ql/time/dategenerationrule.hpp>`

## Public Types

enum | Rule { Backward, Forward, Zero, ThirdWednesday, Twentieth, TwentiethIMM, OldCDS, CDS, CDS2015 }

## Related Functions

(Note that these are not member functions.)
std::ostream & | operator<< (std::ostream &, DateGeneration::Rule)

## Detailed Description

Date-generation rule.

These conventions specify the rule used to generate dates in a Schedule.

## Member Enumeration Documentation

## Rule

enum Rule

Enumerator
Backward | Backward from termination date to effective date.
Forward | Forward from effective date to termination date.
Zero | No intermediate dates between effective date and termination date.
ThirdWednesday | All dates but effective date and termination date are taken to be on the third wednesday of their month (with forward calculation.)
Twentieth | All dates but the effective date are taken to be the twentieth of their month (used for CDS schedules in emerging markets.) The termination date is also modified.
TwentiethIMM | All dates but the effective date are taken to be the twentieth of an IMM month (used for CDS schedules.) The termination date is also modified.
OldCDS | Same as TwentiethIMM with unrestricted date ends and log/short stub coupon period (old CDS convention).
CDS | Credit derivatives standard rule since 'Big Bang' changes in 2009.
CDS2015 | Credit derivatives standard rule since December 20th, 2015.