一种结构和参数联合学习的TSK型模糊系统的铜期货价格预测的方法与流程

文档序号:13447007阅读:204来源:国知局
本发明涉及铜期货价格预测领域,具体涉及一种结构和参数联合学习的tsk型模糊系统的铜期货价格预测的方法。
背景技术
:金属铜由于其优异的物理、化学性质,被广泛运用于电气、机械制造、建筑工程等领域。铜期货价格是投资者、管理者和经济学者共同关注的热点,铜期货价格更是人们关注的焦点。如何准确地预测铜期货的价格走势,如何判断和把握铜期货价格变化规律与趋势,提高铜期货投资者收益是期货研究领域的一个热点问题。目前采用的铜期货价格预测方法大致分为三类:第一类是投资者对基本面和技术面进行人为分析,凭借其经验对铜期货价格的走势进行分析;第二类是基于线性模型的回归分析方法;第三类是借助于模式识别和机器学习的方法对铜期货价格进行预测。但第一类和第二类方法预测的效果并不理想,这是因为投资者个人心理状态不同对期货价格走势难以把握;同时期货价格预测是个非常复杂的系统,存在大量的非线性和时变性,线性模型具有不可克服的局限性。随着计算机技术和智能技术的发展,越来越多的研究者尝试利用模式识别和机器学习的方法对铜期货价格进行预测,如陈渊豪使用bp神经网络对铜期货价格进行预测(铜期货价格预测模型优化及套期保值策略研究,浙江大学硕士学位论文,2016年);李自珍亦使用神经网络技术对上海金属期货价格进行预测(基于神经网络的期货价格预测与模型实现——以上海金属期货价格预测为例,首都师范大学硕士学位论文,2008年);龙梅、吉余峰在《基于模糊技术的期货价格预测模型》(东华大学学报,2007年)中使用matalb软件的模糊逻辑工具箱中的anfis编辑器实现对铜期货价格的预测。然而神经网络是基于梯度下降算法,在预测过程中存在训练速度慢的问题,且需要大量的数据样本进行训练测试,小样本情况下预测误差较大。anfis编辑器构建的tsk模糊系统则需人工事先指定模糊规则数,这在实际应用中很难操作。针对铜期货价格预测方法的现状和诸多不足,本发明提出了一种结构和参数联合学习的tsk型模糊系统的铜期货价格预测的方法。技术实现要素:本发明的主要目的是利用模糊系统具备的不确定和模糊信息的处理能力,提供一种易操作、高可靠的结构和参数联合学习的tsk型模糊系统的铜期货价格预测的方法,重点改进了现有方法所建立的铜期货价格预测模型的稳定性和预测精度不高的缺陷。本发明采用下述技术方案来实现:一种结构和参数联合学习的tsk型模糊系统的铜期货价格预测的方法,其特征在于,包括以下步骤:步骤1.收集铜期货交易的历史数据,包括9个属性:lme伦敦铜、s&p500标准普尔500指数、交易日前两周均价、交易日前一周均价、交易日最高价、交易日最低价、交易日收盘价、交易日成交量、交易日持仓量,建立铜期货样本集x;同时收集铜期货交易的历史数据对应的交易日后三天均价,作为铜期货样本集对应的输出集y;铜期货样本集和其对应的输出集构成铜期货训练集{x,y};步骤2.使用结构和参数联合学习的tsk型模糊系统对铜期货训练集{x,y}进行训练,得到用于铜期货预测的预测函数;步骤3.采集当前交易日数据,包括:lme伦敦三月铜、s&p500标准普尔500指数、交易日前两周均价、交易日前一周均价、交易日最高价、交易日最低价、交易日收盘价、交易日成交量和交易日持仓量共计9个属性值,利用步骤2得到的预测函数对后三天的铜期货均价进行预测;其中,上述步骤2所述的使用结构和参数联合学习的tsk型模糊系统对铜期货训练集{x,y}进行训练,建立预测函数,其特征在于:结构和参数联合学习的tsk型模糊系统的联合概率如下:且式(1)同时满足其中xn=[xn1,xn2,...,xnd]t表示第n个样本,d=9,yn表示xn对应的输出值,k表示模糊规则数,n表示样本的个数,c=[c1,c2,...,ck]t表示模糊聚类中心矩阵,ck=[ck1,ck2,...,ckd]t表示第k个模糊聚类中心,u=[u1,u2,...,un]t表示模糊隶属度矩阵,unk表示样本xn属于第k个聚类的模糊隶属度,v=[v1,v2,...,vk]t表示模糊规则的后件参数矩阵,vk表示第k个后件向量,exp()表示指数函数,表示为t表示矩阵的转置,正数β为稀疏因子,正数λ为模糊规则数的期望值,m表示模糊指数,为归一化的隶属度函数,可具体表示为:其中高斯隶属度函数的尺度参数δki可表示为:i=1,...,d,k=1,...,k,nk表示第k个模糊聚类包含样本的个数;利用粒子滤波算法学习结构参数k和模糊规则参数{u,c,v},详细步骤如下:步骤2.1.创建粒子集ss,ss包含p个粒子,ss[r]={{k,u,c,v},ll},r满足r=1,2,…,p,ll值的计算式为:ll=-log(p(x,k,u,c,y,v)),(3)其中log()表示e为底的对数函数;同时ss[1]满足ss[1].k=1,ss[1].ui1=1且i=1,2,…,n,ss[1].c的各分量ck服从拉普拉斯分布:其中k=1,...,k,ei表示样本集x在第i维的平均值,γ为一个正常数;步骤2.2.使用ss[1]初始化粒子集ss中其余的p-1个粒子,创建粒子cand[1],满足cand[1]=ss[1];步骤2.3.每次迭代,p个粒子分别产生p个模糊规则数k*,其中k*服从泊淞分布:其中λ为一正常数;步骤2.4.分别更新p个粒子对应的聚类中心矩阵c:如果ss[r].k*<ss[r].k,那么从ss[r].c中随机选择k*个聚类中心来构成新的聚类中心ss[r].c;如果ss[r].k*>ss[r].k,那么使用式(4)产生ss[r].k*-ss[r].k个服从拉普拉斯分布的聚类中心,联合已有的k个聚类中心构成新的聚类中心ss[r].c;步骤2.5.分别更新p个粒子对应的模糊规则数k:ss[r].k=ss[r].k*,(6)其中r满足r=1,2,…,p;步骤2.6.分别更新p个粒子对应的隶属度矩阵u中的元素unk:考虑并使用拉格朗日条件极值法令其中{η1,η2,...,ηn}为拉格朗日系数,可求得模糊隶属度unk对应的迭代求解公式:其中1≤n≤n,1≤k≤k;步骤2.7.使用局部加权最小二乘法分别计算p个粒子对应的规则后件参数矩阵v中的向量vk:其中k=1,2,...,k,步骤2.8.分别更新p个粒子对应的矩阵中心矩阵c中的元素cki:使用拉格朗日条件极值法令可得cki对应的迭代求解公式:其中xni表示样本xn第i维上的分量;步骤2.9.分别更新p个粒子对应的规则后件参数矩阵v中的向量vk:使用拉格朗日条件极值法令可得vk对应的迭代求解公式:步骤2.10.分别根据每个粒子对应的k,u,c和v值使用式(3)更新p个粒子对应的ll值;步骤2.11.更新粒子集cand:如果不存在规则数k对应的粒子cand[k],则创建cand[k]并将规则数为k的粒子ss赋给cand[k];如果存在规则数k对应的粒子cand[k],则比较规则数为k的粒子ss的ll值与cand[k].ll值的大小,若前者大,则将该ss粒子赋给cand[k],若后者大,则cand[k]保持不变;步骤2.12.创建候选最优粒子集ps:ps={ss,cand};步骤2.13.计算候选最优粒子集ps中每个粒子的权重:其中|ps|表示粒子集ps中粒子的个数;步骤2.14.根据步骤2.13得到的粒子权重值,选取权重值最大的p个粒子并赋值给粒子集ss,转到步骤2.3,直至达到最大循环次数;步骤2.15.从粒子集ps中选取ll值最大的粒子,获取它的规则数k,模糊隶属度矩阵u,聚类中心矩阵c和后件参数矩阵v;步骤2.16.根据步骤2.15获得的参数k,u,c和v,得到结构和参数联合学习的tsk型模糊系统的k个模糊规则和预测函数,其中第k个模糊规则的表示形式为:rulerk:ifx1isak,1(ck,1,δk,1)andx2isak,2(ck,2,δk,2)and…andxdisak,d(ck,d,δk,d),thenfk(x)=vk,0+vk,1x1+...+vk,dxd,(12)其中k=1,2,…,k,x1,x2,…,xd为输入样本的各维分量,ak,1,ak,2,...,ak,d为第k条规则在各维的高斯型模糊子集,其参数是矩阵中心ck的第i维分量cki和尺度参数分量δki;结构和参数联合学习的tsk型模糊系统的预测函数表示为:其中通过式(2)求得。与现有技术相比,本发明的优点是:1)数据采集方便:用于预测铜期货价格的lme伦敦三月铜、s&p500标准普尔500指数、交易日前两周均价、交易日前一周均价、交易日最高价、交易日最低价、交易日收盘价、交易日成交量、交易日持仓量和交易日后三天均价数据获取简单方便,可以采用任何一款提供盘后数据下载的证券行情交易软件或到相应网站进行数据的采集。2)预测精度高:本预测方法选用具备知识表达能力及良好泛化性能的tsk型模糊系统作为具体的智能学习模型,并使用概率框架来表示该模型,同时使用粒子滤波技术同时学习模型的结构和模型的前/后件参数,相比较于传统的铜期货价格预测方法,本发明预测结果更准确。3)预测简单、方便:本预测方法实现对铜期货价格的自动化预测,用户操作简单、方便。附图说明图1是本发明的一种结构和参数联合学习的tsk型模糊系统的铜期货价格预测的方法的总流程图;具体实施方式为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体事实例,并参照附图,对本发明进一步详细说明。本发明的总实施流程图如图1所示,具体实施如下:步骤1.收集上海期货交易所期铜在2012年4月2日到2014年4月25日共400个有效样本值,提取出交易日前两周均价、交易日前一周均价、交易日最高价、交易日最低价、交易日收盘价、交易日成交量、交易日持仓量的数据,并收集相应交易日对应的lme伦敦三月铜和s&p500标准普尔500指数,建立铜期货输入样本集x;同时收集相应交易日对应的铜期货后三天均价,作为铜期货样本对应的输出集y;铜期货样本集和其对应的输出标签集构成铜期货训练集{x,y},训练集中实例如表1所示:表1铜期货训练集实例步骤2.使用结构和参数联合学习的tsk型模糊系统对铜期货训练集{x,y}进行训练,得到用于铜期货预测的预测函数。其中结构和参数联合学习的tsk型模糊系统的联合概率如下:且式(1)同时满足其中xn=[xn1,xn2,...,xnd]t表示第n个样本,d=9,yn表示xn对应的输出值,k表示模糊规则数,n表示样本的个数,c=[c1,c2,...,ck]t表示模糊聚类中心矩阵,ck=[ck1,ck2,...,ckd]t表示第k个模糊聚类中心,u=[u1,u2,...,un]t表示模糊隶属度矩阵,unk表示样本xn属于第k个聚类的模糊隶属度,v=[v1,v2,...,vk]t表示模糊规则的后件参数矩阵,vk表示第k个后件向量,exp()表示指数函数,表示为t表示矩阵的转置,正数β为稀疏因子,本实施例中β的最优值在网格{1,2,4,8,10}内寻优得到,正数λ为模糊规则数的期望值,本实施例中λ=log(n),m表示模糊指数,本实施例中m=2,为归一化的隶属度函数,可具体表示为:其中高斯隶属度函数的尺度参数δki可表示为:i=1,...,d,k=1,...,k,nk表示第k个模糊聚类包含样本的个数;利用粒子滤波算法学习结构参数k和模糊规则参数{u,c,v},详细步骤如下:步骤2.1.创建粒子集ss,ss包含p个粒子,ss[r]={{k,u,c,v},ll},r满足r=1,2,…,p,ll值的计算式为:ll=-log(p(x,k,u,c,y,v)),(3)其中log()表示e为底的对数函数;同时ss[1]满足ss[1].k=1,ss[1].ui1=1且i满足i=1,2,…,n,ss[1].c的各分量ck服从拉普拉斯分布:其中k=1,...,k,ei表示样本集x在第i维的平均值,γ为一个正常数,本实施例中γ=5;步骤2.2.使用ss[1]初始化粒子集ss中其余的p-1个粒子,创建粒子cand[1],满足cand[1]=ss[1];步骤2.3.每次迭代,p个粒子分别产生p个模糊规则数k*,其中k*服从泊淞分布:其中λ为一正常数;步骤2.4.分别更新p个粒子对应的聚类中心矩阵c:如果ss[r].k*<ss[r].k,那么从ss[r].c中随机选择k*个聚类中心来构成新的聚类中心ss[r].c;如果ss[r].k*>ss[r].k,那么使用式(4)产生ss[r].k*-ss[r].k个服从拉普拉斯分布的聚类中心,联合已有的k个聚类中心构成新的聚类中心ss[r].c;步骤2.5.分别更新p个粒子对应的模糊规则数k:ss[r].k=ss[r].k*,(6)其中r满足r=1,2,…,p;步骤2.6.分别更新p个粒子对应的隶属度矩阵u中的元素unk:考虑并使用拉格朗日条件极值法令其中{η1,η2,...,ηn}为拉格朗日系数,可求得模糊隶属度unk对应的迭代求解公式:其中1≤n≤n,1≤k≤k;步骤2.7.使用局部加权最小二乘法分别计算p个粒子对应的规则后件参数矩阵v中的向量vk:其中k=1,2,...,k,步骤2.8.分别更新p个粒子对应的矩阵中心矩阵c中的元素cki:使用拉格朗日条件极值法令可得cki对应的迭代求解公式:其中xni表示样本xn第i维上的分量;步骤2.9.分别更新p个粒子对应的规则后件参数矩阵v中的向量vk:使用拉格朗日条件极值法令可得vk对应的迭代求解公式:步骤2.10.分别根据p个粒子对应的k,u,c和v值使用式(3)更新每个粒子对应的ll值;步骤2.11.更新粒子集cand:如果不存在规则数k对应的粒子cand[k],则创建cand[k]并将规则数为k的粒子ss赋给cand[k];如果存在规则数k对应的粒子cand[k],则比较规则数为k的粒子ss的ll值与cand[k].ll值的大小,若前者大,则将该ss粒子赋给cand[k],若后者大,则cand[k]保持不变;步骤2.12.创建候选最优粒子集ps:ps={ss,cand};步骤2.13.计算候选最优粒子集ps中每个粒子的权重:其中|ps|表示粒子集ps中粒子的个数;步骤2.14.根据步骤2.13得到的粒子权重值,选取权重值最大的p个粒子并赋值给粒子集ss,转到步骤2.3,直至达到最大循环次数,本实施例中最大循环次数设定为1000;步骤2.15.从粒子集ps中选取ll值最大的粒子,获取它的规则数k,模糊隶属度矩阵u,聚类中心矩阵c和后件参数矩阵v;步骤2.16.根据步骤2.15获得的参数k,u,c和v,得到结构和参数联合学习的tsk型模糊系统的16条模糊规则,其中第1条规则的表示形式为:ruler1:ifx1isa1,1(c1,1,δ1,1)andx2isa1,2(c1,2,δ1,2)and…andx9isa1,9(c1,9,δ1,9),thenf1(x)=v1,0+v1,1x1+...+v1,9x9,(12)其中前件参数c1=[c1,1,c1,2,...,c1,9]t和δ1=[δ1,1,δ1,2,...,δ1,9]t分别为c1=[49742,51932,51389,51849,511839,63849,203858,6400,2573.3]t,δ1=[45.98,56.34,87.32,34.87,65.97,62.86,110.65,55.56,22.64]t,后件参数v1=[v1,0,v1,1,v1,2,...,v1,9]t为v1=[0.1543,0.0213,-0.0434,0.0807,-0.0434,0.2122,-0.1243,-0.0498,0.0451,-0.0317]t,结构和参数联合学习的tsk型模糊系统的预测函数表示为:其中通过式(2)求得;步骤3.收集上海期货交易所期铜在2014年4月28日到2014年12月18日共100个有效样本,提取出交易日前两周均价、交易日前一周均价、交易日最高价、交易日最低价、交易日收盘价、交易日成交量、交易日持仓量的数据,并收集相应交易日对应的lme伦敦三月铜和s&p500标准普尔500指数的数据,形成当前交易日的特征向量;将得到的当前交易日的特征向量输入到步骤2.16所述的预测函数,预测出当前交易日后三天的铜期货平均价格。本实施例的预测精度用均方差mse指标表示:其中本实施例中m为100,表示预测的交易日后三天的铜期货平均价格,yi表示各样本对应的交易日后三天的铜期货平均价格的真实值。本发明方法的结果与普通支持向量机、bp神经网络方法进行了对比,结果如表2所示,实验的平台为matlab2010b。表2:本发明方法与支持向量机和bp神经网络的mse(%)本发明方法支持向量机神经网络mse5.478.219.64以上所述的实例只是用于说明本发明,而不构成对本发明的限制。本领域的技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种修改和变更,这些修改和变更仍然在本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1