PyQuantimClient 2.0.76__py3-none-any.whl → 2.0.78__py3-none-any.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.
@@ -9,7 +9,7 @@ class portfolios(quantim):
9
9
  def __init__(self, username, password, secretpool, env="pdn", api_url=None):
10
10
  super().__init__(username, password, secretpool, env, api_url)
11
11
 
12
- def get_portfolios(self, ref_date=None, country=None, fields=None, port_names=None, clean=False, mv_to_usd=False):
12
+ def get_portfolios(self, ref_date=None, country=None, fields=None, port_names=None, clean=False, mv_to_usd=False, map_indices=False):
13
13
  '''
14
14
  Query portfolios from database.
15
15
 
@@ -34,7 +34,7 @@ class portfolios(quantim):
34
34
  if (country is None or len(country)==0) and port_names is None:
35
35
  raise ValueError('Either country or port_names must be different to None.')
36
36
 
37
- data = {'date':ref_date, 'country':country, 'fields':fields, 'port_names':port_names, 'clean':clean, 'mv_to_usd':mv_to_usd, 'res_url':True}
37
+ data = {'date':ref_date, 'country':country, 'fields':fields, 'port_names':port_names, 'clean':clean, 'mv_to_usd':mv_to_usd, "map_indices":map_indices, 'res_url':True}
38
38
  ports_url = self.api_call('query_portfolios', method="post", data=data, verify=False)
39
39
  ports_data = requests.get(ports_url, verify=False)
40
40
  ports_df = pd.read_csv(io.StringIO(ports_data.content.decode('utf-8-sig')), sep='|')
PyQuantimClient/risk.py CHANGED
@@ -442,4 +442,27 @@ class risk_data(quantim):
442
442
  except Exception as e:
443
443
  raise ValueError(str(e))
444
444
  resp = self.upload_with_presigned_url(file_path, "condor-sura", f"inputs/benchmarks/peers/MX/{filename}")
445
- return resp
445
+ return resp
446
+
447
+ def download_limits_outputs(self, country, ref_date, bucket="condor-sura"):
448
+ '''
449
+ Get limits output
450
+ '''
451
+ try:
452
+ date = dt.datetime.strptime(ref_date,"%Y-%m-%d")
453
+ except:
454
+ print(f"El argumento ref_date debe ser una fecha en formato YYYY-MM-DD. Por favor validar.")
455
+ return None
456
+ try:
457
+ key_res = f"output/limits/{country}/{ref_date.replace('-','/')}/control_resumen_{ref_date.replace('-','')}.csv"
458
+ url_res = self.retrieve_s3_df(bucket, key_res, sep = "|", res_url = True, prefix=f"output/limits/{country}/")
459
+ resumen = requests.get(url_res, verify=False)
460
+ df_resumen = pd.read_csv(io.StringIO(resumen.content.decode('utf-8-sig')), sep="|")
461
+ key_det = f"output/limits/{country}/{ref_date.replace('-','/')}/control_detalle_{ref_date.replace('-','')}.csv"
462
+ url_det = self.retrieve_s3_df(bucket, key_det, sep = "|", res_url = True, prefix=f"output/limits/{country}/")
463
+ detalle = requests.get(url_det, verify=False)
464
+ df_detalle = pd.read_csv(io.StringIO(detalle.content.decode('utf-8-sig')), sep="|")
465
+ except Exception as e:
466
+ print(f"Error al obtener archivos de limites para la fecha {ref_date}: {e}")
467
+ return None
468
+ return df_resumen, df_detalle
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyQuantimClient
3
- Version: 2.0.76
3
+ Version: 2.0.78
4
4
  Summary: Python client to access quantIM services
5
5
  Author: Daniel Velasquez
6
6
  Author-email: daniel.velasquez@sura-im.com
@@ -8,14 +8,14 @@ PyQuantimClient/data.py,sha256=h2hNkzw9VW-yU2-GXVhhPYyO21wex8P6NPFzhf99Irc,4631
8
8
  PyQuantimClient/energy.py,sha256=hNI2zwOWnIDqasD-r1Keq7mN-L_l9c-VFZ3zv4ktS2A,1820
9
9
  PyQuantimClient/mstar.py,sha256=42bEKkvUtTfemQoKe7sre5cqdh_fZxcG2yLJgAhxjNQ,624
10
10
  PyQuantimClient/performance.py,sha256=_WtnyLDd56Z8Pz8_IZZDklAqTviB3AWDtKtinm6u6wM,1088
11
- PyQuantimClient/portfolios.py,sha256=snaUE0LRXH5CGBilaW_Dbiwd_GzsbutEqitaZdNS2FE,10305
11
+ PyQuantimClient/portfolios.py,sha256=OTrdgbLjKtFcqzz6-9x9IwZwPdwYCUZAhcTWhOTvcWo,10351
12
12
  PyQuantimClient/preprocess_co.py,sha256=sdQuuxK1bfjY-Wp87xt7f9yFN_9WiJf4QiBNGy-4ks0,19944
13
13
  PyQuantimClient/private_debt.py,sha256=Eeg7CgXa_mE0DTvvOfsVH_I0s_3cmkrVAOczBxznCzU,683
14
14
  PyQuantimClient/product.py,sha256=fTachNfN35m4peLtXm7WAWgERxfBITYNsb4agW4bZuM,929
15
15
  PyQuantimClient/returns.py,sha256=r2PruoqvPdfZ4uGgWb0rA9nz4wUXf5R5rDLPYjlpXOM,3143
16
- PyQuantimClient/risk.py,sha256=UGEP-WHW1CjPz8Hlh86BxlHsEiX7KOxnOvHi-n9y5Ig,20130
16
+ PyQuantimClient/risk.py,sha256=iAWr0FPv3xBI3KO4kx37c6UeKcds9dMUp7x_CFyeoyc,21475
17
17
  PyQuantimClient/utils.py,sha256=d_hyKTeHzQuPVusrbZJEhtbp6srninQCErKDfe6HH2w,941
18
- pyquantimclient-2.0.76.dist-info/METADATA,sha256=X_ezxXgiAqknNx5fGlnDt7FDb1wVKISugBb9dDHUxRg,447
19
- pyquantimclient-2.0.76.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
20
- pyquantimclient-2.0.76.dist-info/top_level.txt,sha256=WbmxYSegJ1EfH-TJOqtF0mzYevWDeaMoJ4ZAzQaOTDE,16
21
- pyquantimclient-2.0.76.dist-info/RECORD,,
18
+ pyquantimclient-2.0.78.dist-info/METADATA,sha256=bfULen5ORamuPzk3VPGCjncMgwcptYwQw1dj2hNRC6M,447
19
+ pyquantimclient-2.0.78.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
20
+ pyquantimclient-2.0.78.dist-info/top_level.txt,sha256=WbmxYSegJ1EfH-TJOqtF0mzYevWDeaMoJ4ZAzQaOTDE,16
21
+ pyquantimclient-2.0.78.dist-info/RECORD,,