forked from emanuelrgb01/narmax-prediction-stocks
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmatrizes_2anos.m
56 lines (44 loc) · 1.98 KB
/
matrizes_2anos.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
function [P_petro,P_vale,P_embr,T_petro,T_vale,T_embr] = matriz_2anos()
% Importando dados
petro = readtable("./data/PETR4.SA.csv","ReadVariableNames",false);
vale = readtable("./data/VALE3.SA.csv","ReadVariableNames",false);
embr = readtable("./data/EMBR3.SA.csv","ReadVariableNames",false);
% Filtrando os valores para somente o preço de fechamento
% Filtrando também somente para os dois ultimos anos
petro = table2array(petro(501:990,5));
vale = table2array(vale(501:990,5));
embr = table2array(embr(501:990,5));
% Matrizes de entrada e treinamento
P_petro = zeros(30,40);
P_vale = zeros(30,40);
P_embr = zeros(30,40);
T_petro = zeros(10,40);
T_vale = zeros(10,40);
T_embr = zeros(10,40);
%% Matrizes de entrada e treinamento para as tres redes neurais
% Sao usados somente os 900 primeiros precos das acoes
for i = 1:40
% Matriz de entrada rede PETRO
% Dez primeiras linhas com precos de petro
% Linhas 11-20 com precos vale
% Linhas 21-30 com precos embr
% O mesmo padrao se repete para as outras matrizes de entrada
P_petro(1:10,i) = petro(10*(i-1)+1:10*i,1);
P_petro(11:20,i) = vale(10*(i-1)+1:10*i,1);
P_petro(21:30,i) = embr(10*(i-1)+1:10*i,1);
% Matriz de treinamento PETRO
T_petro(1:10,i) = petro(10*i+1:10*(i+1),1);
% Matriz de entrada rede VALE
P_vale(1:10,i) = petro(10*(i-1)+1:10*i,1);
P_vale(11:20,i) = vale(10*(i-1)+1:10*i,1);
P_vale(21:30,i) = embr(10*(i-1)+1:10*i,1);
% Matriz de treinamento rede VALE
T_vale(1:10,i) = vale(10*i+1:10*(i+1),1);
% Matriz de entrada rede EMBR
P_embr(1:10,i) = petro(10*(i-1)+1:10*i,1);
P_embr(11:20,i) = vale(10*(i-1)+1:10*i,1);
P_embr(21:30,i) = embr(10*(i-1)+1:10*i,1);
% Matriz de treinamento rede EMBR
T_embr(1:10,i) = embr(10*i+1:10*(i+1),1);
end
end