文件名称:
Matlab的FIG信息粒化SVM对于上证指数的预测-FIG_SVM_sh.rar
开发工具:
文件大小: 287kb
下载次数: 0
上传时间: 2019-08-14
详细说明: Matlab的FIG信息粒化SVM对于上证指数的预测-FIG_SVM_sh.rar 秉承着这个帖子: 利用libsvm做回归分析的一个小例子 https://www.ilovematlab.cn/thread-47453-1-1.html对于上证指数的预测我又做了一些探究,这次我要做的是从20号开始对于未来五天内(20,21,24,25,26)[22,23两天关闭],上证指数的每日开盘数的变化空间(五日内的变化范围的预测,以及与前五日相比的趋势). 所采用的方法是FIG+SVM[信息粒化 支持向量机]. 这回也加大了数据量,为上证指数从1990.12.19开盘以来到2009.8.19,4579个交易日内每日的开盘数. 原始数据如下: == ======上证指数1990.12.19-2009.8.19每日开盘数 sh_8_19.jpg ======== 我把每五日,放在一起对原始数据进行模糊信息粒化.[有关模糊信息粒化相关的代码我就不贴出来了,其他的代码可以共享] 得到原始数据的信息粒化图,三幅,分别是模糊数的三个部分: 最低,代表,最高.看图: 图的意义与那个帖子类似: 红色是原始数据,绿色是用SVM拟合的数据,下面的是归一化的数据,调试用的. =====low========= low.jpg mse = 18.7764 r = 0.9960 =====R========== | R.jpg | mse = 9.1019 r = 0.9980 =====up========= up.jpg | mse = 8.4657 r = 0.9982 ============================= 利用上面训练得到的模型 对于从20号开始对于未来五天内(20,21,24,25,26)开盘指数的变化范围的预测是: [2505.6,2951.8,3204.8] 所表示的意义是: 20,21,24,25,26这五天内开盘数的变化范围为 2505.6到3204.8,且五日内平均水平大概为2951.8. 由于20号的开盘指数已知为:20号的实际开盘是2798.4 验证一下是在上面的范围内的. 21,24,25,26可以每天验证一下看看这个模型预测的怎么样... [不一定准哈,我就是做了个小探索.hehe.OO,要是准了.咱完后就靠这个模型天天预测大盘.炒股就成.了.so.......] 且20号往前五日[13,14,17,18,19]的变化范围是[2796.3 3138.2 3380.2] 这样比较起来说明:[2505.6,2951.8,3204.8] vs [2796.3 3138.2 3380.2] 趋势预测: 20号后面五日内的开盘数整体会比前五日有所降低.down.. 代码如下:[信息粒化的我没贴出来,但接口给了,其他的我都贴上] ====FIG_SVM_sh.m=====%FIG SVM script by faruto to predict trend of the index of Shanghai 09.8.21 %Email:farutoliyanggmail.com QQ:516667408 http://blog.sina.com.cn/faruto %www.ilovematlab.cn load sh_8_19; TS = sh_open; figure; plot; legend); grid on; len = length; win_num = floor; [low,R,up]=FIG_D; % figure; % plot; % legend; % grid on; % figure; % plot; % legend; % grid on; % figure; % plot; % legend; % grid on; [pre_low,acc_low,model_low,ps_low] = SVM_regression; [pre_up,acc_up,model_up,ps_up] = SVM_regression; [pre_R,acc_R,model_R,ps_R] = SVM_regression; prlow = svmpredict; prlow = mapminmax prup = svmpredict; prup = mapminmax prR = svmpredict; prR = mapminmax 复制代码==========SVM_regression.m========================function [predict,accuracy,model,ps] = SVM_regression %by faruto 09.8.21 %Email:farutoliyanggmail.com QQ:516667408 http://blog.sina.com.cn/faruto %www.ilovematlab.cn if nargin < 4 cmax = 10; gmax = 10; end ts = TS; [n,m] = size; figure; hold on; grid on; plot; time = 1:n; time = time; [tsy,ps] = mapminmax; ps.ymin = ymin; ps.ymax = ymax; [tsy,ps] = mapminmax; ts_again = mapminmax; tsy = tsy; ts_again = ts_again; plot; plot; mse = 10^7; for log2c = -cmax:cmax, for log2g = -gmax:gmax, cmd = [-v 3 -c , num2str, -g , num2str , -s 3 -p 0.4 -n 0.1]; cv = svmtrain; if , mse = cv; bestc = 2^log2c; bestg = 2^log2g; end end end fprintf\n,bestc, bestg, mse); cmd = [-c , num2str, -g , num2str , -s 3 -p 0.4 -n 0.1]; model = svmtrain; % model = svmtrain; [predict,accuracy] = svmpredict; predict = mapminmax; plot; 复制代码测试数据,代码打包.要的拿去[信息粒化的代码没有]: FIG_SVM_sh.rar
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
相关搜索: