cryptodatapy.extract.data_vendors.glassnode_api =============================================== .. py:module:: cryptodatapy.extract.data_vendors.glassnode_api Attributes ---------- .. autoapisummary:: cryptodatapy.extract.data_vendors.glassnode_api.data_cred cryptodatapy.extract.data_vendors.glassnode_api.urls Classes ------- .. autoapisummary:: cryptodatapy.extract.data_vendors.glassnode_api.Glassnode Module Contents --------------- .. py:data:: data_cred .. py:data:: urls .. py:class:: Glassnode(categories=None, exchanges: Optional[list[str]] = None, indexes: Optional[list[str]] = None, assets: Optional[list[str]] = None, markets: Optional[list[str]] = None, market_types=None, fields: Optional[list[str]] = None, frequencies=None, base_url: str = data_cred.glassnode_base_url, api_key: str = data_cred.glassnode_api_key, max_obs_per_call: Optional[int] = None, rate_limit: Optional[Any] = None) Bases: :py:obj:`cryptodatapy.extract.data_vendors.datavendor.DataVendor` Retrieves data from Glassnode API. .. py:method:: get_exchanges_info() -> None Gets exchanges info. .. py:method:: get_indexes_info() -> None Gets indexes info. .. py:method:: req_assets() -> Dict[str, Any] Get request for assets info. :returns: **dict** -- Data response with asset info in json format. :rtype: dictionary .. py:method:: get_assets_info(as_list: bool = False) -> Union[list[str], pandas.DataFrame] Get assets info. :param as_list: Returns assets info as list. :type as_list: bool, default False :returns: **assets** -- List or dataframe with info on available assets. :rtype: list or pd.DataFrame .. py:method:: get_markets_info() -> None Get markets info. .. py:method:: req_fields() -> Dict[str, Any] Get request for fields info. :returns: **dict** -- Data response with fields info in json format. :rtype: dictionary .. py:method:: get_fields_info(data_type: Optional[str] = None, as_list: bool = False) -> Union[list[str], pandas.DataFrame] Get fields info. :param data_type: Type of data. :type data_type: str, {'market', 'on-chain', 'off-chain'}, default None :param as_list: Returns available fields info as list. :type as_list: bool, default False :returns: **fields** -- List or dataframe with info on available fields. :rtype: list or pd.DataFrame .. py:method:: get_rate_limit_info() -> None Get rate limit info. .. py:method:: req_data(data_req: cryptodatapy.extract.datarequest.DataRequest, ticker: str, field: str) -> Dict[str, Any] Submits data request to API. :param data_req: Data request parameters in CryptoDataPy format. :type data_req: DataRequest :param ticker: Requested ticker symbol. :type ticker: str :param field: Requested field. :type field: str :returns: **data_resp** -- Data response in json format. :rtype: dict .. py:method:: wrangle_data_resp(data_req: cryptodatapy.extract.datarequest.DataRequest, data_resp: Dict[str, Any], field: str) -> pandas.DataFrame :staticmethod: Wrangle data response into tidy data format. :param data_req: Data request parameters in CryptoDataPy format. :type data_req: DataRequest :param data_resp: Data response in JSON format. :type data_resp: dictionary :param field: Requested field. :type field: str :returns: **df** -- Wrangled dataframe with DatetimeIndex and selected field values (cols), in tidy format. :rtype: pd.DataFrame .. py:method:: get_tidy_data(data_req: cryptodatapy.extract.datarequest.DataRequest, ticker: str, field: str) -> pandas.DataFrame Submits data request and wrangles the data response into tidy data format. :param data_req: Data request parameters in CryptoDataPy format. :type data_req: DataRequest :param ticker: Requested ticker symbol. :type ticker: str :param field: Requested field. :type field: str :returns: **df** -- Dataframe with DatetimeIndex and field values (col) wrangled into tidy data format. :rtype: pd.DataFrame .. py:method:: get_all_fields(data_req: cryptodatapy.extract.datarequest.DataRequest, ticker: str) -> pandas.DataFrame Loops list of tickers, retrieves data in tidy format for each ticker and stores it in a dataframe. :param data_req: Data request parameters in CryptoDataPy format. :type data_req: DataRequest :param ticker: Requested ticker symbol. :type ticker: str :returns: **df** -- Dataframe with DatetimeIndex and values for fields (cols), in tidy data format. :rtype: pd.DataFrame .. py:method:: check_params(data_req: cryptodatapy.extract.datarequest.DataRequest) -> None Check data request parameters before calling API to improve efficiency. :param data_req: Data request parameters in CryptoDataPy format. :type data_req: DataRequest .. py:method:: get_data(data_req: cryptodatapy.extract.datarequest.DataRequest) -> pandas.DataFrame Get market, on-chain or off-chain data. :param data_req: Data request parameters in CryptoDataPy format. :type data_req: DataRequest :returns: **df** -- DataFrame with DatetimeIndex (level 0), ticker (level 1), and values for market, on-chain and/or off-chain fields (cols), in tidy data format. :rtype: pd.DataFrame - MultiIndex