Output
output ¶
Excel output handling for the security process flow.
ClassificationOutput ¶
get_classification_output(gecs: bool = False, gics: bool = False) -> ClassificationOutput ¶
Return selected classification output.
Source code in src/equities_classifier/processflow/output.py
def get_classification_output(
gecs: bool = False,
gics: bool = False,
) -> ClassificationOutput:
"""Return selected classification output."""
if gecs and gics:
return ClassificationOutput.ALL
if gecs:
return ClassificationOutput.GECS
if gics:
return ClassificationOutput.GICS
return ClassificationOutput.NONE
write_excel(securities: list[Security], filename: str | Path, *, classifications: ClassificationOutput = ClassificationOutput.NONE, provider_details: bool = False) -> None ¶
Write securities to an Excel file.
Source code in src/equities_classifier/processflow/output.py
def write_excel(
securities: list[Security],
filename: str | Path,
*,
classifications: ClassificationOutput = ClassificationOutput.NONE,
provider_details: bool = False,
) -> None:
"""Write securities to an Excel file."""
workbook = Workbook()
worksheet = workbook.active
worksheet.title = "Securities"
columns = _create_columns(
securities,
classifications,
provider_details,
)
for column_index, column_name in enumerate(columns, start=1):
worksheet.cell(row=1, column=column_index, value=column_name)
for row_index, security in enumerate(securities, start=2):
values = _create_row(
security,
columns,
classifications,
provider_details,
)
for column_index, value in enumerate(values, start=1):
worksheet.cell(row=row_index, column=column_index, value=value)
_format_worksheet(worksheet)
workbook.save(filename)