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
1on 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,pdandrd.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
fpandafp, 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
afpandfp, unreported periods are extrapolated from the reported periods, provided that we are able to identify the fiscal calendar the company is using. Forpdandrd, 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
1on the date a report is published.- Parameters:
freq – A fiscal frequency. The possible values are
FQ/FS,FQ,FSandFY.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
1on the date when a report impacted trading. This can differ frompublication_date- when a company publishes results after the market close, thereport_datewill be the next trading day.- Parameters:
freq – A fiscal frequency. The possible values are
FQ/FS,FQ,FSandFY.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
crossoveranddays_afterare 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_afterdays. 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
1in the time series. This is eitherpdfor the publication date orafpfor the last day of the fiscal period. See also Alignment.crossover – Which date the crossover date is calculated relative to. This is either
pdfor the publication date orafpfor the last day of the fiscal period.days_after – The number of days after the date defined by
crossoverthe 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)