cryptodatapy.extract.web ======================== .. py:module:: cryptodatapy.extract.web Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/cryptodatapy/extract/web/aqr/index /autoapi/cryptodatapy/extract/web/web/index Classes ------- .. autoapisummary:: cryptodatapy.extract.web.AQR cryptodatapy.extract.web.Web Package Contents ---------------- .. py:class:: AQR(categories=None, indexes: Optional[Dict[str, List[str]]] = None, assets: Optional[Dict[str, List[str]]] = None, markets: Optional[Dict[str, List[str]]] = None, market_types=None, fields: Optional[Dict[str, List[str]]] = None, frequencies=None, base_url: str = data_cred.aqr_base_url, file_formats: Optional[Union[str, List[str]]] = 'xlsx') Bases: :py:obj:`cryptodatapy.extract.web.web.Web` Retrieves data from AQR data sets. .. py:method:: get_indexes_info() -> None Get indexes info. .. py:method:: get_assets_info() -> None Get assets info. .. py:method:: get_markets_info() -> None Get markets info. .. py:method:: get_fields_info(data_type: Optional[str] = 'market', cat: Optional[str] = None) -> Dict[str, List[str]] :staticmethod: Get fields info. :param data_type: Type of data. :type data_type: str, {'market', 'on-chain', 'off-chain'}, default 'market' :param cat: Asset class or time series category. :type cat: str, {'crypto', 'eqty', 'fx', 'rates', 'cmdty', 'macro'}, optional, default None :returns: **fields** -- Dictionary with info on available fields, by category. :rtype: dictionary .. py:method:: set_excel_params(data_req: cryptodatapy.extract.datarequest.DataRequest, ticker: str) -> Dict[str, Union[str, int]] Sets excel parameters for reading excel files. :param data_req: Parameters of data request in CryptoDataPy format. :type data_req: DataRequest :param ticker: Ticker symbol. :type ticker: str :returns: **dict** -- Dictionary with params to read excel file. :rtype: dictionary .. py:method:: get_series(data_req: cryptodatapy.extract.datarequest.DataRequest) -> Dict[str, pandas.DataFrame] Gets series from AQR data file. :param data_req: Parameters of data request in CryptoDataPy format. :type data_req: DataRequest :returns: **dfs_dict** -- Dictionary with ticker-dataframe key-value pairs. :rtype: dictionary .. py:method:: wrangle_data_resp(data_req: cryptodatapy.extract.datarequest.DataRequest, data_resp: Dict[str, pandas.DataFrame]) -> pandas.DataFrame :staticmethod: Wrangle data response. :param data_req: Parameters of data request in CryptoDataPy format. :type data_req: DataRequest :param data_resp: Dictionary with ticker-dataframe key-value pairs. :type data_resp: Dictionary :returns: **df** -- Wrangled dataframe with DatetimeIndex (level 0), ticker (level 1), and values for market or macro series for selected fields (cols), in tidy format. :rtype: pd.DataFrame .. py:method:: get_tidy_data(data_req: cryptodatapy.extract.datarequest.DataRequest) -> pandas.DataFrame Gets data from FRED and wrangles the data response into tidy data format. :param data_req: Parameters of data request in CryptoDataPy format. :type data_req: DataRequest :returns: **df** -- Dataframe with DatetimeIndex (level 0), tickers (level 1) and actual values (cols), in tidy data format. :rtype: pd.DataFrame - MultiIndex .. py:method:: check_params(data_req: cryptodatapy.extract.datarequest.DataRequest) -> None Checks the data request parameters before requesting data to reduce API calls and improve efficiency. .. py:method:: get_data(data_req: cryptodatapy.extract.datarequest.DataRequest) -> pandas.DataFrame Get data. Parameters data_req: DataRequest Parameters of data request in CryptoDataPy format. :returns: **df** -- DataFrame with DatetimeIndex (level 0), ticker (level 1), and values for selected fields (cols), in tidy format. :rtype: pd.DataFrame - MultiIndex .. py:class:: Web(categories, assets, indexes, markets, market_types, fields, frequencies, base_url, file_formats) Bases: :py:obj:`abc.ABC` Web is an abstract base class which provides a blueprint for properties and methods for the web subclass. .. py:property:: categories Returns a list of available categories for the data vendor. .. py:property:: assets Returns a list of available assets for the data vendor. .. py:property:: indexes Returns a list of available indices from the web page. .. py:property:: markets Returns a list of available markets for the data vendor. .. py:property:: market_types Returns a list of available market types for the data vendor. .. py:property:: fields Returns a list of available fields for the data vendor. .. py:property:: frequencies Returns a list of available data frequencies for the data vendor. .. py:property:: base_url Returns the base url for the data vendor. .. py:property:: file_formats Returns the file formats for the files on the web page. .. py:method:: get_indexes_info() :abstractmethod: Gets info for available indexes from the data vendor. .. py:method:: get_assets_info() :abstractmethod: Gets info for available assets from the data vendor. .. py:method:: get_markets_info() :abstractmethod: Gets info for available markets from the data vendor. .. py:method:: get_fields_info(data_type: Optional[str]) :abstractmethod: Gets info for available fields from the data vendor. :param data_type: A string containing the data type to filter the data vendor's fields :type data_type: Optional[str] .. py:method:: get_data(data_req: cryptodatapy.extract.datarequest.DataRequest) -> pandas.DataFrame :abstractmethod: Submits get data request to API. :param data_req: A DataRequest object containing the request parameters. :type data_req: DataRequest .. py:method:: wrangle_data_resp(data_req: cryptodatapy.extract.datarequest.DataRequest, data_resp: Union[Dict[str, Any], pandas.DataFrame]) -> pandas.DataFrame :staticmethod: :abstractmethod: Wrangles data response from data vendor API into tidy format. :param data_req: A DataRequest object containing the request parameters. :type data_req: DataRequest :param data_resp: A dictionary or DataFrame containing the data response from the data vendor API. :type data_resp: Union[Dict[str, Any], pd.DataFrame]