cryptodatapy 0.2.12__tar.gz → 0.2.13__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/PKG-INFO +1 -1
  2. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/pyproject.toml +1 -1
  3. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/tiingo_api.py +12 -7
  4. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/libraries/ccxt_api.py +4 -0
  5. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/convertparams.py +14 -2
  6. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/LICENSE +0 -0
  7. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/README.md +0 -0
  8. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/__init__.py +0 -0
  9. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/conf/__init__.py +0 -0
  10. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/conf/fields.csv +0 -0
  11. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/conf/tickers.csv +0 -0
  12. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/__init__.py +0 -0
  13. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/br_econ_calendar.csv +0 -0
  14. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/ca_econ_calendar.csv +0 -0
  15. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/cn_econ_calendar.csv +0 -0
  16. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/de_econ_calendar.csv +0 -0
  17. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/ez_econ_calendar.csv +0 -0
  18. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/fr_econ_calendar.csv +0 -0
  19. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/gb_econ_calendar.csv +0 -0
  20. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/get_econ_calendars.py +0 -0
  21. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/id_econ_calendar.csv +0 -0
  22. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/in_econ_calendar.csv +0 -0
  23. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/it_econ_calendar.csv +0 -0
  24. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/jp_econ_calendar.csv +0 -0
  25. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/kr_econ_calendar.csv +0 -0
  26. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/mx_econ_calendar.csv +0 -0
  27. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/ru_econ_calendar.csv +0 -0
  28. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/tr_econ_calendar.csv +0 -0
  29. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/datasets/us_econ_calendar.csv +0 -0
  30. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/__init__.py +0 -0
  31. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/.ipynb_checkpoints/CCXT-checkpoint.ipynb +0 -0
  32. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/.ipynb_checkpoints/DBNomics-checkpoint.ipynb +0 -0
  33. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/.ipynb_checkpoints/InvestPy-checkpoint.ipynb +0 -0
  34. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/.ipynb_checkpoints/NasdaqDataLink-checkpoint.ipynb +0 -0
  35. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/.ipynb_checkpoints/PandasDataReader-checkpoint.ipynb +0 -0
  36. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/__init__.py +0 -0
  37. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/coinmetrics_api.py +0 -0
  38. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/cryptocompare_api.py +0 -0
  39. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/datavendor.py +0 -0
  40. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/data_vendors/glassnode_api.py +0 -0
  41. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/datarequest.py +0 -0
  42. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/exchanges/__init__.py +0 -0
  43. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/exchanges/dydx.py +0 -0
  44. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/exchanges/exchange.py +0 -0
  45. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/getdata.py +0 -0
  46. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/libraries/__init__.py +0 -0
  47. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/libraries/dbnomics_api.py +0 -0
  48. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/libraries/investpy_api.py +0 -0
  49. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/libraries/library.py +0 -0
  50. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/libraries/pandasdr_api.py +0 -0
  51. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/web/__init__.py +0 -0
  52. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/web/aqr.py +0 -0
  53. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/extract/web/web.py +0 -0
  54. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/__init__.py +0 -0
  55. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/clean.py +0 -0
  56. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/filter.py +0 -0
  57. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/impute.py +0 -0
  58. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/od.py +0 -0
  59. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/transform/wrangle.py +0 -0
  60. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/util/__init__.py +0 -0
  61. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/util/datacatalog.py +0 -0
  62. {cryptodatapy-0.2.12 → cryptodatapy-0.2.13}/src/cryptodatapy/util/datacredentials.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: cryptodatapy
3
- Version: 0.2.12
3
+ Version: 0.2.13
4
4
  Summary: Cryptoasset data library
5
5
  License: Apache-2.0
6
6
  Author: Systamental
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "cryptodatapy"
3
- version = "0.2.12"
3
+ version = "0.2.13"
4
4
  description = "Cryptoasset data library"
5
5
  authors = ["Systamental"]
6
6
  license = "Apache License 2.0"
@@ -549,7 +549,7 @@ class Tiingo(DataVendor):
549
549
  df = pd.concat([df, df0])
550
550
 
551
551
  else:
552
- for ticker in self.data_req.tickers:
552
+ for ticker in self.data_req.source_tickers:
553
553
  try:
554
554
  df0 = self.get_tidy_data(self.data_req, data_type, ticker)
555
555
  except Exception as e:
@@ -679,7 +679,7 @@ class Tiingo(DataVendor):
679
679
  """
680
680
  self.data_req = ConvertParams(data_req).to_tiingo()
681
681
 
682
- # get metada
682
+ # get metadata
683
683
  self.get_assets_info(as_list=True)
684
684
  self.get_fields_info()
685
685
 
@@ -690,11 +690,16 @@ class Tiingo(DataVendor):
690
690
  )
691
691
 
692
692
  # check assets
693
- if not any([ticker.upper() in self.assets[self.data_req.cat] for ticker in self.data_req.tickers]) and \
694
- data_req.cat != 'fx':
695
- raise ValueError(
696
- f"Selected tickers are not available. Use assets attribute to see available tickers."
697
- )
693
+ if self.data_req.cat == 'eqty':
694
+ if not any([ticker.upper() in self.assets[self.data_req.cat] for ticker in self.data_req.source_tickers]):
695
+ raise ValueError(
696
+ f"Selected eqty tickers are not available. Use assets attribute to see available eqty tickers."
697
+ )
698
+ elif self.data_req.cat == 'crypto':
699
+ if not any([ticker in self.assets[self.data_req.cat] for ticker in self.data_req.source_markets]):
700
+ raise ValueError(
701
+ f"Selected crypto tickers are not available. Use assets attribute to see available crypto tickers."
702
+ )
698
703
 
699
704
  # check fields
700
705
  if not any([field in self.fields[data_req.cat] for field in self.data_req.fields]):
@@ -1483,6 +1483,8 @@ class CCXT(Library):
1483
1483
  df: pd.DataFrame - MultiIndex
1484
1484
  DataFrame with DatetimeIndex (level 0), ticker (level 1), and values for selected fields (cols).
1485
1485
  """
1486
+ logging.info("Retrieving data request from CCXT...")
1487
+
1486
1488
  # get OHLCV
1487
1489
  if any([field in ["open", "high", "low", "close", "volume"] for field in data_req.fields]):
1488
1490
  df = await self.fetch_tidy_ohlcv_async(data_req)
@@ -1523,6 +1525,8 @@ class CCXT(Library):
1523
1525
  df: pd.DataFrame - MultiIndex
1524
1526
  DataFrame with DatetimeIndex (level 0), ticker (level 1), and values for selected fields (cols).
1525
1527
  """
1528
+ logging.info("Retrieving data request from CCXT...")
1529
+
1526
1530
  # get OHLCV
1527
1531
  if any([field in ["open", "high", "low", "close", "volume"] for field in data_req.fields]):
1528
1532
  df = self.fetch_tidy_ohlcv(data_req)
@@ -344,8 +344,20 @@ class ConvertParams:
344
344
  Convert tickers from CryptoDataPy to Tiingo format.
345
345
  """
346
346
  # tickers
347
- if self.data_req.source_tickers is None:
348
- self.data_req.source_tickers = [ticker.lower() for ticker in self.data_req.tickers]
347
+ with resources.path("cryptodatapy.conf", "tickers.csv") as f:
348
+ tickers_path = f
349
+ tickers_df = pd.read_csv(tickers_path, index_col=0, encoding="latin1")
350
+
351
+ if self.data_req.source_tickers is None and self.data_req.cat == 'eqty':
352
+ self.data_req.source_tickers = []
353
+ for ticker in self.data_req.tickers:
354
+ try:
355
+ self.data_req.source_tickers.append(tickers_df.loc[ticker, "tiingo_id"])
356
+ except KeyError:
357
+ logging.warning(
358
+ f"{ticker} not found for Tiingo source. Check tickers in"
359
+ f" data catalog and try again."
360
+ )
349
361
 
350
362
  # freq
351
363
  if self.data_req.source_freq is None:
File without changes
File without changes