From 73032f6c5e079d7e3eefc486fa026bd221c7e2d9 Mon Sep 17 00:00:00 2001 From: alvarob96 Date: Mon, 20 May 2019 14:12:32 +0200 Subject: [PATCH] version update & minor changes - extra data added to funds - updated todo list --- .idea/workspace.xml | 972 +++++++++++++++++++------------- .travis.yml | 1 + README.md | 4 +- investpy/Data.py | 3 - investpy/__init__.py | 36 +- investpy/equities.py | 3 +- investpy/etfs.py | 8 +- investpy/funds.py | 84 ++- investpy/resources/es/funds.csv | 202 +++---- setup.py | 11 +- 10 files changed, 774 insertions(+), 550 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 2a17b353..c3846014 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -2,9 +2,16 @@ + + + + - + + + + - %Y - raise ERR#012 ERR#011 ERR#015 @@ -327,6 +403,8 @@ None print ERR#02 + ERR#023 + isin datetime.datetime.strptime(info[0].replace('.', '-'), '%d-%m-%Y') @@ -387,22 +465,22 @@ - + - + - @@ -662,16 +741,16 @@ - + - + - + @@ -686,7 +765,7 @@ - + @@ -767,37 +846,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -820,9 +868,10 @@ - + + All @@ -836,13 +885,6 @@ - - - - - - - @@ -857,82 +899,183 @@ - + + + + - - + + - - - - - - - + + + + + + + - - - + + + + + - - + + + + + + - + - - + + - + + + + + + + + + + + + + + + + + - + - - + + - + - - + + + + + + + + + + + + + + + + + + + + - + - - + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + @@ -941,157 +1084,180 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.travis.yml b/.travis.yml index ebcdae26..d47531ce 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,6 +12,7 @@ install: - pip install requests==2.22.0 - pip install lxml==4.3.3 - pip install unidecode==1.0.23 + - pip install tqdm==4.32.1 - pip install investpy==0.8.4.5 - pip install pytest==4.5 diff --git a/README.md b/README.md index 794cdfd3..9a6d588e 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ To conclude this section, I am in the need to specify that this is not the final In order to get this package working you will need to install [**investpy**](https://pypi.org/project/investpy/) from PyPi via Terminal typing: -``pip install investpy==0.8.4.5`` +``pip install investpy==0.8.4.6`` All the dependencies are already listed on the setup file of the package, but to sum them up, you will need the following requirements: @@ -51,6 +51,8 @@ If needed you can open an [issue](https://github.com/alvarob96/investpy/issues) * Updated docstrings as reStructuredText (via PyCharm) * Modified JSON output to fit current standard for historical data * Added function to retrieve information from listed ETFs (id, name, symbol and tag) +* Funds additional information add +* Loading bar tests * ... ## Additional Information diff --git a/investpy/Data.py b/investpy/Data.py index c709d144..934141dd 100644 --- a/investpy/Data.py +++ b/investpy/Data.py @@ -6,9 +6,6 @@ __author__ = "Alvaro Bartolome " -# TODO: all lower case in objects to access it via dot operator (.) -# look for a proper justification of it - class Data(object): """ A class used to store the historical data of an equity, fund or etf diff --git a/investpy/__init__.py b/investpy/__init__.py index 2b2bd3ff..60e67fcc 100644 --- a/investpy/__init__.py +++ b/investpy/__init__.py @@ -8,6 +8,7 @@ import datetime import json from random import randint +from tqdm import tqdm import pandas as pd import pkg_resources @@ -22,8 +23,6 @@ # TODO: add country/market param and mapping of ‘resources/available_markets’ in order to allow users retrieve # historical data from different markets. -# DONE: available_languages replaced by available_markets - # TODO: create thread pools to increase scraping efficiency and improve ‘investpy’ performance => CHECK BOOK DOC # TODO: generate sphinx documentation for version 1.0 @@ -34,32 +33,21 @@ # TODO: consider moving from es.investing to www.investing (long task - develop on developer branch) -# DONE: create API project built on Flask => 0.8.5 - # TODO: add additional markets for equities/funds/etfs -# DONE: redefine JSON output for ETFs => 0.8.5 -# https://eodhistoricaldata.com/api/eod/AAPL.US?api_token=OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX&period=d.&fmt=json - -# TODO: keep HTML doc structure (remove get_text() functions or similar) - -# TODO: improve project as described in ‘’Web Scraping with Python’' - # TODO: modify __init__ structure as functions are not supposed to be defined here? -# DONE: get etfs listed as dictionary with specified params - -# DONE: updated docstrings +# TODO: update equities.py and equity data retrieval # TODO: fix dosctrings and unify structure with Google docstrings or similar -# WARNING: RE-GENERATE MARKET FILES BEFORE EVERY RELEASE +# TODO: handle all errors => 0.9 -# TODO: add 'clase de activo', 'isin' and 'emisor' to funds +# TODO: add filtering when retrieving list of equities/funds/etfs -# DONE: updated equities, funds and etfs retrieval functions +# TODO: add function to download information from market (es/en/ge/..) investpy.load('market name') -# TODO: handle all errors => 0.9 +# TODO: handle market without data exceptions (loaded by default?) def get_equities_list(): @@ -139,7 +127,7 @@ def get_recent_data(equity, as_json=False, order='ascending'): result = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): info = [] for nested_ in elements_.xpath(".//td"): info.append(nested_.text_content()) @@ -331,7 +319,7 @@ def get_historical_data(equity, start, end, as_json=False, order='ascending'): result = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): info = [] for nested_ in elements_.xpath(".//td"): info.append(nested_.text_content()) @@ -578,7 +566,7 @@ def get_fund_recent_data(fund, as_json=False, order='ascending'): result = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): info = [] for nested_ in elements_.xpath(".//td"): info.append(nested_.text_content()) @@ -745,7 +733,7 @@ def get_fund_historical_data(fund, start, end, as_json=False, order='ascending') result = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): info = [] for nested_ in elements_.xpath(".//td"): info.append(nested_.text_content()) @@ -1020,7 +1008,7 @@ def get_etf_recent_data(etf, as_json=False, order='ascending'): result = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): info = [] for nested_ in elements_.xpath(".//td"): info.append(nested_.text_content()) @@ -1187,7 +1175,7 @@ def get_etf_historical_data(etf, start, end, as_json=False, order='ascending'): result = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): info = [] for nested_ in elements_.xpath(".//td"): info.append(nested_.text_content()) diff --git a/investpy/equities.py b/investpy/equities.py index d461bb2d..5d8385c9 100644 --- a/investpy/equities.py +++ b/investpy/equities.py @@ -11,6 +11,7 @@ import pkg_resources import requests from lxml.html import fromstring +from tqdm import tqdm from investpy import user_agent as ua @@ -56,7 +57,7 @@ def get_equity_names(): results = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): id_ = elements_.get('id').replace('pair_', '') for element_ in elements_.xpath('.//a'): diff --git a/investpy/etfs.py b/investpy/etfs.py index 001b4ed1..3a7faed6 100644 --- a/investpy/etfs.py +++ b/investpy/etfs.py @@ -5,13 +5,13 @@ __author__ = "Alvaro Bartolome " -import time +import json import pandas as pd -import requests -import json import pkg_resources +import requests from lxml.html import fromstring +from tqdm import tqdm from investpy import user_agent as ua @@ -49,7 +49,7 @@ def get_etf_names(): results = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): id_ = elements_.get('id').replace('pair_', '') symbol = elements_.xpath(".//td[contains(@class, 'symbol')]")[0].get('title') diff --git a/investpy/funds.py b/investpy/funds.py index cebc5ae8..5d0f2343 100644 --- a/investpy/funds.py +++ b/investpy/funds.py @@ -7,6 +7,7 @@ import pandas as pd import requests +from tqdm import tqdm import json from lxml.html import fromstring import pkg_resources @@ -47,29 +48,37 @@ def get_fund_names(): results = list() if path_: - for elements_ in path_: + for elements_ in tqdm(path_, ascii=True, ncols=80): id_ = elements_.get('id').replace('pair_', '') symbol = elements_.xpath(".//td[contains(@class, 'symbol')]")[0].get('title') nested = elements_.xpath(".//a")[0].get('title').rstrip() info = elements_.xpath(".//a")[0].get('href').replace('/funds/', '') + data = get_fund_data(info) + if symbol: - data = { + obj = { "name": nested, "symbol": symbol, "tag": info, - "id": id_ + "id": id_, + "issuer": data['issuer'], + "isin": data['isin'], + "asset class": data['asset class'], } else: - data = { + obj = { "name": nested, "symbol": "undefined", "tag": info, - "id": id_ + "id": id_, + "issuer": data['issuer'], + "isin": data['isin'], + "asset class": data['asset class'], } - results.append(data) + results.append(obj) resource_package = __name__ resource_path = '/'.join(('resources', 'es', 'funds.csv')) @@ -81,6 +90,65 @@ def get_fund_names(): return results +def get_fund_data(fund_tag): + url = "https://www.investing.com/funds/" + fund_tag + + head = { + "User-Agent": ua.get_random(), + "X-Requested-With": "XMLHttpRequest", + "Accept": "text/html", + "Accept-Encoding": "gzip, deflate, br", + "Connection": "keep-alive", + } + + req = requests.get(url, headers=head, timeout=5) + + if req.status_code != 200: + raise ConnectionError("ERR#015: error " + req.status_code + ", try again later.") + + root_ = fromstring(req.text) + path_ = root_.xpath(".//div[contains(@class, 'overViewBox')]" + "/div[@id='quotes_summary_current_data']" + "/div[@class='right']" + "/div") + + result = { + 'issuer': None, + 'isin': None, + 'asset class': None, + } + + for p in path_: + try: + if p.xpath("span[not(@class)]")[0].text_content().__contains__('Issuer'): + try: + result['issuer'] = p.xpath("span[@class='elp']")[0].get('title').rstrip() + continue + except IndexError: + raise IndexError("ERR#023: fund issuer unavailable or not found.") + elif p.xpath("span[not(@class)]")[0].text_content().__contains__('ISIN'): + try: + result['isin'] = p.xpath("span[@class='elp']")[0].get('title').rstrip() + continue + except IndexError: + raise IndexError("ERR#024: fund isin code unavailable or not found.") + elif p.xpath("span[not(@class)]")[0].text_content().__contains__('Asset Class'): + try: + result['asset class'] = p.xpath("span[@class='elp']")[0].get('title').rstrip() + continue + except IndexError: + raise IndexError("ERR#025: fund asset class unavailable or not found.") + else: + continue + except IndexError: + raise IndexError("ERR#017: isin code unavailable or not found.") + + if None not in result.values(): + return result + else: + return result + + def fund_information_to_json(df): """ This function converts a pandas.DataFrame, containing all the information from a fund, into a JSON @@ -136,7 +204,3 @@ def list_funds(): raise IOError("ERR#005: fund list not found or unable to retrieve.") else: return funds['name'].tolist() - - -if __name__ == '__main__': - get_fund_names() \ No newline at end of file diff --git a/investpy/resources/es/funds.csv b/investpy/resources/es/funds.csv index d1f7ebcd..585fc5fa 100644 --- a/investpy/resources/es/funds.csv +++ b/investpy/resources/es/funds.csv @@ -1,101 +1,101 @@ -id,name,symbol,tag -1010294,Quality Inversión Conservadora Fi,172273007,quality-inversion-conservadora-fi -1073639,Nordea 1 - Stable Return Fund E Eur,0P00001N5G,nordea-1-stable-return-fund-e-eur -1073479,Merian Global Equity Absolute Return Fund A Eur Hedged Acc,0P00013398,old-mutual-global-equity-abs-a-acc -1085467,Gam Multibond - Local Emerging Bond Usd E,0P00000MSY,julius-baer-locemrgngbnd-usd-e -1010291,Quality Inversión Moderada Fi,172242002,quality-inversion-moderada-fi -1073183,Morgan Stanley Investment Funds - Global Opportunity Fund Bh (eur),0P0000RZ2K,ms-global-opportunity-fund-bh-eur -1061760,Blackrock Strategic Funds - Fixed Income Strategies Fund A2 Eur,0P0000LZO2,fixed-income-strategies-fund-a2-eur -1061762,Dws Concept Kaldemorgen Eur Nc,0P0000T2EV,deutsche-concept-kaldemorgen-nc -1073646,Dws Concept Kaldemorgen Eur Lc,0P0000T2ET,deutsche-concept-kaldemorgen-lc -1009514,Mi Fondo Santander Moderado A Fi,107781017,santander-select-moderado-a-fi -1009513,Mi Fondo Santander Moderado S Fi,107781009,santander-select-moderado-s-fi -1063185,Caixabank Monetario Rendimiento Estándar Fi,0P0000V8VE,caixabank-monetario-estoindar-fi -1063184,Caixabank Monetario Rendimiento Cartera Fi,0P0000V8VH,caixabank-monetario-cartera-fi -1063186,Caixabank Monetario Rendimiento Institucional Fi,0P0000V8VI,caixabank-monetario-institucionalfi -1063187,Caixabank Monetario Rendimiento Platinum Fi,0P00000WDT,caixabank-monetario-platinum-fi -1063188,Caixabank Monetario Rendimiento Plus Fi,0P0000V8VF,caixabank-monetario-plus-fi -1063189,Caixabank Monetario Rendimiento Premium Fi,0P0000V8VG,caixabank-monetario-premium-fi -1073642,Pictet - Robotics Hp Eur,0P0001788V,pictet-robotics-hp-eur -1010149,Bankia Soy Así Cauto Universal Fi,158976037,bankia-soy-asi-cauto-fi -1009478,Caixabank Ahorro Plus Fi,105002010,caixabank-ahorro-plus-fi -1009479,Caixabank Ahorro Premium Fi,105002036,caixabank-ahorro-premium-fi -1063162,Caixabank Ahorro Institucional Fi,0P000160SC,caixabank-ahorro-institucional-fi -1009477,Caixabank Ahorro Estándar Fi,105002002,caixabank-ahorro-estandar-fi -1063735,Sabadell Prudente Premier Fi,0P00015Q8R,sabadell-prudente-premier-fi -1063734,Sabadell Prudente Plus Fi,0P00015Q8Q,sabadell-prudente-plus-fi -1063733,Sabadell Prudente Empresa Fi,0P00016RCN,sabadell-prudente-empresa-fi -1009576,Sabadell Prudente Base Fi,111187003,sabadell-prudente-base-fi -1063736,Sabadell Prudente Pyme Fi,0P00016RCM,sabadell-prudente-pyme-fi -1009503,Albus Platinum Fi,107678007,albus-platinum-fi -1009504,Albus Extra Fi,107678015,albus-extra-fi -1063193,Caixabank Renta Fija Flexible Platinum Fi,0P000148IK,caixabank-renta-fija-flexible-plat -1009901,Caixabank Renta Fija Flexible Estándar Fi,138219003,caixabank-renta-fija-flexible-estan -1009902,Caixabank Renta Fija Flexible Patrimonio Fi,138219011,caixabank-renta-fija-flexible-patri -1009903,Caixabank Renta Fija Flexible Plus Fi,138219037,caixabank-renta-fija-flexible-plus -1063192,Caixabank Renta Fija Flexible Cartera Fi,0P000160T8,caixabank-renta-fija-flexible-cart -1063194,Caixabank Renta Fija Flexible Premium Fi,0P000148IL,caixabank-renta-fija-flexible-prem -1063145,Cabk Equilibrio Pp,0P000011YT,cabk-equilibrio-pp -1043265,Templeton Asian Growth Fund A(acc)usd,0P00000B0R,templeton-asian-growth-a-acc-usd -1010030,Caixabank Iter Platinum Fi,145458016,caixabank-iter-platinum-fi -1010029,Caixabank Iter Extra Fi,145458008,caixabank-iter-extra-fi -1072968,Vontobel Fund - Emerging Markets Equity H (hedged) Eur,0P00005VLV,vontobel-em-equity-h-eur -1066563,Amundi Index Solutions - Amundi Index Msci Emerging Markets Ae-c,0P00012TNM,amundi-index-msci-em-aec -1010195,Caixabank Crecimiento Plus Fi,164540033,caixabank-crecimiento-plus-fi -1073186,Morgan Stanley Investment Funds - Us Growth Fund A,0P00000SGC,ms-us-growth-fund-a -1073187,Morgan Stanley Investment Funds - Us Growth Fund A,0P00000BN2,ms-us-growth-fund-a-usd -1010356,Mi Fondo Santander Patrimonio A Fi,175835018,santander-select-patrimonio-a-fi -1010355,Mi Fondo Santander Patrimonio S Fi,175835000,santander-select-patrimonio-s-fi -1010193,Caixabank Evolución Plus Fi,164539035,caixabank-equilibrio-plus-fi -1010192,Caixabank Evolución Premium Fi,164539019,caixabank-equilibrio-premium-fi -1073644,Jpmorgan Funds - Europe Equity Plus Fund D (perf) (acc) - Eur,0P000094D4,jp-europe-equity-plus-d-perf-acc -1009928,Santander Rendimiento S Fi,138534047,santander-rendimiento-s-fi -1009925,Santander Rendimiento A Fi,138534005,santander-rendimiento-a-fi -1009926,Santander Rendimiento B Fi,138534021,santander-rendimiento-b-fi -1009927,Santander Rendimiento C Fi,138534039,santander-rendimiento-c-fi -1063833,Santander Rendimiento Cartera Fi,0P00016ZNJ,santander-rendimiento-cartera-fi -1063139,Cabk Destino 2022 Pp,0P000170QF,cabk-destino-2022-pp -1072234,Vanguard Japan Stock Index Fund Investor Eur Accumulation,0P00001QSE,vanguard-japan-stock-investor-e-acc -1063032,Bbva Multiactivo Conservador Pp,0P00000ZZX,bbva-multiactivo-conservador-pp -1063741,Sabadell Rendimiento Premier Fi,0P0001774J,sabadell-rendimiento-premier-fi -1063740,Sabadell Rendimiento Plus Fi,0P0001774I,sabadell-rendimiento-plus-fi -1063738,Sabadell Rendimiento Cartera Fi,0P0001774G,sabadell-rendimiento-cartera-fi -1063737,Sabadell Rendimiento Canalizador Fi,0P0001774F,sabadell-rendimiento-canalizador-fi -1063742,Sabadell Rendimiento Pyme Fi,0P0001774K,sabadell-rendimiento-pyme-fi -1063739,Sabadell Rendimiento Empresa Fi,0P0001774H,sabadell-rendimiento-empresa-fi -1010317,Sabadell Rendimiento Base Fi,173829039,sabadell-rendimiento-base-fi -1063835,Santander Renta Fija Corto Plazo A Fi,0P00015KUS,santander-renta-fija-corto-plazo-a -1009491,Santander Renta Fija Corto Plazo I Fi,105931036,santander-renta-fija-corto-plazo-i -1010199,Caixabank Selección Tendencias Estándar Fi,164853006,caixabank-seleccion-tendencias-esta -1010200,Caixabank Selección Tendencias Plus Fi,164853014,caixabank-seleccion-tendencias-plus -1009585,Spb Rf Corto Plazo I Fi,112793031,spb-rf-corto-plazo-i-fi -1063849,Spb Rf Corto Plazo A Fi,0P00015L1O,spb-rf-corto-plazo-a-fi -1013692,Cabk Crecimiento Pp,LP77001891,plancaixa-ambicion-global-pp -1073650,Candriam Equities L Biotechnology Class C Usd Cap,0P00000BOM,candriam-equities-biotech-c-usd-cap -1010035,Santander Inversión Corto Plazo Fi,145822005,santander-inversion-corto-plazo-fi -1073649,Franklin Biotechnology Discovery Fund A(acc)usd,0P00000SX6,franklin-biotech-discovery-a-acc -1062934,Bankia Cauto Pp,0P00000WZY,bankia-cauto-pp -1010043,Ibercaja Bp Renta Fija B Fi,146791019,ibercaja-bp-renta-fija-b-fi -1010042,Ibercaja Bp Renta Fija A Fi,146791001,ibercaja-bp-renta-fija-a-fi -1063522,Mi Plan Santander Moderado Pp,0P0000UJ6B,mi-plan-santander-moderado-pp -1009656,Bestinfond Fi,114673033,bestinfond-fi -1063523,Mi Plan Santander Prudente Pp,0P0000UI86,mi-plan-santander-prudente-pp -1009766,Kutxabank Rf Carteras Fi,125627002,kutxabank-rf-carteras-fi -1063047,Bbva Plan Multiactivo Moderado Pp,0P000085O0,bbva-plan-multiactivo-moderado-pp -1063260,Cartera óptima Prudente A Fi,0P000155MZ,cartera-optima-prudente-a-fi -1009824,Cartera óptima Prudente B Fi,133578031,cartera-optima-prudente-b-fi -1063400,Ibercaja Mixto Flexible 15 B Fi,0P0000Q74L,ibercaja-mixto-flexible-15-b-fi -1010050,Ibercaja Mixto Flexible 15 A Fi,146944006,ibercaja-mixto-flexible-15-a-fi -1062939,Bankia Evolución Prudente Universal Fi,0P00000GIY,bankia-evolucion-prudente-fi -1063141,Cabk Destino 2030 Pp,0P000170QH,cabk-destino-2030-pp -1010156,Bankia Soy Así Flexible Universal Fi,159084039,bankia-soy-asi-flexible-fi -1009889,Caixabank Bolsa Selección Global Plus Fi,138172004,caixabank-bolsa-seleccion-global-pl -1009890,Caixabank Bolsa Selección Global Premium Fi,138172012,caixabank-bolsa-seleccion-global-pr -1009891,Caixabank Bolsa Selección Global Estándar Fi,138172038,caixabank-bolsa-seleccion-global-es -1073182,Cs Invm Fds 2 - Credit Suisse (lux) Global Security Equity Fund Bh Eur,0P0000YOFZ,cs-global-security-equity-bh-eur -1062956,Bankia Moderado Pp,0P000013XR,bankia-moderado-pp -1009653,Bestinver Internacional Fi,114638036,bestinver-internacional-fi -1063259,Cartera óptima Moderada A Fi,0P000155MW,cartera-optima-moderada-a-fi -1009842,Cartera óptima Moderada B Fi,133878035,cartera-optima-moderada-b-fi -1010115,Ing Direct Fondo Naranja Renta Fija Fi,152772036,ing-direct-fondo-naranja-renta-fija -1063389,Ibercaja Crecimiento Dinámico B Fi,0P0000S2C0,ibercaja-crecimiento-dinoimico-b-fi +asset class,id,isin,issuer,name,symbol,tag +Equity,1010294,ES0172273007,BBVA Asset Management SGIIC,Quality Inversión Conservadora Fi,172273007,quality-inversion-conservadora-fi +Equity,1073639,LU0227385266,Nordea Investment Funds SA,Nordea 1 - Stable Return Fund E Eur,0P00001N5G,nordea-1-stable-return-fund-e-eur +Equity,1073479,IE00BLP5S460,Old Mutual Global Investors (UK) Limited,Merian Global Equity Absolute Return Fund A Eur Hedged Acc,0P00013398,old-mutual-global-equity-abs-a-acc +Bond,1085467,LU0129121025,GAM (Luxembourg) SA,Gam Multibond - Local Emerging Bond Usd E,0P00000MSY,julius-baer-locemrgngbnd-usd-e +Equity,1010291,ES0172242002,BBVA Asset Management SGIIC,Quality Inversión Moderada Fi,172242002,quality-inversion-moderada-fi +Other,1061762,LU0599947198,Deutsche Asset Management S.A.,Dws Concept Kaldemorgen Eur Nc,0P0000T2EV,deutsche-concept-kaldemorgen-nc +Other,1061760,LU0438336264,BlackRock (Luxembourg) SA,Blackrock Strategic Funds - Fixed Income Strategies Fund A2 Eur,0P0000LZO2,fixed-income-strategies-fund-a2-eur +Other,1073646,LU0599946893,DWS Investment S.A.,Dws Concept Kaldemorgen Eur Lc,0P0000T2ET,deutsche-concept-kaldemorgen-lc +Equity,1073183,LU0552385709,Morgan Stanley Investment Management (ACD) Limited,Morgan Stanley Investment Funds - Global Opportunity Fund Bh (eur),0P0000RZ2K,ms-global-opportunity-fund-bh-eur +Equity,1009514,ES0107781017,Santander Asset Management SGIIC,Mi Fondo Santander Moderado A Fi,107781017,santander-select-moderado-a-fi +Equity,1009513,ES0107781009,Santander Asset Management SGIIC,Mi Fondo Santander Moderado S Fi,107781009,santander-select-moderado-s-fi +Bond,1063185,ES0138045002,Caixabank Asset Management SGIIC,Caixabank Monetario Rendimiento Estándar Fi,0P0000V8VE,caixabank-monetario-estoindar-fi +Bond,1063186,ES0138045051,Caixabank Asset Management SGIIC,Caixabank Monetario Rendimiento Institucional Fi,0P0000V8VI,caixabank-monetario-institucionalfi +Bond,1063184,ES0138045044,Caixabank Asset Management SGIIC,Caixabank Monetario Rendimiento Cartera Fi,0P0000V8VH,caixabank-monetario-cartera-fi +Bond,1063187,ES0138045036,Caixabank Asset Management SGIIC,Caixabank Monetario Rendimiento Platinum Fi,0P00000WDT,caixabank-monetario-platinum-fi +Bond,1063188,ES0138045010,Caixabank Asset Management SGIIC,Caixabank Monetario Rendimiento Plus Fi,0P0000V8VF,caixabank-monetario-plus-fi +Bond,1063189,ES0138045028,Caixabank Asset Management SGIIC,Caixabank Monetario Rendimiento Premium Fi,0P0000V8VG,caixabank-monetario-premium-fi +Equity,1073642,LU1279334996,Pictet Asset Management (Europe) SA,Pictet - Robotics Hp Eur,0P0001788V,pictet-robotics-hp-eur +Equity,1010149,ES0158976037,Bankia Fondos SGIIC,Bankia Soy Así Cauto Universal Fi,158976037,bankia-soy-asi-cauto-fi +Bond,1009478,ES0105002010,Caixabank Asset Management SGIIC,Caixabank Ahorro Plus Fi,105002010,caixabank-ahorro-plus-fi +Bond,1009479,ES0105002036,Caixabank Asset Management SGIIC,Caixabank Ahorro Premium Fi,105002036,caixabank-ahorro-premium-fi +Bond,1063162,ES0105002028,Caixabank Asset Management SGIIC,Caixabank Ahorro Institucional Fi,0P000160SC,caixabank-ahorro-institucional-fi +Bond,1009477,ES0105002002,Caixabank Asset Management SGIIC,Caixabank Ahorro Estándar Fi,105002002,caixabank-ahorro-estandar-fi +Equity,1063735,ES0111187037,Sabadell Asset Management SGIIC,Sabadell Prudente Premier Fi,0P00015Q8R,sabadell-prudente-premier-fi +Equity,1063734,ES0111187029,Sabadell Asset Management SGIIC,Sabadell Prudente Plus Fi,0P00015Q8Q,sabadell-prudente-plus-fi +Equity,1063733,ES0111187052,Sabadell Asset Management SGIIC,Sabadell Prudente Empresa Fi,0P00016RCN,sabadell-prudente-empresa-fi +Equity,1009576,ES0111187003,Sabadell Asset Management SGIIC,Sabadell Prudente Base Fi,111187003,sabadell-prudente-base-fi +Equity,1063736,ES0111187045,Sabadell Asset Management SGIIC,Sabadell Prudente Pyme Fi,0P00016RCM,sabadell-prudente-pyme-fi +Equity,1009503,ES0107678007,Caixabank Asset Management SGIIC,Albus Platinum Fi,107678007,albus-platinum-fi +Equity,1009504,ES0107678015,Caixabank Asset Management SGIIC,Albus Extra Fi,107678015,albus-extra-fi +Bond,1063193,ES0138219029,Caixabank Asset Management SGIIC,Caixabank Renta Fija Flexible Platinum Fi,0P000148IK,caixabank-renta-fija-flexible-plat +Bond,1009902,ES0138219011,Caixabank Asset Management SGIIC,Caixabank Renta Fija Flexible Patrimonio Fi,138219011,caixabank-renta-fija-flexible-patri +Bond,1063192,ES0138219052,Caixabank Asset Management SGIIC,Caixabank Renta Fija Flexible Cartera Fi,0P000160T8,caixabank-renta-fija-flexible-cart +Bond,1009903,ES0138219037,Caixabank Asset Management SGIIC,Caixabank Renta Fija Flexible Plus Fi,138219037,caixabank-renta-fija-flexible-plus +Bond,1009901,ES0138219003,Caixabank Asset Management SGIIC,Caixabank Renta Fija Flexible Estándar Fi,138219003,caixabank-renta-fija-flexible-estan +Bond,1063194,ES0138219045,Caixabank Asset Management SGIIC,Caixabank Renta Fija Flexible Premium Fi,0P000148IL,caixabank-renta-fija-flexible-prem +Equity,1043265,LU0128522157,Franklin Templeton Investment Funds,Templeton Asian Growth Fund A(acc)usd,0P00000B0R,templeton-asian-growth-a-acc-usd +Equity,1063145,,Vida Caixa Se. y Re.,Cabk Equilibrio Pp,0P000011YT,cabk-equilibrio-pp +Equity,1010029,ES0145458008,Caixabank Asset Management SGIIC,Caixabank Iter Extra Fi,145458008,caixabank-iter-extra-fi +Equity,1010030,ES0145458016,Caixabank Asset Management SGIIC,Caixabank Iter Platinum Fi,145458016,caixabank-iter-platinum-fi +Equity,1075198,IE0007201043,Vanguard Group (Ireland) Limited,Vanguard Pacific Ex-japan Stock Index Fund Investor Eur Accumulation,0P00012I6O,vanguard-pacific-exjp-stock-eur-acc +Equity,1072968,LU0218912235,Vontobel Asset Management S.A.,Vontobel Fund - Emerging Markets Equity H (hedged) Eur,0P00005VLV,vontobel-em-equity-h-eur +Equity,1066563,LU0996177134,Amundi Luxembourg S.A.,Amundi Index Solutions - Amundi Index Msci Emerging Markets Ae-c,0P00012TNM,amundi-index-msci-em-aec +Equity,1010195,ES0164540033,Caixabank Asset Management SGIIC,Caixabank Crecimiento Plus Fi,164540033,caixabank-crecimiento-plus-fi +Equity,1010194,ES0164540009,Caixabank Asset Management SGIIC,Caixabank Crecimiento Estándar Fi,164540009,caixabank-crecimiento-estandar-fi +Equity,1010355,ES0175835000,Santander Asset Management SGIIC,Mi Fondo Santander Patrimonio S Fi,175835000,santander-select-patrimonio-s-fi +Equity,1010356,ES0175835018,Santander Asset Management SGIIC,Mi Fondo Santander Patrimonio A Fi,175835018,santander-select-patrimonio-a-fi +Equity,1073187,LU0073232471,Morgan Stanley Investment Management (ACD) Limited,Morgan Stanley Investment Funds - Us Growth Fund A,0P00000BN2,ms-us-growth-fund-a-usd +Equity,1073186,LU0073232471,Morgan Stanley Investment Management (ACD) Limited,Morgan Stanley Investment Funds - Us Growth Fund A,0P00000SGC,ms-us-growth-fund-a +Equity,1073644,LU0289214628,JPMorgan Asset Management (Europe) S.à r.l.,Jpmorgan Funds - Europe Equity Plus Fund D (perf) (acc) - Eur,0P000094D4,jp-europe-equity-plus-d-perf-acc +Equity,1010191,ES0164539001,Caixabank Asset Management SGIIC,Caixabank Evolución Estándar Fi,164539001,caixabank-equilibrio-estandar-fi +Equity,1010192,ES0164539019,Caixabank Asset Management SGIIC,Caixabank Evolución Premium Fi,164539019,caixabank-equilibrio-premium-fi +Equity,1010193,ES0164539035,Caixabank Asset Management SGIIC,Caixabank Evolución Plus Fi,164539035,caixabank-equilibrio-plus-fi +Bond,1009928,ES0138534047,Santander Asset Management SGIIC,Santander Rendimiento S Fi,138534047,santander-rendimiento-s-fi +Bond,1009927,ES0138534039,Santander Asset Management SGIIC,Santander Rendimiento C Fi,138534039,santander-rendimiento-c-fi +Bond,1009925,ES0138534005,Santander Asset Management SGIIC,Santander Rendimiento A Fi,138534005,santander-rendimiento-a-fi +Bond,1063833,ES0138534054,Santander Asset Management SGIIC,Santander Rendimiento Cartera Fi,0P00016ZNJ,santander-rendimiento-cartera-fi +Bond,1009926,ES0138534021,Santander Asset Management SGIIC,Santander Rendimiento B Fi,138534021,santander-rendimiento-b-fi +Equity,1063139,,Vida Caixa Se. y Re.,Cabk Destino 2022 Pp,0P000170QF,cabk-destino-2022-pp +Equity,1072234,IE0007281425,Vanguard Group (Ireland) Limited,Vanguard Japan Stock Index Fund Investor Eur Accumulation,0P00001QSE,vanguard-japan-stock-investor-e-acc +Equity,1063032,,BBVA Pensiones EGFP,Bbva Multiactivo Conservador Pp,0P00000ZZX,bbva-multiactivo-conservador-pp +Bond,1063739,ES0173829021,Sabadell Asset Management SGIIC,Sabadell Rendimiento Empresa Fi,0P0001774H,sabadell-rendimiento-empresa-fi +Bond,1063741,ES0173829054,Sabadell Asset Management SGIIC,Sabadell Rendimiento Premier Fi,0P0001774J,sabadell-rendimiento-premier-fi +Bond,1063738,ES0173829013,Sabadell Asset Management SGIIC,Sabadell Rendimiento Cartera Fi,0P0001774G,sabadell-rendimiento-cartera-fi +Bond,1063737,ES0173829005,Sabadell Asset Management SGIIC,Sabadell Rendimiento Canalizador Fi,0P0001774F,sabadell-rendimiento-canalizador-fi +Bond,1063742,ES0173829062,Sabadell Asset Management SGIIC,Sabadell Rendimiento Pyme Fi,0P0001774K,sabadell-rendimiento-pyme-fi +Bond,1063740,ES0173829047,Sabadell Asset Management SGIIC,Sabadell Rendimiento Plus Fi,0P0001774I,sabadell-rendimiento-plus-fi +Bond,1010317,ES0173829039,Sabadell Asset Management SGIIC,Sabadell Rendimiento Base Fi,173829039,sabadell-rendimiento-base-fi +Bond,1063835,ES0105931002,Santander Asset Management SGIIC,Santander Renta Fija Corto Plazo A Fi,0P00015KUS,santander-renta-fija-corto-plazo-a +Bond,1009491,ES0105931036,Santander Asset Management SGIIC,Santander Renta Fija Corto Plazo I Fi,105931036,santander-renta-fija-corto-plazo-i +Bond,1009585,ES0112793031,Santander Asset Management SGIIC,Spb Rf Corto Plazo I Fi,112793031,spb-rf-corto-plazo-i-fi +Bond,1063849,ES0112793007,Santander Asset Management SGIIC,Spb Rf Corto Plazo A Fi,0P00015L1O,spb-rf-corto-plazo-a-fi +Equity,1010199,ES0164853006,Caixabank Asset Management SGIIC,Caixabank Selección Tendencias Estándar Fi,164853006,caixabank-seleccion-tendencias-esta +Equity,1010200,ES0164853014,Caixabank Asset Management SGIIC,Caixabank Selección Tendencias Plus Fi,164853014,caixabank-seleccion-tendencias-plus +Equity,1013692,,Vida Caixa Se. y Re.,Cabk Crecimiento Pp,LP77001891,plancaixa-ambicion-global-pp +Equity,1073650,LU0108459040,Candriam Luxembourg,Candriam Equities L Biotechnology Class C Usd Cap,0P00000BOM,candriam-equities-biotech-c-usd-cap +Bond,1010035,ES0145822005,Santander Asset Management SGIIC,Santander Inversión Corto Plazo Fi,145822005,santander-inversion-corto-plazo-fi +Equity,1073649,LU0109394709,Franklin Templeton International Services S.à r.l.,Franklin Biotechnology Discovery Fund A(acc)usd,0P00000SX6,franklin-biotech-discovery-a-acc +Equity,1062934,,Bankia Pensiones EGFP,Bankia Cauto Pp,0P00000WZY,bankia-cauto-pp +Bond,1010042,ES0146791001,Ibercaja Gestión SGIIC,Ibercaja Bp Renta Fija A Fi,146791001,ibercaja-bp-renta-fija-a-fi +Bond,1010043,ES0146791019,Ibercaja Gestión SGIIC,Ibercaja Bp Renta Fija B Fi,146791019,ibercaja-bp-renta-fija-b-fi +Equity,1063522,,Santander Pensiones EGFP,Mi Plan Santander Moderado Pp,0P0000UJ6B,mi-plan-santander-moderado-pp +Equity,1009656,ES0114673033,Bestinver Gestión SGIIC,Bestinfond Fi,114673033,bestinfond-fi +Equity,1063523,,Santander Pensiones EGFP,Mi Plan Santander Prudente Pp,0P0000UI86,mi-plan-santander-prudente-pp +Bond,1009766,ES0125627002,Kutxabank Gestión SGIIC,Kutxabank Rf Carteras Fi,125627002,kutxabank-rf-carteras-fi +Equity,1063047,,BBVA Pensiones EGFP,Bbva Plan Multiactivo Moderado Pp,0P000085O0,bbva-plan-multiactivo-moderado-pp +Equity,1063260,ES0133578007,Allianz Popular Asset Management SGIIC,Cartera óptima Prudente A Fi,0P000155MZ,cartera-optima-prudente-a-fi +Equity,1009824,ES0133578031,Allianz Popular Asset Management SGIIC,Cartera óptima Prudente B Fi,133578031,cartera-optima-prudente-b-fi +Equity,1010050,ES0146944006,Ibercaja Gestión SGIIC,Ibercaja Mixto Flexible 15 A Fi,146944006,ibercaja-mixto-flexible-15-a-fi +Equity,1063400,ES0146944014,Ibercaja Gestión SGIIC,Ibercaja Mixto Flexible 15 B Fi,0P0000Q74L,ibercaja-mixto-flexible-15-b-fi +Other,1062939,ES0158965030,Bankia Fondos SGIIC,Bankia Evolución Prudente Universal Fi,0P00000GIY,bankia-evolucion-prudente-fi +Equity,1063141,,Vida Caixa Se. y Re.,Cabk Destino 2030 Pp,0P000170QH,cabk-destino-2030-pp +Equity,1073182,LU0909472069,Credit Suisse Fund Management S.A.,Cs Invm Fds 2 - Credit Suisse (lux) Global Security Equity Fund Bh Eur,0P0000YOFZ,cs-global-security-equity-bh-eur +Equity,1010156,ES0159084039,Bankia Fondos SGIIC,Bankia Soy Así Flexible Universal Fi,159084039,bankia-soy-asi-flexible-fi +Equity,1009889,ES0138172004,Caixabank Asset Management SGIIC,Caixabank Bolsa Selección Global Plus Fi,138172004,caixabank-bolsa-seleccion-global-pl +Equity,1009890,ES0138172012,Caixabank Asset Management SGIIC,Caixabank Bolsa Selección Global Premium Fi,138172012,caixabank-bolsa-seleccion-global-pr +Equity,1009891,ES0138172038,Caixabank Asset Management SGIIC,Caixabank Bolsa Selección Global Estándar Fi,138172038,caixabank-bolsa-seleccion-global-es +Equity,1062956,,Bankia Pensiones EGFP,Bankia Moderado Pp,0P000013XR,bankia-moderado-pp +Equity,1009653,ES0114638036,Bestinver Gestión SGIIC,Bestinver Internacional Fi,114638036,bestinver-internacional-fi +Bond,1010115,ES0152772036,Renta 4 Gestora SGIIC S.A.,Ing Direct Fondo Naranja Renta Fija Fi,152772036,ing-direct-fondo-naranja-renta-fija diff --git a/setup.py b/setup.py index 68d09858..a7a2bdb9 100644 --- a/setup.py +++ b/setup.py @@ -11,17 +11,22 @@ def readme(): setup( name='investpy', - version='0.8.4.5', + version='0.8.4.6', packages=find_packages(), url='https://github.com/alvarob96/investpy', - download_url='https://github.com/alvarob96/investpy/archive/0.8.4.5.tar.gz', + download_url='https://github.com/alvarob96/investpy/archive/0.8.4.6.tar.gz', license='MIT License', author='Alvaro Bartolome', author_email='alvarob96@usal.es', description='investpy — a Python package for historical data extraction from the spanish stock market', long_description=readme(), long_description_content_type='text/markdown', - install_requires=['requests==2.21.0', 'pandas==0.24.2', 'unidecode==1.0.23', 'lxml==4.3.3', 'pytest==4.1.1'], + install_requires=['requests==2.21.0', + 'pandas==0.24.2', + 'unidecode==1.0.23', + 'lxml==4.3.3', + 'pytest==4.1.1', + 'tqdm==4.32.1'], data_files=[ ('equities_es', ['investpy/resources/es/equities.csv']), ('funds_es', ['investpy/resources/es/funds.csv']),