from sklearn.svm import SVR
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
import numpy as np
from util import getdata_energy_after_Corona, plot_result, all_energy_data, full_report, energy_return_data
data, _, scaler = energy_return_data(window=10)
# data = getdata_energy_after_Corona(window=10)
X = data[:, :, :-1]
a, b, c = np.shape(X)
X = np.reshape(X, (-1, b * c))
y = data[:, -1, -1]
tr_size = int(0.9 * len(X))
X_tr = X[:tr_size]
y_tr = y[:tr_size]
X_test = X[tr_size:]
y_test = y[tr_size:]
print(np.shape(X))
print(np.shape(y))
rng = np.random.RandomState(0)

regr = SVR(C=1.0, epsilon=0.2)
regr.fit(X_tr, y_tr)

from sklearn.metrics import mean_squared_error


def analize(XX, yy):

    y_pred = regr.predict(XX)
    # orig_y_true = scaler.inverse_transform(yy)
    # orig_y_pred = scaler.inverse_transform(y_pred)
from sklearn.svm import SVR
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
import numpy as np
from util import getdata_energy_after_Corona, plot_result, all_energy_data, full_report, energy_return_data

window = 25
data, _, scaler = energy_return_data(window=window, fiveday=True)
# data = getdata_energy_after_Corona(window=10)
X = data[:, :, :-1]
a, b, c = np.shape(X)
X = np.reshape(X, (-1, b * c))
y = data[:, -1, -1]
tr_size = int(0.9 * len(X))
X_tr = X[:tr_size]
y_tr = y[:tr_size]
X_test = X[tr_size:]
y_test = y[tr_size:]
print(np.shape(X))
print(np.shape(y))
rng = np.random.RandomState(0)

regr = SVR(C=1.0, epsilon=0.2)
regr.fit(X_tr, y_tr)

from sklearn.metrics import mean_squared_error


def analize(XX, yy):
    y_pred = regr.predict(XX)
    # orig_y_true = scaler.inverse_transform(yy)
Ejemplo n.º 3
0
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import LSTM
from keras.layers import Dropout
import numpy as np

WINDOW = 10
BATCH_SIZE = 10
epochs = 10
lr = 0.000001

from util import getdata
from sklearn.metrics import mean_squared_error
from util import getdata, getdata_energy_after_Corona, get_dataloaders, all_energy_data, full_report, energy_return_data

data, _, scaler = energy_return_data(window=WINDOW)
print(np.shape(data))
d_input = np.shape(data)[-1] - 1  # From dataset
d_output = 1  # From dataset

# data = data[:300]
data = data.astype(np.float32)
n_data = len(data)
train_data = data[:int(0.9 * n_data)]
# val_data = data[int(0.8 * n_data):int(0.9 * n_data)]
test_data = data[int(0.9 * n_data):]

lstm_model = tf.keras.models.Sequential([
    # Shape [batch, time, features] => [batch, time, lstm_units]
    tf.keras.layers.LSTM(10, return_sequences=True),
    # Shape => [batch, time, features]
from util import energy_return_data
import numpy as np
from scipy.stats import kurtosis, skew
from statsmodels.stats.diagnostic import het_arch, acorr_ljungbox
windowed, np_data, scaler1 = energy_return_data(window=25)

y = np_data[:, :-1].reshape(-1)
print('mean', np.mean(y))
print('max', np.max(y))
print('min', np.min(y))
print('median', np.median(y))
print('S.D.', np.std(y))
print('Skewness', skew(y))
print('Excess kurtosis', kurtosis(y) - 3)
print('Ljung-Box test of autocorrelation in residuals',
      acorr_ljungbox(y, lags=[25])[1])
print('Engle’s Test for Autoregressive Conditional Heteroscedasticity (ARCH)',
      het_arch(y)[1])
import numpy as np
import xlrd
from matplotlib import pyplot as plt
from sklearn import preprocessing
from util import all_energy_data, energy_return_data
from scipy.ndimage.filters import uniform_filter, uniform_filter1d
_, np_data = energy_return_data(window=10)


def moving_average(a, n=3):
    ret = np.cumsum(a, dtype=float)
    ret[n:] = ret[n:] - ret[:-n]
    return ret[n - 1:] / n


# new_one = []
# for i in range(7):
#     np_data[:,i]= uniform_filter1d( np_data[:,i],size=10, mode='constant')
# np_data = uniform_filter1d(np_data,size=20, mode='constant')
xx = np.array(range(len(np_data)))
plt.plot(xx, np_data[:, 0], label="Return")
plt.plot(xx, np_data[:, 1], label="EU/USD")
# plt.plot(xx, np_data[:, 3], label="CO")
plt.plot(xx, np_data[:, 2], label="NS")
plt.plot(xx, np_data[:, 3], label="USD Index")
plt.plot(xx, np_data[:, 4], label="CO")
# plt.plot(xx, np_data[:, 0], label="price")
plt.title('Explore')
plt.legend(loc="upper left")

plt.show()