Face Statements

The data behind the https://www.calcbench.com/detail/ page.

class calcbench.face_statements.FaceStatement(**data)
columns: Sequence[calcbench.face_statements.FinancialStatementColumn]
entity_name: str
line_items: Sequence[calcbench.face_statements.LineItem]
name: str

The name of the statement from the filer

class calcbench.face_statements.Fact(**data)
dimension_members: Optional[Sequence[str]]
effective_value: decimal.Decimal
fact_id: int
fact_value: Any
focus: bool
focus_negative: bool
format_type: str
has_been_revised: bool
negated_label: str
revised: bool
special_fact_type: str
text_fact_id: Optional[int]
unit_of_measure: str
class calcbench.face_statements.FinancialStatementColumn(**data)
calculated: bool

Was this column calcuated by Calcbench, Q4 numbers for instance.

date_range: str

Human readable, like “7/1/2017 to 6/30/2018”

fiscal_period: str

Human readable, like “Y 2018”

fiscal_period_period: str
fiscal_period_type: int
fiscal_period_year: int
instant: bool

Does this refer to an instant in time or a period, balance sheet vs. income statment

is_guidance_column: bool

Is this column forward guidance

period_end: datetime.date
period_start: datetime.date
class calcbench.face_statements.LineItem(**data)
facts: Optional[Sequence[calcbench.face_statements.Fact]]
footnote_fact_id: Optional[int]
has_dimensions: bool
is_abstract: bool
is_extension: bool
is_non_xbrl: bool
is_subtotal: bool
label: str
local_name: str

XBRL tag

normalized_point_name: str
tree_depth: int
type: str
unique_id: str
document_type: str

10-K, 8-K etc

filing_date: datetime.date

Date filing was received

URL of the filing on Edgar

classmethod parse_filing_date(value)
class calcbench.face_statements.StatementType(value)

An enumeration.

Balance = 'Balance'
CashFlow = 'CashFlow'
ChangeInEquity = 'StockholdersEquity'
ComprehensiveIncome = 'StatementOfComprehensiveIncome'
Income = 'Income'
calcbench.face_statements.face_statement(company_identifier, statement_type, period_type=PeriodType.Annual, all_history=False, descending_dates=False)

Face Statements.

face statements as reported by the filing company

  • company_identifier (Union[str, int]) – a ticker or a CIK code, eg ‘msft’

  • statement_type (StatementType) – one of (‘income’, ‘balance’, ‘cash’, ‘change-in-equity’, ‘comprehensive-income’)

  • period_type (PeriodType) – annual|quarterly|cummulative|combined

  • all_periods – get all history or only the last four, True or False.

  • descending_dates (bool) – return columns in oldest -> newest order.

Return type



Data for the statement

>>> calcbench.face_statement('msft', 'income')