예제 #1
0
import numpy as np
import pandas as pd
import matplotlib as mpl
import scipy
import importlib
import matplotlib.pyplot as plt
from scipy.stats import skew, kurtosis, chi2

# import our own files and reload
import stream_functions
importlib.reload(stream_functions)
import stream_classes
importlib.reload(stream_classes)

# input parameters
ric = 'SGREN.MC'  # DBK.DE ^IXIC MXN=X ^STOXX ^S&P500 ^VIX
file_extension = 'csv'  # csv o Excel extension

# load timeseries
x, x_str, t = stream_functions.load_timeseries(ric)

# compute risk metrics in class jarque_bera_test
jb = stream_classes.jarque_bera_test(x, x_str)
jb.compute()
print(jb)

# plots
stream_functions.plot_timeseries_price(t, ric)
stream_functions.plot_histogram(x, x_str, jb.plot_str())
예제 #2
0
 def load_timeseries(self):
     self.returns, self.str_name, self.dataframe = stream_functions.load_timeseries(self.ric)
     self.size = len(self.returns)
예제 #3
0
f.tight_layout()


# Cargamos datos reales sincronizandolos
########################################
# input parameters
ric_1 = '^VIX' # MT.AS SAN.MC BBVA.MC REP.MC VWS.CO EQNR.OL MXNUSD=X ^VIX
ric_2 = 'SAN.MC' # MT.AS SAN.MC BBVA.MC REP.MC VWS.CO EQNR.OL MXNUSD=X ^VIX
ric_3 = 'MXNUSD=X' # MT.AS SAN.MC BBVA.MC REP.MC VWS.CO EQNR.OL MXNUSD=X ^VIX
ric_4 = 'VWS.CO' # MT.AS SAN.MC BBVA.MC REP.MC VWS.CO EQNR.OL MXNUSD=X ^VIX
benchmark = '^STOXX' # ^STOXX50E ^STOXX ^S&P500 ^NASDAQ ^FCHI ^GDAXI
file_extension = 'csv'
nb_decimals = 4

# loading data from csv or Excel file
x1, str1, t1 = stream_functions.load_timeseries(ric_1)
x3, str3, t3 = stream_functions.load_timeseries(ric_2)
x4, str4, t4 = stream_functions.load_timeseries(ric_3)
x5, str5, t5 = stream_functions.load_timeseries(ric_4)
x2, str2, t2 = stream_functions.load_timeseries(benchmark)

# synchronize timestamps
timestamp1 = list(t1['date'].values)
timestamp3 = list(t3['date'].values)
timestamp4 = list(t4['date'].values)
timestamp5 = list(t5['date'].values)
timestamp2 = list(t2['date'].values)
timestamps = list(set(timestamp1) & set(timestamp2) & set(timestamp3) & set(timestamp4) & set(timestamp5))

# synchronised time series for x1 or ric_1
t1_sync = t1[t1['date'].isin(timestamps)]
예제 #4
0
# import our own files and reload
import stream_functions

importlib.reload(stream_functions)
import stream_classes

importlib.reload(stream_classes)

# input parameters
ric = '^VIX'  # MT.AS SAN.MC BBVA.MC REP.MC VWS.CO EQNR.OL MXNUSD=X ^VIX
benchmark = '^STOXX'  # ^STOXX50E ^STOXX ^S&P500 ^NASDAQ ^FCHI ^GDAXI
file_extension = 'csv'
nb_decimals = 4

# loading data from csv or Excel file
x1, str1, t1 = stream_functions.load_timeseries(ric)
x2, str2, t2 = stream_functions.load_timeseries(benchmark)

# synchronize timestamps
timestamp1 = list(t1['date'].values)
timestamp2 = list(t2['date'].values)
timestamps = list(set(timestamp1) & set(timestamp2))

# synchronised time series for x1 or ric
t1_sync = t1[t1['date'].isin(timestamps)]
t1_sync.sort_values(by='date', ascending=True)
t1_sync = t1_sync.reset_index(drop=True)

# synchronised time series for x2 or benchmark
t2_sync = t2[t2['date'].isin(timestamps)]
t2_sync.sort_values(by='date', ascending=True)