Qubx 0.2.74__cp311-cp311-manylinux_2_35_x86_64.whl → 0.2.75__cp311-cp311-manylinux_2_35_x86_64.whl

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.

Potentially problematic release.


This version of Qubx might be problematic. Click here for more details.

qubx/data/readers.py CHANGED
@@ -945,6 +945,23 @@ class QuestDBConnector(DataReader):
945
945
  return pd.Series()
946
946
  return vol_stats.set_index("symbol")["quote_volume"]
947
947
 
948
+ def get_fundamental_data(
949
+ self, exchange: str, start: str | pd.Timestamp | None = None, stop: str | pd.Timestamp | None = None
950
+ ) -> pd.DataFrame:
951
+ table_name = {"BINANCE.UM": "binance.umfutures.fundamental"}[exchange]
952
+ query = f"select * from {table_name}"
953
+ if start or stop:
954
+ conditions = []
955
+ if start:
956
+ conditions.append(f"timestamp >= '{start}'")
957
+ if stop:
958
+ conditions.append(f"timestamp < '{stop}'")
959
+ query += " where " + " and ".join(conditions)
960
+ df = self.execute(query)
961
+ if df.empty:
962
+ return pd.DataFrame()
963
+ return df.set_index(["timestamp", "symbol", "metric"]).value.unstack("metric")
964
+
948
965
  def get_names(self) -> List[str]:
949
966
  return self._get_names(self._builder)
950
967
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Qubx
3
- Version: 0.2.74
3
+ Version: 0.2.75
4
4
  Summary: Qubx - quantitative trading framework
5
5
  Home-page: https://github.com/dmarienko/Qubx
6
6
  Author: Dmitry Marienko
@@ -14,16 +14,16 @@ qubx/core/helpers.py,sha256=R-xi4lgmYvWpUARIYcbcrNrRlEap5wc-GQ5sE4riUxQ,12663
14
14
  qubx/core/loggers.py,sha256=zpehm2-RdKG1ISe6t3DiM3RrL_zzGni3YFcxfgDkV24,16575
15
15
  qubx/core/lookups.py,sha256=qGOSb2SIxmgVPGJFLJnPDI1P9hCzFMVipRDcVLUm8qk,14599
16
16
  qubx/core/metrics.py,sha256=pL1obxnk8I7bDF41bQcOZ7MDsq4Wmj6g5cRiV7cFZKQ,38657
17
- qubx/core/series.cpython-311-x86_64-linux-gnu.so,sha256=bga9gkSEn5IAUqeZLygh0kmiszqDvRu9D0bHjlXLaz4,779016
17
+ qubx/core/series.cpython-311-x86_64-linux-gnu.so,sha256=HwGNM0szT5qwZX6C2RS5W4kRqMtJhVpckokYeHnWMmM,779016
18
18
  qubx/core/series.pxd,sha256=kF7QeLFgCM-C2hDxVvJM97ZOmyw1v7JEI9WfPKtQ6xs,3002
19
19
  qubx/core/series.pyi,sha256=bRBWOaDUBe4Hm2SvraoVeT-n5NFLA92fi8ezrArx9nY,2831
20
20
  qubx/core/series.pyx,sha256=UhZsnT7R3-UED05Fnp3mGxr4RSdMpWAHB4lkcz46MFo,32598
21
21
  qubx/core/strategy.py,sha256=tTXhDbFTH63yj53mLgVEDBZxYOxC51prcsyXWkdTgLs,10991
22
- qubx/core/utils.cpython-311-x86_64-linux-gnu.so,sha256=nNrBMQLcCCa3s9k8LvVAiQzLyA0aehqeJDl4Un5o8zs,82504
22
+ qubx/core/utils.cpython-311-x86_64-linux-gnu.so,sha256=BKuT2LUOVCVEen9gT8XNhwKxmFjr1SEJXZyDqb16nZg,82504
23
23
  qubx/core/utils.pyi,sha256=DAjyRVPJSxK4Em-9wui2F0yYHfP5tI5DjKavXNOnHa8,276
24
24
  qubx/core/utils.pyx,sha256=-8ek58CrbqWZq0-OY7WSREsCXBoBeWrD_wEYbIBS9rI,1696
25
25
  qubx/data/helpers.py,sha256=A0NGzhpXYWD92-GeB8TghwMnR0NW8bjcNJOCXybQw3g,782
26
- qubx/data/readers.py,sha256=ACs-6R2F_WXB1nw5azVYPLK5NgwJete4mCMoo16mXNY,39324
26
+ qubx/data/readers.py,sha256=2VgaHKpHg67qej0Ty6D9q-zLRKEMamQY5pEIIJJcAZw,40062
27
27
  qubx/gathering/simplest.py,sha256=Ez3YFZMKH3o0jV0Qbg1SuZiuFNs_5No_C7wZ6vOeqfo,3814
28
28
  qubx/impl/ccxt_connector.py,sha256=ja_0WJDyZfkzqhNvoV-c5CCg15YnbRIThxw0TTNdwcc,13066
29
29
  qubx/impl/ccxt_customizations.py,sha256=WUhDT9x2SYuFrOyBIbk2D9Q_U_5QZhtLomLq88Egf_c,6230
@@ -35,7 +35,7 @@ qubx/pandaz/__init__.py,sha256=Iw5uzicYGSC3FEKZ-W1O5-7cXq_P0kH11-EcXV0zZhs,175
35
35
  qubx/pandaz/ta.py,sha256=NthiiueUoqWGRcjovcKKThcCcdImZn3JRdWDA2vL28k,85075
36
36
  qubx/pandaz/utils.py,sha256=XB28Zwv3cXWbKFXbcV5QGj_d6w-i8Yo4LYkX8aPuCHo,19613
37
37
  qubx/ta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
- qubx/ta/indicators.cpython-311-x86_64-linux-gnu.so,sha256=q6UuYHbUdnt7DX0iwsZsIGU5I-tIZdwmB4ugpGw3mW4,576168
38
+ qubx/ta/indicators.cpython-311-x86_64-linux-gnu.so,sha256=GNi4LN7GZgIfQOSKMEW19CmctnUW84lulZkdLbwq7TM,576168
39
39
  qubx/ta/indicators.pxd,sha256=YzPDhbbNPmy3m4NafwIRF5sNFsmkq-MM1gbeAygtBwM,4007
40
40
  qubx/ta/indicators.pyi,sha256=mM_7ISmGQDgjhwxCoZXDw7Rm9fynQSYjevV7fRoLdNc,1683
41
41
  qubx/ta/indicators.pyx,sha256=GuxB63YApFnA9IWNJDbBt90J1sOoxTf3jDWYQ3uD9So,24306
@@ -53,6 +53,6 @@ qubx/utils/misc.py,sha256=Av0mhrPCy5NZRrRmjOAhTKusa8wVdL7vCQtEy9bVnz4,10450
53
53
  qubx/utils/ntp.py,sha256=LZo4FPVY3rqLUV9VWkLcZaPOpUDFC8Qleynmfggg9No,1758
54
54
  qubx/utils/runner.py,sha256=Czo01KUCc9Oj9TIcs03d6Qh7fOpQV5w8oH6UDZ6Yqn0,9539
55
55
  qubx/utils/time.py,sha256=fIVWYRmqRT1zkLIWy9jo_Fpfpc03S0sYyOcrHZcfF74,5198
56
- qubx-0.2.74.dist-info/METADATA,sha256=E13FYFtRhfp4cgM5WA25tF5WgSfeaCb_HlYAaz7gKyc,2573
57
- qubx-0.2.74.dist-info/WHEEL,sha256=MLOa6LysROdjgj4FVxsHitAnIh8Be2D_c9ZSBHKrz2M,110
58
- qubx-0.2.74.dist-info/RECORD,,
56
+ qubx-0.2.75.dist-info/METADATA,sha256=yq_PoJL-wZQFfQ_Ccmci1z7MNvatP0NL79SIomC421U,2573
57
+ qubx-0.2.75.dist-info/WHEEL,sha256=MLOa6LysROdjgj4FVxsHitAnIh8Be2D_c9ZSBHKrz2M,110
58
+ qubx-0.2.75.dist-info/RECORD,,
File without changes