PyQuantimClient 2.0.32__tar.gz → 2.0.34__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 (23) hide show
  1. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/PKG-INFO +1 -1
  2. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/PyQuantimClient.egg-info/PKG-INFO +1 -1
  3. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/setup.py +1 -1
  4. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/data.py +7 -2
  5. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/risk.py +7 -4
  6. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/PyQuantimClient.egg-info/SOURCES.txt +0 -0
  7. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/PyQuantimClient.egg-info/dependency_links.txt +0 -0
  8. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/PyQuantimClient.egg-info/top_level.txt +0 -0
  9. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/README.md +0 -0
  10. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/setup.cfg +0 -0
  11. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/__init__.py +0 -0
  12. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/alm.py +0 -0
  13. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/api.py +0 -0
  14. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/benchmarks.py +0 -0
  15. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/bi.py +0 -0
  16. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/credit.py +0 -0
  17. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/energy.py +0 -0
  18. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/performance.py +0 -0
  19. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/portfolios.py +0 -0
  20. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/preprocess_co.py +0 -0
  21. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/private_debt.py +0 -0
  22. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/returns.py +0 -0
  23. {pyquantimclient-2.0.32 → pyquantimclient-2.0.34}/src/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: PyQuantimClient
3
- Version: 2.0.32
3
+ Version: 2.0.34
4
4
  Summary: Python client to access quantIM services
5
5
  Author: Daniel Velasquez
6
6
  Author-email: daniel.velasquez@sura-im.com
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: PyQuantimClient
3
- Version: 2.0.32
3
+ Version: 2.0.34
4
4
  Summary: Python client to access quantIM services
5
5
  Author: Daniel Velasquez
6
6
  Author-email: daniel.velasquez@sura-im.com
@@ -4,7 +4,7 @@ setup(
4
4
  name='PyQuantimClient',
5
5
  packages=['PyQuantimClient'],
6
6
  package_dir={'PyQuantimClient': 'src'},
7
- version='2.0.32',
7
+ version='2.0.34',
8
8
  description='Python client to access quantIM services',
9
9
  author='Daniel Velasquez',
10
10
  author_email='daniel.velasquez@sura-im.com',
@@ -12,9 +12,14 @@ class time_series(quantim):
12
12
  '''
13
13
  Get series
14
14
  '''
15
- data = {'tks':list(tks), 'ref_curr':ref_curr, 'join':join, 'since_date':since_date}
15
+ res_url = True if len(tks)>10 else False
16
+ data = {'tks':list(tks), 'ref_curr':ref_curr, 'join':join, 'since_date':since_date, 'res_url':res_url}
16
17
  resp = self.api_call('get_series', method="post", data=data, verify=verify)
17
- ts, summ, tks_invalid = pd.DataFrame(resp['ts']).set_index("Date"), pd.DataFrame(resp['summ']), resp['tks_invalid']
18
+ summ, tks_invalid = pd.DataFrame(resp['summ']), resp['tks_invalid']
19
+ if res_url:
20
+ ts = pd.read_csv(resp['ts']).set_index("Date")
21
+ else:
22
+ ts = pd.DataFrame(resp['ts']).set_index("Date")
18
23
  return ts, summ, tks_invalid
19
24
 
20
25
  def clustering(self, tks, ref_curr='USD', ini_date=None, cluster_method='graph', ncluster=None, factor_tickers=None, use_pca=True, verify=False):
@@ -4,7 +4,7 @@ import numpy as np
4
4
  import datetime as dt
5
5
  from dateutil.relativedelta import relativedelta as rd
6
6
  from .api import quantim
7
- from .utils import get_csv_separator
7
+ from .utils import generate_unique_id, generate_timestamp
8
8
 
9
9
  class risk_data(quantim):
10
10
  def __init__(self, username, password, secretpool, env="pdn", api_url=None):
@@ -80,7 +80,7 @@ class risk_data(quantim):
80
80
 
81
81
  '''
82
82
  if new_oper is not False:
83
- cols=['type', 'secDesc1', 'counterparty', 'isin', 'assetId', 'issuerId', 'issuerLongName', 'ccy', 'duration', 'avgRating', 'ratingType', 'SIM_SECTOR', 'linkedEntity', 'quantity', 'mktValue', 'maturity']
83
+ cols=['type', 'secDesc1', 'counterparty', 'isin', 'assetId', 'issuerId', 'issuerLongName', 'ccy', 'duration', 'avgRating', 'ratingType', 'SIM_SECTOR', 'linkedEntity', 'quantity', 'mktValue', 'maturity', 'indexRate', 'cpn', 'modDur', 'yieldToMaturity']
84
84
  if not set(cols).issubset(new_oper.columns):
85
85
  raise ValueError(f"Las nuevas operaciones deben contener la siguiente informacion: {cols}. Por favor revisar")
86
86
  if not set(new_oper["type"].unique()).issubset({"BUY", "SELL"}):
@@ -106,7 +106,7 @@ class risk_data(quantim):
106
106
  '''
107
107
  if not subgroup:
108
108
  subgroup = portfolioName
109
- cols=['type', 'secDesc1', 'counterparty', 'isin', 'assetId', 'issuerId', 'issuerLongName', 'ccy', 'duration', 'avgRating', 'ratingType', 'SIM_SECTOR', 'linkedEntity', 'quantity', 'mktValue', 'maturity']
109
+ cols=['type', 'secDesc1', 'counterparty', 'isin', 'assetId', 'issuerId', 'issuerLongName', 'ccy', 'duration', 'avgRating', 'ratingType', 'SIM_SECTOR', 'linkedEntity', 'quantity', 'mktValue', 'maturity', 'indexRate', 'cpn', 'modDur', 'yieldToMaturity']
110
110
  missing_cols = set(cols) - set(new_data.columns)
111
111
  if missing_cols:
112
112
  raise ValueError(f"Las nuevas operaciones deben contener las siguientes columnas faltantes: {missing_cols}. Por favor revisar.")
@@ -115,7 +115,10 @@ class risk_data(quantim):
115
115
  if not set(["portfolioName","subGroup"]).issubset(new_data.columns):
116
116
  new_data["portfolioName"],new_data["subGroup"]=portfolioName,subgroup
117
117
  new_data = new_data[["portfolioName","subGroup"]+cols]
118
- new_data["registered"]=True
118
+ new_data["status"] = "created"
119
+ new_data["id"] = generate_unique_id()
120
+ new_data["timeStamp"] = generate_timestamp()
121
+ new_data["user"] = self.username
119
122
  new_data=new_data.to_dict(orient="records")
120
123
  fecha=dt.date.today().strftime("%Y/%m/%d")
121
124
  data = {'bucket': 'condor-sura', 'key': f'output/pretrade/CO/trades/{fecha}/trades.csv', 'sep': sep, 'new_data': new_data}