查看: 198|回复: 0|关注: 0

[未答复] 使用Elmannet预测价格问题

[复制链接]

新手

5 麦片

财富积分


050


2

主题

6

帖子

0

最佳答案
发表于 6 天前 | 显示全部楼层 |阅读模式
         各位朋友,大家好!近日使用Elmannet函数来预测某期货价格,编程的主体思想是依次用每5期价格为一组来预测第6期的价格,但我发现最后9期(从486~494期)的价格与实际偏差较大(呈直线下降,附图中的蓝线)。请教各位朋友这是什么原因?望各位朋友不吝赐教,在下先谢谢各位了!核心代码如下:
   p=[];
st=(stk(1:485)-min(stk(1:485)))/(max(stk(1:485))-min(stk(1:485)));
for i=1:480
p=[p,st(i:i+4)];
end
t=st(6:485)';
%for m=1:100000
net=elmannet(1:2,15);
net.trainParam.show=50;
net.trainParam.epochs=10000;
net.trainParam.lr=0.05;
net.trainParam.goal=1e-6;
net=init(net);
net=train(net,p(:,1:400),t(1:400));
y=net(p(:,1:480));
y1=y*(max(stk(1:end))-min(stk(1:end)))+min(stk(1:end));
perf=perform(net,stk(6:485)',y1);  
  pric=[];
  for n=0:10
   p1=[];   
  for j=2+n:481+n
   p1=[p1,st(j:j+4)];
  end
y21=net(p1(:,1:480));
  y22=y21*(max(stk(1:end))-min(stk(1:end)))+min(stk(1:end));
  pric=[pric,y22(end)];
  stk(486+n)=y22(end);
  st=(stk(1:end)-min(stk(1:end)))/(max(stk(1:end))-min(stk(1:end)));
  end
  price=pric';
      
捕获.JPG
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

快速回复 返回顶部 返回列表