From 65ce66e033f6e1474c5684fe9341e32492e605a7 Mon Sep 17 00:00:00 2001 From: Danglewood <85772166+deeleeramone@users.noreply.github.com> Date: Wed, 6 Mar 2024 02:14:08 -0800 Subject: [Enhancement] Slightly Change The Order of intrinio Cash Flow (#6168) * fix order of intrinio cash flow * apparently homebrew takes priority, deleted that black --- .../openbb_intrinio/models/balance_sheet.py | 3 ++- .../intrinio/openbb_intrinio/models/cash_flow.py | 25 +++++++++++----------- .../openbb_intrinio/models/equity_historical.py | 3 ++- .../openbb_intrinio/models/income_statement.py | 3 ++- 4 files changed, 19 insertions(+), 15 deletions(-) diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/balance_sheet.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/balance_sheet.py index 1dd61e89588..0476ab44ead 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/balance_sheet.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/balance_sheet.py @@ -1,6 +1,7 @@ """Intrinio Balance Sheet Model.""" # pylint: disable=unused-argument + import warnings from typing import Any, Dict, List, Literal, Optional @@ -482,7 +483,7 @@ class IntrinioBalanceSheetFetcher( for sub_item in item["financials"]: field_name = sub_item["data_tag"]["tag"] unit = sub_item["data_tag"].get("unit", "") - if unit and "share" not in unit: + if unit and len(unit) == 3: units.append(unit) sub_dict[field_name] = ( float(sub_item["value"]) diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/cash_flow.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/cash_flow.py index a0189cca0c5..c8fffcc5237 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/cash_flow.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/cash_flow.py @@ -1,6 +1,7 @@ """Intrinio Cash Flow Statement Model.""" # pylint: disable=unused-argument + import warnings from typing import Any, Dict, List, Literal, Optional @@ -89,6 +90,12 @@ class IntrinioCashFlowStatementData(CashFlowStatementData): description="The currency in which the balance sheet is reported.", default=None, ) + net_income_continuing_operations: Optional[float] = Field( + default=None, description="Net Income (Continuing Operations)" + ) + net_income_discontinued_operations: Optional[float] = Field( + default=None, description="Net Income (Discontinued Operations)" + ) net_income: Optional[float] = Field( default=None, description="Consolidated Net Income." ) @@ -119,12 +126,6 @@ class IntrinioCashFlowStatementData(CashFlowStatementData): net_cash_from_discontinued_operating_activities: Optional[float] = Field( default=None, description="Net Cash from Discontinued Operating Activities" ) - net_income_continuing_operations: Optional[float] = Field( - default=None, description="Net Income (Continuing Operations)" - ) - net_income_discontinued_operations: Optional[float] = Field( - default=None, description="Net Income (Discontinued Operations)" - ) net_cash_from_operating_activities: Optional[float] = Field( default=None, description="Net Cash from Operating Activities" ) @@ -220,7 +221,7 @@ class IntrinioCashFlowStatementData(CashFlowStatementData): @model_validator(mode="before") @classmethod - def replace_zero(cls, values): # pylint: disable=no-self-argument + def replace_zero(cls, values): """Check for zero values and replace with None.""" return ( {k: None if v == 0 else v for k, v in values.items()} @@ -282,10 +283,10 @@ class IntrinioCashFlowStatementFetcher( """Return the response.""" statement_data = await response.json() return { - "period_ending": statement_data["fundamental"]["end_date"], - "fiscal_period": statement_data["fundamental"]["fiscal_period"], - "fiscal_year": statement_data["fundamental"]["fiscal_year"], - "financials": statement_data["standardized_financials"], + "period_ending": statement_data["fundamental"]["end_date"], # type: ignore + "fiscal_period": statement_data["fundamental"]["fiscal_period"], # type: ignore + "fiscal_year": statement_data["fundamental"]["fiscal_year"], # type: ignore + "financials": statement_data["standardized_financials"], # type: ignore } intrinio_id = f"{query.symbol}-{statement_code}" @@ -308,7 +309,7 @@ class IntrinioCashFlowStatementFetcher( for sub_item in item["financials"]: unit = sub_item["data_tag"].get("unit", "") - if unit and "share" not in unit: + if unit and len(unit) == 3: units.append(unit) field_name = sub_item["data_tag"]["tag"] sub_dict[field_name] = ( diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py index 6b98eb5a53a..d06785ac7b0 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py @@ -1,5 +1,7 @@ """Intrinio Equity Historical Price Model.""" +# pylint: disable = unused-argument + from datetime import datetime, time from typing import Any, Dict, List, Literal, Optional @@ -221,7 +223,6 @@ class IntrinioEquityHistoricalFetcher( return await amake_requests([url], callback, **kwargs) - # pylint: disable=unused-argument @staticmethod def transform_data( query: IntrinioEquityHistoricalQueryParams, diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/income_statement.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/income_statement.py index f23467392b4..64b95e5976a 100644 --- a/openbb_platform/providers/intrinio/openbb_intrinio/models/income_statement.py +++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/income_statement.py @@ -1,6 +1,7 @@ """Intrinio Income Statement Model.""" # pylint: disable=unused-argument + import warnings from typing import Any, Dict, List, Literal, Optional @@ -472,7 +473,7 @@ class IntrinioIncomeStatementFetcher( for sub_item in item["financials"]: unit = sub_item["data_tag"].get("unit", "") - if unit and "share" not in unit: + if unit and len(unit) == 3: units.append(unit) field_name = sub_item["data_tag"]["tag"] sub_dict[field_name] = ( -- cgit v1.2.3