cryptodatapy.util ================= .. py:module:: cryptodatapy.util Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/cryptodatapy/util/datacatalog/index /autoapi/cryptodatapy/util/datacredentials/index Classes ------- .. autoapisummary:: cryptodatapy.util.DataCatalog cryptodatapy.util.DataCredentials Package Contents ---------------- .. py:class:: DataCatalog Data catalog which makes it easy to find, extract, use, and share CryptoDataPy datasets. :param data_sources: Name and url of available data sources. :type data_sources: str .. py:attribute:: data_sources :type: Dict .. py:method:: get_tickers_metadata(tickers: Optional[Union[str, List[str]]] = None, country_id_2: Optional[str] = None, country_id_3: Optional[str] = None, country_name: Optional[str] = None, agg: Optional[str] = None, cat: Optional[str] = None, subcat: Optional[str] = None, mkt_type: Optional[str] = None, quote_ccy: Optional[str] = None, as_list=False) -> pd.DataFrame() :staticmethod: Gets ticker metadata. Excludes individual equity and cryptoasset tickers. :param tickers: Tickers for which to get metadata. :type tickers: str or list, optional, default None :param country_id_2: Country code for which to filter tickers, ISO 3166-1 alpha-2 format. :type country_id_2: str, optional, default None :param country_id_3: Country code for which to filter tickers, ISO 3166-1 alpha-3 format. :type country_id_3: str, optional, default None :param country_name: Country name for which to filer tickers. :type country_name: str, optional, default None :param agg: Country aggregate. :type agg: str, {'DM', 'EM', 'WL', 'Euro zone'}, optional, default None :param cat: Tickers category. :type cat: str, {'crypto', 'fx', 'cmdty', 'eqty', 'rates', 'bonds', 'credit', 'macro', 'alt'} :param subcat: 'inflation', 'spread', 'etf', 'vol', 'reit', 'industrial metals', 'grains', 'energy', 'softs', 'livestock', 'precious metals', 'growth', 'unemployment', 'money', 'credit', 'property'}, optional, default None Tickers subcategory. :type subcat: str, { 'spot rate', 'index', 'effective exchange rate', 'yield', 'swap rate', 'real yield', :param mkt_type: Market type, e.g. 'spot ', 'future', 'perpetual_future', 'option'. :type mkt_type: str, {'spot', 'etf', 'perpetual_future', 'future', 'swap', 'option'}, optional, default None :param quote_ccy: Quote currency for base asset, e.g. 'GBP' for EURGBP, 'USD' for BTCUSD (bitcoin in dollars), etc. :type quote_ccy: str, optional, default None :param as_list: Returns requested tickers as list. :type as_list: bool, default False :returns: **tickers_df** -- DataFrame with requested tickers metadata. :rtype: pd.DataFrame .. py:method:: search_tickers(by_col: Optional[str] = None, keyword: Optional[str] = None) -> pd.DataFrame() :staticmethod: Searches for tickers metadata. :param by_col: Column by which to search. :type by_col: str, optional, default None :param keyword: Keyword for which to search. :type keyword: str, optional, default None :returns: **tickers_df** -- DataFrame with requested tickers metadata. :rtype: pd.DataFrame .. py:method:: get_fields_metadata(fields: Optional[Union[str, List[str]]] = None, name: Optional[str] = None, cat: Optional[str] = None, subcat: Optional[str] = None, as_list=False) -> pd.DataFrame() :staticmethod: Gets fields metadata. :param fields: Field ids for which to get metadata. :type fields: str or list, optional, default None :param name: Name of fields for which to get metadata. :type name: str, optional, default None :param cat: Fields category, i.e. type of data. :type cat: str, {'all', 'market', 'on-chain', 'off-chain'}, optional, default None :param subcat: Fields subcategory. :type subcat: str, optional, default None :param as_list: Returns requested fields as list. :type as_list: bool, False :returns: **fields_df** -- DataFrame with requested fields metadata. :rtype: pd.DataFrame .. py:method:: search_fields(by_col: Optional[str] = None, keyword: Optional[str] = None) -> pd.DataFrame() :staticmethod: Searches for fields metadata. :param by_col: Column by which to search. :type by_col: str, optional, default None :param keyword: Keyword for which to search. :type keyword: str, optional, default None :returns: **fields_df** -- DataFrame with fields metadata. :rtype: pd.DataFrame .. py:method:: scrape_stablecoins(source: str = 'coingecko', rank_by: str = 'mkt_cap', as_list=False) -> Union[pandas.DataFrame, list] :staticmethod: Web scrapes stablecoin information from websites. :param source: Website from which to scrape list of stablecoins. :type source: str, {'coinmarketcap', 'coingecko'}, default 'coingecko' :param rank_by: Metrics by which to rank stablecoins. :type rank_by: str, default 'mkt_cap' :param as_list: Return stablecoins tickers as list. :type as_list: bool, default False :returns: **sc** -- DataFrame with stablecoin info or list of stablecoin tickers. :rtype: Pd.Dataframe or list .. py:class:: DataCredentials Stores data credentials used by the CryptoDataPy project for data extraction, storage, etc. .. py:attribute:: postgresql_db_address :type: str :value: None .. py:attribute:: postgresql_db_port :type: str :value: None .. py:attribute:: postgresql_db_username :type: str :value: None .. py:attribute:: postgresql_db_password :type: str :value: None .. py:attribute:: postgresql_db_name :type: str :value: None .. py:attribute:: mongo_db_username :type: str :value: None .. py:attribute:: mongo_db_password :type: str :value: None .. py:attribute:: mongo_db_name :type: str :value: None .. py:attribute:: cryptocompare_api_key :type: str .. py:attribute:: glassnode_api_key :type: str .. py:attribute:: tiingo_api_key :type: str .. py:attribute:: coinmetrics_api_key :type: str .. py:attribute:: cryptocompare_base_url :type: str :value: 'https://min-api.cryptocompare.com/data/' .. py:attribute:: glassnode_base_url :type: str :value: 'https://api.glassnode.com/v1/metrics/' .. py:attribute:: tiingo_base_url :type: str :value: 'https://api.tiingo.com/tiingo/' .. py:attribute:: aqr_base_url :type: str :value: 'https://www.aqr.com/-/media/AQR/Documents/Insights/Data-Sets/' .. py:attribute:: coinmetrics_base_url :type: str :value: 'https://api.coinmetrics.io/v4' .. py:attribute:: cryptomcompare_endpoints :type: dict .. py:attribute:: cryptocompare_api_rate_limit :type: str :value: 'https://min-api.cryptocompare.com/stats/rate/limit' .. py:attribute:: dbnomics_vendors_url :type: str :value: 'https://db.nomics.world/providers' .. py:attribute:: pdr_vendors_url :type: str :value: 'https://pandas-datareader.readthedocs.io/en/latest/readers/index.html' .. py:attribute:: dbnomics_search_url :type: str :value: 'https://db.nomics.world/'