def test_indices_errors(): """ This function raises errors on index retrieval functions """ try: retrieve_indices(test_mode=None) except: pass try: retrieve_index_countries(test_mode=None) except: pass params = [ { 'country': ['error'] }, { 'country': 'error' }, ] for param in params: try: investpy.get_indices(country=param['country']) except: pass try: investpy.get_indices_list(country=param['country']) except: pass params = [ { 'country': ['error'], 'columns': None, 'as_json': False }, { 'country': 'spain', 'columns': None, 'as_json': 'error' }, { 'country': 'spain', 'columns': 0, 'as_json': True }, { 'country': 'spain', 'columns': ['error'], 'as_json': False }, ] for param in params: try: investpy.get_indices_dict(country=param['country'], columns=param['columns'], as_json=param['as_json']) except: pass params = [ { 'index': None, 'country': 'spain', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': ['error'], 'country': 'spain', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': None, 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'error', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'netherlands', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': ['error'], 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'as_json': 'error', 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'as_json': True, 'order': 'error', 'debug': True }, { 'index': 'error', 'country': 'spain', 'as_json': True, 'order': 'ascending', 'debug': True }, { 'index': ['error'], 'country': 'spain', 'as_json': True, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'as_json': True, 'order': 'ascending', 'debug': 'error' }, ] for param in params: try: investpy.get_index_recent_data(index=param['index'], country=param['country'], as_json=param['as_json'], order=param['order'], debug=param['debug']) except: pass params = [ { 'index': None, 'country': 'spain', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'error', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'netherlands', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': None, 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': ['error'], 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': 'error', 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'error', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': 'error', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/2019', 'to_date': 'error', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'error', 'country': 'spain', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': ['error'], 'country': 'spain', 'from_date': '01/01/2018', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/1998', 'to_date': '01/01/2019', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/2019', 'to_date': '01/01/1998', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/1900', 'to_date': '01/01/1950', 'as_json': False, 'order': 'ascending', 'debug': True }, { 'index': 'ibex 35', 'country': 'spain', 'from_date': '01/01/2019', 'to_date': '01/03/2019', 'as_json': True, 'order': 'ascending', 'debug': 'error' }, ] for param in params: try: investpy.get_index_historical_data(index=param['index'], country=param['country'], from_date=param['from_date'], to_date=param['to_date'], as_json=param['as_json'], order=param['order'], debug=param['debug']) except: pass params = [ { 'by': None, 'value': 'ibex', }, { 'by': ['error'], 'value': 'ibex', }, { 'by': 'error', 'value': 'ibex', }, { 'by': 'name', 'value': None, }, { 'by': 'name', 'value': ['error'], }, { 'by': 'name', 'value': 'error', }, ] for param in params: try: investpy.search_indices(by=param['by'], value=param['value']) except: pass
def test_investpy_indices(): """ This function checks that index data retrieval functions listed in investpy work properly. """ params = [ { 'country': 'spain', }, { 'country': None, }, ] for param in params: investpy.get_indices(country=param['country']) investpy.get_indices_list(country=param['country']) params = [ { 'country': None, 'columns': ['name', 'currency'], 'as_json': True }, { 'country': None, 'columns': ['name', 'currency'], 'as_json': False }, { 'country': 'spain', 'columns': ['name', 'currency'], 'as_json': True }, { 'country': 'spain', 'columns': ['name', 'currency'], 'as_json': False }, { 'country': 'spain', 'columns': None, 'as_json': False }, ] for param in params: investpy.get_indices_dict(country=param['country'], columns=param['columns'], as_json=param['as_json']) investpy.get_index_countries() params = [ { 'as_json': True, 'order': 'ascending', }, { 'as_json': False, 'order': 'ascending', }, { 'as_json': True, 'order': 'descending', }, { 'as_json': False, 'order': 'descending', }, ] for param in params: investpy.get_index_recent_data(index='ibex 35', country='spain', as_json=param['as_json'], order=param['order'], interval='Daily') investpy.get_index_historical_data(index='ibex 35', country='spain', from_date='01/01/2018', to_date='01/01/2019', as_json=param['as_json'], order=param['order'], interval='Daily') params = [ { 'index': 'ibex 35', 'country': 'spain', 'as_json': False }, { 'index': 'ibex 35', 'country': 'spain', 'as_json': True } ] for param in params: investpy.get_index_information(index=param['index'], country=param['country'], as_json=param['as_json']) params = [ { 'country': 'united states', 'as_json': False, 'n_results': 10 }, { 'country': 'united kingdom', 'as_json': True, 'n_results': 10 } ] for param in params: investpy.get_indices_overview(country=param['country'], as_json=param['as_json'], n_results=param['n_results']) investpy.search_indices(by='name', value='ibex')
soup = BeautifulSoup(page, 'html.parser') content = soup.find('span',{'class':'t-text -size-lg -black-warm-60 text-bold'}) spread = content.contents s = pd.DataFrame(spread) s = s.rename(columns={0:'perf_sett'}) s['tipo'] = 'spread_btp_bund' s['perf_mese'] = 'non_disponibile' s = s[['tipo','perf_sett','perf_mese']] return s s = spread(url) ## Indici di mercato df_it = investpy.get_index_recent_data(index='MSCI Italy Net EUR',country='italy') # italia df_eu = investpy.get_index_recent_data(index='MSCI Europe Net EUR',country='euro zone') # europa df_us = investpy.get_index_recent_data(index='MSCI US Net USD',country='united states') # usa df_jp = investpy.get_index_recent_data(index='MSCI Japan Net JPY',country='japan') # japan df_ci = investpy.get_index_recent_data(index='MSCI China Net USD',country='china') # china df_mt = investpy.get_index_recent_data(index='MSCI World Info Tech Net USD',country='world') # mondo tech df_em = investpy.get_index_recent_data(index='MSCI EM Net USD',country='world') # emergenti df_ge = investpy.get_index_recent_data(index='TR Eurozone 10 Years Government Benchmark',country='euro zone') # governativo eurozona df_gu = investpy.get_index_recent_data(index='TR US 10 Year Government Benchmark',country='united states') # governativo usa df_iu = investpy.get_index_recent_data(index='DJ Equal Weight US Issued Corporate Bond TR',country='united states') # ig corp usa df_or = investpy.get_index_recent_data(index='Bloomberg Gold TR',country='world') # oro df_wt = investpy.get_index_recent_data(index='Bloomberg WTI Crude Oil TR',country='world') # wti ## Creo dataframe finale index = [df_it,df_eu,df_us,df_jp,df_ci,df_mt,df_em,df_ge,df_gu,df_iu,df_or,df_wt,eur_gbp,eur_usd,eur_yen]
def test_investpy_indices(): """ This function checks that index data retrieval functions listed in investpy work properly. """ params = [ { 'country': 'spain', }, { 'country': None, }, ] for param in params: investpy.get_indices(country=param['country']) investpy.get_indices_list(country=param['country']) params = [ { 'country': None, 'columns': ['name', 'currency'], 'as_json': True }, { 'country': None, 'columns': ['name', 'currency'], 'as_json': False }, { 'country': 'spain', 'columns': ['name', 'currency'], 'as_json': True }, { 'country': 'spain', 'columns': ['name', 'currency'], 'as_json': False }, { 'country': 'spain', 'columns': None, 'as_json': False }, ] for param in params: investpy.get_indices_dict(country=param['country'], columns=param['columns'], as_json=param['as_json']) investpy.get_index_countries() params = [ { 'as_json': True, 'order': 'ascending', 'debug': False }, { 'as_json': False, 'order': 'ascending', 'debug': True }, { 'as_json': True, 'order': 'descending', 'debug': False }, { 'as_json': False, 'order': 'descending', 'debug': False }, ] for param in params: investpy.get_index_recent_data(index='ibex 35', country='spain', as_json=param['as_json'], order=param['order'], debug=param['debug']) investpy.get_index_historical_data(index='ibex 35', country='spain', from_date='01/01/2018', to_date='01/01/2019', as_json=param['as_json'], order=param['order'], debug=param['debug']) investpy.search_indices(by='name', value='ibex')
import numpy as np import tensorflow as tf import re import time import investpy import pandas as pd import matplotlib.pyplot as plt import math from sklearn.preprocessing import MinMaxScaler index = 's&P 500' #SP500 df = investpy.get_index_recent_data(index=index, country='United States') #df.drop(['Currency','Volume'] , axis=1 , inplace=True) #Drop not need df.drop('Currency',axis=1,inplace=True) #Plot the mean #Featch the trend df['Close'].plot(figsize=(16,8), linewidth=5, fontsize=10) plt.title('Close',fontsize=20) plt.savefig('IndexPlot/ ' + index + ' Close.png') close = df[['Close']] close.rolling(12).mean().plot(figsize=(16,8), linewidth=5, fontsize=10) plt.title('Close Rolling Mean',fontsize=20) plt.savefig('IndexPlot/ ' + index +' Close Rolling 12.png')