Calendar signals
This section contains signals which provide information about companies’ fiscal calendars.
- company_calendar(freq: str = 'FQ/FS', alignment: str = 'afp', *, fill_gaps: bool, extend: bool | int = False)
Produces a time series with the value
1
on the alignment date for every fiscal period of the requested frequency.- Parameters:
freq – A fiscal frequency. The possible values are
FQ/FS
,FQ
,FS
,FY
,FQ+
,FS+
andFQ&FS
.alignment – An alignment. The possible values are
afp
,fp
,pd
andrd
.fill_gaps – Whether the signal should fill in dates that are missing from the FactSet time series that are used for determining the calendar. Only supported for the alignments
fp
andafp
, and defaults to True for these alignments.extend – If True or a positive integer, the time series includes future unreported periods. If it is a positive integer, that number of future periods are included. If it is True, an unlimited number of future periods is included. If it is False, only reported periods are included. For
afp
andfp
, unreported periods are extrapolated from the reported periods, provided that we are able to identify the fiscal calendar the company is using. Forpd
andrd
, future dates are taken from FactSet’s data.
- publication_date(freq: str = 'FQ/FS', *, extend: bool | int = True)
Produces a time series with the value
1
on the date a report is published.- Parameters:
freq – A fiscal frequency. The possible values are
FQ/FS
,FQ
,FS
andFY
.extend – If True or a positive integer, the time series includes future unreported periods. If it is a positive integer, that number of future periods is included. If it is True, an unlimited number of future periods is included. If it is False, only reported periods are included.
- report_date(freq='FQ/FS', *, extend: bool | int = True)
Produces a time series with the value
1
on the date when a report impacted trading. This can differ frompublication_date
- when a company publishes results after the market close, thereport_date
will be the next trading day.- Parameters:
freq – A fiscal frequency. The possible values are
FQ/FS
,FQ
,FS
andFY
.extend – If True or a positive integer, the time series includes future unreported periods. If it is a positive integer, that number of future periods is included. If it is True, an unlimited number of future periods is included. If it is False, only reported periods are included.
- current_quarter(alignment='pd', crossover='pd', days_after=0)
Produces a time series with with the value 1 on every day in the current quarter, possibly extended to the quarter’s publication date.
The arguments
crossover
anddays_after
are used to determine which quarter is the “current” one. For each fiscal quarter we calculate the crossover date as the publication date (ifcrossover='pd'
) or the last day of the fiscal quarter (ifcrossover='afp'
) plusdays_after
days. The current quarter is then the last fiscal quarter whose crossover date is today or in the future.- Parameters:
alignment – Determines the last day with the value
1
in the time series. This is eitherpd
for the publication date orafp
for the last day of the fiscal period. See also Alignment.crossover – Which date the crossover date is calculated relative to. This is either
pd
for the publication date orafp
for the last day of the fiscal period.days_after – The number of days after the date defined by
crossover
the real crossover date is.
Example:
Get the close price only for days in the first unreported quarter:
close_price.reindex_like(current_quarter(), fill_method=None)