Periods
Either an option number, or a range of floats, describing the accruals periods or the timing of cash payments, in the format mm.dd for payments in advance or -mm.dd for payments in arrears. See Using Daycount
There are two kinds of use of Periods:

Use 1: Determining How Much to Accrue

Periods is nearly always accompanied by DayCount because together these two variabes define how to translate the distance between two dates into a fraction of a year for the purposese of determining how much an annual rate has accrued in a timeperiod. Depending on your value of DayCount, you don"t always need Periods. If Periods is not ACT/ACT (in period) and DayCount is not composite (in other words Daycount is types 0-5), Periods is not necessary, because for DayCounts like 30/360 and ACT/365 no knowledge of the Periods is necessary to determine the fraction of a year between two dates. If, as is very common, DayCount is ACT/ACT (in period) or is composite and part of it is ACT/ACT (in period) (eg 63), then you do need Periods to define what the "in period" part of the DayCount refers too.

Use 2: Cash Timing

Periods also defines when amounts are paid in relation to the period they relate to. If you use a function in cash mode (ProjMode=1) then you most definitely need Periods, unless you are happy with the default of quarterly in advance.

You can specify Periods in two ways:
  • Invoking one of the following pre-defined sequences: 12=monthly in advance, 4=quarterly in advance, 2=semiannually in advance, 1 annually in advance, -12=monthly in arrear, etc. There is also one special predefined Periods, 13=Enlish Rental Quarter Days (March 25th, etc). The standard predefined Periods conform to calendar periods in the year, so quarterly means quarters Jan 1-April 1, April 1-July 1 etc, annually means Jan 1 etc. Its worth mentioning that the Period Jan 1-April 1 refers exactly to the first second of Jan 1 and the last second of March 31, ie it does not include the last day. Also, when payment is in advance it is one the first day of the period, ie Jan 1, and when in arrears it is on the day after the period finished, ie April 1 for Jan 1 - April 1.
  • Defining your own annual date sequence for Periods. This is very powerful and you can have irregular periods, eg Quarterly but not calendar quarters: {-3.22,-6.22,-9.22,-12.22}.


Periods can also accept a BusDaySwitch, a very powerful mechanism by which you can change the length of a period by a few days if the start or end day falls on a non-Business Day. So {-4,200} is quarterly in arrear, calendar quarters, but the start and end of periods will be moved if they fall on non-Business Days.

Example: 3
Variable Values
Default(s)
4 Calendar quarters (1.01, 4.01, 7.01, 10.01)
Switches
-12 Monthly in arrear, calendar months {1st Jan payment for Dec accrual, Feb 1 payment for Jan accrual etc}
-4 Quarterly in arrear, calendar quarters (1st April for Jan-March accrual, 1st Jul payment for April-June accrual, etc)
-2 6 monthly in arrears (1st Jan payment for Jul-Dec accrual,1st July payment for Jan-June accrual )
-1 Annually In Arrear 1st Jan payment for Jul-Dec accrual
1 Annually, 1st Jan
2 6 monthly (1st Jan, 1st July)
4 Calendar quarters (1.01, 4.01, 7.01, 10.01)
12 Calendar months {1.01, 1.02 etc}
13 Real Estate English Quarter Days:25th March, 24th June, 29th September and 25th December of each year ie {3.25,6.24,9.29,12.25}
14 Continuous (could be thought of as daily)