Source code for kaxanuk.attribution_analysis.interfaces.input_handler_interface
"""
Interface for generating output from each ticker's obtained and calculated columns
"""
import abc
from pandas import DataFrame
# import pyarrow
[docs]
class InputHandlerInterface(metaclass=abc.ABCMeta):
"""
Abstract base class for output-generating input handlers.
Concrete implementations must provide an `input_data` method that
assembles a ticker's obtained and calculated columns into a single
`pandas.DataFrame`.
"""
[docs]
@abc.abstractmethod
def input_data(
self,
*,
ticker: str,
) -> DataFrame:
"""
Load and return the obtained and calculated columns for a ticker.
Parameters
----------
ticker : str
The ticker symbol for which to assemble output data.
Returns
-------
DataFrame
DataFrame containing the ticker's obtained and calculated
columns.
"""